mcpField
M
MetaMCP MCP Server

MetaMCP MCP Server

ローカル
github.com/metatool-aiAI・エージェント15570 週間前に更新

MetaMCP MCP Server について

MetaMCP MCP Server は、複数の MCP サーバーを一つのエンドポイントにまとめ、ツール、プロンプト、リソースのリクエストを対応する接続先へ振り分けるプロキシです。設定は MetaMCP App から取得し、多数の MCP サーバーを管理する利用者を想定しています。本パッケージは非推奨で、MetaMCP 2.0 のオールインワン構成への移行が案内されています。

主な機能

  1. 01複数の MCP サーバーを一つのエンドポイントに統合
  2. 02リクエストを対応するサーバーへ振り分け
  3. 03stdio、SSE、Streamable HTTP のトランスポート対応
  4. 04API キーによる MetaMCP API への接続
  5. 05統合したサーバーの名前空間による分離

活用シーン

  1. 01Claude Desktop などのクライアントに複数の MCP サーバーを公開
  2. 02ワークスペースごとの MCP 設定の切り替え
  3. 03Docker コンテナからホスト上のサービスへの接続

MCP 対応

MCP サーバーとして、統合したツール、プロンプト、リソースをクライアントに公開し、内部では導入済みの各 MCP サーバーに接続します。

設定

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

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

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

パッケージ
npm@smithery/cli

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

MetaMCP MCP サーバー

🚨 非推奨パッケージに関する警告 🚨

このローカルプロキシパッケージは、MetaMCP の 2.0 オールインワンアーキテクチャでは非推奨です。

詳しくは https://github.com/metatool-ai/metamcp をご確認ください。

MetaMCP MCP サーバーは、複数の MCP⁠ サーバーを1つにまとめるプロキシサーバーです。MetaMCP App⁠ からツール/プロンプト/リソースの設定を取得し、ツール/プロンプト/リソースのリクエストを適切なバックエンドサーバーにルーティングします。

smithery badge

MetaServer MCP サーバー

MetaMCP App リポジトリ:https://github.com/metatool-ai/metatool-app

インストール

Smithery 経由でインストールする

Smithery が動作する場合もあります(Windsurf のローカル環境で確認済み)が、MetaMCP は他の MCP をその上で実行する特殊な構成のため、不安定な場合があります。動作しない場合は、手動でのインストールをご検討ください。

Smithery 経由で Claude Desktop 用の MetaMCP MCP サーバーを自動インストールするには:

npx -y @smithery/cli install @metatool-ai/mcp-server-metamcp --client claude
手動インストール
export METAMCP_API_KEY=<env>
npx -y @metamcp/mcp-server-metamcp@latest
{
  "mcpServers": {
    "MetaMCP": {
      "command": "npx",
      "args": ["-y", "@metamcp/mcp-server-metamcp@latest"],
      "env": {
        "METAMCP_API_KEY": "<your api key>"
      }
    }
  }
}

使い方

stdio サーバーとして使用する(デフォルト)
mcp-server-metamcp --metamcp-api-key <your-api-key>
SSE サーバーとして使用する
mcp-server-metamcp --metamcp-api-key <your-api-key> --transport sse --port 12006

SSE トランスポートオプションを指定すると、サーバーは Express.js ウェブサーバーを起動し、/sse エンドポイントで SSE 接続を待ち受け、/messages エンドポイントでメッセージを受け付けます。

Streamable HTTP サーバーとして使用する
mcp-server-metamcp --metamcp-api-key <your-api-key> --transport streamable-http --port 12006

Streamable HTTP トランスポートオプションを指定すると、サーバーは HTTP リクエストを処理する Express.js ウェブサーバーを起動します。ステートレスに動作させるには、--stateless モードを任意で使用できます。

Docker で使用する

Docker コンテナ内でサーバーを実行し、ホストマシン上のサービスに接続する場合は、--use-docker-host オプションを使用すると、localhost の URL を自動的に変換できます。

mcp-server-metamcp --metamcp-api-key <your-api-key> --transport sse --port 12006 --use-docker-host

これにより、localhost または 127.0.0.1 の URL が host.docker.internal に変換され、コンテナからホスト上で実行中のサービスに適切に接続できるようになります。

stderr の処理を設定する

STDIO トランスポートでは、子 MCP プロセスからの stderr の処理方法を制御できます。

# Use inherit to see stderr output from child processes
mcp-server-metamcp --metamcp-api-key <your-api-key> --stderr inherit

# Use pipe to capture stderr (default is ignore)
mcp-server-metamcp --metamcp-api-key <your-api-key> --stderr pipe

# Or set via environment variable
METAMCP_STDERR=inherit mcp-server-metamcp --metamcp-api-key <your-api-key>

使用可能な stderr オプション:

  • ignore(デフォルト):子プロセスからの stderr 出力を無視します
  • inherit:子プロセスからの stderr を親プロセスに引き継ぎます
  • pipe:処理用に stderr をパイプでキャプチャします
  • overlapped:オーバーラップ I/O を使用します(Windows 専用)
コマンドラインオプション
Options:
  --metamcp-api-key <key>       API key for MetaMCP (can also be set via METAMCP_API_KEY env var)
  --metamcp-api-base-url <url>  Base URL for MetaMCP API (can also be set via METAMCP_API_BASE_URL env var)
  --report                      Fetch all MCPs, initialize clients, and report tools to MetaMCP API
  --transport <type>            Transport type to use (stdio, sse, or streamable-http) (default: "stdio")
  --port <port>                 Port to use for SSE or Streamable HTTP transport, defaults to 12006 (default: "12006")
  --require-api-auth            Require API key in SSE or Streamable HTTP URL path
  --stateless                   Use stateless mode for Streamable HTTP transport
  --use-docker-host             Transform localhost URLs to use host.docker.internal (can also be set via USE_DOCKER_HOST env var)
  --stderr <type>               Stderr handling for STDIO transport (overlapped, pipe, ignore, inherit) (default: "ignore")
  -h, --help                    display help for command

環境変数

  • METAMCP_API_KEY:MetaMCP の API キー
  • METAMCP_API_BASE_URL:MetaMCP API のベース URL
  • USE_DOCKER_HOST:"true" に設定すると、Docker との互換性のため、localhost の URL を host.docker.internal に変換します
  • METAMCP_STDERR:STDIO トランスポートでの stderr の処理方法(overlapped、pipe、ignore、inherit)。デフォルトは "ignore" です

開発

# Install dependencies
npm install

# Build the application
npm run build

# Watch for changes
npm run watch

主な特徴

  • あらゆる MCP クライアントと互換性があります
  • マルチワークスペースレイヤーにより、ワンクリックで別の MCP 設定セットに切り替えられます。
  • GUI で MCP 設定を動的に更新できます。
  • 統合された MCP の名前空間を分離します。

アーキテクチャの概要

sequenceDiagram
    participant MCPClient as MCP Client (e.g. Claude Desktop)
    participant MetaMCP-mcp-server as MetaMCP MCP Server
    participant MetaMCPApp as MetaMCP App
    participant MCPServers as Installed MCP Servers in Metatool App

    MCPClient ->> MetaMCP-mcp-server: Request list tools
    MetaMCP-mcp-server ->> MetaMCPApp: Get tools configuration & status
    MetaMCPApp ->> MetaMCP-mcp-server: Return tools configuration & status

    loop For each listed MCP Server
        MetaMCP-mcp-server ->> MCPServers: Request list_tools
        MCPServers ->> MetaMCP-mcp-server: Return list of tools
    end

    MetaMCP-mcp-server ->> MetaMCP-mcp-server: Aggregate tool lists
    MetaMCP-mcp-server ->> MCPClient: Return aggregated list of tools

    MCPClient ->> MetaMCP-mcp-server: Call tool
    MetaMCP-mcp-server ->> MCPServers: call_tool to target MCP Server
    MCPServers ->> MetaMCP-mcp-server: Return tool response
    MetaMCP-mcp-server ->> MCPClient: Return tool response

クレジット

コメント

MCP は初めてですか?

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

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