Claude With The Anthropic Api
← 所有课程
课程 61Claude With The Anthropic Api

MCP clients

摘要音频

本节课没有语音摘要。

学习笔记

📚 MCP 协议核心概念学习笔记

💡 客户端 (Client) 与 MCP 服务器 (MCP Server)

  • 客户端作用: 作为服务器与 MCP 服务器之间的通信媒介,是访问服务器所有工具的入口。
  • MCP 特性: 传输无关 (Transport Agnostic),意味着客户端和服务器可以利用多种协议进行通信。
  • 通信方式:
  • 本地通信: 运行在同一物理机器上时,通过标准输入/输出 (Standard I/O) 通信。
  • 远程通信: 可通过 HTTP、WebSockets 等多种技术连接。
  • 通信机制: 双方通过交换符合 MCP 规范定义的特定消息进行交流。

🛠️ 关键消息类型 (Message Types)

  • 工具列表请求 (List Tools):
  • list tools request → (客户端 → 服务器) 请求服务器列出所有可用工具。
  • list tools result → (服务器 → 客户端) 返回包含所有工具列表的结果。
  • 工具调用 (Tool Execution):
  • call tools request → (服务器 → 客户端) 请求运行特定工具并提供参数。
  • call tools result → (客户端 → 服务器) 包含工具运行后的结果。

🔄 复杂工作流程示例 (Workflow Example)

  • 目标: 实现用户查询 → 访问外部数据源 (如 GitHub) → 返回结果。
  • 流程步骤:
  • 用户提问: 用户向我们的服务器提交查询。
  • 获取工具列表: 服务器通过 MCP 客户端 → 发送 list tools request → 接收 list tools result。
  • 工具调用: 服务器将用户查询和工具列表发送给外部服务 (Cloud)。
  • 工具使用请求: Cloud 决定使用工具 → 发送工具使用消息。
  • 执行工具: 服务器通过 MCP 客户端 → 发送 call tools request → MCP 服务器执行请求 (例如,调用 GitHub API)。
  • 返回结果: MCP 服务器 → 封装数据为 call tools result → 客户端 → 服务器。
  • 最终响应: 服务器将工具结果整合到用户消息中 → Cloud 形成最终答案 → 服务器返回给用户。

Takeaways

  • 客户端是访问服务器所有工具的入口,作为服务器与 MCP 服务器之间的通信媒介。
  • MCP 协议具备传输无关性,支持通过标准 I/O (本地) 或 HTTP/WebSockets (远程) 进行通信。
  • 协议的核心功能围绕两类关键消息展开:获取工具列表 (List Tools) 和执行工具 (Tool Execution)。
  • 工具调用流程遵循请求 → 执行 → 结果返回的闭环机制。
抽认卡 10 张卡片
问题
点击显示 · ←/→
答案
点击翻回
导出到 Anki (.tsv) ↓
知识检测 0 题

No quiz for this lesson yet.