mcp-proxy
MCP Proxy Serverは、複数のMCPリソースサーバーを単一のHTTPサーバーを通じて集約し、提供するプロキシサーバーです。リアルタイム更新を提供するSSEやHTTPストリーミングインターフェースをサポートし、柔軟な設定が可能です。これにより、異なるクライアントタイプに対応し、効率的なワークフローを実現します。
GitHubスター
514
ユーザー評価
未評価
お気に入り
0
閲覧数
9
フォーク
61
イシュー
9
インストール方法
難易度
中級推定所要時間
10-20 分
必要な環境
Go: 1.16以上
インストール方法
インストール方法
前提条件
必要なソフトウェアとバージョンを明記してください。Go: 1.16以上
インストール手順
1. リポジトリのクローン
bash
git clone https://github.com/TBXark/mcp-proxy.git
cd mcp-proxy
2. ビルド
bash
make build
./build/mcp-proxy --config path/to/config.json
3. Goを使用したインストール
bash
最新版のmcp-proxyをインストール
go install github.com/TBXark/mcp-proxy@latest
安定版をインストール
go install github.com/TBXark/mcp-proxy
4. Dockerを使用したインストール
bash
docker run -d -p 9090:9090 -v /path/to/config.json:/config/config.json ghcr.io/tbxark/mcp-proxy:latest
または
docker run -d -p 9090:9090 ghcr.io/tbxark/mcp-proxy:latest --config https://example.com/path/to/config.json
設定方法
設定方法
基本設定
サーバーはJSONファイルを使用して設定されます。以下は設定ファイルの例です。jsonc
{
"mcpProxy": {
"baseURL": "https://mcp.example.com",
"addr": ":9090",
"name": "MCP Proxy",
"version": "1.0.0",
"type": "streamable-http",
"options": {
"panicIfInvalid": false,
"logEnabled": true,
"authTokens": [
"DefaultTokens"
]
}
},
"mcpServers": {
"github": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-github"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": ""
},
"options": {
"toolFilter": {
"mode": "block",
"list": [
"create_or_update_file"
]
}
}
},
"fetch": {
"command": "uvx",
"args": [
"mcp-server-fetch"
],
"options": {
"panicIfInvalid": true,
"logEnabled": false,
"authTokens": [
"SpecificTokens"
]
}
},
"amap": {
"url": "https://mcp.amap.com/sse?key="
}
}
}
使用例
使用例
基本的な使用方法
MCPサーバーの基本的な使用方法を以下に示します:プログラムでの使用
javascript
// JavaScript例(Node.js)
const { MCPClient } = require('@modelcontextprotocol/client');
const client = new MCPClient();
await client.connect();
// ツールの実行
const result = await client.callTool('toolName', {
parameter1: 'value1',
parameter2: 'value2'
});
console.log(result);
自動化スクリプト
bash
#!/bin/bash
バッチ処理の例
for file in *.txt; do
mcp-tool process "$file"
done
API統合
python
Python例
import requests
import json
def call_mcp_tool(tool_name, params):
response = requests.post(
'http://localhost:3000/mcp/call',
json={
'tool': tool_name,
'parameters': params
}
)
return response.json()
使用例
result = call_mcp_tool('analyze', {
'input': 'sample data',
'options': {'format': 'json'}
})
使用ケース
複数のMCPリソースサーバーを一元管理するためのプロキシサーバーとしての利用
リアルタイムデータを必要とするアプリケーションでの使用
異なるクライアントタイプを持つMCPクライアントとの統合
開発環境でのMCPサーバーのテストとデバッグ