Atrax: MCP サーバー集約プロキシ v0.1.0
. . __
.| |. _____ _/ |_____________ ___ ___
|| || \__ \\ __\_ __ \__ \ \ \/ /
\\()// / __ \| | | | \// __ \_> <
.={}=. (____ /__| |__| (____ /__/\_ \
/ /`'\ \ \/ \/ \/
` \ / '
`' MCP PROXY FOR THE WEB v0.1.0
Atraxは、Model Context Protocol(MCP)サーバー用のプロキシです。複数のMCPサーバーを集約し、単一の統合インターフェースとして提供します。名前は、複数のサーバーからリソースを1つに集める様子を表す、ファネルウェブスパイダーに由来しています。
特徴
- リソース集約: 複数のサーバーのリソースを、設定可能な競合解決機能で組み合わせる
- 透過プロキシ: クライアントに統合された MCP サーバー インターフェースを提供する
- プロトコルコンプライアンス: MCPプロトコル仕様に厳密に準拠
- モジュラー設計:コンポーネント間の関心事の明確な分離
- 複数のトランスポートタイプ: STDIO、HTTP/SSE、Docker トランスポートのサポート
- 強化されたエラー処理: コンテキスト情報を含む詳細なエラーレポート
- Web統合:ブラウザおよびWebベースのクライアント向けのHTTP/SSEトランスポート
- 認証サポート: サーバーアクセスのセキュリティを確保するためのトークンベースの認証
クイックスタート
# Clone the repository
git clone https://github.com/yourusername/atrax.git
cd atrax
# Setup development environment
direnv allow # Sets up Python venv and pre-commit
npm install
# Build the project
npm run build
# Run the server (no authentication)
npm run serve
# Run with token authentication
npm run serve:auth
# Run smoke tests
npm run test:smoke
ドキュメントマップ
例
examples/
ディレクトリには、サンプルサーバー実装が含まれています。
- メモリサーバー: メモリに知識グラフを保存するシンプルなMCPサーバー
- エコーサーバー: リクエストをエコーバックする基本的なMCPサーバー
- HTTPエコーサーバー: HTTP/SSEトランスポートを使用して通信するMCPサーバー
次のように例を実行します。
# STDIO-based servers
npm run memory-server
npm run echo-server
# HTTP/SSE-based server
npm run http-echo-server
# Client examples
npm run echo-client # Connect to STDIO Echo server
npm run memory-client # Connect to STDIO Memory server
npm run http-echo-client # Connect to HTTP/SSE Echo server
ライセンス
マサチューセッツ工科大学