你给 Claude Code、Cursor 接了一堆 MCP server——能查数据库、读文件、调 API。但有个问题几乎没人公开告诉你:你根本看不见 agent 到底向哪个 server 发了什么参数。官方的 MCP Inspector 是"自己冒充一个客户端"去戳你的 server,它从来看不到你真实客户端(Claude Desktop / Cursor / Claude Code)和 server 之间的真实流量。于是当某个工具该调用却没调用、某个请求挂住、能力对不上时,你只能 tail 一个 /tmp 里的日志,靠猜。
这只是 agent 三面墙里的一面。第二面墙:agent 每次从零开始,你过去三个月的调试、失败尝试、决策依据、改过的命令,全躺在本地历史日志里吃灰,新 agent 完全不知道。第三面墙:agent 装包不挑食,它会随手 npm install 一个三年没更新、甚至 72 小时前才发布的陌生包。
本周(截至 2026-07-04),海外一连上线三把刀,分别精准对应这三面墙:MCP 版的 Wireshark、agent 历史的 SQLite 时光机、agent 装包的供应链安全员。三把都开源、免费、本地优先。这篇文章拆给你看,为什么它们可能在三周内成为中国 MCP 开发者的标配——而你大概率还不知道它们存在。
flowchart LR
subgraph 用户["你的工作机"]
Client["Claude Code / Cursor / Claude Desktop"]
end
subgraph 黑盒["agent 的三面墙(黑盒)"]
W1["墙1·实时流量<br/>发了什么/挂在哪"]
W2["墙2·本地历史<br/>过去几个月的调试与决策"]
W3["墙3·依赖供应链<br/>随手装的陌生/老旧包"]
end
subgraph 刀["本周三把刀(透明化)"]
K1["Mcpsnoop<br/>MCP 版 Wireshark"]
K2["ctx<br/>历史 SQLite 时光机"]
K3["deptrust<br/>装包安全员 CLI+MCP"]
end
Client -->|JSON-RPC| W1
Client -->|本地日志| W2
Client -->|npm/pip/cargo| W3
K1 -.审计.-> W1
K2 -.检索.-> W2
K3 -.拦截.-> W3
style W1 fill:#2b2b2b,stroke:#e06c75,color:#fff
style W2 fill:#2b2b2b,stroke:#e06c75,color:#fff
style W3 fill:#2b2b2b,stroke:#e06c75,color:#fff
style K1 fill:#1e3a5f,stroke:#61afef,color:#fff
style K2 fill:#1e3a5f,stroke:#61afef,color:#fff
style K3 fill:#1e3a5f,stroke:#61afef,color:#fff
记住这张图,下面每一把刀都是把某一面墙从"黑盒"变成"可审计"。
它到底解决什么。这是最值得讲清楚的一把。官方的 MCP Inspector(modelcontextprotocol/inspector)本质上是"自己当一个 MCP 客户端"去连你的 server,所以它永远看不到你真实客户端和 server 之间的对话。而你在自己 server 里打断点,又只能看到"请求已经到了"的那次——如果 agent 根本没发起这次调用、或者用了你没想到的参数,断点根本不会触发。结果就是你回到 tail -f 日志的世界里靠猜。
Mcpsnoop 的思路完全不同:它坐在真实的数据通路上。你把启动 server 的命令用 mcpsnoop 包一层:
{ "mcpServers": {
"my-server": { "command": "mcpsnoop", "args": ["--", "node", "build/index.js"] }
}}
然后照常用你的客户端,开一个终端跑 mcpsnoop,就能在 TUI 里实时看到每一帧真实的 JSON-RPC:请求、响应、通知、server 的 stderr,全部彩色高亮,错误和慢调用单独标记(连 tool 级的 result.isError 都解析,而不只是 JSON-RPC 层错误)。
五个让你立刻想用的功能:
1. Live JSON-RPC 流 + Replay(回放):把任意一次真实 tool call 拿到一个全新隔离的 server 副本里重放——这是调试单个工具最快的循环。
2. Hung-call 检测:在飞的请求显示 PENDING 并带实时计时器,卡住的工具一眼可见。
3. Capability inspector(按 c):直接看握手时 client 和 server 到底达成了哪些 capability 共识。
4. Frame inspector(按 enter):完整美化 JSON,框内可搜索。
5. 真正的过滤查询:用 tool: status: dir: kind: id: 或纯文本缩小范围。
它还支持 streamable-HTTP server(反向代理模式 mcpsnoop http --target ... --listen :7000),并且 UI 能从磁盘回放历史会话,所以你先开 client 还是先开 UI 都无所谓。
为什么值得关注 / 国内对比。国内 MCP 调试目前基本是三件套:官方 Inspector、自己 console.log、tail 日志。能类比的是给它接了个 Charles / Fiddler / Wireshark,但专精 MCP 的 JSON-RPC 协议。对任何自己写 MCP server、或在 Claude Code 里接了 3 个以上 MCP 的人,这把刀直接把调试效率拉高一档。想先看不配置?跑一句 mcpsnoop demo 就有一个脚本化演示喂进 live UI。
适用人群:MCP server 作者、重度 Claude Code / Cursor MCP 用户、做 agent 工具链的团队。
curl -fsSL https://ctx.rs/install | sh它到底解决什么。编码 agent 的通病是"失忆症":它能 inspect 当前仓库,却几乎无法恢复你过去几轮的讨论、决策、失败的尝试、跑过的命令、测试结果。而这些东西恰恰是你最想复用的——上次 agent 怎么调通这个 bug 的?它当时否定了哪个方案?
问题在于:这些记录散落在 Claude Code、Codex、Cursor 各自的本地历史文件里,又臭又长,直接 grep 一个会话就动辄几万 token。ctx 的做法是把它们结构化索引进本地 SQLite(session / event / metadata / touched-file),然后给当前和未来的 agent 一个 CLI 去检索。
ctx setup # 索引你机器上所有现成的 agent 会话
ctx search "failed migration" # agent 用自然语言查"上次失败的迁移"
最硬的一个数字:ctx 自称比"原始 transcript 检索"省 token 约 50 倍——它的对比是同一次历史检索 ctx 输出 917 token,原始 transcript 检索 45,734 token。对把 token 当钱花的开发者,这个差距意味着"有可用历史"和"等于没有历史"的区别。
几个值得注意的工程取舍:索引完全本地、默认私密、Rust 写、不需要后台进程;transcript 原文会保留(包括本地路径和 secret 形状的字符串),所以复制输出出去之前要过一眼——这点它 README 写得很诚实。它还提供 npx skills add ctxrs/ctx,可直接作为 Agent Skill 接进 Codex / Claude Code / Cursor。
为什么值得关注 / 国内对比。国内基本是空白生态。多数人要么手动翻 ~/.claude / Codex 日志目录,要么干脆重问一遍 agent。这把刀等于给本地 agent 装了个"长期记忆 + 全文检索",而且因为索引在本地,不把你几周的工作上下文上传到任何第三方。对长周期项目、经常换 agent、或想复用"上次那个难调的 bug 终于怎么修好的"的开发者,价值极大。
适用人群:重度 Claude Code / Codex / Cursor 用户、长项目开发者、需要团队复用调试结论的人。
它到底解决什么。README 第一句就点题:"This tool was born out of the frustration that is AI agents constantly using old versions."——agent 写代码时随手装的包,经常是过时、带已知漏洞、甚至几天前才冒出来的可疑包。deptrust 让这件事在装之前就被拦下来。
它覆盖的生态极其宽:npm、PyPI、Cargo (crates.io)、Go modules、RubyGems、NuGet、Maven、Packagist/Composer、pub.dev、CocoaPods、Hex.pm、Hackage,连 GitHub Actions(用 owner/repo 当包名,tag/branch/commit SHA 当版本)都管。数据源是 OSV 和 GitHub Advisory Database(含恶意软件 advisory),并行查询,没有任何"deptrust 托管服务"需要你信任或配置——对安全敏感的人这一点很关键。
它的建议逻辑简单粗暴:
| 最高已知严重度 | 建议 |
|---|---|
| critical / high | block(阻止) |
| medium / unknown | review(人工看) |
| low / none found | allow(放行) |
除了 CVE,它还会发非 CVE 的风险信号:比如某个版本是最近 72 小时内发布的,就标记 review,防止 agent 闭眼装一个刚冒出来的全新包——这正是供应链投毒最常用的窗口。
两种用法:作为 CLI 本地跑;或作为 MCP server 接进 agent,让 agent 在动手装之前先问它一句。后者是国内大多数"agent 安全"方案还做不到的——把依赖检查做成 agent 的原生反射。
为什么值得关注 / 国内对比。国内能类比的工具是 npm audit / pip-audit / osv-scanner / Snyk / 各家代码扫描(腾讯、字节内部都有)。区别在于 deptrust 专门为"防止 agent 装老版本 / 可疑新包"设计,且同时以 CLI 和 MCP 两种形态存在,能直接焊进 agent 工作流。对放权给 agent 写代码、装依赖的团队,这是供应链攻击的第一道闸。
适用人群:让 agent 大量写代码/装包的团队、DevSecOps、金融/企业安全合规场景。
除了三把主力,本周值得蹲的新工具:
本周大背景(顺手记):Anthropic 把 Claude Platform 的速率限制简化分层,最高档最新 Sonnet/Haiku 限制提高约 5 倍;Claude Code 的 Artifacts 开放给 Pro/Max 计划;微软研究院的 Memora 谐波记忆系统号称在长记忆基准上砍掉最多 98% 的 context token;同时社区有人估算 Claude Fable 5 的 API 成本可能高达约 $100/小时——这恰好解释了为什么"审计 agent 到底烧在哪"(Mcpsnoop)、"复用历史省 token"(ctx)会在本周同时爆发。
| 维度 | 大多数中国开发者的认知 | 本周海外的实际玩法 |
|---|---|---|
| MCP 调试 | 用官方 Inspector + tail 日志靠猜 |
Mcpsnoop 坐在真实数据通路,回放/卡死检测/能力握手全透明 |
| agent 历史 | 手动翻 ~/.claude,或干脆重问 |
ctx 用本地 SQLite 索引,检索省 50 倍 token,可直接接 agent |
| agent 装包 | 等 npm audit 事后报警 |
deptrust 作为 MCP,装之前就按严重度 block/review,72 小时新包标红 |
| MCP 部署 | 手写 stdio server,监控靠日志 | Manufact 做"MCP 版 Vercel"托管 + 监控 |
| 模型间上下文 | 复制粘贴,丢一半 | Kontext 一键把完整上下文搬到另一个 AI |
mcpsnoop demo,你会立刻看到平时从没见过的真实流量。如果你接了 ≥3 个 MCP,这一步基本是"开眼时刻"。curl -fsSL https://ctx.rs/install | sh 然后 ctx setup 索引历史;接着 ctx search "上次那个难调的 bug"。把过去几周的调试成果从"沉没成本"变成"可检索资产"。⚠️ 输出含本地路径和 secret 形状字符串,外发前先 review。本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵爱卫生(微信ID: gprshome201101)维护。 聚焦5G/6G核心网、3GPP标准、AI工具实战。知识星球「51学通信」提供深度技术答疑和行业洞察。
[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。
