modelcontextprotocol / modelcontextprotocol/python-sdk

Capabilities API + server/discover handler

Open
#2,896 0 comments 0 reactions 1 assignee View on GitHub

@maxisbey is already working on this.

Since Jun 18, 2026.

enhancement P2 spec-2026-07-28 v2
Dominant language
Python
Stars
24.3k
Forks
4k
Avg merge
1d 1h
Merged PRs (30d)
31

Description

Tracks: #2804 #2793

Let servers/clients actually configure what they advertise (currently pre-computed), surface the extensions map, and provide the default server/discover handler that returns it.

What's in it

  • Rework get_capabilities() / InitializationOptions so capabilities are configurable, not pre-computed.
  • The extensions capability map surfaced on both client and server.
  • Default server/discover handler: capabilities, serverInfo, supportedVersions, instructions (cache-hint defaults from #2899).

Conformance

  • (the discover checks live inside server-stateless)
  • Together with Backwards compatibility & version negotiation, New HTTP serving path (modern + dual-era), subscriptions/listen, Context object (layered, per-request): server-stateless

Dependencies

  • Depends on: #2892

References

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.