mcpField
L
ListSmith

ListSmith

ローカル
github.com/QuincyGB開発ツール01 日前に更新

ListSmith について

ListSmithは、x402サービスのBazaarディスカバリーメタデータを検査・修復するstdio型MCPサーバーです。欠陥診断と、実際のサンプル応答をもとに検証済み修正版を生成する有料ツールを備えています。

主な機能

  1. 01x402サービスのメタデータ評価
  2. 02欠陥とスコアの報告
  3. 03サンプル応答に基づくメタデータ修復
  4. 04修復済みディスカバリーパッケージの検証
  5. 05Base上のUSDCで支払い

活用シーン

  1. 01掲載前のx402ルート検査
  2. 02スキーマや説明の欠陥特定
  3. 03エンドポイント出力から検証済みメタデータ修復を生成

MCP 対応

ListSmithはstdio経由で`list_grade`と`list_fix`をネイティブMCPツールとして提供します。呼び出しにはBase上のUSDCを使ったx402決済を用い、運用者が設定したウォレットで署名します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"quincygb-list-smith": {
"command": "uvx",
"args": [
"list-smith-mcp"
],
"env": {
"AGENT_PRIVATE_KEY": "<AGENT_PRIVATE_KEY>",
"AGENT_KEY_FILE": "<AGENT_KEY_FILE>",
"LIST_SMITH_URL": "<LIST_SMITH_URL>",
"LIST_SMITH_GRADE_MAX_AMOUNT_UNITS": "<LIST_SMITH_GRADE_MAX_AMOUNT_UNITS>",
"LIST_SMITH_FIX_MAX_AMOUNT_UNITS": "<LIST_SMITH_FIX_MAX_AMOUNT_UNITS>"
}
}
}
}
起動コマンドuvx list-smith-mcp
設定が必要な環境変数
AGENT_PRIVATE_KEYシークレットEVM private key (0x...) of a wallet holding USDC on Base. Used locally to sign the x402 EIP-3009 authorization. For paid calls.
AGENT_KEY_FILEシークレットPath to a file containing that key (alternative to AGENT_PRIVATE_KEY).
LIST_SMITH_URLService base URL override (default: production).
LIST_SMITH_GRADE_MAX_AMOUNT_UNITSSpend guard per grade call in USDC micro-units (default 100000 = $0.10, the known price). The client refuses to sign anything priced above it.
LIST_SMITH_FIX_MAX_AMOUNT_UNITSSpend guard per fix call in USDC micro-units (default 500000 = $0.50, the known price). The client refuses to sign anything priced above it.

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

パッケージ
pypilist-smith-mcp0.1.2

ツール

2

掲載時のツール一覧 · 4 日前に更新

パラメーター型必須説明
resource_urlstringはい
sample_outputanyいいえ

詳細

list-smith-mcp

独立リポジトリ: このサーバーは QuincyGB/token-verdict-tools から分離されました。各 MCP サーバーに、ディレクトリへの取り込みと保守のための独自の GitHub リポジトリを持たせるためです。PyPI パッケージ名(list-smith-mcp)、バージョン、インストールコマンドに変更はありません。

MCP サーバー(stdio トランスポート)で、Claude Desktop、Cursor、独自のエージェントランタイムなど、あらゆる MCP ホスト向けに ListSmith をネイティブツールとして公開します。

ListSmith は、x402 サービスの Bazaar 検索メタデータを評価し、修正します。/v1/grade($0.10)は、ルートの検索メタデータで問題となっている箇所(不完全なスキーマ、SDK 検証の失敗、500 文字を超える説明、誤ったアセットアドレス)を項目ごとに示します。/v1/fix($0.50)は、実際のサンプル出力 1 件から推定した、修正済みでバリデーターに合格する検索パッケージを返します。どちらも x402 プロトコルを介して Base 上の USDC で支払います。アカウントも API キーも不要で、支払いが認証となります。

ツール

list_grade — 診断のみを行い、修正済みのコンテンツは返しません。

入力型説明
resource_urlstring(必須)評価する x402 リソースの完全な URL
sample_outputany(任意)エンドポイントからの実際のレスポンスボディ 1 件。指定した場合、エンドポイントが公開している出力スキーマとの照合も行います

出力:resource_url、graded_at、reachable、http_status、 x402_valid、terms、extension_present、sdk_validation、 schema_quality、defects(重大度付き)、score(0~100)、および fix_available。

list_fix — 修正を行います。

入力型説明
resource_urlstring(必須)修正する x402 リソースの完全な URL
sample_outputany(必須)エンドポイントからの実際のレスポンスボディ 1 件。修正後の出力スキーマはこのサンプルのみから推定され、何も作り出しません
namestring(任意)生成する説明の表示名。省略した場合は URL から取得します
categorystring(任意)説明の「使用する場面」の文言に使うカテゴリ(例:token-risk、search、data、media、monitoring)

出力:resource_url、graded_at、ok、failure、score_before、 defects、package(説明、修正済み Bazaar 拡張、OpenAPI と well-known のスニペット、手順、検証結果。x402 SDK の両方のバリデーターに合格した場合のみ提供)、および notes。

インストール

pip install list-smith-mcp

# Or from a checkout of this repository:
pip install .

Python ≥ 3.10 が必要です。このサーバーは MCP v1 SDK API (mcp>=1.2,<2)に固定されています。

設定

すべての設定は運用者自身の環境で行います。このサーバーを実行する人が、自分のウォレットを用意します。このパッケージに鍵情報は含まれておらず、パッケージの作成者が鍵を見ることもありません。

環境変数必須用途
AGENT_PRIVATE_KEY有料呼び出しの場合Base 上の USDC を保有するウォレットの EVM 秘密鍵(0x...)。x402 EIP-3009 認証への署名にローカルで使用します。
AGENT_KEY_FILE代替鍵を含むファイルへのパス。
LIST_SMITH_URLいいえサービスのベース URL の上書き(デフォルト:本番環境)。
LIST_SMITH_GRADE_MAX_AMOUNT_UNITSいいえ/v1/grade の USDC マイクロ単位での支出上限(デフォルト 100000 = $0.10、既知の価格)。
LIST_SMITH_FIX_MAX_AMOUNT_UNITSいいえ/v1/fix の USDC マイクロ単位での支出上限(デフォルト 500000 = $0.50、既知の価格)。

各ルートには固有の価格を上限として設定しています。クライアントは、ルートの上限を超える金額への署名を拒否します。署名者が設定されていない場合、ツールが支払いを行うことはありません。 402 が返された場合は、解析したチャレンジを構造化エラーとして返します。エラーは error: "payment_required" で、完全な accepts 配列(scheme、network、asset、amount、payTo)を含みます。これにより、呼び出し元のエージェントは価格を確認して対応を決めるか、独自の x402 クライアントでチャレンジを処理できます。

MCP ホストの設定

Claude Desktop(claude_desktop_config.json)— 他の stdio MCP ホストも同じ形式です:

{
  "mcpServers": {
    "list-smith": {
      "command": "list-smith-mcp",
      "env": {
        "AGENT_PRIVATE_KEY": "0xYOUR_OWN_WALLET_KEY"
      }
    }
  }
}

インストールではなく、チェックアウトから実行する場合:

{
  "mcpServers": {
    "list-smith": {
      "command": "python",
      "args": ["-m", "list_smith_mcp"],
      "env": {
        "PYTHONPATH": "/path/to/list-smith-mcp/src",
        "AGENT_KEY_FILE": "/path/to/your/agent.key"
      }
    }
  }
}

ホストの設定で可能な場合は、設定ファイルにキーを直接記述するのではなく、 AGENT_KEY_FILE を使用してください。

支払いの仕組み

クライアントは標準的な x402 v2 フロー(フリート独自のライブカタログ作成の支払いにも 使用されているフロー)を再現します。

  1. POST /v1/grade または POST /v1/fix を支払いなしで送信 → HTTP 402。チャレンジが payment-required ヘッダーに Base64 エンコードされて返されます。
  2. accepts から exact / eip155:8453 のエントリーを選択します。
  3. EIP-3009 の TransferWithAuthorization(validAfter: 0、 validBefore: now + maxTimeoutSeconds、ランダムな 32 バイトの nonce)を構築し、 チャレンジで指定された USDC ドメイン(extra.name / extra.version)に対する EIP-712 の型付きデータとして署名します。
  4. ペイロードを PAYMENT-SIGNATURE ヘッダーに含めて、同一の POST を再試行します。 サービスはサーバー側でファシリテーター(PayAI)を通じて検証と決済を行い、 決済レシートは payment-response ヘッダーで返されます。

テスト

pip install -e ".[dev]"
pytest

すべての支払いをモックしています(httpx の MockTransport を使用し、テスト時に 使い捨ての署名者を生成します)。402 のフィクスチャは本番環境から取得した実際の チャレンジです。支払いフローのテストでは、両方のルートについて EIP-712 署名から 実際に署名者のアドレスを復元できることを検証します。

セキュリティに関する注意事項

  • 秘密鍵は実行時に環境から読み込まれ、支払い承認へのローカル署名にのみ使用されます。 鍵が送信されることはありません。x402 ペイロードに含まれるのは署名であり、鍵では ありません。
  • ルートごとの支出ガードにより、1 回の呼び出しで使用できる金額は設定値に制限されます (デフォルトは、grade が正確に $0.10、fix が $0.50 の価格です)。
  • 他のエージェントに資金を入れる場合と同じように、運用資金のみを保有する専用の エージェントウォレットを用意して実行してください。

コメント

MCP は初めてですか?

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

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