MCP tool calls silently rejected - no permission prompt shown

Resolved 💬 2 comments Opened Mar 31, 2026 by ophirr Closed May 5, 2026

Description

MCP tool calls that are in the ~/.claude/settings.json allow list are being silently rejected (no permission prompt shown to user) when called with specific parameter values. The same tool with different parameter values works fine.

Reproduction

  1. Add mcp__linkedin__post_comment to ~/.claude/settings.json permissions allow list
  2. Call mcp__linkedin__post_comment with confirmed=false - works fine, no prompt needed
  3. Call mcp__linkedin__post_comment with confirmed=true - silently rejected with "The user doesn't want to proceed with this tool use"

No permission prompt is shown to the user in step 3. The user sees nothing and the tool call fails.

Environment

  • Claude Code version: 2.1.87
  • macOS Darwin 24.6.0
  • Tested in both VS Code extension and iTerm2 terminal - same behavior in both
  • The tool was working correctly in a prior session (possibly prior Claude Code version)

Settings

The tool is explicitly in the allow list:

{
  "permissions": {
    "allow": [
      "mcp__linkedin__post_comment",
      ...
    ]
  }
}

No deny rules configured anywhere. No hooks blocking the tool.

Expected behavior

Either:

  • The tool call should be auto-approved (it is in the allow list), OR
  • A permission prompt should be shown to the user

Actual behavior

The tool call is silently rejected with no prompt. The error message says "The user doesn't want to proceed" but the user was never asked.

Notes

  • This may be related to parameter-value-dependent permission checks. confirmed=false (read-only preview) passes while confirmed=true (write operation) fails
  • The MCP server post_comment tool has a two-phase confirmation pattern (preview then post) which may be interacting with the permission system
  • Started happening after updating to a recent Claude Code version. User reports it worked in a prior session.
  • Regular Bash calls to commands not in the allow list (e.g. python3 before it was added) also silently fail with the same error, no prompt shown

View original on GitHub ↗

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