Claude Media
Claude Code RoutinesでMCP承認エラーが出る原因と対処法

Claude Code RoutinesでMCP承認エラーが出る原因と対処法

Scheduled routinesでMCPツール呼び出しが承認待ちのまま止まる回帰の症状・時系列・回避策を、GitHub Issue #61015の一次情報にもとづいて解説します。

claude.aiのscheduled routine(/scheduleRemoteTriggerツールから作成するもの)がMCPツールを呼ぶと、Streamable HTTP error: Error POSTing to endpoint: MCP tool call requires approvalというエラーで止まることがあります。この回帰は2026年5月に報告されました。コネクタへの書き込みは一切実行されません。routineには承認プロンプトをクリックする人間がいないため、この状態になると処理はそこで止まります。原因はGitHub Issue #61015にまとまっています。Issueをクローズした担当者が発生翌日に対応済みとコメントしましたが、同種の症状はその後も断続的に報告が続いています。

Scheduled routinesのMCP呼び出しが「承認待ち」で止まる症状

最初の報告者は、Auth0でOAuth保護されたカスタムMCPサーバー(Obsidianノートを操作する自作コネクタ)をscheduled routineに接続しました。すると、routine内のlist_notescreate_note呼び出しがすべて次のエラーで失敗したと説明しています。

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

同じコネクタはClaude Code(ローカルMac・リモートLinux)やclaude.ai chatといった対話的な画面からは問題なく呼べていました。失敗するのは「Routineでの実行環境+MCPコネクタ」の組み合わせに限られていました。last_fired_atは更新されるためroutine自体は起動しているものの、コネクタへの書き込みは一件も反映されません。

報告者の環境情報によると、失敗が始まったのはUTC 2026-05-19 14:00頃からUTC 2026-05-20 14:00頃の間です。同一アカウント上で、プロンプトの異なる複数のroutineが同じコネクタに対して同時期に書き込みを止めていました。これは個別のroutine設定の問題ではなく、プラットフォーム側の変更に連動していることを示しています。

Issue公開後の数時間で、症状は自作コネクタに限らないことが次々に報告されました。コメント欄では、Notion・Gmail・Google Calendar・Microsoft 365・Slack・Atlassian(Jira)・Datadog・Sentry・Linear・Google Drive・Snowflake・BigQueryなど、コネクタの種類を問わず再現報告が寄せられました。ある報告者は環境内で使える13種類のコネクタに読み取り専用のツール呼び出しを1つずつ試しました。全13件が同一のエラーで失敗し、Routineでの実行環境全体に一律でかかるゲートだったことがうかがえます。

なぜ承認前提の設計がRoutineで詰まるのか

Claude Codeの通常セッションでは、MCPツールの初回呼び出し時に人間へ承認を求め、「Always allow」を選べばそれ以降は自動で通す設計になっています。この仕組みは対話画面を前提にしており、settings.jsonのallowルールや画面上の「常に許可」操作が承認済みの状態を記録します。

scheduled routineは定義上、実行中に人間が画面を見ていません。今回の回帰では、コネクタ接続時に設定したpermitted_tools(routine作成時にどのツールを使わせるか明示するフィールド)があっても、実行時には改めて承認が要求されていました。承認する人間が存在しないため、呼び出しはそのまま失敗する状態になっていました。報告者の1人はこの構造を、対話的な承認と無人実行の承認を同じ許可(承認の記録)として扱ってしまう設計上の弱点だと分析しています。「人間が誰もいない瞬間にその許可がハードな拒否に転じる」という指摘です。あくまで一報告者による技術的な分析であり、Anthropic側が原因をこの形で確定させたとするコメントは本Issueには見当たりません。

影響を受けたコネクタと2026年5月の時系列

Issueが公開されてから収束するまでの流れは次のとおりです。

日時(UTC)できごと
2026-05-19〜20頃できごとコネクタへの書き込みが起きなくなる回帰が始まる(報告者の観測による推定期間)
05-21 00:54できごとIssue #61015が公開。カスタムOAuthコネクタでの承認待ちエラーを報告
05-21 01:52〜12:11できごとNotion・Gmail・Google Calendar・Microsoft 365・Slack・Atlassian・Datadog・Sentry・Linear・Google Drive・Snowflake等、多数のコネクタで再現報告が続く
05-21 15:14できごとomid-ant氏(後にこのIssueをクローズした人物)が「This issue should be addressed」とコメント
05-21 18:38できごと別の報告者が、修正コメント後に作成したroutineでMCPツールがそもそもセッションに登録されない(承認エラーとは別の症状)ことを報告
05-21 19:57できごとomid-ant氏が「that issue should now be fixed as well」と追加コメントし、Issueがクローズ(state reason: completed)

クローズ理由は「completed」で、omid-ant氏のコメントは2026-05-21の1日のうちに2回入っています。最初のコメントは承認エラーそのものへの対応、2回目はその直後に見つかった「MCPツールがセッションに一切登録されない」別症状への対応でした。

2026年7月以降も報告が続いた再発パターン

Issue #61015自体はクローズされていますが、同じスレッドにはクローズ後もコメントが投稿され続けています。時期がかなり離れているため、5月のクローズがすべての利用者の環境で恒久的な解決になったとは言い切れません。

  • 2026-07-06: Slackコネクタで、無人実行時のみ承認プロンプトでハングすると報告されました。手動の「Run now」(人間が操作する実行)なら成功し、同じアカウントのBigQuery・Google Driveのコネクタは影響を受けていません。回帰以前に作成したトリガーはSlackツールを無人実行できますが、回帰後に作成したトリガーでは同じコネクタ・同じアカウントでも再現します。許可がトリガー作成時点に紐づいている可能性が指摘されています
  • 2026-07-19: Gmail・Google Driveのコネクタで、エラーメッセージすら出ずに出力ゼロのままセッションが無期限にハングする症状が別途報告されました。「Always」に設定済みのツールでも同じ結果になりました。同一のトリガーが早い時間帯には2分足らずで完走したのに、数時間後の再実行ではハングしています。コネクタ固有ではなく、サーバー側の断続的な条件である可能性が指摘されています
  • 2026-07-23: 5月にも報告があったSentryコネクタで、今度は承認エラーではなく無出力のハングとして再発しました
  • 2026-08-04・08-12: Gmail・Dropbox、およびSuperhuman Mail・Notion・Microsoft 365・Google Calendarのコネクタで、承認が毎回要求される・実行間で許可が引き継がれないという症状が改めて報告されています。これらのコメントは#61027#61044#61097#61143という後継の重複Issue番号を挙げています。5月の修正後も、類似の症状が形を変えて複数件起票され続けていることがうかがえます

これらの後継Issueのステータスは、本Issue #61015のスレッド内には記載がありません。5月の回帰そのものは修正コメント通りに収束した可能性があります。一方で「routineの無人実行とMCPコネクタの承認・許可の管理」という同じ領域では、少なくとも2026年8月12日の報告まで類似の不具合が繰り返し出ていたことが一次情報から確認できます。

効かなかった対処と、限定的に効いた回避策

Issueのコメントには、効かなかった対処と、限定的に機能した対処の両方が記録されています。

まず効かなかったものです。ローカルの~/.claude/settings.jsonpermissions.allowでコネクタやツール名を明示しても、routineの実行には反映されません。scheduled routineが動く実行環境は、セッションごとに使い捨てのコンテナです。セッション途中でこのファイルを読み直す仕組みがないため反映されません(settings.jsonの適用範囲を参照)。コネクタの再接続や、Connectors画面での「常に許可」設定のやり直しも、報告の範囲では改善につながっていません。

一方、人間がその場で操作する手動実行(「Run now」)は、承認プロンプトをその場でクリックできるぶん成功しています。ただし無人実行という当初の目的そのものを失うため、根本対応ではなく確認用の回避策です。最初の報告者自身は、同じコネクタに対する処理をclaude.aiのroutineから切り離しました。ローカルのcronジョブとして走らせる方法に切り替えたと述べています。この方法は動作こそしますが、claude.aiのroutineを使う利点(ローカルマシンの電源が落ちていても実行される点など)を手放すことになります。

MCPのツール単位でどこまで許可するかという設計自体は、routine固有の問題ではなくMCPサーバーの権限設計全般に関わる話です。今回のケースでは、その権限モデルが「実行中に人間がいる」ことを前提にしていた点が、無人実行のroutineでは裏目に出たことになります。MCPコネクタ以外のトリガー種別・料金・シークレット管理などRoutine全般はClaude Code Routines完全ガイドにあります。

まとめ

2026年5月に発生したscheduled routineのMCP承認エラーは、自作コネクタだけでなく主要な公式コネクタも巻き込みました。報告されたコネクタにはNotion・Gmail・Slack・Atlassianなどが含まれます。Issueをクローズした担当者が、Issue公開から1日足らずで2段階の修正コメントを出しました。ただし同じ症状のパターン(承認が毎回求められる、出力ゼロでハングする、実行間で許可が引き継がれない)は、2026年8月12日の報告まで別Issue番号で断続的に上がり続けています。scheduled routineに新しくMCPコネクタを組み込む場合は、本番運用の前に一度「Run now」で手動実行が通ることを確認しておくと安全です。無人実行時にも同様に完走するかを別途確かめておくと、今回のような回帰に気づきやすくなります。

この記事を共有:XはてブLinkedIn