Claude Code 学习站

CCA-F 练习题库· Tool Design & MCP Integration

在 Model Context Protocol(MCP)架构中,关于 host、client 和 server,下列哪项陈述是正确的?

  1. A单个 MCP client 通过一条共享传输复用与多个 MCP server 的连接,host 从这一个 client 读取全部工具
  2. BMCP host(即 AI 应用)为每个 MCP server 创建一个 MCP client,每个 client 与其对应的 server 维持一条专用连接,而 server 负责提供上下文
  3. CMCP server 位于各个 host 之上并负责协调它们,把每个进来的请求路由给声明了匹配工具的那个 client,再把回复送回发起请求的那个 host
  4. Dclient 和 server 是同一个进程;这两个术语只是同一条连接内的消息角色,随每次请求和响应交替出现

正确答案:B

解析

  • B正确:官方 MCP 架构文档(modelcontextprotocol.io/docs/learn/architecture)指出,MCP 遵循 client-server 架构,其中 MCP host——即 AI 应用(例如 Claude Code、Claude Desktop、VS Code)——“accomplishes this by creating one MCP client for each MCP server”(为每个 MCP server 创建一个 MCP client),并且 “Each MCP client maintains a dedicated connection with its corresponding MCP server”(每个 MCP client 与其对应的 MCP server 维持一条专用连接),而 server “is a program that provides context to MCP clients”(是一个向 MCP client 提供上下文的程序,即 tools、resources、prompts)。
  • B与此完全吻合,包括 client 与 server 一对一、专用连接以及提供上下文这些细节。
  • A是错的,因为一个 client 并不会通过一条共享连接复用多个 server——每个 client 只持有与单个 server 的一条专用连接(复用是反方向的:一个远程 server 可以服务多个 client)。
  • C颠倒了角色——是 host 协调各个 client;server 不会在多个 host 之间协调或路由。
  • D是错的,因为 client 和 server 是不同的参与方(通常是不同的进程,例如本地的 stdio 子进程或远程的 Streamable HTTP 服务),而不只是同一进程内的消息角色。

延伸阅读

本题为本站自有原创练习题,非任何官方考试内容;解析对照 Anthropic 公开文档撰写, 如与最新文档不符请以官方为准。想在限时环境下检验水平,可参加 模拟考(题目与本页题库不重叠)。