mcpField
J
jmespath-mcp

jmespath-mcp

ローカル
github.com/MukundaKatta開発ツール020 週間前に更新

jmespath-mcp について

jmespath-mcpは、JMESPathでJSONを検索するMCPサーバーです。射影、フィルター、組み込み関数を使う処理に適しており、純粋なJavaScript実装のためネイティブバイナリは不要です。

主な機能

  1. 01JSONにJMESPath式を実行
  2. 02配列の射影とフィルター
  3. 03パイプと組み込み関数の利用
  4. 04純粋なJavaScript実装でネイティブバイナリ不要

活用シーン

  1. 01ネストしたJSON値の選択
  2. 02配列要素の絞り込みと射影
  3. 03値の並べ替えやJSONプロパティの計算

MCP 対応

MCPクライアントに`json_query`ツールを提供し、渡されたJSONデータにJMESPath式を実行します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"mukundakatta-jmespath": {
"command": "npx",
"args": [
"-y",
"@mukundakatta/jmespath-mcp"
]
}
}
}
起動コマンドnpx -y @mukundakatta/jmespath-mcp

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@mukundakatta/jmespath-mcp0.1.0

ツール

1

掲載時のツール一覧 · 3 週間前に更新

パラメーター型必須説明
dataanyはいクエリ対象の JSON。JSON 文字列または解析済みの値を渡します。
expressionstringはいJMESPath 式。例:foo.bar | items[*].name | locations[?state=='WA'].name | length(@)。

詳細

@mukundakatta/jmespath-mcp

JMESPath JSON クエリ用の MCP サーバーです。ツールは json_query(expression, data) の 1 つです。純粋な JavaScript 実装のため、jq バイナリは不要です(macOS/Linux/Windows で同じように動作します)。

これが作られた理由

LLM は浅い JSON パス(foo.bar.baz)の処理は得意ですが、次の処理では確実に間違えます。

  • 配列プロジェクション(people[*].name)
  • フィルター(locations[?state == 'WA'])
  • パイプと組み込み関数(length、sort_by、contains、keys)
  • to_entries/from_entries を使った往復変換

JMESPath は、AWS が標準化した JSON クエリ言語です。このサーバーは実際の JMESPath エンジンで式を実行し、結果を返します。

jq ではなく JMESPath を使う理由

node-jq は jq バイナリをダウンロードする postinstall 手順を必要としますが、これは Windows で確実に失敗します。JMESPath は純粋な JavaScript で、ネイティブ依存関係がありません。クエリ言語も、ほとんどの LLM のユースケース(深いパス、フィルター、プロジェクション、組み込み関数)で十分に似ています。

インストール — Claude Desktop

{
  "mcpServers": {
    "jmespath": { "command": "npx", "args": ["-y", "@mukundakatta/jmespath-mcp"] }
  }
}

Cursor/Cline/Windsurf/Zed でも同様の形式です。

チュートリアル

言語については https://jmespath.org/tutorial.html をご覧ください。よく使われるパターンは次のとおりです。

  • foo.bar — ネストされたキーへのアクセス
  • people[*].name — 各項目から値を抽出
  • people[?age > \30`].name` — フィルターを適用してからプロジェクション
  • sort_by(people, &age)[*].name — ソートしてプロジェクション
  • keys(@)、values(@)、length(@) — 基本的な関数

ライセンス

MIT OR Apache-2.0。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。