kerlenton/mcpsnoop

Wireshark for MCP. A transparent proxy that shows every real tool call between your AI client and your MCP servers, live in your terminal.

What it solves

mcpsnoop 是 Model Context Protocol (MCP) 的透明代理,充当 ""Wireshark for MCP""。它解决了 AI 客户端(如 Cursor, Claude Code, 或 Codex)与其 MCP 服务器之间实际通信的可视化问题。与作为自身客户端运行的官方 MCP Inspector 不同,mcpsnoop 直接位于数据路径中,允许开发者查看每一个真实的工具调用,识别挂起的调用,检测格式错误的 JSON-RPC 帧,并发现工具定义漂移。

How it works

该工具在单个二进制文件中以两种角色运行:透明垫片 (shim) 和中心 (hub)。当用作垫片时 (mcpsnoop -- <server>),它在客户端和服务器之间逐字转发字节,同时将每一帧复制到中心。中心 (mcpsnoop 不带参数) 提供一个实时的终端用户界面 (TUI) 来监控和分析流量。这两个组件通过一个众所周知的套接字和磁盘日志自动配对。它支持 stdio 和 streamable-HTTP 服务器,并可以通过 GitHub Action 集成到 CI/CD 流水线中,以便根据错误或延迟预算使任务失败。

Who it’s for

正在构建或调试 MCP 服务器和 AI 客户端的开发者,他们需要对 JSON-RPC 流量和工具执行性能进行实时、高保真的可视化。

Highlights

  • Real-time Monitoring: 实时的 TUI,用于观察工具调用和 JSON-RPC 帧的发生过程。
  • CI Integration: 一个 GitHub Action,用于提交代码扫描警报并在受限错误时使任务失败。
  • HTTP Proxying: 支持具有详细 HTTP 状态跟踪的 streamable-HTTP 服务器。
  • Observability: 内置 Prometheus 指标,用于工具调用总量、错误率和延迟直方图。
  • Session Management: 能够将会话导出为 JSON, HTML, text, HAR, 或 OTLP 格式,以便进行事后分析。
  • Redaction: 在共享捕获的日志之前,用于清除敏感信息、密钥和特定路径的工具。
  • Zero-config Setup: 用于 Claude Desktop 配置的简单 wrap/unwrap 命令。

相关

  • Dispatch
  • 项目
  • 项目
  • 项目
  • 项目