从「各自为战」到「统一接口」

如果你用过多个 AI 工具,一定经历过这种痛苦:每个 AI 都有自己的插件生态,互不兼容。Claude 能连的数据库,GPT 连不上;Cursor 能用的工具,VS Code 的 Copilot 用不了。

Anthropic 在 2024 年底开源的 MCP(Model Context Protocol),正在解决这个问题。

它的定位很清晰:AI 工具的「USB-C」。就像 USB-C 统一了设备充电和数据传输,MCP 要统一 AI 与外部工具、数据源的连接方式。

MCP 解决了什么问题?

1. 工具碎片化

之前,每个 AI 应用都要单独开发对接各种数据源的适配器:

  • 想让 AI 读本地文件?写一套文件系统接口
  • 想让 AI 连数据库?写一套数据库驱动
  • 想让 AI 调 API?写一套 HTTP 客户端

这些工作重复、低效,而且维护成本极高。

2. 上下文割裂

不同 AI 工具之间无法共享上下文。你在 Claude 里整理的数据,无法无缝传递给其他 AI 应用。每次都要重新描述背景、重新导入数据。

3. 安全边界模糊

AI 访问敏感数据时,缺乏统一的权限控制机制。每个工具自己实现安全策略,漏洞百出。

MCP 的核心设计

MCP 采用 Client-Server 架构

┌─────────────┐     MCP Protocol     ┌─────────────┐
│  AI Client  │ ◄─────────────────► │ MCP Server  │
│  (Claude,   │                      │ (文件系统、  │
│   Cursor)   │                      │  数据库、API)│
└─────────────┘                      └─────────────┘

三个核心原语:

  1. Resources - 暴露数据源(文件、数据库记录等)
  2. Prompts - 预定义的提示模板
  3. Tools - 可执行的操作(查询、计算、API 调用等)

这种设计让 AI 应用可以通过统一的协议访问任意数据源和工具,就像浏览器通过 HTTP 访问任意网站一样。

生态正在爆发

MCP 发布后,生态发展速度惊人:

  • 官方服务器:文件系统、GitHub、PostgreSQL、Google Drive 等
  • 社区贡献:Notion、Slack、Linear、Figma 等主流工具的 MCP 服务器
  • 聚合平台:mcp.so、smithery.ai 等服务器聚合网站出现

Claude Desktop、Cursor、Windsurf 等 AI 编辑器已经原生支持 MCP。开发者写一次 MCP 服务器,所有兼容的 AI 应用都能用。

开发者视角:如何使用?

以连接 GitHub 为例:

# 安装 MCP GitHub 服务器
npx @modelcontextprotocol/server-github

# 在 Claude Desktop 配置
{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["@modelcontextprotocol/server-github"]
    }
  }
}

配置完成后,AI 就能直接操作你的 GitHub 仓库:查看 issue、创建 PR、管理分支。

自定义 MCP Server

最有趣的是,你可以为自己团队的业务系统写 MCP Server:

import { Server } from "@modelcontextprotocol/sdk/server/index.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";

const server = new Server({
  name: "my-company-server",
  version: "1.0.0",
}, {
  capabilities: {
    tools: {},
    resources: {},
  },
});

// 定义工具
server.setRequestHandler(ListToolsRequestSchema, async () => ({
  tools: [{
    name: "query_customer",
    description: "查询客户信息",
    inputSchema: {
      type: "object",
      properties: {
        customer_id: { type: "string" },
      },
    },
  }],
}));

// 处理调用
server.setRequestHandler(CallToolRequestSchema, async (request) => {
  if (request.params.name === "query_customer") {
    // 调用你的内部 API
    return { content: [{ type: "text", text: "客户信息..." }] };
  }
});

const transport = new StdioServerTransport();
await server.connect(transport);

为什么说这是「USB-C 时刻」?

USB-C 成功的关键不在于技术本身,而在于:

  • 行业巨头共同支持
  • 开放标准,无人垄断
  • 一次适配,到处可用

MCP 正在走同样的路:

  • Anthropic 开源协议,不收授权费
  • 微软、Google 等大厂开始关注兼容性
  • 开发者社区热情高涨

如果 MCP 能成为事实标准,AI 应用的开发模式将彻底改变:不再需要为每个 AI 单独开发集成,写一次,处处可用。

潜在风险

当然,也有值得警惕的地方:

  1. Anthropic 主导:协议虽然开源,但 Anthropic 有较大话语权
  2. 安全边界:MCP 服务器需要访问敏感数据,权限模型需要更完善
  3. 竞争格局:OpenAI、Google 是否会推自己的协议,导致新的分裂?

结语

MCP 的价值不在于技术创新,而在于标准化的力量。它让 AI 应用从「各自为战」走向「互联互通」。

对于开发者来说,现在正是入场的好时机:

  • 学习 MCP 协议规范
  • 为常用工具贡献 MCP Server
  • 规划团队内部的 AI 集成架构

AI 工具的「USB-C」已经出现,接下来会涌现多少创新的「外设」,值得期待。


相关资源: