Model Context Protocol Advanced Topics
← 所有课程
课程 05Model Context Protocol Advanced Topics

JSON message types

摘要音频

本节课没有语音摘要。

学习笔记

MCP 消息与标准 IO 传输 学习笔记

一、核心概念

  • 目的: 理解可流式 HTTP 传输(streamable HTTP transport)及其局限性,需要先掌握 MCP 消息格式和标准 IO 传输。
  • 通信格式: 客户端和服务器使用 JSON 进行通信,这些 JSON 片段被称为“消息”(messages)。
  • 规范来源: MCP 消息类型定义在 MCP 规范(spec)仓库中,该仓库独立于各种 SDK 仓库。

二、消息结构与类型

  • 基本结构示例:
  • 客户端调用工具 → 发送 call tool request 消息。
  • 服务器执行工具 → 返回 call tool result 消息。
  • 消息分类(基于功能):
  • 请求/结果对 (Request/Result Pairs): 总是成对出现(例如:something request ↔ something result)。它们描述了发送一个动作后,期望收到的响应类型。
  • 通知 (Notifications): 类似于事件,用于告知客户端或服务器某个事件的发生,通常不需要响应(例如:progress notification、logging message notification)。

三、消息方向性(发送方/接收方)

消息类型根据其发送方(客户端或服务器)进行划分:

  • 客户端消息 (Client Messages):
  • Client Request (客户端发送给服务器的请求)
  • Client Notification (客户端发送给服务器的通知)
  • Client Result (客户端收到的结果)
  • 服务器消息 (Server Messages):
  • Server Request (服务器发送给客户端的请求)
  • Server Notification (服务器发送给客户端的通知)
  • Server Result (服务器发送给客户端的结果)

四、关键要点(Critical Takeaway)

  • 重要方向: 在后续讨论可流式 HTTP 传输时,必须重点关注从服务器发送到客户端的消息类型。
  • 重点关注类型: Server Request 类型 和 Server Notification 类型。

Takeaways

  • MCP通信使用JSON格式的消息,消息类型定义在独立的MCP规范中。
  • 消息分为请求/结果对(Request/Result Pairs,需要响应)和通知(Notifications,用于事件告知,无需响应)。
  • 消息根据发送方分为客户端消息和服务器消息。
  • 在后续讨论可流式HTTP传输时,必须重点关注服务器发送给客户端的消息,特别是Server Request和Server Notification类型。
抽认卡 10 张卡片
问题
点击显示 · ←/→
答案
点击翻回
导出到 Anki (.tsv) ↓
知识检测 0 题

No quiz for this lesson yet.