# 132 Backwatch checks

Every check Backwatch can run against a site and MCP server. Pre-release: every check is still being calibrated.

## Why these checks

- **Open source, MIT.** The CLI and the checks it runs are MIT licensed. Read how a verdict is reached, or run it yourself.
- **Evidence on every verdict.** Each result shows what was requested and what came back, so a failure is something you can reproduce.
- **Unresolved is never a failure.** A check that couldn't be resolved is shown as unresolved and left out of the score.
- **No AI decides a score.** Scoring is deterministic. AI may help explain a finding; it never sets a verdict.
- **Sign-in checked from outside.** The chain every host follows, from the side your users are on. With --register, on your own server, each host's real callback.
- **Grounded in a 1,000-server study.** The sign-in checks were run across a random 1,000 servers from the official MCP Registry.

## Readability

- [sitemap](https://backwatch.dev/checks/sitemap.md): Sitemap exists (free CLI)
- [content-no-js](https://backwatch.dev/checks/content-no-js.md): Content without JavaScript (free CLI)
- [bot-detection](https://backwatch.dev/checks/bot-detection.md): Not blocked by bot detection (free CLI)
- [robots-ai-policy-quality](https://backwatch.dev/checks/robots-ai-policy-quality.md): robots.txt AI crawler policy (free CLI)
- [pricing-md](https://backwatch.dev/checks/pricing-md.md): pricing.md exists (free CLI)
- [agent-mode-view](https://backwatch.dev/checks/agent-mode-view.md): Agent mode view (deep scan)
- [markdown-url-fallback](https://backwatch.dev/checks/markdown-url-fallback.md): Markdown URL fallback (free CLI, always counted)
- [modular-llms-txt](https://backwatch.dev/checks/modular-llms-txt.md): Modular llms.txt per product area (free CLI)
- [sitemap-lastmod](https://backwatch.dev/checks/sitemap-lastmod.md): Sitemap freshness (lastmod) (free CLI)
- [noindex-directives](https://backwatch.dev/checks/noindex-directives.md): Homepage not hidden from search (free CLI)
- [robots-agent-user-policy](https://backwatch.dev/checks/robots-agent-user-policy.md): robots.txt agent-user policy (free CLI)
- [llms-txt-exists](https://backwatch.dev/checks/llms-txt-exists.md): llms.txt exists (free CLI, always counted)
- [llms-txt-formatting](https://backwatch.dev/checks/llms-txt-formatting.md): llms.txt formatting (free CLI, always counted)
- [json-ld](https://backwatch.dev/checks/json-ld.md): JSON-LD structured data (free CLI)
- [pricing-info](https://backwatch.dev/checks/pricing-info.md): Pricing info accessible (deep scan)
- [json-ld-entity-linking](https://backwatch.dev/checks/json-ld-entity-linking.md): JSON-LD entity linking (sameAs) (free CLI)
- [metadata-completeness](https://backwatch.dev/checks/metadata-completeness.md): Metadata completeness (free CLI)
- [org-schema-completeness](https://backwatch.dev/checks/org-schema-completeness.md): Organization schema completeness (free CLI)
- [schema-type-breadth](https://backwatch.dev/checks/schema-type-breadth.md): Schema type breadth (free CLI)
- [trust-anchors](https://backwatch.dev/checks/trust-anchors.md): Trust anchor pages (deep scan)
- [llms-txt-links-resolve](https://backwatch.dev/checks/llms-txt-links-resolve.md): llms.txt links resolve (free CLI, always counted)
- [markdown-link-alternate](https://backwatch.dev/checks/markdown-link-alternate.md): Markdown alternate link (free CLI)
- [markdown-frontmatter](https://backwatch.dev/checks/markdown-frontmatter.md): Markdown frontmatter metadata (free CLI)
- [redirect-hygiene](https://backwatch.dev/checks/redirect-hygiene.md): Redirect hygiene (free CLI)
- [page-token-budget](https://backwatch.dev/checks/page-token-budget.md): Page token budget (free CLI)
- [code-fence-validity](https://backwatch.dev/checks/code-fence-validity.md): Code fence validity (free CLI)
- [docs-auth-gate](https://backwatch.dev/checks/docs-auth-gate.md): Content behind auth (free CLI)
- [web-bot-auth-directory](https://backwatch.dev/checks/web-bot-auth-directory.md): Web Bot Auth directory (free CLI)
- [markdown-negotiation](https://backwatch.dev/checks/markdown-negotiation.md): Markdown agent docs (free CLI, always counted)
- [markdown-negotiation-vary](https://backwatch.dev/checks/markdown-negotiation-vary.md): Markdown content negotiation (acceptmarkdown.com) (free CLI)
- [agent-ua-markdown](https://backwatch.dev/checks/agent-ua-markdown.md): Bot-UA markdown serving (free CLI, always counted)
- [agent-friendly-404](https://backwatch.dev/checks/agent-friendly-404.md): Agent-friendly 404s (free CLI)
- [ax-document-structure](https://backwatch.dev/checks/ax-document-structure.md): Accessible document structure (deep scan)
- [ax-native-controls](https://backwatch.dev/checks/ax-native-controls.md): Native interactive controls (deep scan)
- [ax-accessible-names](https://backwatch.dev/checks/ax-accessible-names.md): Accessible names on controls (deep scan)
- [ax-form-labeling](https://backwatch.dev/checks/ax-form-labeling.md): Form control labeling (deep scan)
- [ax-tree-injection-safe](https://backwatch.dev/checks/ax-tree-injection-safe.md): Accessibility-tree injection safety (bonus) (deep scan)
- [agent-crawler-reachability](https://backwatch.dev/checks/agent-crawler-reachability.md): Agent crawler reachability (free CLI)

## Discoverability

- [ard-catalog](https://backwatch.dev/checks/ard-catalog.md): ARD discovery (free CLI)
- [ai-catalog-published](https://backwatch.dev/checks/ai-catalog-published.md): AI Catalog discovery (free CLI)
- [ard-entries-valid](https://backwatch.dev/checks/ard-entries-valid.md): ARD entry validity (free CLI)
- [ard-trust-manifest](https://backwatch.dev/checks/ard-trust-manifest.md): ARD trust manifest (free CLI)
- [agent-discovery-file](https://backwatch.dev/checks/agent-discovery-file.md): Agent discovery file (free CLI)
- [agent-skills-index-v2](https://backwatch.dev/checks/agent-skills-index-v2.md): Agent Skills index conformance (v0.2.0) (free CLI)
- [a2a-agent-card](https://backwatch.dev/checks/a2a-agent-card.md): A2A / agent-card (free CLI)
- [npm-sdk-package](https://backwatch.dev/checks/npm-sdk-package.md): NPM/PyPI SDK package (free CLI)
- [agent-rules-repo](https://backwatch.dev/checks/agent-rules-repo.md): Agent platform configs (free CLI)
- [agent-plugins-repo](https://backwatch.dev/checks/agent-plugins-repo.md): Agent Plugins manifest (free CLI)
- [nlweb-schema-feeds](https://backwatch.dev/checks/nlweb-schema-feeds.md): NLWeb Schema Feeds (free CLI)
- [mcp-well-known-discovery](https://backwatch.dev/checks/mcp-well-known-discovery.md): MCP well-known discovery (free CLI, always counted)
- [link-headers-discovery](https://backwatch.dev/checks/link-headers-discovery.md): HTTP Link headers (RFC 8288) (free CLI)
- [public-api-docs](https://backwatch.dev/checks/public-api-docs.md): Public API/docs linked from homepage (free CLI)
- [agent-instruction](https://backwatch.dev/checks/agent-instruction.md): Agent instruction / when-to-use (free CLI)
- [mcp-server-identity](https://backwatch.dev/checks/mcp-server-identity.md): MCP server identity (deep scan)
- [public-api](https://backwatch.dev/checks/public-api.md): Public API with reachable endpoints (deep scan)
- [openapi-spec](https://backwatch.dev/checks/openapi-spec.md): OpenAPI spec published (deep scan)
- [developer-portal](https://backwatch.dev/checks/developer-portal.md): Developer portal (free CLI)
- [api-catalog-rfc9727](https://backwatch.dev/checks/api-catalog-rfc9727.md): API catalog (RFC 9727) (deep scan)
- [webmcp](https://backwatch.dev/checks/webmcp.md): WebMCP support (deep scan)
- [api-versioning-policy](https://backwatch.dev/checks/api-versioning-policy.md): REST versioning / deprecation policy (deep scan)
- [cli-tool](https://backwatch.dev/checks/cli-tool.md): CLI tool available (free CLI)
- [rest-sdk-packages](https://backwatch.dev/checks/rest-sdk-packages.md): Multi-language SDK packages (free CLI)
- [nlweb-ask](https://backwatch.dev/checks/nlweb-ask.md): NLWeb /ask endpoint (deep scan)
- [nlweb-streaming](https://backwatch.dev/checks/nlweb-streaming.md): NLWeb streaming support (deep scan)
- [mcp-server-card](https://backwatch.dev/checks/mcp-server-card.md): MCP server-card.json (deep scan)
- [api-schema-analysis](https://backwatch.dev/checks/api-schema-analysis.md): API schema complexity analysis (deep scan)

## Connectability

- [mcp-tool-descriptions](https://backwatch.dev/checks/mcp-tool-descriptions.md): MCP tool descriptions (deep scan)
- [mcp-param-schemas](https://backwatch.dev/checks/mcp-param-schemas.md): MCP parameter schemas (deep scan)
- [mcp-tool-listing](https://backwatch.dev/checks/mcp-tool-listing.md): MCP tool listing (deep scan)
- [mcp-tool-naming](https://backwatch.dev/checks/mcp-tool-naming.md): MCP tool naming (deep scan)
- [oauth-support](https://backwatch.dev/checks/oauth-support.md): OAuth 2.0 support (free CLI)
- [scoped-permissions](https://backwatch.dev/checks/scoped-permissions.md): Scoped permissions (free CLI)
- [mcp-auth-mechanism](https://backwatch.dev/checks/mcp-auth-mechanism.md): MCP auth mechanism (deep scan)
- [mcp-oauth-metadata](https://backwatch.dev/checks/mcp-oauth-metadata.md): MCP OAuth metadata (free CLI, always counted)
- [mcp-pkce-s256](https://backwatch.dev/checks/mcp-pkce-s256.md): MCP PKCE S256 support (free CLI, always counted)
- [onboarding-friction](https://backwatch.dev/checks/onboarding-friction.md): Agent onboarding friction (deep scan)
- [oauth-protected-resource](https://backwatch.dev/checks/oauth-protected-resource.md): OAuth Protected Resource metadata (RFC 9728) (free CLI, always counted)
- [auth-md-exists](https://backwatch.dev/checks/auth-md-exists.md): auth.md exists (free CLI)
- [auth-md-structure](https://backwatch.dev/checks/auth-md-structure.md): auth.md structure (free CLI)
- [auth-md-walkthrough-simulation](https://backwatch.dev/checks/auth-md-walkthrough-simulation.md): auth.md walkthrough simulation (free CLI)
- [agent-auth-discovery-metadata](https://backwatch.dev/checks/agent-auth-discovery-metadata.md): Agent auth discovery metadata (free CLI)
- [agent-auth-www-authenticate](https://backwatch.dev/checks/agent-auth-www-authenticate.md): Agent auth WWW-Authenticate hint (free CLI, always counted)
- [agent-auth-endpoints-reachable](https://backwatch.dev/checks/agent-auth-endpoints-reachable.md): agent_auth endpoints reachable (free CLI)
- [mcp-server](https://backwatch.dev/checks/mcp-server.md): MCP server / manifest (deep scan)
- [mcp-error-handling](https://backwatch.dev/checks/mcp-error-handling.md): MCP error handling (deep scan)
- [mcp-transport-modern](https://backwatch.dev/checks/mcp-transport-modern.md): MCP modern transport (deep scan)
- [rate-limit-headers](https://backwatch.dev/checks/rate-limit-headers.md): Rate limit response headers (deep scan)
- [idempotency-key-support](https://backwatch.dev/checks/idempotency-key-support.md): Idempotency-Key support (deep scan)
- [json-error-responses](https://backwatch.dev/checks/json-error-responses.md): JSON error responses (deep scan)
- [api-error-model](https://backwatch.dev/checks/api-error-model.md): REST typed error model (deep scan)
- [pagination-shape](https://backwatch.dev/checks/pagination-shape.md): REST pagination pattern (deep scan)
- [async-job-pattern](https://backwatch.dev/checks/async-job-pattern.md): REST async-job pattern (deep scan)
- [response-schema-coverage](https://backwatch.dev/checks/response-schema-coverage.md): REST response schema coverage (deep scan)
- [mcp-tool-annotations](https://backwatch.dev/checks/mcp-tool-annotations.md): MCP tool annotations (deep scan)
- [mcp-multi-surface-coverage](https://backwatch.dev/checks/mcp-multi-surface-coverage.md): Product + docs MCP coverage (deep scan)
- [sandbox-environment](https://backwatch.dev/checks/sandbox-environment.md): Sandbox / test environment (deep scan)
- [batch-endpoints](https://backwatch.dev/checks/batch-endpoints.md): REST batch / bulk endpoint (deep scan)
- [mcp-resource-listing](https://backwatch.dev/checks/mcp-resource-listing.md): MCP resources exposed (deep scan)
- [graphql-error-type-definition](https://backwatch.dev/checks/graphql-error-type-definition.md): GraphQL typed error model (deep scan)
- [graphql-versioning-policy](https://backwatch.dev/checks/graphql-versioning-policy.md): GraphQL versioning / deprecation policy (deep scan)
- [graphql-pagination-pattern](https://backwatch.dev/checks/graphql-pagination-pattern.md): GraphQL pagination pattern (deep scan)
- [graphql-async-job-pattern](https://backwatch.dev/checks/graphql-async-job-pattern.md): GraphQL async-job pattern (deep scan)
- [graphql-schema-completeness](https://backwatch.dev/checks/graphql-schema-completeness.md): GraphQL schema description coverage (deep scan)
- [graphql-batch-mutations](https://backwatch.dev/checks/graphql-batch-mutations.md): GraphQL batch mutations (deep scan)
- [a2ui-support](https://backwatch.dev/checks/a2ui-support.md): A2UI / generative UI support (deep scan)
- [mcp-apps-ui-quality](https://backwatch.dev/checks/mcp-apps-ui-quality.md): MCP Apps UI quality (deep scan)
- [mcp-view-domain](https://backwatch.dev/checks/mcp-view-domain.md): MCP App view reachable (deep scan)
- [mcp-view-csp](https://backwatch.dev/checks/mcp-view-csp.md): MCP App view CSP (deep scan)
- [function-calling-compat](https://backwatch.dev/checks/function-calling-compat.md): Function calling compatibility (deep scan)
- [mcp-resource-quality](https://backwatch.dev/checks/mcp-resource-quality.md): MCP resource quality (deep scan)

## Presence

- [mcp-registry-listed](https://backwatch.dev/checks/mcp-registry-listed.md): Listed in MCP registries (free CLI, always counted)
- [skills-sh-listed](https://backwatch.dev/checks/skills-sh-listed.md): Listed on skills.sh (free CLI)
- [registry-branding](https://backwatch.dev/checks/registry-branding.md): Registry branding (free CLI)
- [chatgpt-app-listed](https://backwatch.dev/checks/chatgpt-app-listed.md): ChatGPT app listed (free CLI)
- [skills-sh-quality](https://backwatch.dev/checks/skills-sh-quality.md): Skills.sh skill quality (free CLI)
- [mcp-app-registry](https://backwatch.dev/checks/mcp-app-registry.md): MCP Apps support (deep scan)

## Reported, not scored

- [agentic-search-usecase](https://backwatch.dev/checks/agentic-search-usecase.md): Category share of voice (deep scan)
- [agentic-search-specific](https://backwatch.dev/checks/agentic-search-specific.md): Developer resource discoverability (deep scan)
- [brand-search-accuracy](https://backwatch.dev/checks/brand-search-accuracy.md): Brand name discoverability (deep scan)
- [wikipedia-presence](https://backwatch.dev/checks/wikipedia-presence.md): Wikipedia / Wikidata entity presence (deep scan)
- [mpp-support](https://backwatch.dev/checks/mpp-support.md): MPP payment protocol (deep scan)
- [x402-support](https://backwatch.dev/checks/x402-support.md): x402 payment protocol (deep scan)
- [ucp-support](https://backwatch.dev/checks/ucp-support.md): UCP - Universal Commerce Protocol (deep scan)
- [acp-support](https://backwatch.dev/checks/acp-support.md): ACP - Agentic Commerce Protocol (deep scan)
- [acp-delegate-payment](https://backwatch.dev/checks/acp-delegate-payment.md): ACP delegate payment (deep scan)
- [ap2-support](https://backwatch.dev/checks/ap2-support.md): AP2 - Agent Payments Protocol (deep scan)
- [pap-discovery](https://backwatch.dev/checks/pap-discovery.md): Personal Agent Protocol discovery file (deep scan)
- [pap-issuer-binding](https://backwatch.dev/checks/pap-issuer-binding.md): PAP issuer binding (deep scan)
- [pap-auth-config](https://backwatch.dev/checks/pap-auth-config.md): PAP sign-in and extension config (deep scan)
- [pap-interfaces](https://backwatch.dev/checks/pap-interfaces.md): PAP API and agent entries (deep scan)
- [pap-endpoint-enforcement](https://backwatch.dev/checks/pap-endpoint-enforcement.md): PAP endpoints reject unauthenticated agents (deep scan)
- [pap-cross-protocol](https://backwatch.dev/checks/pap-cross-protocol.md): PAP agrees with ARD and auth.md (deep scan)
