随着 AI 模型的能力不断增强,如何让它们与外部工具、数据源高效、安全地交互,成为了开发者关注的热点。今天,我们来聊聊一个新兴的开放标准——模型上下文协议(MCP) ,并看看它在 VS Code 中的实际应用。
什么是 MCP?
MCP(Model Context Protocol,模型上下文协议) 是一种开放标准,旨在为 AI 模型与外部工具之间提供一个统一的中间层。你可以把它理解为 AI 世界的“万能插座”——通过标准化的接口,AI 可以调用文件系统、数据库、API 等外部服务,而无需为每个工具单独适配。
在 VS Code 中,MCP 被集成到聊天扩展的能力体系中,成为三种工具调用方式之一:
- 内置工具:VS Code 原生提供的功能;
- 扩展程序贡献的工具:由第三方扩展提供的工具;
- MCP 服务器:通过 MCP 协议接入的外部工具服务。
MCP 的出现,极大地扩展了 AI 助手的能力边界,让它们不仅能“说话”,更能“做事”。
如何使用 MCP
下面我们以 GitHub MCP 为例,手把手带你体验一次完整的 MCP 使用流程。
第一步:安装 MCP 服务器
从 MCP 注册表中安装的 MCP 服务器:MCP Registry
第二步:生成访问令牌
为了让 MCP 服务器能够代表你操作 GitHub,你需要生成一个访问令牌。
在 GitHub 设置中,进入 Developer settings → Personal access tokens,你会看到两种类型:
- Fine-grained personal access tokens(推荐) :细粒度令牌,可以精确控制权限,安全性更高。
- Tokens (classic) :传统令牌,权限范围较大,适合简单场景。
建议选择 Fine-grained tokens,并授予必要的仓库读写权限。
第三步:添加权限并生成令牌
根据你的使用场景,勾选相应的权限(如 repo、contents、issues 等),然后生成令牌并复制保存。
第四步:在工作区中安装 MCP
点击在工作区安装,会生成一个项目级别的 mcp 配置文件,把 token 改为刚才生成的token令牌
第五步:使用 MCP 与 AI 协作
配置完成后,你就可以在 VS Code 的聊天扩展中调用 GitHub MCP 了。例如,你可以让 AI 帮你:
- 创建一个新的 GitHub 仓库;
- 将当前项目推送到远程;
- 创建 Issue 或 PR。
当你发出指令后,AI 会通过 MCP 调用 GitHub API 执行操作,并在聊天窗口中返回执行结果。
这里以推送代码仓库为例
使用 github 的 mcp 把项目推送到github上面
从回答页面可以看到,已经在使用这个mcp
第六步:验证结果
操作完成后,你可以登录 GitHub 查看仓库是否已成功创建或更新。如果一切顺利,恭喜你,你已经成功体验了 MCP 的强大能力!
MCP 调用的上下文开销
MCP 的工具调用会占用较大的上下文窗口,因为每次调用都需要传递工具的描述、参数结构、返回值等信息。对于上下文窗口有限的模型(如某些轻量级模型),这可能影响对话的连贯性。
建议开发者在使用 MCP 时,注意控制工具调用的频率和复杂度,或选择支持更大上下文的模型。
踩坑记录:令牌选择有讲究
在实际操作中,最容易踩坑的地方就是令牌类型的选择。以下是我们的建议:
- ✅ Fine-grained personal access tokens
适合生产环境或权限要求较高的场景。你可以精细控制每个令牌的权限范围,降低安全风险。 - ⚠️ Tokens (classic)
虽然配置简单,但权限范围较大,容易暴露过多能力,不建议在复杂项目中使用。
如果你遇到“权限不足”或“API 调用失败”的错误,请优先检查令牌的权限范围是否匹配。
总结
MCP 作为一个开放标准,改变了 AI 与外部世界交互的方式。它让 AI 模型不再“闭门造车”,而是能够真正“动手做事”。无论是在 VS Code 中调用 GitHub,还是接入数据库、云服务,MCP 都提供了一个统一、灵活的接口。
一些 MCP 聚合平台
最后列举一些 MCP 聚合平台,可以根据自己的需要进行选择
- MCP.os:mcp.so/
- 魔搭:modelscope.cn/mcp