Model Context Protocol (MCP)
The Model Context Protocol (MCP):
- Open-source standard
- Enables AI models to seamlessly connect with external data sources, tools, and software systems
- Acts as a universal "USB-C port" for AI, allowing LLMs to securely access local files, databases, and APIs to enhance context-aware responses.
- Introduced by Anthropic in late 2024
Key Aspects of MCP:
- Purpose: Replaces fragmented, custom integrations with a single, open standard, making it easier to connect AI assistants to enterprise data, tools, and development environments.
- Components: Consists of:
- MCP Clients
- MCP Hosts - AI apps like Claude or coding agents
- MCP Servers - programs that bridge specific data sources
- Security: MCP supports secure, two-way connections, allowing developers to control exactly what data is exposed to the AI.
- Functionality: Enables models to read files, query databases, use search engines, and call external APIs, providing live, relevant context for tasks.
- Open Standard: Hosted by the Linux Foundation, the protocol is designed for broad industry adoption.
MCP differs from RAG (Retrieval-Augmented Generation) by focusing on active, two-way interaction with systems, whereas RAG is focused on retrieving documents for context.
For developers, it provides SDKs in Python and TypeScript.
MCP clients
MCP clients are the components within AI applications (AI Hosts) that manage one-to-one connections with MCP servers, translating AI requests into protocol-standardized messages.
Popular MCP Client Applications
Several major AI-powered platforms and editors have integrated MCP client support to allow users to pull in their own tools and context:
- Claude Desktop: Anthropic’s flagship app provides a built-in interface for managing local and remote MCP servers (e.g., Google Drive, Slack, GitHub).
- Cursor: An AI-native code editor that uses MCP to give its internal AI models direct access to project files, local databases, and custom developer tools.
- Windsurf Editor: A developer environment that supports tool invocation through MCP servers, allowing it to seamlessly interact with external scripts and APIs during coding sessions.
- Visual Studio Code (Agent Mode): Developers can use extensions to register MCP servers, enabling chat assistants to interact with internal enterprise tools directly within the editor.
- JetBrains IDEs: Platforms like IntelliJ IDEA feature an MCP-client UI where users can paste server configurations to bring external tool catalogues into the AI Assistant pane.
- BeeAI: An open-source desktop AI assistant from IBM that supports tool integration via built-in or custom MCP servers.
Core Client Features
In the MCP architecture, clients don't just consume data; they provide specific features that enable complex, "agentic" workflows:
- Sampling: Allows a server to request that the client (and its LLM) generate a completion, enabling the AI to "ask back" for clarification or more information.
- Elicitation: Provides a structured way for servers to ask users for specific information (like a password or preference) through the client’s UI.
- Roots: Allows the client to define specific file system boundaries, telling servers which directories they are permitted to access for safety and context scoping.
Developer SDKs for Building Clients
If you are building your own AI application, you can implement an MCP client using official software development kits:
- TypeScript/Node.js SDK: The most comprehensive SDK for building web-based or local Node.js clients using standard JSON-RPC 2.0.
- Python SDK: Ideal for data science or automation workflows, allowing easy integration with Python-based AI agents.
MCP Hosts
Model Context Protocol (MCP) hosts are AI applications or environments that manage, connect, and run MCP clients to interact with external data sources (servers). Key examples include Claude Desktop, Claude Code, Zed, Replit, Cursor, and Sourcegraph.
Key Roles of MCP Hosts:
- Orchestration: Act as the container for AI models to coordinate and communicate with multiple MCP servers.
- Security & Permissions: Manage user consent and enforce security policies (e.g., in sandboxed iframes) to control what data servers can access.
- Workflow Management: Aggregate user prompts, conversation state, and tool results from various sources to enable seamless interaction.
- Session Control: Initialize, maintain, and terminate connections between LLMs and tools via the MCP client.
Primary MCP Host Examples:
- Claude Desktop: Anthropic's desktop application is a primary implementation of an MCP host, allowing the Claude model to utilize local tools and data.
- Claude Code: An AI agentic coding tool that acts as a host to interact with development-focused MCP servers.
- AI IDEs (Zed, Cursor, Replit): Integrated Development Environments that use MCP to connect coding assistants with files, documentation, and databases.
- Platforms & Agents: Other platforms like Workato or custom agents that orchestrate data access via the protocol.
What's the difference between mcp host and mcp client?
In the Model Context Protocol (MCP), the Host is the overall application you interact with, while the Client is the specific component inside that application that handles the technical connection to a server.
Key Differences at a Glance
- What it is
- MCP Host: The end-user application (e.g., Claude Desktop, Cursor).
- MCP Client: A protocol handler or "adapter" inside the host.
- Primary Role
- MCP Host: Manages the user interface and coordinates multiple clients.
- MCP Client: Maintains a 1:1 connection with a single MCP server.
- Responsibility
- MCP Host: Security policies, user consent, and aggregating data for the AI model
- MCP Client: Translating protocol messages (JSON-RPC) between the host and server.
- Hierarchy
- MCP Host: A single Host can contain multiple Clients.
- MCP Client: A Client is a subsidiary of the Host.
The "Restaurant" Analogy
To make it simpler, imagine a restaurant setting:
- The Host is the Executive Chef: They decide what needs to be cooked and oversee everything, but they don't leave the kitchen to buy ingredients.
- The Client is the Waiter: They take the Chef's specific order, run to the source (the Server), and bring back exactly what was requested in a format the Chef can use.
Why the distinction matters
While you will often hear people refer to applications like Claude Desktop as "the client," technically they are hosts. This architecture allows one app to connect to many different data sources (like Google Drive, Slack, and local files) simultaneously by instantiating a separate client for each one.
What is a MCP Client in Claude Desktop?
In Claude Desktop, the MCP client is the internal software layer that allows the app to "talk" to the tools you've added. While you might call the whole app "the client," it actually functions as a host that manages multiple individual client connections.
How it works in Claude Desktop
- The Translator: When you ask Claude to "read a file," the client translates that human request into a technical JSON-RPC message that the Filesystem server understands.
- The Connection Manager: Claude Desktop can run several clients at once. For example, one client might be connected to a GitHub server while another is connected to a Google Drive server.
- Permission Gatekeeper: The client facilitates the security handshake. Before a tool executes, the client triggers the UI popup in Claude Desktop asking for your explicit permission.
How to see them
You can see your active MCP clients and their available tools by clicking the "hammer" or "plug" icon (the MCP server indicator) in the bottom-right corner of the chat input box.
Configuration
Claude Desktop's clients are configured via a local JSON file (claude_desktop_config.json). This file tells the internal clients exactly how to launch and communicate with your servers.
Config File Location:
- macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
- Windows: %APPDATA%\Claude\claude_desktop_config.json
MCP Servers
Model Context Protocol (MCP) servers:
- Lightweight programs that connect AI models (like Claude or ChatGPT) to external data sources and tools, such as local files, databases, GitHub, or Slack
- Provide a standardized interface, enabling AI agents to securely access, read, and manipulate data beyond their training sets.
Key Aspects of MCP Servers:
- Functionality: They expose specific capabilities—resources, prompts, and tools—to AI applications.
- Use Cases: Common implementations include file system access for documentation, database querying, and API interactions for services like GitHub or Google Tasks.
- Security: They provide controlled, authorized access to local or remote resources, with user permission required for actions.
- Architecture: As part of the Model Context Protocol, they act as the "server" in a client-server model, connecting to "hosts" like desktop apps.
Common MCP Server Examples:
- Local File System: Allows AI to read, write, and organize local documents.
- GitHub/GitLab: Enables AI to manage repositories, create issues, and pull code.
- Database/API Connectors: Connects AI to SQL databases, HubSpot CRM, or AWS services.
- Developer Tools: Includes servers for Terraform, Angular CLI, and Home Assistant.
You can build your own MCP server using Python or TypeScript, often utilizing tools like uv for environment setup.




