modelcontextprotocol / modelcontextprotocol/python-sdk
Capabilities API + server/discover handler
Open
@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()/InitializationOptionsso capabilities are configurable, not pre-computed. - The
extensionscapability map surfaced on both client and server. - Default
server/discoverhandler: 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
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.