Model Context Protocol is a standardized framework for connecting large language models to external data sources and executable tools. It enables the creation of a universal interface where servers expose tools, resources, and prompts that can be discovered and utilized by various AI clients.
The protocol utilizes a JSON-RPC message system that is transport-agnostic, supporting both standard input/output for local processes and HTTP with server-sent events for remote connections. It emphasizes security and control by delegating model sampling to the client to keep API keys secure from servers and requiring explicit user approval for tool execution on local systems.
The system covers broad capabilities including agentic workflow orchestration, URI-based resource mapping for filesystem and database access, and the delivery of interactive HTML-based user interfaces. It also includes comprehensive support for asynchronous task management, enterprise identity integration via OAuth and SSO, and a registry system for server discovery and versioning.
The project provides client and server SDKs, alongside automated scaffolding tools for generating project structures and server boilerplate.