mcp-audit — Claude Code skill: what it does, how to install
Audits user- and project-scoped MCP servers via the Agent Monitor API. Identifies transport issues, duplicate configurations, and external HTTP endpoints.
npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill mcp-audit -a claude-codeWhat mcp-audit does
The skill queries the Agent Monitor Config Explorer at GET /api/cc-config/mcp running on http://localhost:4820. It catalogs Model Context Protocol servers defined across personal settings and project paths, including files such as ~/.claude.json and ~/.claude/settings.json.
The resulting report groups servers by stdio and http transports. For stdio, it lists execution commands, arguments, and required environment variable names. For http, it exposes target URLs and request header keys. It never exposes actual secrets or values because the underlying API omits them. It also highlights duplicated server names across scopes and flags unparsed definitions marked as unknown.
Edits cannot be applied through this skill because Config Explorer is read-only. Adjusting definitions requires manually editing the source JSON file noted in the report. If the dashboard is not running on port 4820, the skill fails until you start it via npm start.
What it helps with
- catalog active MCP servers across user and project scopes
- detect naming collisions between global and project definitions
- flag malformed definitions with unknown transport types
- verify remote HTTP endpoints before connecting
Example prompts for the agent
- Audit all configured MCP servers
- Run an MCP audit for stdio transports only
- Check MCP integrations for duplicates and unknown transports
How to install mcp-audit
1Skills CLI (Vercel)
npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill mcp-audit -a claude-code2Manually: put the files in place
~/.claude/skills/mcp-audit/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/mcp-audit/
1Skills CLI (Vercel)
npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill mcp-audit -a codex2Manually: put the files in place
.agents/skills/mcp-audit/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill mcp-audit -a cursor2Manually: put the files in place
.cursor/skills/mcp-audit/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install hoangsonww/Claude-Code-Agent-Monitor mcp-audit2Manually: put the files in place
.github/skills/mcp-audit/SKILL.md1Skills CLI (Vercel)
npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill mcp-audit -a gemini-cli2Platform CLI
gemini skills install https://github.com/hoangsonww/Claude-Code-Agent-Monitor --path plugins/ccam-config/skills/mcp-auditManually: put the files in place
.devin/skills/mcp-audit/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill mcp-audit -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about mcp-audit
How to install mcp-audit in Claude Code?
Run npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill mcp-audit -a claude-code. Alternatively, configure the skill file at ~/.claude/skills/mcp-audit/SKILL.md.
What does mcp-audit do?
It queries the Agent Monitor API to build an inventory of configured MCP servers. The skill checks transport types, source files, and warns about shadowed or duplicated server names.
What is required to run the mcp-audit skill?
You need the Agent Monitor web dashboard running locally at http://localhost:4820. If it is offline, launch it with npm start from the root of its repository.
Source text
SKILL.md · MIT
---
name: mcp-audit
description: >
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.
---
# 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`, its `args`, and the `envNames` (names only — values
are not exposed by the API).
- **http** — the `url` and the `headers` key 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 `url` host 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 with `npm start` from the repo root.
© hoangsonww · MIT · hoangsonww/Claude-Code-Agent-Monitor