AI 的‘USB-C 时刻’:深入探讨模型上下文协议(MCP)
Source: Dev.to
介绍
如果你最近一直在构建 AI 驱动的应用或使用 AI 编码助手,你很可能已经遇到过 Context Wall:需要让你的大型语言模型(LLM)访问 Jira 工单、查询本地数据库或检查 Google 日历,而这通常需要为每个模型或平台编写无尽的自定义“胶水代码”。
现在,引入 Model Context Protocol (MCP),由 Anthropic 提出。MCP 正迅速成为连接 AI 模型与数据源及工具的通用标准——可以把它想象成 AI 版 USB‑C。
Model Context Protocol 概览
MCP 充当由三个主要组件组成的通用适配器:
- Host – AI 所在的位置(例如 Claude Desktop、Cursor、IDE)。
- Client – 主机中与协议通信的部分。
- Server – 一个小脚本或服务,用于公开你的数据和工具。
为一个数据源编写一个 MCP 服务器,所有兼容 MCP 的 AI 都能立即使用。
MCP 之前
- 5 个 AI 代理 × 10 个数据源 = 50 个独立集成。
- 新模型需要重写集成逻辑。
- 这种方式脆弱、耗时且难以维护。
MCP 之后
- 每个数据源一个服务器,可在模型之间复用。
- 简化维护,加快新模型的接入速度。
原语
MCP 定义了三种原语,用于描述 AI 如何与你的世界交互:
| 原语 | 描述 | 示例 |
|---|---|---|
| Resources | 只读数据集(AI 世界的 “GET” 请求)。 | 本地日志文件、数据库模式、README 文件、文档 |
| Tools | AI 可调用的可执行函数,用于执行操作。 | 创建 GitHub Issue、发送 Slack 消息、部署到 Vercel、查询数据库 |
| Prompts | 预定义模板,用于在使用特定数据源时指导 AI 的行为。 | 工具使用的上下文指令 |
安全考虑
Security is the biggest hurdle for AI adoption in enterprise environments. With MCP:
- The server runs locally on your machine.
- Sensitive credentials (e.g., SQL database passwords) never leave the host.
- The AI only receives the specific data it needs, preventing accidental leakage of API keys or other secrets.
示例 MCP 服务器(FastMCP)
使用 FastMCP 框架入门出奇地简单。下面的 Python 脚本创建了一个简单的服务器,让 AI 能检查本地服务的状态。
# Install with: pip install fastmcp
from fastmcp import FastMCP
import requests
# Create the server
mcp = FastMCP("SystemHealth")
@mcp.tool()
def check_service_status(url: str) -> str:
"""Checks if a local service is running."""
try:
response = requests.get(url, timeout=5)
return f"✅ Service at {url} is UP (Status: {response.status_code})"
except Exception as e:
return f"❌ Service at {url} is DOWN. Error: {str(e)}"
if __name__ == "__main__":
mcp.run()
运行脚本,然后将服务器连接到 Claude Desktop、Cursor 或任何兼容 MCP 的主机。你的 AI 助手现在可以代表你 ping 网站或内部服务。
入门指南 / 路线图
- 探索已有服务器 – 访问 MCP Server GitHub Repository 以了解社区已经构建的内容。
- 配置你的主机 – 对于 Claude Desktop,编辑
claude_desktop_config.json以添加新服务器。其他主机有类似的配置文件。 - 构建你自己的 – 使用 Python 或 TypeScript SDK 将内部 API、工具或数据源暴露给你的 AI 工具。
社区构建的 MCP 服务器
- Postgres/MySQL – 直接查询数据库。
- GitHub/GitLab – 管理仓库和拉取请求。
- Puppeteer – 让 AI 实时浏览网页。
- Google Drive / Notion – 访问你的知识库。
Conclusion
模型上下文协议正将 AI 从一个简单的聊天机器人转变为为您工作的代理。通过标准化模型访问上下文的方式,MCP 将 AI 集成从云端转移到本地工作流,同时保持安全性和隐私。这确实是 AI 的“USB‑C 时刻”——一种解锁前所未有的集成可能性的通用标准。