MCP 协议完整指南

Model Context Protocol(模型上下文协议)是由 Anthropic 提出的开放协议,旨在为大型语言模型(LLM)与外部数据源、工具和服务建立标准化接口。

📖 概述

什么是 MCP?

MCP(Model Context Protocol) 是一个开放协议,类似于 “AI 领域的 USB-C 接口”,为大语言模型(LLM)提供连接外部世界(数据库、文件系统、API、IoT 设备等)的标准化方式。

  • 提出方:Anthropic(2024 年 11 月)
  • 核心目标:解决 AI 生态碎片化问题,实现模型与物理世界的高效交互
  • 定位:开放标准,类似于 TCP/IP 在互联网中的地位

核心价值

  1. 打破信息孤岛:实时连接数据库、API、物联网设备等动态数据源
  2. 扩展模型能力:通过工具调用实现文件操作、系统控制等物理世界交互
  3. 统一开发标准:一次开发多端通用,降低 40% 以上集成成本
  4. 增强互操作性:提供统一的协议标准,减少定制开发成本

🏗️ 技术架构

三大核心组件

┌─────────────────────────────────────────────────────┐
│                   MCP Host                          │
│   (Claude Desktop / Cursor IDE / VSCode 等)          │
│                                                      │
│  ┌───────────────────────────────────────────────┐  │
│  │              MCP Client                       │  │
│  │  - 协议协商与消息路由                           │  │
│  │  - 工具管理与能力协商                           │  │
│  └───────────────────────────────────────────────┘  │
└─────────────────────────────────────────────────────┘
                          ↕ (JSON-RPC)
┌─────────────────────────────────────────────────────┐
│                   MCP Server                        │
│   (数据库接口 / 文件系统 / GitHub API / 自定义工具)    │
│                                                      │
│  ┌───────────────────────────────────────────────┐  │
│  │              Tools/Resources                  │  │
│  │  - 加法工具                                     │  │
│  │  - 文件读写                                     │  │
│  │  - 天气查询                                     │  │
│  └───────────────────────────────────────────────┘  │
└─────────────────────────────────────────────────────┘
组件说明示例
MCP Host发起请求的应用程序Claude Desktop、Cursor IDE、VSCode
MCP Client主机与服务器间的通信中介内嵌在 Host 中,负责协议协商
MCP Server提供具体功能的轻量级服务文件系统工具、数据库接口、GitHub API

通信机制

协议基础

  • 底层协议:基于 JSON-RPC 2.0
  • 消息类型:Request(请求)、Response(响应)、Notification(通知)
  • 传输方式:支持多种传输协议(HTTP、WebSocket、STDIO)

通信流程

1. Host 启动并连接到 MCP Server
   ↓
2. 协议握手与能力协商
   ↓
3. LLM 识别需要外部工具
   ↓
4. MCP Client 向 Server 发送请求
   ↓
5. Server 执行操作并返回结构化结果
   ↓
6. Host 将结果整合并更新上下文
   ↓
7. LLM 生成最终响应

🛠️ 使用方法

基本使用流程

1. 选择 MCP Host

常见的 MCP Host 包括:

  • Claude Desktop:官方桌面应用
  • Cursor IDE:集成 MCP 的 AI 编辑器
  • VSCode:通过扩展支持 MCP
  • Cline:VSCode 插件

2. 配置 MCP Server

在 Claude Desktop 中,配置文件通常位于:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%/Claude/claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

配置示例

{
  "mcp_servers": [
    {
      "name": "文件系统工具",
      "command": "claude-fs-mcp",
      "arguments": ["--root", "/Users/muliminty/Documents"]
    },
    {
      "name": "天气服务",
      "command": "uv",
      "arguments": [
        "--directory",
        "/path/to/weather-mcp",
        "run",
        "weather_server.py"
      ],
      "env": {
        "OPENWEATHER_API_KEY": "your_api_key_here"
      }
    }
  ]
}

3. 重启应用并授权

  1. 重启 Claude Desktop
  2. 在界面中可以看到新增的工具图标
  3. 首次使用时需要授权访问权限

应用场景

场景具体操作示例典型 MCP Server
文件系统集成读取、编辑、整理本地文件filesystem-mcp
代码库管理执行 Git 操作、代码审查git-mcp
数据库交互执行 SQL 查询,生成报告mysql-mcp、postgres-mcp
网络搜索实时获取最新信息brave-search-mcp
API 调用访问第三方服务github-mcp、slack-mcp
IoT 控制控制智能家居设备homeassistant-mcp

🔌 MCP 生态系统

官方服务器

服务器名称功能语言
filesystem-mcp本地文件系统操作TypeScript
git-mcpGit 仓库操作TypeScript
postgres-mcpPostgreSQL 数据库操作Python
sqlite-mcpSQLite 数据库操作TypeScript
brave-search-mcpBrave 搜索引擎TypeScript

社区服务器

GitHub 上有数百个社区贡献的 MCP 服务器,覆盖:

  • 数据库:MySQL、MongoDB、Redis 等
  • API 集成:GitHub、Slack、Jira、Notion 等
  • 工具链:Docker、Kubernetes、AWS 等
  • 生产力工具:日历、邮件、任务管理等

可用的 MCP Server 列表

以下是一些常用的 MCP Server:

  1. 文件系统

  2. Git

  3. 数据库

  4. 搜索

  5. 其他工具


📊 MCP vs 其他方案

特性MCPLangChain ToolsFunction Calling
标准化程度开放协议框架特定模型特定
跨平台能力
开发复杂度
生态支持快速增长成熟有限
扩展性

⚠️ 注意事项

安全性

  1. 最小权限原则:仅授予必要的资源访问权限
  2. 沙盒隔离:MCP Server 应在受限环境中运行
  3. 数据隐私:敏感信息不应暴露给 AI 厂商
  4. 访问控制:实现严格的身份验证和授权机制

最佳实践

  1. 明确指令:向 LLM 提出需求时,明确指出要使用的工具及执行步骤
  2. 网络环境:确保网络连接稳定,部分 MCP 服务器需访问外部 API
  3. 错误处理:妥善处理网络故障、API 限流等异常情况
  4. 性能优化:合理设置超时、缓存机制

🚀 发展趋势

  1. 生态快速扩张:2025 年 4 月以来,阿里、腾讯、谷歌、字节跳动等企业纷纷宣布接入 MCP
  2. 标准化趋势:MCP 有望成为 AI 与外部交互的标准协议
  3. Agent 时代:MCP 是推动 AI Agent 进入生产力时代的关键技术
  4. 商业化应用:企业级 MCP 解决方案不断涌现

📚 学习资源

官方资源

社区资源

实践项目

  • Claude Desktop 配置示例
  • 自定义 MCP Server 开发
  • MCP 在企业中的应用案例

💎 总结

MCP 协议是 AI 走向工具增强型智能的关键一步。它让 LLM 从纯粹的对话助手,升级为能操作现实资源的智能代理。随着生态中工具服务器的丰富,其应用场景将更加广阔。

关键要点

  • MCP 是 AI 与外部世界连接的标准化协议
  • 采用 Client-Server 架构,基于 JSON-RPC 2.0
  • 生态快速发展,社区资源丰富
  • 适用于文件系统、数据库、API 等多种场景
  • 安全性和权限管理是关键

MCP ModelContextProtocol AI协议 Agent Claude Anthropic