CCXT MCP サーバー
このプロジェクトは、 CCXTライブラリのさまざまな関数を大規模言語モデル (LLM) のツールとして公開するモデル コンテキスト プロトコル (MCP) サーバーを提供します。
これにより、LLM は、残高や市場データの取得、注文の作成などのタスクについて、標準化された非同期方式で暗号通貨取引所と対話できるようになります。
このサーバーはFastMCPを使用して構築されており、Python で MCP サーバーを作成するプロセスが簡素化されます。
特徴
- CCXT 統合: 交換相互作用のために共通の CCXT 関数をラップします。
- 非同期: 効率的な非ブロッキング操作のために
asyncio
とccxt.async_support
を使用して構築されています。 - 明確なツール定義: 明確なパラメータの説明と制約のために
typing.Annotated
とpydantic.Field
を使用し、LLM (および開発者) がツールを理解して使用しやすくなります。 - 認証処理: プライベート エンドポイントの API キー、シークレット、およびパスフレーズ認証をサポートします。
- パブリックおよびプライベート ツール: パブリック マーケット データとプライベート アカウント アクションに個別のツールを提供します。
インストール
- リポジトリのクローンを作成します (まだ作成していない場合)。
- 仮想環境を作成してアクティブ化します (推奨):
- **依存関係をインストールします。**必要なライブラリは
requirements.txt
に記載されています。pip またはuv``pip
使用してインストールできます。pip
を使用する:uv
を使用する (インストールされている場合):
サー���ーの実行
依存関係がインストールされると、MCP サーバーを直接実行できます。
次のような、サーバーが起動したことを示す出力が表示されます。
その後、MCP クライアントはサーバーに接続できるようになります (通常は、別途設定されていない限り、FastMCP によって管理されるデフォルトのポートで接続されます)。
MCP サーバー構成 (MCP クライアント用)
手動によるサーバー構成が必要な MCP クライアント (Claude デスクトップ アプリなど) を使用している場合は、次の JSON のような構成を提供する必要があります。
次の構造を持つclaude_desktop_config.json
ファイル (または MCP クライアントの同等のファイル) を作成します。
重要:
"/path/to/your/ccxt-mcp-server"
このccxt-mcp-server
プロジェクトを複製またはダウンロードしたディレクトリ (つまり、mcp_server.py
を含むディレクトリ) への実際の絶対パスに置き換えます。"command"
と"args"
Pythonプロジェクトの実行方法と、uv
使用しているか仮想環境を使用しているかによって異なります。上記の例ではuv
を使用しています。python
で仮想環境を直接使用している場合、コマンドは次のようになります。command
仮想環境内の Python 実行可能ファイルを指していること、およびworkingDirectory
プロジェクトのルートに設定されていることを確認します。
この構成は、MCP クライアントに CCXT MCP サーバーの起動方法と通信方法を指示します。
利用可能なMCPツール
このサーバーは、API 認証が必要かどうかによって分類された次のツールを公開します。
API認証を必要とするツール(非公開)
fetch_account_balance
: 現在の口座残高を取得します。fetch_deposit_address
: 通貨の入金アドレスを取得します。withdraw_cryptocurrency
: 指定されたアドレスに暗号通貨を引き出します。fetch_open_positions
: オープンポジションを取得します(主に先物/デリバティブ)。set_trading_leverage
: 取引シンボルのレバレッジを設定します (主に先物)。create_spot_limit_order
: 新しいスポット指値注文を配置します。create_spot_market_order
: 新しいスポット市場注文を配置します。create_futures_limit_order
: 新しい先物指値注文を配置します。create_futures_market_order
: 新しい先物市場注文を配置します。cancel_order
: 既存のオープン注文をキャンセルします。fetch_order_history
: 注文の履歴(オープン/クローズ)を取得します。fetch_my_trade_history
: ユーザーが実行した取引の履歴を取得します。
公開データ用ツール(認証不要)
fetch_ohlcv
: 過去の OHLCV (ローソク足) データを取得します。fetch_funding_rate
: 永久先物契約の資金調達率を取得します。fetch_long_short_ratio
: ロング/ショート比率を取得します (取引所固有のparams
が必要です)。fetch_option_contract_data
: オプション契約の市場データを取得します。fetch_market_ticker
: シンボルの最新の価格ティッカーデータを取得します。fetch_public_market_trades
: シンボルの最近の公開取引を取得します。
各ツールには、 Annotated
とpydantic.Field
の使用により、MCP プロトコル自体を介して利用できる詳細なパラメータの説明があります。
使用上の注意
- 先物/オプション: 先物またはオプションに関連するツール (例:
fetch_open_positions
、create_futures_limit_order
、fetch_funding_rate
) を使用する場合は、params
引数を介して CCXT クライアントを正しく構成し、取引所で必要な場合、または目的の市場タイプがデフォルトで設定されていない場合は、具体的には{'options': {'defaultType': 'future'}}
(または必要に応じて'swap'
、'option'
) を渡します。 fetch_long_short_ratio
: これはCCXT標準の統合メソッドではありません。params引数内に特定の取引所メソッド名とそのparams
を指定する必要があります(例:Binance先物の場合、params={'method_name': 'fapiPublicGetGlobalLongShortAccountRatio', 'method_params': {'symbol': 'BTCUSDT', 'period': '5m'}}
)。- エラー処理: CCXT 呼び出し中に問題が発生した場合、ツールは
"error"
キーを含む辞書を返します。
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
LLM が CCXT を介して暗号通貨取引所と対話できるようにし、残高や市場データの取得、注文の作成、取引操作などのタスクを標準化された方法で実行できるようにするモデル コンテキスト プロトコル サーバー。
Related MCP Servers
- AsecurityAlicenseAqualityA Model Context Protocol server that provides read-only access to Bybit's cryptocurrency exchange API, allowing users to query real-time cryptocurrency data using natural language.Last updated -9512TypeScriptMIT License
- AsecurityAlicenseAqualityA Model Context Protocol server that gives LLMs the ability to interact with Ethereum networks, manage wallets, query blockchain data, and execute smart contract operations through a standardized interface.Last updated -3108TypeScriptMIT License
- -securityAlicense-qualityA Model Context Protocol server that exposes Binance cryptocurrency exchange data to LLMs, allowing agents to access real-time prices, order books, and historical market data without requiring API keys.Last updated -11PythonMIT License
- -securityAlicense-qualityA Model Context Protocol server that enables price lookup and trading across multiple cryptocurrency exchanges including Upbit, Gate.io, and Binance.Last updated -6PythonMIT License