第 3 篇:把 MCP 接入 AI,以及生态里有什么

前两篇我们搞清了 MCP 的概念,还手写了一个天气查询服务器。但最酷的部分还没来——**怎么让真正的 AI 用上它?**这一篇讲三件事:

  1. 把我们的天气 Server 接入 AI 客户端(Claude CLI + VS Code Cline)
  2. 看看社区已经有哪些现成的 MCP Server 可以直接用
  3. 聊聊 MCP 和 Agent 到底是什么关系

3.1 接入 Claude CLI 和 VS Code Cline

Claude Code CLI

Claude CLI 是 Anthropic 推出的命令行 AI 工具,原生支持 MCP。把我们的 Server 接进去,在终端里就能让 Claude 查天气。

提示:这里需要提前安装好 Claude Code CLI 工具

创建任意一个项目,在项目目录下创建 .claude/settings.json

mkdir -p .claude

写入:

{
  "mcpServers": {
    "weather-server": {
      "command": "node",
      "args": ["/绝对路径/mcp-weather-server/index.js"]
    }
  }
}

路径注意args 里的路径一定要写绝对路径,相对路径在 CLI 启动时解析不准,容易报错。

保存后在项目目录下运行 claude,然后问它:

“北京今天天气怎么样?”

Claude 会自动调用你注册的 MCP Server 来查天气,结果直接显示在终端里。

VS Code Cline 插件

Cline 是 VS Code 上一个流行的 AI 编码插件,也支持 MCP。

Cline 的 MCP 配置可以打开 Cline 插件,在顶部 TopBar 选项中找到 MCP Service 面版,找到 Configure 选项卡下点击 Configure MCP Service,然后编辑 xx/cline_mcp_settings.json文件,配置如下:

{
  "mcpServers": {
    "weather-server": {
      "command": "node",
      "args": ["/绝对路径/mcp-weather-server/index.js"]
    }
  }
}

保存后重新加载 VS Code,Cline 就会自动连接你的 MCP Server。

在 Cline 对话中输入:

“北京的天气怎么样?适合穿什么衣服?”

Cline 会调用 get_weather 拿到温度数据,再结合自己的判断给你穿衣建议。

两种接入方式,配置格式完全一样,区别只是文件位置不同:

客户端 配置文件路径
Claude CLI 项目目录下 .claude/settings.json
VS Code Cline 项目目录下 xx/cline_mcp_setttings.json

道理都一样——配好之后,AI 就知道该去哪里调用什么工具

3.2 社区现成的 MCP Server

自己写 Server 很有意思,但很多时候你不需要重复造轮子。社区已经贡献了一大堆 MCP Server,即插即用。

这里列几个常用的:

官方维护的

Server 功能
Filesystem 让 AI 读写本地文件、目录操作
GitHub 管理仓库、PR、Issue
PostgreSQL 连接数据库,执行 SQL 查询
SQLite 操作 SQLite 数据库
Puppeteer 无头浏览器,能截图、抓取网页
Brave Search 让 AI 具备联网搜索能力

社区热门

Server 功能
Slack 读/写 Slack 消息
Notion 管理 Notion 页面和数据库
Obsidian 操作 Obsidian 笔记库
Docker 管理 Docker 容器
Spotify 控制 Spotify 播放
Sentry 查询错误日志

安装方式通常都类似,以 Filesystem Server 为例:

# 安装
npm install -g @modelcontextprotocol/server-filesystem

然后在 Claude Code 配置里加一行:

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "/允许访问的目录路径"]
    }
  }
}

之后你就可以对 Claude 说"帮我把桌面上那个 notes.txt 整理一下",它就能读到文件内容了。

除了自己去 GitHub 搜,还可以去 smithery.ai 看看。这是一个 MCP Server 的"应用商店",搜索、安装一条龙,省得自己翻代码。

3.3 MCP 和 Agent 到底是什么关系

这个话题快被问烂了,直接说结论:

MCP 不是 Agent,它是 Agent 的一根"拐杖"。

Agent 的核心是什么?感知 → 规划 → 行动 → 观察结果 → 继续迭代。一个完整的 Agent 需要有自主决策能力。

MCP 只做其中很小的一环:行动(Action)。它帮 Agent 解决"怎么调用工具"的问题,但不负责"该不该调用、什么时候调用、调完怎么理解结果"。

反过来理解:没有 MCP 也能写 Agent,无非是自己写一套工具调用逻辑。有了 MCP,Agent 不用关心"这个工具是 HTTP 还是 gRPC"——它只要说"我要调用这个工具,参数是这些",剩下的 MCP 搞定。

所以两者的关系是:

  • Agent 决定做什么
  • MCP 提供做事的能力

一个典型的场景是:Agent 说"我需要先查一下用户最近的订单数据再说",然后通过 MCP 调用数据库 Server 获取数据,再根据数据决定下一步话术。

3.4 MCP vs A2A:有什么不同?

Google 最近也推出了一个叫 A2A(Agent-to-Agent) 的协议,很多人搞混它们:

  • MCP:AI ↔ 工具。解决的是"AI 怎么调用工具和数据源"的问题。
  • A2A:Agent ↔ Agent。解决的是"两个 Agent 怎么互相沟通协作"的问题。

一个是人和工具的关系,一个是人和人的关系。两者不冲突,甚至可以一起用。

3.5 MCP 局限与小结

MCP 很好用,但它也不是万能的,有几个明显的短板:

Token 消耗大
每调一个工具,工具的定义(名字、描述、参数结构)都要发给 AI 模型。工具多了,光是一轮 tools/list 的返回就可能上千 token。如果对话很长,这些信息会反复出现在上下文中。在 Token 计费的时代,这不是一笔小开销。

安全问题
MCP Server 能访问文件系统、数据库、API……给了 AI "手脚"的同时也打开了攻击面。一个恶意的 MCP Server 可以读取敏感文件、执行危险命令。目前 MCP 协议本身没有完善的权限控制和审计机制,安全主要靠使用者的判断力。

没有标准发现机制
MCP Server 没有统一的注册中心或发现协议。你要用某个 Server,得自己去 GitHub 搜、手动配置路径、配好才能用。跟 Docker Hub 或 npm 那种"搜索即安装"的体验差很远。

生态碎片化
虽然社区 Server 很多,但质量参差不齐。有的 Server 长期不维护、有的文档不全、有的安全问题没处理好。用之前需要自己做判断。

总的来说,MCP 解决了一个真问题——让 AI 不再是个"关在笼子里的天才",但这些短板也说明它还远未成熟。

如果你想继续深入,可以去看 MCP 的官方文档,或者去 GitHub 上翻那些社区 Server 的源码,看看别人怎么实现复杂的工具逻辑。


上一篇:第 2 篇:手写一个 MCP Server——从零到跑通

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐