MCP 使用指南
版本说明:本文档旨在提供对 Model Context Protocol(MCP)的全面介绍及其实际使用方法,帮助开发者快速上手并将其集成至各类 AI 应用中。
什么是 MCP?
MCP(Model Context Protocol) 是一种开源协议,旨在以标准化方式为大语言模型(LLM)提供动态、丰富的上下文信息。通过 MCP,模型可以灵活接入外部数据源和服务,从而显著增强理解与推理能力。
类比理解
可以将 MCP 类比为 AI 世界的“U 盘”:
如同 U 盘支持灵活读取不同类型的数据文件,MCP Server 也可以挂载多种上下文插件,供语言模型按需调用,实现“即插即用”的能力拓展。
与 Function Tool 的区别
功能 | Function Tool | MCP |
---|---|---|
接入目标 | 特定功能或 API 接口 | 任意结构化上下文资源 |
模型交互方式 | 功能调用(Function Call) | 上下文接入(Context Injection) |
模块化与扩展性 | 较低 | 高,支持插件化、多源并存 |
适用场景 | 明确定义的任务 | 模型需感知复杂上下文的智能应用场景 |
应用场景示例
MCP 可广泛应用于各种需动态上下文感知的智能代理系统中。以下为典型场景:
1. 智能旅行规划助手
- 传统方式:需要单独对接日历、邮箱、航司 API,每个服务需独立实现认证、数据提取和错误处理。
- MCP 集成:AI 助手通过 MCP Server 一键接入日历、邮箱、订票服务,显著简化接入流程。
2. 高级智能 IDE
- 传统方式:需手动集成多个组件,如文件系统、Git、包管理器、代码文档等。
- MCP 集成:通过统一协议访问所有开发环境模块,提升代码生成、自动补全等智能能力。
3. 数据分析与洞察平台
- 传统方式:需分别维护数据库连接、数据清洗流程、可视化工具等逻辑。
- MCP 集成:模型可自动接入多个数据源与工具,实现统一的数据访问与上下文处理。
快速开始:创建 MCP Server
步骤 1:填写基础信息
在创建 MCP Server 时,请输入唯一的 名称 及简洁 描述,用于识别该服务及其功能。
步骤 2:选择配置方式
您可以选择以下两种配置 MCP Server 的 方式:
2.1 使用 JSON 配置(推荐)
通过 JSON 结构添加 MCP Server,可直接从以下 MCP 导航平台获取配置示例:
- ModelScope
- Smithery
- Pulse
- Awesome MCP Servers
- Hosting Servers(适用于 SSE)
- MCP.so
- Glama
- Cursor Directory
- GitHub 官方仓库
- Reddit MCP 论坛
示例配置:
"mcpServers": {
"fetch": {
"command": "uvx",
"args": ["mcp-server-fetch"]
}
}
2.2 手动配置模式
手动配置支持两种运行模式:
2.2.1 本地运行(STDIO 模式)
适用于在本地机器上运行 MCP Server,需指定执行命令与可选的环境变量。
- 执行命令示例:
npx -y tavily-mcp@0.1.4
- 环境变量(可选):
TAVILY_API_KEY=xxxxxxx
2.2.2 远程服务(SSE 模式)
适用于通过远程服务进行上下文交互,需提供服务地址及(可选)请求头。
- 示例 URL:
https://mcp.sentry.dev/sse
- Headers 示例:
Authorization: Bearer sk-xxxxxxx