An open standard for agents and tools
On 25 November 2024, Anthropic published the Model Context Protocol (MCP), an open standard for connections between LLM-based agents and external data sources or tools. The specification is released under the MIT licence together with reference SDKs. The stated goal is to avoid each agent reimplementing integration with every tool from scratch: MCP defines a common protocol — informally described as “USB-C for AI” — that the agent speaks once and that every tool can implement.
Client-server architecture
MCP adopts a client-server architecture over JSON-RPC 2.0 transport. The client is the agent application (editor, desktop app, CLI); the server is the process that exposes capabilities to the agent. The protocol defines three fundamental primitives:
- Resources: data sources readable by the agent (files, records, API endpoints)
- Tools: functions invokable by the agent with typed parameters
- Prompts: predefined interaction templates exposed by the server
The server declares its capabilities during the handshake phase; the client makes them available to the model as callable tools. The same MCP server can therefore be used by multiple different clients without modifications.
SDKs and supported languages
Anthropic distributes official SDKs for Python, TypeScript, Go and Java, to which community implementations in other languages are added. The SDKs cover both the client side and the construction of custom MCP servers, including example servers for file systems, browser automation, databases and repositories.
Adoption
Within a few months MCP is adopted by several players: Goose (Block) integrates MCP natively, Continue supports it as an extension mechanism, Cursor and Zed expose MCP servers in their editors, and Claude Desktop by Anthropic uses it as the primary integration channel with the user’s system. Rapid ecosystem adoption suggests a level of maturity such that MCP is the de facto candidate for agent-tool interoperability in 2025.
Link: modelcontextprotocol.io
