Add a per-server "don't ask again" option to the MCP tool permission prompt

Open 💬 2 comments Opened Jun 23, 2026 by kardagan

What

When Claude Code asks to approve an MCP tool call, the prompt currently offers:

1. Yes
2. Yes, and don't ask again for "ServerName - toolName" commands in <dir>
3. No

Option 2 only whitelists the single specific tool. For MCP servers that expose many tools (e.g. an observability or internal-search server with 20+ tools), you end up approving each tool one by one across a session, even though you trust the whole server.

Proposal

Add an extra option to the prompt to whitelist the entire server in one keystroke:

1. Yes
2. Yes, and don't ask again for "ServerName - toolName" commands in <dir>
3. Yes, and don't ask again for "ServerName" commands in <dir>      <- new
4. No

Choosing option 3 would write mcp__ServerName to the permissions.allow array of the relevant settings.json (same mechanism as option 2, just at server granularity — which the rule syntax already supports).

Why

  • The server-level allow rule (mcp__ServerName) already exists in settings; the prompt just doesn't expose it. This is purely a UI affordance over an existing capability.
  • Today the only way to get server-wide approval is to hand-edit settings.json, which breaks the interactive flow and is not discoverable.
  • Per-tool approval is a sensible default, but for trusted servers it produces a lot of repetitive prompts.

Notes / safety

  • Keep per-tool (option 2) as the default-highlighted choice so server-wide is a deliberate pick, not an accidental one.
  • Could be gated/hidden behind a setting for orgs that want to forbid server-wide self-approval (complements the existing managed MCP policies).

View original on GitHub ↗

This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗