PaPoo
cover

Tool execution failed が出るとき、まず見るべき切り分け

Tool execution failed という表示だけでは、原因は1つに絞れません。今回確認できた issue 報告では、少なくとも次の2種類が混ざっています。ひとつは、MCP サーバーに tool 呼び出し自体が届いていないケース。もうひとつは、特定の tool だけが失敗するケースです。

たとえば #79926 では、Claude Desktop のローカル stdio MCP サーバーで initializetools/list は通るのに、tools/call がサーバーの stdin に一切書かれないと報告されています。画面上は Tool execution failed あるいは Failed to call tool になります。一方で、同じ症状群の #69642 では Gmail MCP の search_threads だけが失敗し、label_threadunlabel_thread は動いています。つまり、同じ Tool execution failed でも、全体障害なのか、個別 tool の問題なのかを先に分けたほうがよいです。

#80105 は少し毛色が違います。Windows の Claude Desktop 1.24012.1 で、outputSchema を持つ MCP tool がクライアント側で失敗し、サーバー側には tools/call が届いていません。outputSchema のない同じサーバー上の tool は正常だったと報告されています。ここから、Tool execution failed は「サーバーの実行失敗」そのものではなく、クライアント側で dispatch 前につまずいている場合にも出ると分かります。

自分のケースを切り分けるときは、まず「その tool だけ落ちるのか」「どの tool も落ちるのか」を見るのが近道です。issue 上で確認できる範囲では、tools/list が返るのに tools/call が届かない、というパターンが何度も出ています。

筆者の環境で取れた情報はこれだけです。

[env_summary]
OS          : Linux 3.10.0-1160.76.1.el7.x86_64 (x86_64)
Python      : 3.8.13
検証日時    : 2026-08-26T08:50:29+09:00

この出力だけでは、再現確認まではできません。少なくとも今回の一次情報からは、原因を断定する材料はありません。

もし手元で同じ表示が出ていて、ローカル stdio の MCP サーバーを使っているなら、tools/list までは通るが tools/call が届いていない可能性があります。逆に、Gmail のようなリモート connector で特定の tool だけ失敗するなら、#69642 のように endpoint 単位の不具合も疑えます。現時点では、どちらも「Tool execution failed という見え方をする」というところまでしか確実ではありません。


検証環境

OS          : Linux 3.10.0-1160.76.1.el7.x86_64 (x86_64)
Python      : 3.8.13
検証日時    : 2026-08-26T08:50:29+09:00

参照した Issue(anthropics/claude-code): #80105, #79926, #69642

同じ著者の記事