模型上下文协议(MCP)这玩意儿,最近在AI圈里讨论度很高。简单来说,它是一个开放式协议,能让大语言模型应用(LLM)跟外部的数据源和工具无缝对接。不管你在开发基于AI的IDE,改进聊天界面,还是设计定制化的AI工作流程,MCP都为连接LLM和它所需的背景信息,提供了一个标准化的方案。

如何看待MCP
结合网上的信息和自己的一些试用体验,可以做个阶段性的总结。
1. 本质定位
说白了,MCP的本质就是大模型调用外部服务的一种方式。它跟咱们熟知的Function Calling在理念上是一致的,目标都是扩展大模型的能力——通过对接外部服务和数据,让它的回答更强大、更接地气。不过呢,目前它还没有达到那种“变革性”的影响力,还处在发展阶段,所以不要期待一上来就能翻天覆地。
2. 技术特点对比
MCP 与 Function Calling 的主要区别
- 调用方式: MCP走的是RPC请求,而Function Calling则是传统的HTTP API请求。
- 接入复杂度: MCP需要实现RPC服务,配置相对复杂一些;而Function Calling只需要写个API接口,配置起来要简单得多。
3. 核心挑战
目前MCP最大的难点,其实不在技术本身,而在于大模型的意图识别。想象一下,用户随便问一个问题,L模型怎么知道该匹配哪个外部服务?怎么知道要去调用哪个工具?这确实是个难题。目前的做法是让用户配一个配置文件,然后让Claude自己去识别和调用。这算是个折中方案,但也说明这条路还没完全跑通。
4. MCP的创新价值
虽然面临挑战,但MCP的价值在于它定义了一套标准且完善的协议规范。这就像给大模型生态建了个统一的“交通规则”,对整个生态的协同发展有重要的指导意义。可以类比一下VS Code的LSP协议,它对编程领域的影响是根基性的。MCP试图在AI工具领域扮演类似的角色,这本身就是一件很有意义的事。
5. 发展前景分析
那么,MCP能否成为行业标准?这主要取决于两个因素:第一,第三方的服务和工具接入的数量够不够多;第二,主流的大模型和应用是否愿意支持它。目前来看,它只支持桌面版的Claude,网页版还不行。不过,它的应用场景确实很丰富,未来发展潜力还是相当大的。
6. 技术实现要点
服务端(MCP Server):
- 通过描述信息定义自己能提供什么服务
- 设置好请求的处理逻辑
- 启动本地监听服务,等待调用
客户端接入:
- 提供一个配置界面,让用户设置
- 实现服务发现,获取服务的能力
- 完成意图识别,并调用对应的服务
- 最后是RAG(Rpc-call-Augmented Generation)处理,把工具返回的结果用起来
本地试用MCP
下载并配置Claude客户端
先从官方渠道下载Claude Desktop客户端。
这里以Bra ve Search服务为例。首先需要去注册一个Bra ve Search API账号,并申请一个API key,这个过程中需要绑定支付方式(用中行的VISA卡可以成功)。
接下来,找到Claude Desktop的配置文件所在位置:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json(%APPDATA%一般是指C:\Users\)\AppData\Roaming
或者在客户端设置里,找到 Developer - Edit Config,直接打开配置文件。
然后修改配置,添加如下内容:
{
"mcpServers": {
"bra ve-search": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-bra ve-search"],
"env": {
"BRA VE_API_KEY": "YOUR_API_KEY"
}
}
}
}
保存后重启Claude客户端。你会看到界面上多了两个图标(一个?和一个?)。
在设置里的 Developer - Edit Config 中,也可以看到刚刚添加的 bra ve-search 配置。
当然,这里只是举例。Github的MCP Servers仓库里有更多现成的服务,你可以根据自己的需求去添加。
MCP官方仓库Servers一览
官方维护的服务器列表如下,方便你快速了解有哪些能力可以用:
| 名称 | 功能描述 |
|---|---|
| Filesystem | 具有可配置访问控制的安全文件操作 |
| GitHub | 仓库管理、文件操作和GitHub API集成 |
| GitLab | GitLab API,支持项目管理 |
| Git | 用于读取、搜索和操作Git仓库的工具 |
| Google Drive | Google Drive的文件访问和搜索功能 |
| PostgreSQL | 具有架构检查功能的只读数据库访问 |
| Sqlite | 数据库交互和商业智能功能 |
| Slack | 频道管理和消息传递功能 |
| Sentry | 从Sentry.io检索和分析问题 |
| Memory | 基于知识图谱的持久化记忆系统 |
| Puppeteer | 浏览器自动化和网页抓取 |
| Bra ve Search | 使用Bra ve的搜索API进行网络和本地搜索 |
| Google Maps | 位置服务、路线规划和地点详情 |
| Fetch | 网页内容获取和转换,优化LLM使用 |
