Local MCP server for inspecting Docker logs, resource usage, and container processes through Claude.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
One-click editor setup isnβt available for this listing yet β we donβt have a confirmed install command, and weβd rather show nothing than point your editor at the wrong package or host. Follow the projectβs own setup instructions, linked above.
Inspect callable tools, capabilities, and parameters exposed to AI agents by CyberRescue.
https://github.com/user-attachments/assets/0ee0f583-b8c1-4abe-9dd4-4b59ec25fd49
A locally-hosted MCP (Model Context Protocol) server that gives Claude real tools to debug Docker containers β fetch logs, inspect memory/CPU, and run diagnostic commands inside a container, all from a chat with Claude Desktop. Instead of writing bespoke glue code for every diagnostic endpoint you want an AI agent to reach (logs API, stats API, exec API, each with its own auth, sanitization, and error handling), CyberRescue exposes them once through MCP: register the server, and any MCP-capable client gets all three capabilities with validation, retry, and output caps already handled.
(Link goes here once deployed β backend setup: infra/README.md; frontend: deploy web/ to Vercel with its root directory set to web/.)
A public demo of the real tool running against 3 intentionally broken sandboxed containers
(broken-flask, leaking-node, crashed-nginx). It's the same stream_container_logs /
inspect_memory_dump /
execute_isolated_script logic used by the local MCP server, exposed over a small FastAPI
backend that's locked to those 3 containers with a fixed diagnostic-command menu (no arbitrary
containers, no freeform shell input) β see SECURITY.md for the
full threat model. The local MCP path (this README, below) and the public demo are two
different deployment contexts sharing one core (src/cyberrescue/core.py).
CyberRescue exposes three tools to Claude:
stream_container_logs β fetch stdout/stderr logs from a container by ID or name (tail, since-timestamp, keyword filter; 50KB hard cap with truncation flag).inspect_memory_dump β live CPU/memory snapshot via docker stats, plus top processes via ps aux --sort=-%mem.execute_isolated_script β run a shell command inside a container via docker exec, with input validation, a command blocklist, and a hard asyncio timeout.Everything runs locally over stdio β no network ports, no cloud service, no API keys beyond what you already use for Claude Desktop.
Read-only telemetry calls (logs, stats) retry up to 3 times with exponential back-off (0.5s β 1s) on transient daemon failures; docker exec is deliberately never retried, since it isn't idempotent. Raw Docker exceptions are logged server-side and never leaked to the client β they can contain host socket paths and usernames.
Open Docker Desktop from Applications and let it finish starting (steady whale icon in the menu bar). Then install Claude Desktop from claude.ai β Download for Mac.
Find your uv path:
Edit (or create) ~/Library/Application Support/Claude/claude_desktop_config.json:
If the file already has other mcpServers entries, merge "cyberrescue" in as an additional key rather than overwriting the file.
Fully quit Claude Desktop (Cmd+Q) and reopen it. Check the tools/slider icon near the message box β cyberrescue should appear with all three tools listed.
WSL2 is the recommended path because Docker Desktop for Windows runs its Linux containers through it, and python-on-whales/docker exec behave most predictably there.
In an Administrator PowerShell:
Restart if prompted, then open the new "Ubuntu" app from the Start menu and finish the Linux user setup.
Download from docker.com, install, and during setup enable "Use WSL 2 based engine". In Docker Desktop settings, under Resources β WSL Integration, enable integration with your Ubuntu distro.
(docker ps should work inside WSL once Docker Desktop's WSL integration is enabled.)
Download from claude.ai β Download for Windows, install normally (not inside WSL).
Find your uv path inside WSL:
Edit %APPDATA%\Claude\claude_desktop_config.json (open via File Explorer: paste %APPDATA%\Claude into the address bar) and add an entry that runs the server through WSL:
Replace YOUR_LINUX_USERNAME and the path with your actual WSL username and clone location. Fully quit Claude Desktop and reopen it. Check the tools/slider icon β cyberrescue should appear with all three tools.
Ask Claude Desktop something like:
Debug the container named
my-app: read the last 150 log lines, check its memory and CPU usage, and runprintenv DATABASE_URLinside it.
Claude will call the three tools as needed and report back root cause and fix.
demo/ contains three intentionally broken images for testing:
broken_flask β crashes on startup with a missing-env-var KeyErrorleaking_node β leaks ~10MB/sec until OOM-killedcrashed_nginx β fails to start due to invalid config syntaxFactual signals from GitHub, npm, and our automated checks β not a rating.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/vivekpatil200320-cyberrescue)<a href="https://allmcps.com/mcp/vivekpatil200320-cyberrescue"><img src="https://allmcps.com/api/badge/vivekpatil200320-cyberrescue?style=directory" alt="CyberRescue on AllMCPs" /></a>