mcpField
A
aiowhitebit-mcp

aiowhitebit-mcp

ローカル
pypi.org金融データ054 週間前に更新

aiowhitebit-mcp について

aiowhitebit-mcp は、WhiteBit 暗号資産取引所 API 向けの MCP サーバーとクライアントです。複数のトランスポート経由で市場・資産データの取得や WebSocket のリアルタイム情報を提供し、サーバー起動用のコマンドラインツールも備えています。

主な機能

  1. 01公開市場・資産データの取得
  2. 02WebSocket によるリアルタイム市場データ
  3. 03stdio、SSE、WebSocket トランスポート
  4. 04MCP クライアントとコマンドラインツール
  5. 05ディスク永続化対応キャッシュ
  6. 06レート制限とサーキットブレーカー

活用シーン

  1. 01市場データと注文板の確認
  2. 02リアルタイム価格と売買気配の追跡
  3. 03先物の資金調達率履歴の取得

MCP 対応

MCP サーバーは、市場データや WebSocket 操作を含む WhiteBit API のツールとリソースを MCP クライアントに公開します。stdio、SSE、WebSocket に対応し、接続用クライアントも含まれます。

設定

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

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

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

リポジトリ

ツール

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

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

詳細

aiowhitebit-mcp

WhiteBit 暗号資産取引所 API 用の Message Control Protocol(MCP)サーバーおよびクライアントの実装です。 aiowhitebit ライブラリと fastmcp を基盤としています。

機能

  • WhiteBit API のパブリックエンドポイントに対応した MCP サーバー
  • 複数のトランスポートプロトコル(stdio、SSE、WebSocket)に対応
  • MCP サーバーと簡単にやり取りできるクライアント
  • サーバーを実行するためのコマンドラインインターフェース
  • Claude Desktop との統合
  • WebSocket によるリアルタイムの市場データ
  • 包括的なテストカバレッジと型チェック
  • 最新の開発ツール(ruff、pyright、pre-commit)
  • ディスクへの永続化に対応したキャッシュ
  • レート制限とサーキットブレーカーのパターン
aiowhitebit 0.3.0 との統合で追加された機能
  • BookTicker WebSocket ストリーム:最良買値/売値をリアルタイムで更新します
  • 先物の資金調達履歴:先物市場の過去の資金調達率にアクセスできます
  • WebSocket イベントの拡張:すべての WebSocket イベントにオプションのメタデータ(event_time、update_id)が含まれるようになりました

クイックスタート

# Install the package
pip install aiowhitebit-mcp

# Run the server (stdio transport for Claude Desktop)
aiowhitebit-mcp --transport stdio

# Or run with SSE transport
aiowhitebit-mcp --transport sse --host 127.0.0.1 --port 8000

基本的な使い方

ネットワークトランスポートを使用するクライアント
import asyncio
import os
from aiowhitebit_mcp.client import WhiteBitMCPClient

async def main():
    # Set the server URL (or use environment variable)
    server_url = "http://localhost:8000/sse"
    os.environ["WHITEBIT_MCP_URL"] = server_url

    async with WhiteBitMCPClient() as client:
        # Get market info
        btc_usdt = await client.get_market_resource("BTC_USDT")
        print("BTC/USDT Market Info:", btc_usdt)

        # Get real-time price via WebSocket
        price = await client.get_last_price("BTC_USDT")
        print("Current BTC/USDT price:", price)

        # Get order book
        orderbook = await client.get_orderbook("BTC_USDT")
        print("Order book:", orderbook)

        # Get funding history for futures market
        funding_history = await client.get_funding_history("BTC_USDT")
        print("Funding history:", funding_history)

        # Subscribe to BookTicker for real-time best bid/ask
        subscription = await client.bookticker_subscribe("BTC_USDT")
        print("BookTicker subscription:", subscription)

if __name__ == "__main__":
    asyncio.run(main())

サーバーの設定

from aiowhitebit_mcp.server import create_server
import asyncio

# Create the server with custom configuration
server = create_server(
    name="WhiteBit API"
)

# Run the server with desired transport
if __name__ == "__main__":
    asyncio.run(
        server.run(
            transport="stdio",  # or "sse"
            host="127.0.0.1",   # for network transports
            port=8000           # for network transports
        )
    )

利用可能なツール

パブリック API
  • get_server_time(): 現在のサーバー時刻を取得します
  • get_market_info(): すべての市場情報を取得します
  • get_orderbook(market: str): オーダーブックを取得します
  • get_recent_trades(market: str, limit: int = 100): 最近の取引を取得します
  • get_ticker(market: str): ティッカー情報を取得します
  • get_fee(market: str): 取引手数料を取得します
  • get_server_status(): サーバーのステータスを取得します
  • get_asset_status_list(): すべての資産のステータスを取得します
  • get_funding_history(market: str): 先物市場の資金調達率の履歴を取得します
WebSocket API
  • get_last_price(market: str): リアルタイム価格を取得します
  • get_market_depth(market: str): リアルタイムのオーダーブックを取得します
  • bookticker_subscribe(market: str): 最良買値/売値を配信する BookTicker ストリームを購読します
  • bookticker_unsubscribe(market: str): BookTicker ストリームの購読を解除します
  • connect_websocket(): WebSocket API に接続します
  • disconnect_websocket(): WebSocket API から切断します
リソース
  • whitebit://markets: すべての市場情報を取得します
  • whitebit://markets/{market}: 指定した市場の情報を取得します
  • whitebit://assets: すべての資産情報を取得します
  • whitebit://assets/{asset}: 指定した資産の情報を取得します

コマンドラインインターフェース

# Show help
aiowhitebit-mcp --help

# Run with stdio transport (for Claude Desktop)
aiowhitebit-mcp --transport stdio

# Run with SSE transport
aiowhitebit-mcp --transport sse --host localhost --port 8000

開発

# Clone the repository
git clone https://github.com/yourusername/aiowhitebit-mcp.git
cd aiowhitebit-mcp

# Install development dependencies
pip install -e ".[dev]"

# Install pre-commit hooks
pre-commit install

# Run tests
pytest

# Run type checking
pyright src/aiowhitebit_mcp

# Run linting
ruff check .

使用例

その他の使用例については、examples/ ディレクトリを確認してください。

  • claude_desktop_server.py:Claude Desktop 用に stdio トランスポートでサーバーを実行します
  • claude_desktop_client.py:stdio サーバーに接続するクライアント
  • sse_server.py:SSE トランスポートでサーバーを実行します
  • sse_client.py:SSE サーバーに接続するクライアント

ライセンス

Apache License 2.0

コメント

MCP は初めてですか?

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

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