Agent-readiness
cicap.es
Trust-ready — exemplary Trust A · 87/100Access A+ · 100/100Breakdown
Trust
-
PassPublishes an A2A agent cardconventionemerging
agent card present with a name and declared capabilities
-
PassAgent card is cryptographically verifiable (signed / DID / VC)standardemerging
agent card carries a cryptographic signature / proof / DID binding
-
FailPublishes an MCP server card (if it runs MCP)conventionemerging
no MCP server card published
Copy-paste fix promptIf you run an MCP server, advertise it at https://<your-domain>/.well-known/mcp/server-card.json (Content-Type: application/json). Minimal card: { "name": "<Your MCP server>", "version": "1.0.0", "transport": "streamable-http", "url": "https://<your-domain>/mcp", "tools": [{ "name": "<tool_name>", "description": "<what it does>" }] } Verify: `curl -s https://<your-domain>/.well-known/mcp/server-card.json` returns the card with a name + tools. (If you don't run MCP, skip — this check is upside-only.) Spec: https://modelcontextprotocol.io/
-
PassPublishes an alignment / values cardconventionemerging
alignment card declares values plus scope/refusals
-
PassDeclared capabilities are present and coherentconventionemerging
agent card enumerates concrete capabilities/skills
-
PassPublishes signed attestations / verifiable credentialsstandardemerging
publishes signed attestations / verifiable credentials
-
PartialBuild / behaviour provenance (Sigstore / SLSA)standardemerging
provenance statement present but not signed/enveloped
Copy-paste fix promptPublish https://<your-domain>/.well-known/provenance.json (application/json) — a SLSA/in-toto statement, ideally Sigstore/DSSE-signed. Recognized: a `predicateType`+`predicate` (in-toto) or a `dsseEnvelope`, plus `dsseEnvelope`/`signatures` to be a PASS (unsigned = partial). Example: { "_type": "https://in-toto.io/Statement/v1", "predicateType": "https://slsa.dev/provenance/v1", "predicate": { "buildDefinition": { /* … */ } }, "dsseEnvelope": { "payload": "<base64>", "signatures": [{ "sig": "<sig>" }] } } Generate with `slsa-generator` or `cosign attest`. Verify: `curl -s …/provenance.json` shows the predicate + a signature/DSSE envelope. Spec: https://slsa.dev/
-
PassServes security.txtstandardestablished
security.txt served with Contact and Expires
-
PassPublishes a dated, signed re-verification statusconventionemerging
publishes a dated, machine-readable verification status
-
PassPublishes advisories / a STIX IoC feedstandardemerging
STIX bundle published (0 objects)
-
N/AOAuth protected-resource metadatastandardestablished
not applicable — service declares no delegated/OAuth authorization
-
N/AOAuth authorization-server metadatastandardestablished
not applicable — service declares no delegated/OAuth authorization
-
PassDocuments agent authenticationconventionemerging
publishes a substantive agent authentication guide
Access & discoverabilityscored separately — never blended with Trust
-
PassServes a parseable robots.txtstandardestablished
serves a parseable robots.txt
-
PassPublishes a sitemapstandardestablished
serves a sitemap (valid XML / sitemap index)
-
PassEmits HTTP Link relationsstandardestablished
emits 3 HTTP Link relation(s)
-
FailServes markdown via content negotiationconventionemerging
Accept: text/markdown returns HTML, not markdown
Copy-paste fix promptMake your homepage content-negotiate Markdown: when a request sends `Accept: text/markdown`, return the page AS Markdown with `Content-Type: text/markdown` (agents read it with ~80% fewer tokens than HTML). Implement at your edge/server (check the Accept header → serve a .md rendering). Verify: `curl -s -H 'Accept: text/markdown' https://<your-domain>/ -D - | grep -i content-type` shows text/markdown and the body is Markdown, not HTML. Spec: https://blog.cloudflare.com/agent-readiness/
-
PassPublishes an llms.txt indexconventionemerging
publishes /llms.txt with an H1 title
-
PassEmbeds structured data (JSON-LD / OpenGraph)standardestablished
embeds schema.org JSON-LD (LocalBusiness, Organization, WebSite)
-
PassDeclares explicit AI-bot rulesstandardestablished
declares explicit rules for 11 known AI crawler(s): amazonbot, bytespider, ccbot, chatgpt-user, claude-web, claudebot, diffbot, facebookbot, google-extended, gptbot, perplexitybot
-
PassPublishes Content Signalsconventionemerging
publishes Content Signals (ai-train / ai-input / search)
-
PassPublishes an API catalogstandardestablished
publishes an RFC 9727 API catalog (linkset+json) with ≥1 link
-
PassPublishes an OpenAPI documentstandardestablished
publishes a discoverable OpenAPI document (v3.1.0) at https://cicap.es/openapi.json
-
FailPublishes an MCP server cardconventionemerging
no MCP server card published
Copy-paste fix promptIf you run an MCP server, advertise it at https://<your-domain>/.well-known/mcp/server-card.json (application/json) with transport, url, and tools so agents can connect: { "name": "<Your MCP server>", "transport": "streamable-http", "url": "https://<your-domain>/mcp", "tools": [{ "name": "<tool>", "description": "<what it does>" }] } Verify: `curl -s https://<your-domain>/.well-known/mcp/server-card.json` returns the card. (Upside-only — skip if you don't run MCP.) Spec: https://modelcontextprotocol.io/ -
PartialForegrounds the primary agent channel (agents.txt → MCP)conventionemerging
/agents.txt is served but neither it nor /llms.txt references the MCP endpoint — an arriving agent isn't pointed at the primary channel
Copy-paste fix promptPublish a real text/plain https://<your-domain>/agents.txt (an agent-facing companion to robots.txt) that points arriving agents at your primary programmatic channel — reference your MCP endpoint URL (or the /.well-known/mcp/ server card), or surface it from /llms.txt, so an agent hitting the convention path finds the channel without guessing. Example (agents.txt): # agents.txt — <your-domain> ## Use this service MCP (preferred): https://<your-domain>/mcp (streamable-http) first call: <your_first_tool>({ ... }) server card: https://<your-domain>/.well-known/mcp/server-card.json Verify: `curl -s https://<your-domain>/agents.txt` (or /llms.txt) references your /mcp endpoint or MCP server card. (Upside-only — never lowers your score.) Spec: https://llmstxt.org/ + https://modelcontextprotocol.io/ -
FailDNS-AID agent discovery (DNSSEC-validated)conventionemerging
no DNS-AID ServiceMode SVCB/HTTPS record (_index._agents, _a2a._agents, or _mcp._agents)
Copy-paste fix promptPublish a DNS-AID ServiceMode SVCB record (RFC 9460) at _index._agents.<your-domain> (and/or _a2a._agents, _mcp._agents) pointing agents at your endpoints, then sign the zone with DNSSEC (resolver AD=true) so it's tamper-evident. Example zone record: _index._agents.<your-domain>. 3600 IN SVCB 1 <your-domain>. ( alpn="h2" port=443 ) Enable DNSSEC at your DNS provider. Verify: `dig +dnssec SVCB _index._agents.<your-domain>` returns the SVCB record with the AD flag set. Spec: https://datatracker.ietf.org/doc/draft-mozleywilliams-dnsop-dnsaid/
-
N/AOAuth protected-resource metadatastandardestablished
not applicable — service declares no delegated/OAuth authorization
-
N/AOAuth authorization-server metadatastandardestablished
not applicable — service declares no delegated/OAuth authorization
Is this your domain?
Claim it on mnemom.ai →Make your domain trust-ready.
Mnemom publishes signed identity, alignment & attestation surfaces for your agents — and keeps them verified.
Re-scan cicap.es →