Extension: Server Identity and Tool Attestation#17
Conversation
Define cryptographic server identity and tool attestation for MCP. Addresses OWASP MCP Top 10 risks: server impersonation (MCP09), tool poisoning (MCP03), supply chain attacks (MCP04), and insufficient authentication (MCP07). Specification includes: - Ed25519 key pairs for server identity (JWK format) - Self, publisher, and DNS attestation types - Tool definition signing via _meta - Challenge-response verification (identity/get, identity/challenge) - Key revocation mechanism Previously submitted as SEP-2267 to the core spec repository. Redirected here per maintainer guidance as an auth extension.
|
Hello maintainers, any feedback? |
|
@pcarleton @localden: a process question, following up on the redirect that brought this here. This extension was filed per the guidance closing SEP-2267 (core spec to ext-auth). Reading the Governance section of this repo's README, authorization extensions follow the same SEP / community-discussion / consensus process as the core spec. So the direct question: what is the right form for a new extension to enter triage? An ext-auth-scoped SEP, a discussion thread first, or review on this PR as filed? I would rather restructure it to fit the process than have it sit in the wrong shape. Since filing, the surrounding ecosystem work this extension composes with has firmed up:
The problem statement has not moved: clients still cannot verify server identity or detect tool-definition tampering (OWASP MCP03/04/07/09). Happy to bring this to a WG call if that is the faster route. |
Summary
_meta, challenge-response verification, and key revocationMotivation
MCP has no mechanism for clients to verify server identity or detect tool definition tampering. The OWASP MCP Top 10 identifies related risks:
Existing auth extensions solve client-to-server authorization. This extension solves the complementary problem: server-to-client identity.
Context
This was originally submitted as SEP-2267 to the core spec repository. Per maintainer guidance from @localden, this extension belongs in
ext-authrather than the core spec.The document has been reformatted to follow the ext-auth extension conventions (MDX format, numbered sections, parameter tables, RFC keyword styling).
What's Included
specification/draft/server-identity-attestation.mdx— Full extension specificationExtension capabilities:
_metaidentity/getandidentity/challengeJSON-RPC methodsBackward Compatibility
All new fields and methods are additive. Servers that do not implement this extension are unaffected. Clients that do not support it ignore the identity metadata. Existing OAuth mechanisms continue to work unchanged.
References