~/tools / Tool Definition Checker
Tool Definition Checker — OpenAI・Anthropic・Gemini のツール・関数定義を確認
OpenAI、Anthropic、Gemini に送るツール(関数)定義を、各 API のドキュメントに書かれた形式と照らして確認します。名前、description、パラメータの schema、strict mode、入力例を調べ、リクエストが失敗する前に間違いを見つけられます。入力した内容はブラウザの外に出ません。
ルールは 2026-10-23 時点のドキュメントで確認しています。
ドキュメント: OpenAI / Anthropic / Gemini API リファレンス
確認していないこと: モデルがそのツールに対応しているか、Anthropic の strict tool use の詳細、Anthropic が自ら提供するツール、ドキュメントに書かれていないルール。
すべてブラウザの中で実行されます。定義はアップロードされません。
ツール呼び出し(tool use、function calling)は、モデルがあなたのコードに関数の実行を依頼する仕組みです。関数は JSON の定義で記述しますが、主要な 3 つの API で期待される形は異なります。OpenAI Chat Completions は function オブジェクトの中に関数を入れ子にし、OpenAI Responses は項目を同じ階層に置き、Anthropic は name と input_schema を使い、Gemini は function declarations を使います。名前のルールも同じではありません。このツールは貼り付けた定義を読み、どの API 向けに書かれているかを判別し、そのベンダーのドキュメントに書かれた内容と照らして、名前、description、パラメータの schema、strict mode、そして Anthropic の場合は各入力例が schema に合っているかを確認します。ある API で使える名前が別の API では拒否される場合も知らせます。ルールは、ツールの下に表示した日付のドキュメントで確認したものです。
こんな時に使う
- リクエストに加える前にツール定義を確認し、名前の誤りや形の間違いで呼び出しが失敗するのを防ぐ
- strict mode で関数の schema が拒否される理由を調べる
- ツールをあるベンダーから別のベンダーへ移すとき、何を直す必要があるかを確かめる
使い方
- ツール定義 1 つ、ツールの配列、または tools 配列を含むリクエスト本文を貼り付けます。サンプルを読み込むこともできます。
- 各ツールがどの API として認識されたかを確認し、続いて指摘の一覧を読みます。「修正」はドキュメント上、拒否される、または無効とされるもの、「確認」は見ておく価値があるもの、「補足」は情報のみです。
- 定義を直して、もう一度貼り付けます。strict mode の問題は、Structured Output Schema Checker で一つずつ詳しく確認できます。
FAQ
定義がどの API 向けかを、どうやって判別しているのですか。
形から判別します。input_schema がある定義は Anthropic として読みます。type が function で、function オブジェクトが入れ子になっているものは OpenAI Chat Completions、type が function で項目が最上位にあるものは OpenAI Responses として読みます。functionDeclarations を持つオブジェクト、または name、description、parameters を持つオブジェクトは Gemini として読みます。各ツールがどれと認識されたかは結果に表示されます。
名前のルールは何ですか。
OpenAI のドキュメントでは、使えるのは英字、数字、アンダースコア、ダッシュで、最大 64 文字です。Anthropic のドキュメントでは、英字、数字、アンダースコア、ダッシュで、最大 128 文字です。Gemini のドキュメントでは、英字、数字、アンダースコア、コロン、ドット、ダッシュで、最大 128 文字です。ある API で有効な名前が別の API では拒否されることがあり、その場合はツールが知らせます。
strict が true のとき、なぜ schema をもう一度確認するのですか。
OpenAI によると、strict mode ではすべてのオブジェクトで additionalProperties を false にし、すべてのプロパティを required に入れる必要があります。省略可能な値は、null も許す type で書きます。これらのルールに反する schema は拒否されます。ツールは問題の数を数え、最初の 1 件の場所を示します。
input_examples では何を確認しますか。
Anthropic によると、各例はそのツールの input_schema に対して有効でなければならず、無効な例があると 400 エラーが返ります。ツールはすべての例を schema と照らし、どれが合っていないかを知らせます。
確認しないことは何ですか。
特定のモデルがそのツールに対応しているか、Anthropic の strict tool use の詳細、Anthropic が自ら提供するツール、そしてドキュメントに書かれていない内容は確認しません。API は呼び出さないため、チェックに通った定義でも、実際のリクエストでは失敗することがあります。
定義はサーバーに送信されますか。
いいえ。確認はブラウザの中で行われます。