Skip to content

Track reference implementation for SEP-2127: python-sdk#2696 (finalize before advancing the SEP)Β #16

@tadasant

Description

@tadasant

πŸ€– Drafted by Claude Code (an AI coding agent) on behalf of @tadasant. The substance was reviewed by a human before filing.

Summary

The Extensions Track requires an SDK reference implementation before a SEP can advance β€” from SEP-2133: an extension "MUST have at least one reference implementation in an official SDK prior to review to ensure the extension is practical and implementable." SEP-2127's own Reference Implementation section is still "To be added."

python-sdk#2696 β€” "Add experimental Server Cards support (SEP-2127)" (by @dsp-ant) is that reference implementation, and it's the furthest-along artifact we have. This issue tracks reviewing/finalizing it. We should not move SEP-2127 forward (to Final / graduation) until this implementation is reviewed, agreed, and merged, and reflects the shape we've settled on. Related: #15 (refactor SEP-2127 to Extensions Track).

What #2696 provides

Status: open, REVIEW_REQUIRED, not merged (created 2026-05-26; supersedes #2692, which was example-app-only). It adds, under experimental namespaces:

  • Server side β€” build_server_card(...) to derive a card from a server's identity, plus mount_server_card / server_card_route to serve it via Starlette.
  • Client side β€” fetch_server_card / load_server_card / well_known_url to fetch and validate a card for pre-connection discovery.
  • Models β€” Pydantic ServerCard, Server, Remote, Package, transports, etc. in mcp.shared.experimental.server_card.
  • 28 tests, 100% line+branch coverage on the new modules; round-trips the SEP-2127 conformance example shapes.

Things to confirm before the SEP moves forward

Several decisions baked into #2696 intersect with open spec questions in this repo. We should make sure the reference impl and the spec agree (in both directions) before locking the SEP:

Proposed handling

Use this issue as the tracking record for the reference-implementation gate. Keep it open until #2696 (or its successor) is merged in python-sdk and the checklist items above are resolved in this repo / the SEP. Only then should SEP-2127 advance toward Final.

Links: python-sdk#2696 Β· SEP-2127 (PR #2127) Β· #15 (Extensions Track refactor).

Metadata

Metadata

Assignees

No one assigned

    Labels

    sep-2127-blockersMust be resolved before SEP-2127 can be ratified/advanced

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions