mcpField
M
MCP Server Bridge Restish

MCP Server Bridge Restish

ローカル
github.com/high-u開発ツール171 週間前に更新

MCP Server Bridge Restish について

MCP Server Bridge Restish は、カスタム HTTP API が提供するツール定義を MCP ツールに変換し、API と LLM を接続します。既存のエンドポイントを MCP 経由でクライアントに呼び出させたい API 運用者向けです。

主な機能

  1. 01HTTP エンドポイントからツール定義を取得
  2. 02MCP ツールを動的に登録
  3. 03ツール呼び出しを API エンドポイントに転送
  4. 04API 認証の設定に対応

活用シーン

  1. 01カスタム HTTP API を MCP クライアントに公開
  2. 02LLM から既存の API エンドポイントを呼び出す
  3. 03API 定義に基づいて利用可能なツールを更新

MCP 対応

API サーバーの /tools エンドポイントからツール定義を取得し、MCP クライアント向けに登録します。ツールの呼び出しは対応する HTTP エンドポイントに転送されます。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"bridge-restish": {
"command": "npx",
"args": [
"-y",
"mcp-server-bridge-restish"
]
}
}
}
起動コマンドnpx -y mcp-server-bridge-restish

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

パッケージ
npmmcp-server-bridge-restish

ツール

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

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

詳細

Bridge Restish - MCP サーバー

概要

この MCP サーバーは、カスタム HTTP API サーバーを LLM から利用できるようにするブリッジとして機能します。HTTP API サーバーからツール定義を取得し、LLM が呼び出せる MCP ツールとして動的に登録します。

仕組み

  1. ツール定義の取得:${BASE_URL}/tools エンドポイントから利用可能なツール定義を取得します
  2. MCP ツールの登録:取得したツール定義に基づいて MCP ツールを動的に登録します
  3. API 呼び出しのプロキシ:LLM がツールを呼び出すと、対応する HTTP API エンドポイントにリクエストを転送します

HTTP API サーバーの要件

説明

HTTP API サーバーは、以下の仕様を実装する必要があります。

説明用のサンプルサーバーを実行してください。

git clone https://github.com/high-u/mcp-server-bridge-restish.git
cd mcp-server-bridge-restish
node example/server.js 3000
ツール定義エンドポイント

GET ${BASE_URL}/tools は、ツール定義の配列を返す必要があります。

curl http://localhost:3000/tools

レスポンスの例:

[
  {
    "name": "get_time",
    "description": "Get current date and time",
    "schema": {
      "type": "object",
      "properties": {},
      "required": []
    },
    "endpoint": "/get_time",
    "method": "get"
  },
  {
    "name": "get_birthday",
    "description": "Get a birthday for a given name",
    "schema": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "description": "The name to get birthday for"
        }
      },
      "required": [
        "name"
      ]
    },
    "endpoint": "/get_birthday",
    "method": "get"
  }
]
ツール実行エンドポイント

各ツールは、指定されたエンドポイントとメソッドで実行されます。

  • GET ${BASE_URL}/get_time → 現在時刻を JSON として返します
curl http://localhost:3000/get_time
{
  "time": "2025-06-22T03:53:49.675Z",
  "timestamp": 1750564429675
}
  • GET ${BASE_URL}/get_birthday?name=XXX → XXX の誕生日を JSON として返します
curl "http://localhost:3000/get_birthday?name=John"
{
  "name": "John",
  "birthday": "1973-11-08"
}

レスポンスのスキーマは自由です。どのように使用するかは LLM に委ねられています。

使い方

Claude Desktop の設定

claude_desktop_config.json に以下を追加します。

{
  "mcpServers": {
    "bridge-restish": {
      "command": "mcp-server-bridge-restish",
      "args": ["http://localhost:3000", "server-api-key"],
      "env": {
        "BASE_URL": "http://localhost:3000",
        "AUTH_TYPE": "Bearer",
        "API_KEY": "server-api-key"
      }
    }
  }
}

「BASE_URL」は必須です。「API_KEY」と「AUTH_TYPE」は必要に応じて設定してください。

ユーザープロンプトの例

What time is it?
How old is John this year?

コメント

MCP は初めてですか?

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

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