MCP介绍与使用
一、什么是MCP
MCP(Model Context Protocol,模型上下文协议) ,2024年11月底,由 Anthropic 推出的一种开放标准,旨在统一大型语言模型(LLM)与外部数据源或工具之间的通信协议。MCP 的主要目的在于解决当前 AI 模型因数据孤岛限制而无法充分发挥潜力的难题,MCP 使得 AI 应用能够安全地访问和操作本地及远程数据,为 AI 应用提供了连接万物的接口。
二、MCP的功能
MCP通过引入多样化的MCP Server能力,显著增强了AI工具的功能。以下是一些官方参考MCP Server能力,展示了MCP的核心功能和SDK的应用:
- 文件系统:提供安全文件操作,带可配置的访问控制。
- PostgreSQL:提供只读数据库访问,具备架构检查功能。
- SQLite:支持数据库交互和商业智能功能。
- Google Drive:实现Google Drive的文件访问和搜索功能。
- Git:工具用于读取、搜索和操作Git仓库。
- GitHub:集成仓库管理、文件操作和GitHub API。
trae 是一个基于vscode开发并与AI深度集成的IDE,提供智能问答、代码自动补全以及基于 Agent 的 AI 自动编程能力。
trae也很快支持了MCP,这里我使用trae作为MCP客户端,配置我的工具列表(github,filesystem),可参考https://docs.trae.com.cn/ide/model-context-protocol
然后在聊天界面对话,大模型能够问题分析是否需要调用MCP 工具列表,如果需要则会直接读取对应MCP工具,或者操作。例如:
更多的mcp server 列表可见https://mcp.so/
三、目前的问题
安全!安全!安全!
很多的mcp server还不够成熟,一旦外部工具遭遇恶意操纵,或者服务器端配置存在纰漏,就会给AI 带来不可控的安全风险。尤其在企业场景中,如果部署了“大一统”的MCP 环境,内部机密数据便可能在不经意间流向不安全的外部接口,而不法分子也可能利用“工具描述”或“提示词”来操纵模型执行越权操作,包括上面提到的trae的mcp文档介绍中,也有提到
也表明了mcp的稳定性还不是很高,因此对于网上的MCP server大家可以先筛选一个热度较高的进行尝试。