{
  "markdown": "# whats-running-mcp\n\n[![npm](https://img.shields.io/npm/v/whats-running-mcp)](https://www.npmjs.com/package/whats-running-mcp)\n[![license](https://img.shields.io/badge/license-MIT-blue)](./LICENSE)\n[![Glama](https://glama.ai/mcp/servers/stcmain/whats-running-mcp/badge)](https://glama.ai/mcp/servers/stcmain/whats-running-mcp)\n\n**Ground truth for agent fleets.** An MCP server that tells your AI agent what is *actually* running on the machine — live agent sessions, listening TCP ports, loaded daemons, system load — read straight from the OS (`ps` / `lsof` / `launchctl` / `df`), never from docs, transcripts, or memory files.\n\n## Why\n\nIf you run more than one coding-agent session (Claude Code, Codex, Aider…), you've seen this failure mode: an agent \"health-checks\" a server that died weeks ago, or confidently reports a daemon as live because an old transcript said so. Model memory is a cache with no invalidation. The OS is the source of truth.\n\nThis server started as a shell script (`whats-running`) I wrote after my own fleet of Claude Code sessions kept reporting stale state as live. Wrapping it in MCP means every session grounds itself the same way, automatically.\n\n## Tools\n\n| Tool | What it answers |\n|---|---|\n| `whats_running` | Full snapshot in one call — use at session start |\n| `agent_sessions` | Which agent processes are live? Terminal-attached vs detached/orphan, with pid, uptime, and working directory |\n| `listening_ports` | Is service X actually up? Every TCP LISTEN socket with owning process |\n| `daemons` | What persistent services are loaded? `launchctl` (macOS, non-Apple) or systemd user services (Linux), with optional label filter |\n| `system_stats` | Load average, uptime, root-disk free space |\n\n## Install\n\n**Claude Desktop (one-click, no terminal):** download the latest `whats-running-mcp-<version>.dxt` from [Releases](https://github.com/stcmain/whats-running-mcp/releases) and open it with Claude Desktop (double-click, or Settings → Extensions → Install Extension…). The server and its dependencies ship inside the bundle — no npm, no Node install.\n\nRegister with Claude Code (available in every session):\n\n```bash\nclaude mcp add --scope user whats-running -- npx -y whats-running-mcp\n```\n\nOr in any MCP client config:\n\n```json\n{\n  \"mcpServers\": {\n    \"whats-running\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"whats-running-mcp\"]\n    }\n  }\n}\n```\n\n<details>\n<summary>From source</summary>\n\n```bash\ngit clone https://github.com/stcmain/whats-running-mcp.git\ncd whats-running-mcp\nnpm install && npm run build\n# then point your client at node /path/to/whats-running-mcp/dist/index.js\n```\n\n</details>\n\nPublished as [`whats-running-mcp`](https://www.npmjs.com/package/whats-running-mcp) on npm and as\n`io.github.stcmain/whats-running-mcp` in the [MCP Registry](https://registry.modelcontextprotocol.io/).\n\n## Configuration\n\n| Env var | Default | Purpose |\n|---|---|---|\n| `WR_AGENT_PATTERNS` | `claude,codex,aider,cursor-agent,copilot,goose` | Comma-separated substrings that mark a process as an \"agent\" in `agent_sessions` |\n\n## Design notes\n\n- **Read-only by construction.** Every command is a fixed binary with fixed flags via `execFile` — no shell, and nothing derived from model input is ever executed. The only model-controlled inputs are a boolean and a substring filter applied in-process.\n- **Local information disclosure is the point.** The model sees process names, pids, working directories, and ports of *your own machine*. Don't attach this server to an untrusted client.\n- **Best-effort, never blocking.** Commands time out at 10s and degrade to empty results rather than erroring the whole snapshot.\n\nPlatform: macOS first (my daily driver), Linux best-effort (`systemd --user` in place of `launchctl`).\n\n## Related free tools\n\nSame idea — read-only, MIT, no telemetry — pointed at different blind spots:\n\n- **[whats-loaded-mcp](https://github.com/stcmain/whats-loaded-mcp)** — what is consuming your agent's context *before* a session starts: skill descriptions ranked by token cost, skills installed more than once, `CLAUDE.md`/`AGENTS.md` sizes including what their imports pull in. `npx -y whats-loaded-mcp`\n- **[whats-inherited-mcp](https://github.com/stcmain/whats-inherited-mcp)** — what a checkout tells your agent to do *before* you run it: instruction files, commands wired to auto-run, declared MCP servers, shipped skills. Repo strings come back labelled as data, not instructions. `npx -y whats-inherited-mcp`\n- **[whats-allowed-mcp](https://github.com/stcmain/whats-allowed-mcp)** — what your agent can do *without asking you*: every settings file that contributes permission rules, which one wins, what runs unattended, and the rules your client accepts and then ignores. `npx -y whats-allowed-mcp`\n\n## Who makes this\n\nBuilt by [Shift The Culture](https://shifttheculture.media/agent-tools?utm_source=github&utm_medium=readme&utm_campaign=whats-running-mcp) — we run a one-person company on AI agents and ship the tooling we needed ourselves. This server is free and MIT-licensed, no strings.\n\nThis server is the free, standalone piece of a larger multi-agent setup. The rest of that tooling is paid:\n\n- **[Agent Fleet Ops Kit](https://stcai.gumroad.com/l/agent-fleet-ops-kit?wanted=true&utm_source=github&utm_medium=readme&utm_campaign=whats-running-mcp)** ($29) — the other failure modes of running three or four agents on one box: two sessions editing the same checkout, a dev server nobody owns (so the agent tests a different app than it edits), and MCP servers leaked from crashed sessions that hold ports and RAM for weeks.\n  Prefer PayPal? Same kit on [Payhip](https://payhip.com/b/o9q0f).\n- **[Agent Reliability Kit](https://stcai.gumroad.com/l/agent-reliability-kit?wanted=true&utm_source=github&utm_medium=readme&utm_campaign=whats-running-mcp)** ($29) — a Stop hook and two CLIs that block a turn when an agent claims \"done\" against a repo, URL, or build that was never actually checked.\n  Prefer PayPal? Same kit on [Payhip](https://payhip.com/b/i0sSw).\n\nThe server above stays free and MIT either way — it has no upsell in it, no telemetry, and no dependency on the paid kits.\n\n## Sponsors\n\nThis server is MIT and stays MIT. There is no pro edition, no telemetry, and\nnothing held back from the free build. Sponsorship is how the maintenance gets\npaid for without any of that changing.\n\n**No sponsors yet — the first slot is open.** Company sponsors get their name or\nlogo in this section, in the two sibling servers, and on the sponsor page.\nTiers, exactly what the placement is, and what it explicitly does not buy:\n**https://shifttheculture.media/sponsor**\n\nIndividuals: https://paypal.me/ShiftTheCultureLLC — any amount, no perks, no tier.\n\n## License\n\nMIT © Zachary Pampu\n",
  "bytes": 6769,
  "sha": "0cfb9e103ae0cd68283649d2ee853411d1936172fe7c344c0035c4a80f840194",
  "repo_slug": "stcmain/whats-running-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_stcmain_whats_running_3e3b3a59/readme"
}