Polymarket MCP Server について
Polymarket MCP Server は、Polymarket の Gamma Markets API のデータを AI アシスタントに提供します。市場、イベント、板情報、取引履歴などを扱うツールを選択できます。
主な機能
- 01市場・イベント一覧の絞り込み
- 02市場・イベントの詳細取得
- 03キーワードによる市場検索
- 04板情報と最近の取引の取得
- 05市場の過去データの取得
- 06公開するツールの選択
活用シーン
- 01予測市場の一覧を確認
- 02特定のイベントや市場を調査
- 03最近の取引と板情報を確認
- 04市場の過去データを分析
MCP 対応
MCP を通じて設定可能なツールを提供し、クライアントから Polymarket の市場・イベントデータを照会できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Polymarket MCP Server
Polymarket の Gamma Markets API 向けの Model Context Protocol(MCP)サーバーです。
標準化された MCP インターフェースを通じて、Polymarket の予測市場と市場データにアクセスでき、AI アシスタントが市場データを照会し、予測市場を分析できます。
機能
-
市場およびイベントデータへのアクセス
- 詳細なフィルタリングオプションを使用して、利用可能なすべての市場とイベントを一覧表示
- 市場とイベントの詳細情報を取得
- キーワードで市場を検索
- オーダーブックデータを取得
- 最近の取引を表示
- 過去の市場データを取得
-
Docker コンテナ化のサポート
-
AI アシスタント向けの対話型ツールを提供
ツールの一覧は設定可能なため、MCP クライアントで利用できるようにするツールを選択できます。 特定の機能を使わない場合や、コンテキストウィンドウを使いすぎたくない場合に便利です。
Claude Desktop での使用方法
Docker のセットアップ
コンテナ化されたサーバーを Claude Desktop で使用するには、Claude Desktop の設定に以下を追加します。
{
"mcpServers": {
"polymarket": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e", "GAMMA_API_URL",
"-e", "GAMMA_REQUIRES_AUTH",
"polymarket-mcp-server"
],
"env": {
"GAMMA_API_URL": "https://gamma-api.polymarket.com",
"GAMMA_REQUIRES_AUTH": "false"
}
}
}
}
注:まず
docker build -t polymarket-mcp-server .で Docker イメージをビルドする必要があります。
UV のセットアップ(代替方法)
Docker を使用しない場合は、uv を使用してサーバーを直接実行できます。
- プロジェクトのルートディレクトリに
.envファイルを作成し、設定します。
# Copy the template
cp .env.template .env
# Edit the file to add your configuration
nano .env
.env の内容の例:
# Polymarket Gamma API Configuration
GAMMA_API_URL=https://gamma-api.polymarket.com
GAMMA_REQUIRES_AUTH=false
- Claude Desktop の設定にサーバー設定を追加します。
{
"mcpServers": {
"polymarket": {
"command": "/usr/local/bin/uv", // Use the full path to your uv installation
"args": [
"run",
"-m", "polymarket_mcp_server.main"
],
"cwd": "<full path to polymarket-mcp directory>",
"env": {
"GAMMA_API_URL": "https://gamma-api.polymarket.com",
"GAMMA_REQUIRES_AUTH": "false"
}
}
}
}
注:Claude Desktop で
Error: spawn uv ENOENTが表示される場合は、uvのフルパスを指定するか、設定で環境変数NO_UV=1を設定する必要があります。
開発
コントリビューションを歓迎します!提案や改善点があれば、Issue を作成するかプルリクエストを送信してください。
このプロジェクトでは、依存関係の管理に uv を使用しています。お使いのプラットフォームの手順に従って uv をインストールしてください。
curl -LsSf https://astral.sh/uv/install.sh | sh
その後、仮想環境を作成し、以下のコマンドで依存関係をインストールできます。
uv venv
source .venv/bin/activate # On Unix/macOS
.venv\Scripts\activate # On Windows
uv pip install -e .
環境変数のサポート
サーバーは、存在する場合、プロジェクトのルートディレクトリにある .env ファイルから環境変数を読み込みます。.env.template を .env にコピーし、必要に応じて値を調整してください。
プロジェクト構成
プロジェクトは src ディレクトリ構成で整理されています。
polymarket-mcp/
├── src/
│ └── polymarket_mcp_server/
│ ├── __init__.py # Package initialization
│ ├── server.py # MCP server implementation
│ └── main.py # Main application logic
├── Dockerfile # Docker configuration
├── .dockerignore # Docker ignore file
├── .env.template # Template for environment variables
├── pyproject.toml # Project configuration
└── README.md # This file
テスト
このプロジェクトには、機能を確認し、リグレッションの防止に役立つ包括的なテストスイートが含まれています。
pytest でテストを実行します。
# Install development dependencies
uv pip install -e ".[dev]"
# Run the tests
pytest
# Run with coverage report
pytest --cov=src --cov-report=term-missing
テストは以下のように構成されています。
- サーバー機能のテスト
- メインアプリケーションのテスト
- エラー処理のテスト
新しい機能を追加する際は、対応するテストも追加してください。
利用可能なツール
| ツール | カテゴリ | 説明 |
|---|---|---|
get_markets | 市場データ | 詳細なフィルタリングオプションを使用して、利用可能なすべての市場の一覧を取得 |
get_market_by_id | 市場データ | 特定の市場の詳細情報を取得 |
get_order_book | 市場データ | [EXPERIMENTAL] 市場の現在のオーダーブックを取得 |
get_recent_trades | 市場データ | [EXPERIMENTAL] 市場の最新の取引を取得 |
get_market_history | 市場データ | [EXPERIMENTAL] 過去の市場データを取得 |
search_markets | 市場データ | スラッグフィルタリングを使用して、キーワードで市場を検索 |
get_events | イベントデータ | 詳細なフィルタリングオプションを使用して、利用可能なすべてのイベントの一覧を取得 |
get_event_by_id | イベントデータ | 特定のイベントの詳細情報を取得 |
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。