mcpField
C
CCXT MCP Server

CCXT MCP Server

ローカル
github.com/jcwleo金融データ875 週間前に更新

CCXT MCP Server について

CCXT MCP Serverは、CCXTの暗号資産取引所機能を、LLMや開発者向けの非同期ツールとして提供します。公開市場データと、認証が必要な口座・取引操作を分けて扱います。

主な機能

  1. 01公開市場データの取得
  2. 02残高、ポジション、注文履歴の確認
  3. 03現物・先物注文の作成と取消
  4. 04API認証情報によるプライベートエンドポイント認証
  5. 05OHLCVデータから指標を計算

活用シーン

  1. 01暗号資産の価格やローソク足履歴を取得
  2. 02口座残高と未決済ポジションを確認
  3. 03取引所に注文を出す、または取り消す
  4. 04市場データからテクニカル指標を計算

MCP 対応

CCXTの取引所機能をMCPクライアント向けのツールとして提供し、公開データ操作と認証が必要な操作を分けています。プライベートエンドポイントはAPI key、secret、passphraseによる認証に対応します。

設定

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

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

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

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

詳細

CCXT MCP Server

smithery badge

このプロジェクトは、CCXTライブラリのさまざまな関数をLLMのツールとして公開する、Model Context Protocol(MCP)サーバーを提供します。

LLMが、残高や市場データの取得、注文の作成などのタスクで、標準化された非同期の方法により暗号資産取引所とやり取りできるようにします。

このサーバーはFastMCPを使用して構築されており、PythonでMCPサーバーを作成するプロセスを簡素化します。

特長

  • CCXTとの連携:取引所とのやり取りに使用する一般的なCCXT関数をラップします。
  • 非同期処理:効率的なノンブロッキング処理を実現するため、asyncioとccxt.async_supportを使用して構築されています。
  • 明確なツール定義:typing.Annotatedとpydantic.Fieldを使用して、パラメーターの説明と制約を明確に定義することで、LLM(および開発者)がツールを理解し、使用しやすくします。
  • 認証処理:プライベートエンドポイントでのAPIキー、シークレット、パスフレーズによる認証をサポートします。
  • パブリックツールとプライベートツール:公開市場データ用とプライベートなアカウント操作用に、個別のツールを提供します。

インストール

  1. リポジトリをクローンします(まだの場合):

    git clone https://github.com/jcwleo/ccxt-mcp-server.git
    cd ccxt-mcp-server
    
  2. 仮想環境を作成して有効化します(推奨):

    python -m venv .venv
    source .venv/bin/activate # On Windows use `.venv\Scripts\activate`
    
  3. 依存関係をインストールします: 必要なライブラリはrequirements.txtに記載されています。pipまたはuvを使ってインストールできます。

    • pipを使用する場合:
      pip install -r requirements.txt
      
    • uvを使用する場合(インストール済みの場合):
      uv pip install -r requirements.txt
      # Or, if you prefer uv's environment management:
      # uv sync
      

サーバーの起動

依存関係をインストールしたら、MCPサーバーを直接起動できます:

uv run uvicorn mcp_server:app

次のように、サーバーが起動したことを示す出力が表示されます:

Starting CCXT MCP Server (Async with Annotated Params and Tool Metadata)...
# ... (FastMCP server startup logs)

その後、MCPクライアントが接続できるようになります(通常は、別途設定しない限りFastMCPが管理するデフォルトポートで利用できます)。

MCPサーバーの設定(MCPクライアント向け)

Claudeデスクトップアプリのように、手動でサーバー設定が必要なMCPクライアントを使用する場合は、次のJSONのような設定を指定する必要があります。

次の構造でclaude_desktop_config.jsonファイル(または使用するMCPクライアントに相当するファイル)を作成します:

{
  "mcpServers": {
    "ccxt-mcp-server": {
      "command": "npx",
      "args": ["mcp-remote", "http://127.0.0.1:8000/mcp/"]
    }
  }
}

この設定により、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:指定したシンボルの最近の公開取引を取得します。
  • calculate_technical_indicator_tool:OHLCV データを取得し、指定したテクニカル指標(RSI、SMA、EMA、MACD、ボリンジャーバンド、ストキャスティクス、アベレージ・トゥルー・レンジ(ATR)など)を計算します。

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 引数内で、取引所固有のメソッド名とそのパラメーターを必ず指定してください(例:Binance の先物の場合は params={'method_name': 'fapiPublicGetGlobalLongShortAccountRatio', 'method_params': {'symbol': 'BTCUSDT', 'period': '5m'}})。
  • エラー処理:CCXT の呼び出し中に問題が発生した場合、ツールは "error" キーを含む辞書を返します。

コメント

MCP は初めてですか?

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

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