feat(mcp): add read-only zombie-mcp diagnostics server#551
feat(mcp): add read-only zombie-mcp diagnostics server#551DenzelPenzel wants to merge 7 commits into
Conversation
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
|
Warning [Security] Socket has found a problem with the dependencies from this PR. Check the details below to solve the issue. If the affected dependency is unreachable, we still recommend you to use a patched version. Remember: according to Parity's Security Policy, you must resolve all "Block" alerts before proceeding. It is recommended to resolve "Warn" alerts too. Learn more about Socket for GitHub.
|
c414025 to
4d3df98
Compare
4d3df98 to
62e205b
Compare
…cp-diagnostics-server
|
Hey @DenzelPenzel, thanks for your contribution. What's the reasoning behind this tool? the idea is just allow cloude/codex to allow to attach and run those diagnosis functions? can you include some example of the usage in the pr also, there are several parts in the code that needs to improve :) Thx! |
pepoviola
left a comment
There was a problem hiding this comment.
Thanks for your contribution, let's touch base to discus some design in this tool.
…cp-diagnostics-server
Adds
zombie-mcp, a read-only diagnostics tool for a Zombienet run you alreadystarted. It uses
zombie.jsonas the run handle and inspects configs, logs,liveness, metrics, and block production — it never spawns or destroys networks.
It works two ways, sharing one core:
same core via natural language, correlate evidence with repo source, and
reason about errors outside the baked checks.
Core tools / checks
find_recent_runs— discover recent run candidates with no argumentsdiagnose_run— triage a started run fromzombie_json_path, includingscanning logs near the expected path when startup failed before
zombie.jsonwas written
validate_config— validate a network config filelist_nodes/get_node_logs— inspect an attached live networkcheck_node_liveness/check_block_production— node health checksquery_metric— read a Prometheus metric from a nodeCLI mode
The JSON
DiagnosticReportgoes to stdout; logs to stderr. The MCP server is anoptional
mcpfeature (on by default) — core + CLI build without it(
--no-default-features).Install (MCP)
Then, after a run fails: "Debug my zombienet run with zombie-mcp."
Diagnostics correctness
check_block_productionno longer counts the genesis block (#0) asproduction — a stalled chain times out instead of a false success.
no_block_progress)instead of being reported healthy.
next_stepscovers the stalled-block case (registration / connectivity /para id) rather than "No immediate failure detected".
collapsed so the summary is honest.