Skip to content

Ecosystem & Portability

Official SDKs

Ten languages, organized in support tiers — Tier 1: TypeScript, Python, C#, Go · Tier 2: Java, Rust · Tier 3: Swift, Ruby, PHP, Kotlin.

Reference servers

Official examples in the servers repo: Everything, Fetch, Filesystem, Git, Memory, Sequential Thinking, Time.

Community servers

Thousands of integrations for popular services, listed alongside official integrations in the servers repo.

MCP Registry

The official centralized metadata catalog for publicly accessible servers (currently in preview). Feeds downstream aggregators and marketplaces.

Hosts / clients

AI assistants (Claude, ChatGPT) and dev tools (VS Code, Cursor, MCPJam), among many other MCP-enabled apps.

  • A server written once works across any compliant host — switch from one AI app to another without rewriting integrations
  • A host gains every existing server the moment it implements the client side
  • Language-independent: a Python host can use a TypeScript server (the wire protocol is the contract)
  • Model-independent: the same server works whether the host uses Claude, GPT, Gemini, or a local model
flowchart LR
H1[Host A] --> P((MCP))
H2[Host B] --> P
H3[Host C] --> P
P --> S1[Server 1]
P --> S2[Server 2]
P --> S3[Server 3]
One protocol, M hosts × N servers
  • Protocol versions are date-based strings (YYYY-MM-DD); the current version is 2026-07-28. The version is incremented only for backwards-incompatible changes
  • Since 2026-07-28, MCP is stateless: there is no initialize handshake. Every request carries the protocol version and client capabilities in _meta, and servers advertise their supported versions and capabilities via the server/discover method
  • The server accepts or rejects each request independently; an unsupported version yields UnsupportedProtocolVersionError (code -32022) listing the versions it does support, so the client can retry with a mutually supported one
  • Backwards-compatible evolution: new features (including extensions) are opt-in capabilities, so old participants keep working
  • Official, centralized metadata repository for publicly accessible MCP servers — still in preview
  • Server metadata is published in a standardized server.json; names use reverse-DNS namespaces (e.g. io.github.user/server) verified via GitHub, DNS, or HTTP challenges
  • Exposes a REST API intended for downstream subregistries, aggregators, and marketplaces, not for direct host consumption
  • Security scanning is delegated to package registries (npm, PyPI, Docker Hub) and to aggregators — the registry itself hosts metadata, not vetted code
  • Open governance: Anthropic donated MCP to the Linux Foundation’s Agentic AI Foundation (AAIF) in December 2025
  • The project is steered by lead and core maintainers with individual (not company-based) membership; changes are proposed via SEPs (Specification Enhancement Proposals)
  • Cross-industry client adoption: AI vendors, IDEs, and productivity apps
  • Growing official SDK ecosystem and registry with namespace verification for publishers
  • Portability derives from standardizing the wire protocol, so implementation language and model choice don’t matter
  • Registries address discovery and trust (namespace/publisher verification), while security scanning stays with package registries
  • Date-based versioning plus per-request version declaration (modern era) or handshake negotiation (legacy era) preserves compatibility across releases
  • MCP is governed openly under the Linux Foundation’s Agentic AI Foundation

📝 Check your knowledge

1. Why can a host written in Python use an MCP server written in TypeScript?
2. Which languages are in Tier 1 of the official MCP SDKs?
3. What does the official MCP Registry actually store?
4. In the 2026-07-28 (modern) era, how is the protocol version communicated?
5. Who governs the Model Context Protocol today?