Mcp audit
Skill hoangsonww/Claude-Code-Agent-Monitor/plugins/ccam-config/skills/mcp-audit
π A real-time monitoring dashboard for Claude Code, built with SQLite3, Node.js, Express, React, Vite, TailwindCSS, and WebSockets. It tracks sessions, agent activity, tool usage, and subagent orchestration, providing live analytics, a Kanban status board, status notifications, a cute buddy, and an interactive web UI/MacOS/Windows native app.
npx -y skills add hoangsonww/Claude-Code-Agent-Monitor --skill mcp-auditAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
What its author says it does
Copied from the file, not written here
Audit the configured MCP servers (user + project scope) via the Agent Monitor Config Explorer API: transport (stdio vs http), command/args and env variable names, headers, and the source file each definition came from. Reads /api/cc-config/mcp. Use when reviewing MCP integrations for hygiene, duplication, or unexpected transports.
SKILL.md
2.7 KB, as published. Nobody here has run it
MCP Audit
Inventory and audit every Model Context Protocol server the user has
configured β both user-scope and project-scope β read through the Agent Monitor
dashboard at http://localhost:4820.
Input
The user provides: $ARGUMENTS
This may be:
- empty β audit all MCP servers (default).
- a server name fragment β focus on matching servers.
- "stdio" / "http" β restrict to one transport kind.
Data Sources
| Endpoint | Returns |
|---|---|
GET /api/cc-config/mcp | { user:[β¦], projectScoped:[β¦] }. Each server: { name, source, kind } where kind is stdio (with command, args, envNames), http (with url, headers), or unknown. source names the file the definition came from (e.g. ~/.claude.json (top-level), ~/.claude.json (projects[<root>]), ~/.claude/settings.json) |
Report Sections
1. Server inventory
List every server from user and projectScoped. For each show name,
source, kind, and the transport detail:
- stdio β the
command, itsargs, and theenvNames(names only β values are not exposed by the API). - http β the
urland theheaderskey names (values not exposed). - unknown β a definition the server could not classify; flag it for review.
2. Scope split & duplication
Separate user-scope from project-scope servers. Flag any name that appears in
both scopes (project may shadow user) and any duplicate definitions across
source files.
3. Hygiene flags
- Unknown transport β servers with
kind: "unknown"(malformed or unsupported definition). - Env reliance β stdio servers with many
envNames; note they depend on environment variables being present at launch. - Remote endpoints β http servers; surface the
urlhost so the user can confirm they trust the remote.
Output
- Section 1 as a table (
Scope | Name | Kind | Transport detail | Source). - Env names and header names listed by name only β never invent or print values (the API does not expose them).
- Cite only fields the API returned β never fabricate servers, commands, or hosts.
- Note: MCP servers are read-only via the Config Explorer (they are written
concurrently by the running CLI); edit their definitions in the source file
named by
source. - If the dashboard is unreachable at
http://localhost:4820, say so and tell the user to start it withnpm startfrom the repo root.