ワンクリックで
mcp-spy
Debug MCP server communication. Use for troubleshooting MCP integrations, viewing traffic, and analyzing latency.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Debug MCP server communication. Use for troubleshooting MCP integrations, viewing traffic, and analyzing latency.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Always search before starting any work across all coding agent session histories (Claude Code, Codex, Cursor, Gemini CLI, Aider, ChatGPT) to find whatever we've discussed before.
Spawn 5 Opus subagents with randomly-generated distinct personas to debate a problem from multiple angles. Use when exploring UX decisions, architecture choices, or any decision that benefits from diverse perspectives arguing creatively.
Configure Karabiner-Elements keyboard remapping using Goku EDN syntax. Use when creating keybindings, layers, simlayers, app-specific shortcuts, or modifying karabiner.edn.
Bundle code context for AI. ALWAYS use --limit 49k unless user explicitly requests otherwise. Use for creating shareable code bundles and preparing context for LLMs.
Build Raycast extensions with React and TypeScript. Use when the user asks to create a Raycast extension, command, or tool.
Create new Agent Skills for Claude Code. Use when user wants to create a skill, add a new capability, document a CLI workflow, or asks how skills work.
| name | mcp-spy |
| description | Debug MCP server communication. Use for troubleshooting MCP integrations, viewing traffic, and analyzing latency. |
Debug Model Context Protocol server integrations.
MCP Spy helps debug:
# Check MCP logs
tail -f ~/.claude/debug/mcp-*.log
# Or specific server
tail -f ~/.claude/debug/mcp-cm.log
# Tool calls only
grep "tool_use" ~/.claude/debug/mcp-*.log
# Errors only
grep -i "error\|failed" ~/.claude/debug/mcp-*.log
# Specific tool
grep "beads_add" ~/.claude/debug/mcp-*.log
# Time a specific tool
time claude --print "Run beads_ready" --dangerously-skip-permissions 2>&1 | head -1
# Look for latency warnings in logs
grep -i "timeout\|slow\|latency" ~/.claude/debug/mcp-*.log
# All errors
grep -i "error" ~/.claude/debug/mcp-*.log
# Parse error responses
grep "\"error\":" ~/.claude/debug/mcp-*.log | jq '.'
# Test server connection
curl -X POST http://localhost:3000/mcp/list_tools \
-H "Content-Type: application/json" \
-d '{}'
# View server logs (if running as process)
tail -f logs/mcp-server.log
# Or in terminal running server
# Logs appear in stdout
# Call tool directly
curl -X POST http://localhost:3000/mcp/call_tool \
-H "Content-Type: application/json" \
-d '{
"name": "beads_ready",
"args": {}
}'
# Pretty print JSON messages
grep "message" ~/.claude/debug/mcp-*.log | jq '.'
# Check request format
gemini -m pro -o text -e "" "Validate this MCP request format:
$(grep "request" ~/.claude/debug/mcp-*.log | tail -1)
Check:
1. Required fields present
2. Types correct
3. Schema compliance"
# Check if port in use
lsof -i :3000
# Check server process
ps aux | grep mcp
# Start with verbose
node server/index.ts --verbose
# List available tools
curl http://localhost:3000/mcp/list_tools | jq '.tools[].name'
# Check tool registration
grep "registerTool\|toolRegistry" server/*.ts
# Profile tool execution
time curl -X POST http://localhost:3000/mcp/call_tool \
-H "Content-Type: application/json" \
-d '{"name": "slow_tool", "args": {}}'
# Check for blocking operations
grep -i "await\|sync" tools/slow_tool/index.ts
# Find malformed JSON
grep -B 5 "JSON\|parse" ~/.claude/debug/mcp-*.log | grep -i error
# Validate JSON
echo '{"test": ...}' | jq '.'
# Real-time log monitoring
tail -f ~/.claude/debug/mcp-*.log | grep --line-buffered "tool_use\|result"
# Count calls per tool
grep "tool_use" ~/.claude/debug/mcp-*.log | \
grep -oP '"name":"[^"]*"' | \
sort | uniq -c | sort -rn
#!/bin/bash
# mcp-health.sh
echo "=== MCP Server Health ==="
# Check server
if curl -s http://localhost:3000/health > /dev/null 2>&1; then
echo "Server: UP"
else
echo "Server: DOWN"
fi
# Recent errors
ERRORS=$(grep -c "error" ~/.claude/debug/mcp-*.log 2>/dev/null || echo 0)
echo "Recent errors: $ERRORS"
# Tool count
TOOLS=$(curl -s http://localhost:3000/mcp/list_tools 2>/dev/null | jq '.tools | length' || echo 0)
echo "Registered tools: $TOOLS"