mcpField
M
mcporter

mcporter

github.com/zlliangエージェントワークフロー0204 回インストール4 週間前に更新
リポジトリ

mcporter について

mcporter は、MCP サーバーを検出し、シェルからツールを呼び出す CLI です。呼び出し前にツールのシグネチャを確認したい開発者向けで、設定外のエンドポイントにも直接接続できます。

主な機能

  1. 01設定済み MCP サーバーを検出
  2. 02ツールのシグネチャとパラメーターを確認
  3. 03複数の形式でツールを呼び出し
  4. 04JSON Schema とメタデータを表示
  5. 05一時的なエンドポイントへ直接接続

活用シーン

  1. 01サーバーの状態と利用可能なツールを確認
  2. 02シグネチャに沿ってシェルからツールを実行
  3. 03設定に追加せず MCP エンドポイントを試用

MCP 対応

設定やエディターから MCP サーバーを検出し、接続してツールの一覧表示や呼び出しを行います。エンドポイントや stdio コマンドを直接指定することもできます。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/zlliang/skills --skill mcporter

インストール後、Claude Code で/mcporterを入力して読み込まれたか確認します。

詳細

MCPorter (mcporter)

MCPorter は、MCP サーバーを操作するための CLI です。設定済みサーバーの検出、ツールのシグネチャの確認、シェルからのツールの直接呼び出しに使用できます。

特に重要なコマンドは、検出と確認を行う list と、呼び出しを行う call の 2 つです。引数が実際のスキーマと一致するよう、必ず call の前に list を実行してください。

正確なフラグを確認するには、mcporter <command> --help を実行してください。MCPorter は、グローバル設定の ~/.mcporter/mcporter.json、プロジェクト設定の ./config/mcporter.json、明示的に指定した --config <path> に加え、エディターからのインポート(Cursor、Claude Code、Codex など)をもとにサーバーを検出します。各サーバーの設定元を確認するには、mcporter config list または mcporter list --verbose を使用してください。

ワークフロー

# 1. See configured servers and their health
mcporter list

# 2. Read one server's tools as TypeScript-like signatures
mcporter list <server>

# 3. Call a tool using the signature from step 2
mcporter call '<server>.<tool>(arg: "value", count: 5)'

list — 検出と確認

mcporter list                             # All servers, with live status
mcporter list <server>                    # Tools for one server, as signatures
mcporter list <server> --schema           # Raw JSON schema for each tool
mcporter list <server> --json             # Machine-readable, full tool metadata
mcporter list <server> --all-parameters   # Reveal hidden optional params

単一サーバーの出力は、TypeScript のヘッダーのような形式です。各ツールのドキュメントコメント、必須パラメーターを先に並べ、オプションのパラメーターに ? を付けた function name(...) シグネチャ、そして以下の関数呼び出し構文で記述された Examples: ブロックが表示されます。最初の数個を超えるオプションのパラメーターは、--all-parameters または --schema を指定しない限り非表示になります。

function web_search_exa(query: string, numResults?: number);

call — ツールの呼び出し

推奨:関数呼び出し構文。 mcporter list のシグネチャと同じ形式で、内容が分かりやすく、ネストされたオブジェクトや配列を扱え、シェルのフラグとの曖昧さも避けられます。引数全体をシングルクォートで囲んでください。

mcporter call 'exa.web_search_exa(query: "best React state libraries", numResults: 5)'
mcporter call 'linear.create_comment(issueId: "ENG-123", body: "Looks good!")'
  • 名前付き引数を推奨します。ラベルのない値は、スキーマの順序に従って割り当てられます。
  • 構造化された結果には --output json を使用してください。接続、認証、オフライン、HTTP の各エラーでは、スクリプトで処理できる { server, tool, issue } エンベロープが出力されます。
mcporter call 'exa.web_search_exa(query: "...")' --output json
その他の引数形式(推奨形式が扱いにくい場合)
# Shell-friendly key/value pairs (good in scripts)
mcporter call linear.list_issues team=ENG limit:5

# Prebuilt JSON payload (or `--json -` to read from stdin)
mcporter call linear.create_issue --json '{"title":"Bug","team":"ENG"}'

# Read a long string argument from a file
mcporter call linear.create_comment issueId=LNR-123 [email protected]

アドホックサーバー(設定ファイルにないサーバー)

設定を編集せずに、エンドポイントを直接 list/call に指定できます。

mcporter list https://mcp.linear.app/mcp
mcporter call 'https://www.shadcn.io/api/mcp.getComponent(component: "vortex")'
mcporter list --stdio "bun run ./server.ts" --env TOKEN=xyz

ドメインのみを指定した場合は https:// が使われます。通常の http:// を使用するには --allow-http が必要です。試したエンドポイントを --persist <config> で保存すると、短い名前で再利用できます。

メモ

  • シークレットは環境変数で渡してください。例:LINEAR_API_KEY=… mcporter call 'linear.search_documentation(query: "automations")'。
  • その他にもコマンド(auth、config、resource、daemon、generate-cli、emit-ts)があります。必要に応じて mcporter --help を実行してください。

コメント