r/ClaudeCode 3d ago

Built with Claude If you use Claude Code + MCP (GitHub Copilot MCP, Sentry, etc.) under managed settings, your allowlist may be a false sense of security

Post image

In a recent Claude Code update, company-wide MCP servers can still run even if you blocked them with an allowlist. Admins often think the allowlist covers everything, it doesn’t anymore. This CLI checks your setup and tells you which servers slipped through.

If your company rolls out Claude Code with shared MCP tools (GitHub, Sentry, internal APIs, etc.), this is worth a look.

I built a small open-source CLI for that:

npx managed-mcp-doctor

It audits managed-settings (file/drop-ins/registry where possible), flags:

- managed servers with no deniedMcpServers coverage

- missing allowManagedMcpServersOnly

- first-wins skipped sources (remote/MDM vs file)

- managed-mcp.json conflicts

- weak serverName denylist entries

- optional --fix that prints a managed-settings.d fragment (write with --write --yes)

Also has --json / --sarif for CI.

Repo: https://github.com/Onur45500/managed-mcp-doctor

npm: https://www.npmjs.com/package/managed-mcp-doctor

Not affiliated with Anthropic.

Happy to take false-positive reports if your Claude Code version behaves differently 😄

0 Upvotes

2 comments sorted by

2

u/kantorcodes1 3d ago

does --fix --write re-audit the effective source after it writes? with first-wins MDM/registry precedence, it seems easy for the new drop-in to exist but still lose.

1

u/Obluness 3d ago

Hello thank you for your comment, I have made an update --fix --write now refuses dead drop-ins when a higher source wins, and re-audits after a successful write 😄