MCP(Model‑Context‑Protocol)整体架构

MCP(Model‑Context‑Protocol)整体架构

标题与核心主旨

标题:Understanding MCP Architecture(理解 MCP 架构) 总述:MCP 生态的核心作用:在 AI 智能体和外部工具之间搭建标准化桥梁

整体架构模型

  1. AI Assistant(客户端,蓝色模块):示例采用 LangGraph,也就是你之前代码里搭建 Agent 的框架;
  2. MCP‑Server(服务端,绿色模块):封装外部工具(Your Tools,数据库、GitHub、文件系统等);
  3. 通信标准:MCP Protocol 支持 3 种传输方式:
    • stdio:本地子进程调用(开发阶段最常用)
    • SSE:服务端推送
    • HTTP:远程网络调用 两端基于 JSON‑RPC 通信,彻底将 Agent 逻辑和工具代码解耦。

四个模块拆解(对应图中四块内容)

1. MCP‑Server(MCP 服务端,由社区开发者编写,用 Fast‑MCP 实现)

  • Exposes tools:向外暴露可供 AI 调用的工具函数;
  • Defines schemas:定义入参的数据格式(JSON Schema);
  • Handles requests:接收来自 AI 助手的调用请求,执行对应逻辑,返回结果。

对应你前面的认知:MCP 开发者只编写一次 MCP‑Server,后续使用者不用改动服务端代码。

2. Tools(实际工具函数)

  • Functions with @tool:通过装饰器@tool定义工具方法(Fast‑MCP 标准写法);
  • Input parameters:声明工具接收的入参;
  • Structured responses:返回结构化的数据,方便大模型解析。

3. Integration(集成层,对应 langchain‑mcp‑adapters,就是你导入的MultiServerMCPClient

  • Bind to LLMs:对接大模型(GPT‑4o、Muse Spark 1.1 等);
  • Route queries:把 LLM 产生的调用指令转发给对应的 MCP‑Server;
  • Handle responses:接收服务端返回的数据,转换成 LangChain 可识别的 Tool 返回值;

你的 Python 代码就是在做这一层工作:适配器充当中间翻译层。

4. Naming(命名规范,工程层面约定)

  • 格式示例:mcp__server__tool
  • Consistent pattern:统一命名范式,区分不同 MCP 服务里的同名工具;
  • Clear hierarchy:层级清晰,防止多个 MCP‑Server 接入后出现工具名称冲突,对应代码里prefixToolNameWithServerName配置项。

和你之前代码以及行业现状串联总结

  1. 开发者(社区):使用 Fast‑MCP 完成 MCP‑Server 和 Tools;
  2. 集成层langchain‑mcp‑adapters负责协议适配;
  3. Agent 编排:LangGraph 做任务规划、状态管理;
  4. 底层大模型:现在可以替换成 Meta 刚发布的 Muse Spark‑1.1,实现低成本 Agent 应用;
  5. 解耦优势:MCP‑Server 可以独立部署在远程服务器;LangGraph Agent 可以单独运行;二者只依靠标准 MCP 协议通信,后期更换工具或者更换大模型互不影响。

对应代码映射

复制代码
# MultiServerMCPClient 就是这里的Integration层
client = MultiServerMCPClient({
    "filesystem": { # MCP‑Server
        "transport": "stdio",
        "command": "python",
        "args": ["filesystem_mcp.py"] # 里面包含@tool修饰的Tools
    }
})
tools = await client.get_tools()
agent = create_react_agent(llm, tools) # LangGraph作为AI‑Assistant
相关推荐
栈溢出的浪漫1 天前
技术速递|基于 OpenClaw、MCP 和 Azure Container Apps 构建自主 Microsoft Teams 智能体
mcp·openclaw·自主智能体·技术速递·azurecontainerapps
周航宇JoeZhou2 天前
JP3-2-3-MyItem智能业务
java·多智能体·rag·智能体·springai·mcp·skills
三无推导2 天前
读了一遍 GitHub 上 12K Star 的 AI Agent 开源书
人工智能·开源·github·ai agent·工具调用·mcp·多agent协作
行走的陀螺仪2 天前
一次 opencode + OpenPencil MCP 协同解析 .fig 文件的踩坑实录
node.js·figma·mcp·opencode
AI笔记Pro2 天前
mcp协议是什么?用装一次 MCP 的时间彻底搞懂它
mcp
抢囡囡糖未遂2 天前
从 LINQPad 到 MCP:打造 CRM 智能助手的实战记录
ai·大模型·skill·mcp·linqpad·microsoft dynamics crm·mscrm·dynamic 365
武子康3 天前
MCP 2026-07-28 无状态核心之后:身份、任务、幂等与审计状态到底放在哪里?
人工智能·llm·mcp
Python私教3 天前
我只写了一个 add 工具,终于把 MCP 的 Host、Client、Server 跑明白了
python·ai编程·mcp
奋飛3 天前
AI 应用工程:Tool、MCP、Skill 与 Workflow 如何接入 Agent?——搭建一个可运行的需求影响面分析 Agent
agent·workflow·skill·tool·mcp