mcpField
M
Meta Mcp Proxy

Meta Mcp Proxy

ローカル
github.com/nullplatformAI・エージェント1176 週間前に更新

Meta Mcp Proxy について

Meta MCP Proxyは、設定された複数のMCPサーバーやJavaScript関数からツールを検索し、呼び出しを適切な接続先へ転送するMCPサーバーです。ツールが多い環境で、ローカル検索によりLLMへ渡す発見用コンテキストを抑えます。

主な機能

  1. 01複数のMCPサーバーからツールを検索
  2. 02あいまい検索によるツール発見
  3. 03選択したサーバーへの呼び出し転送
  4. 04JavaScript関数をツールとして公開
  5. 05ファイルまたはCLIから設定を読み込み

活用シーン

  1. 01設定済みサーバー群から適切なツールを探す
  2. 02発見したツール呼び出しを提供元へ転送
  3. 03JavaScript関数をMCP経由で利用可能にする

MCP 対応

他のMCPサーバーやライブラリをラップするMCPサーバーとして動作します。MCPクライアントは発見・実行メソッドでツールを検索して呼び出します。

設定

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

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

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

パッケージ
npm@nullplatform/meta-mcp-proxy

ツール

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

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

詳細

Meta MCP Proxy

複数の MCP サーバーと JavaScript 関数にわたってツールを検出し、実行できる柔軟な Model Context Protocol(MCP)プロキシです。数百ものツールがある場合でも、コンテキストを小さく保てます。 この MCP は、他の MCP(またはライブラリ)のラッパーとして機能し、ローカル RAG(Retrieval Augmented Generation)のような処理を行ってコンテキストサイズを削減します。LLM に 2 つのメソッド(discover と execute)を提供し、discover について簡潔に答えるよう LLM に求めます。execute メソッドはシンプルなプロキシです。

ツールの目的と、どのようなトピックで使うべきかを詳しく説明するため、discoverDescriptionExtras 設定を追加することを強くおすすめします。

機能

  • 🌉 統合ツール検出:複数の MCP サーバーにわたってツールを検索します
  • 🔌 プロキシ実行:適切なサーバーにツール呼び出しをルーティングします
  • 🔍 スマート検索:あいまい検索で目的に合ったツールを見つけます
  • 🧩 JavaScript 統合:カスタム JavaScript 関数を MCP ツールとして公開します
  • 📝 設定可能:ファイルまたはコマンドライン引数から設定を読み込みます

使い方

🧱 インストール

ファイル ~/Library/Application Support/Claude/claude_desktop_config.json を編集します。

次の内容を追加します。

{
  "mcpServers": {
    "mcp-openapi-proxy": {
      "command": "npx",
      "args": ["@nullplatform/meta-mcp-proxy","-f","config.json"]
    }
  }
}
設定ファイルの形式

config.json は次の構造にしてください。

{
  "discoverDescriptionExtras": "Additional description for discovery",
  "discoverLimit": 10,
  "mcpServers": {
    "server-name": {
      "command": "command-to-execute",
      "args": ["arg1", "arg2"],
      "env": {
        "ENV_VAR1": "value1",
        "ENV_VAR2": "value2"
      },
      "transport": "stdio"
    }
  }
}

例:

{
  "discoverDescriptionExtras": "Api used to manage a pet store with access to pets, pet types, users, orders and store",
  "mcpServers": {
    "mcp-petstore": {
        "command": "uvx",
        "args": ["mcp-openapi-proxy"],
        "env": {
            "OPENAPI_SPEC_URL": "https://petstore.swagger.io/v2/swagger.json",
            "API_KEY": "xxxxx"
       }
    }
  }
}
Claude との 0 ショット会話の例

この例では、API の説明がほとんどないペットストアのデモ設定を使用しています。

0 ショットの例

ライブラリとして使う

Meta MCP Proxy は、独自の JavaScript アプリケーションでライブラリとして使用することもできます。

import { MCPProxy } from '@nullplatform/meta-mcp-proxy';

// Create a new proxy instance
const mcpProxy = new MCPProxy({
  mcpServers: {
    "my-server": {
      "command": "path/to/server",
      "args": [],
      "env": {}
    }
  },
  discoverLimit: 10
});

// Register a custom JavaScript function
mcpProxy.registerJsFunction(
  "myFunction", 
  "Description of my function",
  {
    properties: {
      param1: {
        type: "string",
        description: "First parameter"
      },
      param2: {
        type: "number",
        description: "Second parameter"
      }
    },
    required: ["param1"]
  },
  async ({ param1, param2 }) => {
    // Implementation goes here
    return {
      content: [
        {
          type: "text",
          text: JSON.stringify({ result: `Processed ${param1}` })
        }
      ]
    };
  }
);

// Start the MCP server
await mcpProxy.startMCP();

meta-mcp-proxy をライブラリとして使用して MCP を作成する例

ライセンス

MIT

コメント

MCP は初めてですか?

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

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