[BUG] Scheduled routines fail all MCP connector calls with "MCP tool call requires approval"

Resolved 💬 5 comments Opened May 21, 2026 by niravm21 Closed May 23, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

Summary: A scheduled routine has the Gmail connector attached. The routine's Connectors UI states "Claude can use all tools from these connectors — including writes — without asking for permission during runs." However, every routine run — including a fresh manual "Run now" — fails every Gmail MCP tool call with: Streamable HTTP error: Error POSTing to endpoint: MCP tool call requires approval

The identical prompt run in a normal interactive Claude Code session works perfectly, with no approval prompt at all (the Gmail connector is authorized account-wide). No interactive approval prompt is ever shown in the routine session, so the call can never be approved.

Environment: Claude Code on the web, routine session, CLAUDE_CODE_ENTRYPOINT=remote_trigger
Repo: hfck9qf27f-droid/claude-routines · Session: cse_019kjsjBmW1bYfcb9D6M1FLw

Expected: Routine runs can call connector tools without approval, per the UI. Actual: All connector calls blocked; routine cannot complete.
----------
A scheduled routine ("Claude Code on the web" routine) with a Gmail MCP connector
attached fails on every run. Every Gmail tool call is blocked with:

Streamable HTTP error: Error POSTing to endpoint: MCP tool call requires approval

This happens on both scheduled runs and manual "Run now" triggers. No interactive
approval prompt is ever shown in the routine session, so the call can never be
approved and the routine cannot complete.

The Gmail connector is correctly attached to the routine (Connectors tab), and the
routine UI explicitly states: "Claude can use all tools from these connectors —
including writes — without asking for permission during runs." The actual behavior
contradicts this.

The identical prompt run in a normal interactive Claude Code session works perfectly,
with no approval prompt at all — the Gmail connector is authorized account-wide.
Allowlisting the mcp__Gmail__* tools in .claude/settings.json (permissions.allow)
does not bypass the block, so it originates above Claude Code's permission layer.

Environment: Claude Code on the web, routine session, CLAUDE_CODE_ENTRYPOINT=remote_trigger.

What Should Happen?

Routine runs should be able to call tools from an attached MCP connector without an
approval prompt, exactly as the routine's Connectors UI promises ("without asking for
permission during runs"). The routine should be able to read Gmail and complete its
task unattended, the same way the identical prompt succeeds in an interactive session.

Error Messages/Logs

Steps to Reproduce

  1. Create a Claude Code on the web routine with any prompt that uses Gmail.
  2. Attach the Gmail connector to the routine under the Connectors tab.
  3. Trigger the routine, either on schedule or via "Run now".
  4. Observe that every Gmail MCP tool call fails with:

"Streamable HTTP error: Error POSTing to endpoint: MCP tool call requires approval"

  1. Run the same prompt in a normal interactive session — it succeeds with no prompt.

Claude Model

Opus

Is this a regression?

Yes, this worked in a previous version

Last Working Version

_No response_

Claude Code Version

2.1.146

Platform

Anthropic API

Operating System

Windows

Terminal/Shell

Other

Additional Information

_No response_

View original on GitHub ↗

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