JSON Schema Tools について
JSON Schema Toolsは、JSONの検証やスキーマを扱う開発者向けのMCPサーバーです。複数のスキーマドラフトに対応し、サンプルからの推論や変更ごとの互換性評価を行います。
主な機能
- 01AjvによるJSON検証
- 0207、2019-09、2020-12ドラフト対応
- 03サンプル文書からスキーマを推論
- 04互換性への影響を添えてスキーマを比較
活用シーン
- 01スキーマに基づくJSON文書の検査
- 02例から初期スキーマを作成
- 03スキーマ変更の互換性確認
MCP 対応
stdio経由で、MCPクライアントに`validate_json`、`infer_schema`、`diff_schemas`ツールを提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
docker run -i --rm ghcr.io/basitalisandhu/mcp-json-schema-tools:0.3.0ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ghcr.io/basitalisandhu/mcp-json-schema-tools:0.3.0stdioツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
json-schema-tools MCP サーバー
Ajv を使用して JSON を JSON Schema ドラフト 07、2019-09、2020-12 に対して検証し、サンプル文書からスキーマを推論し、2 つのスキーマの差分を互換性の判定とともに変更ごとに表示します。
dev-mcp-servers の一部です。Stdio トランスポートのみを使用し、サーバーがポートを開くことはありません。
ツール
| ツール | 入力 | 返される内容 |
|---|---|---|
validate_json | schema、data、draft? | valid、使用したドラフト、エラー数、および JSON Pointer パス、スキーマパス、キーワード、メッセージ、パラメーターを含む最大 200 件のエラー。形式(email、uri、date-time、uuid など)もチェックされます。 |
infer_schema | samples(文書の配列または JSON 文字列)、enum_threshold?、detect_formats?、title? | ドラフト 2020-12 のスキーマ。サンプル間で統合された型、すべてのサンプルに存在するキーの required、ネストされたオブジェクト、配列の項目、文字列形式、任意の列挙値が含まれます。 |
diff_schemas | before、after | パス、変更前と変更後の値、および影響(破壊的、互換性あり、要確認)を含む各変更。影響は before の下で有効な文書の観点から判定されます。 |
インストール
Claude Code:
claude mcp add json-schema-tools -- docker run --rm -i ghcr.io/basitalisandhu/mcp-json-schema-tools:0.2.2
すべてのプロジェクトで利用できるようにするには、-s user を追加します。.mcp.json を読み取るクライアント(Claude Code、Claude Desktop、Cursor)では、次のようにします。
{
"mcpServers": {
"json-schema-tools": {
"command": "docker",
"args": ["run", "--rm", "-i", "ghcr.io/basitalisandhu/mcp-json-schema-tools:0.2.2"]
}
}
}
エディターで実行される内容が、気付かないうちに更新によって変わらないよう、表示されているバージョンを固定してください。このパッケージはまだ npmjs.com に公開されていないため、npx は機能しません。GitHub Packages npm についてはリポジトリの READMEを参照してください。チェックアウトしたリポジトリからは、リポジトリのルートで npm install && npm run build を実行した後、"command": "node", "args": ["<path>/packages/json-schema-tools/dist/index.js"] を使用します。
対象となるもの
- ネットワーク:なし。リモートの
$refの参照先は取得されません。 - ローカルファイル:なし。
- テレメトリー:なし。
注意事項
- Ajv は
strict: falseで実行されるため、未知のキーワードを含む実際のスキーマも検証できます。 - ドラフト 04 およびドラフト 06 のスキーマは拒否されます。
$schemaを更新するか、削除してください。 - スキーマと文書は JSON 値または JSON 文字列として渡せます。どちらも上限は 2 MB です。
ビルドとテスト
npm install # at the repository root
npm run build -w @basitalisandhu/mcp-json-schema-tools
npm test -w @basitalisandhu/mcp-json-schema-tools
テストでは node:test と SDK のインメモリトランスポートを使用します。ネットワークには接続しません。
ライセンス
MIT。LICENSEを参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。