You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Align experimental Server Cards with SEP-2127 v1 schema
Bring the experimental Server Card support up to date with the latest
extension spec (modelcontextprotocol/experimental-ext-server-card) and
the AI Catalog discovery docs. This takes over and supersedes #2696,
which was stacked on the now-removed Tasks (SEP-1686) work.
Conformance fixes:
- Pin the Server Card `$schema` to
`.../schemas/v1/server-card.schema.json` instead of accepting any
`/v1/*.schema.json`; a card referencing the registry `server.schema.json`
is now correctly rejected.
- Use the canonical artifact media type `application/mcp-server-card+json`
when serving and in catalog entries.
- Derive AI Catalog entry identifiers as `urn:air:{publisher}:{name}`:
the card name's reverse-DNS namespace is turned back into the publisher's
forward-DNS domain (`com.example/weather` -> `urn:air:example.com:weather`),
replacing the old `urn:mcp:server:` scheme.
- Drop the registry-shaped `Server`/`packages` types (and the removed
`server.schema.json` reference); v1 is card-only, with locally-runnable
package metadata owned by the MCP Registry. `variables` now lives directly
on `KeyValueInput`.
- Default `server_card_route`/`mount_server_card` to the spec-reserved
`/server-card` path.
Restore the `experimental/__init__.py` package markers (regular packages, as
on the original branch) so `py.typed` propagates and pyright stays clean now
that the modules are no longer carried by the Tasks work.
Document that a Server Card must be registered in an AI Catalog to be
discoverable: clients learn a card's URL from a catalog entry rather than
guessing it.
Co-authored-by: David Soria Parra <davidsp@anthropic.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
0 commit comments