MCP 客户端(MCP Client)
MCP 客户端是宿主应用内部的组件,负责代表模型建立并维护与一个或多个 MCP 服务端的连接。
MCP 客户端是一次 MCP 连接里的『使用方』。它运行在宿主应用内部——比如某个编程 Agent、对话助手、IDE 插件——负责去连接 MCP 服务端、询问每个服务端提供了什么,再把这些信息传递给模型或宿主自身的逻辑,由它们决定要不要用、怎么用。
一个宿主应用通常会同时维护多条 MCP 客户端连接,配置了几个服务端就有几条连接。比如一个编程 Agent 可能同时连着一个文件系统服务端、一个版本控制服务端、一个项目管理服务端,每个连接各自独立,但最终会把所有能力汇总成一份列表呈现给模型。
客户端本身不负责决定模型能做什么——这类策略通常由宿主应用掌控,比如筛选要连哪些服务端、某些工具调用要不要先人工确认、哪些资源该展示给模型看。
怎么运作
宿主应用启动时,它的 MCP 客户端会依次连接每个配置好的服务端,完成能力协商,拿到对方的工具、资源、提示词模板列表。客户端再把这些能力呈现给模型作为可选项——通常直接并入模型本来就在用的工具调用接口里。模型决定要用某个能力时,客户端把对应的 JSON-RPC 请求发给正确的服务端,再把结果返回。因为每条连接是相互独立的,某个服务端响应慢甚至连不上,也不会拖累其他连接。
举个例子
比如一个对话应用的 MCP 客户端,可能同时保持着搜索服务端、日历服务端、笔记服务端三条连接,并把三者的工具合并成一份列表,供模型在对话过程中按需选用。
常见误解
常见问题
MCP 客户端和 MCP 服务端有什么区别?
一个 MCP 客户端能同时连多个服务端吗?
需要自己写 MCP 客户端吗?
最近核实: 2026-08-28