mcpField
M
MCP Bybit API Interface

MCP Bybit API Interface

ローカル
github.com/dlwjdtn535開発ツール922 週間前に更新

MCP Bybit API Interface について

MCP Bybit API Interface は、Bybit V5 の市場、アカウント、取引操作を MCP ツールとして提供します。初期設定は読み取り専用で、取引操作には明示的な設定が必要です。注文検証やサイズ上限などの制御も備えています。

主な機能

  1. 01市場データとスナップショットの取得
  2. 02残高・ポジション・注文の照会
  3. 03注文の発注・変更・キャンセル
  4. 04テストネットと読み取り専用モードの設定
  5. 05注文検証とサイズ上限の適用

活用シーン

  1. 01Bybit の市場状況の確認
  2. 02アカウント残高とポジションの確認
  3. 03発注前の注文検証
  4. 04取引有効化後の注文管理

MCP 対応

Bybit V5 の市場データ、アカウント照会、注文管理機能を MCP ツールとして提供します。変更を伴うツールは初期状態で無効で、READONLY_MODE による一括ブロックも可能です。

設定

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

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

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

リポジトリ

ツール

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

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

詳細

MCP Bybit API インターフェース

smithery badge Buy Me A Coffee

Bybit MCP(Model Context Protocol)サーバーです。MCP ツールを使用して Bybit V5 API と連携するための便利なインターフェースを提供します。API 呼び出しをツールとして利用することで、市場データの取得、アカウント情報の管理、注文の発注・キャンセルができます。

Bybit Server MCP server

⚠️ セキュリティと安全性

このサーバーは実際のお金を使った実際の取引を行えます。設定する前に、以下をお読みください。

  • 取引はデフォルトで無効です。 変更を伴うツール(place_order、cancel_order、amend_order、cancel_all_orders、set_trading_stop、set_margin_mode、set_leverage)は、TRADING_ENABLED=true を明示的に設定しない限りエラーを返します。
  • まずテストネットを使用してください。 試用中は TESTNET=true に設定してください。完全な読み取り専用の構成にするには TRADING_ENABLED=false と組み合わせるか、他の設定に関係なくすべての変更を伴うツールを強制的にブロックするには READONLY_MODE=true に設定してください。
  • 注文サイズには上限があります。 MAX_ORDER_SIZE_USDT(デフォルトは 100)により、注文の推定想定元本額に上限を設け、誤って大きな取引を行うことを防ぎます。
  • API キーがログに記録されたり、公開されたりすることはありません。 キーを返すツールはなく、ログにはキーが設定されているかどうかのみが記録されます。
  • API キーをコミットしないでください。 API キーは環境変数からのみ指定してください。

インストール

Python 3.12 以降が必要です。このプロジェクトでは uv を使用します。

git clone https://github.com/dlwjdtn535/mcp-bybit-server.git
cd mcp-bybit-server
uv sync
uv run mcp-bybit-server   # runs the MCP server over stdio

インストール後、mcp-bybit-server コマンドが、以下の MCP クライアント設定で使用するエントリーポイントになります。

Smithery 経由でのインストール

Smithery 経由で、この Bybit API インターフェースサーバーを Claude Desktop に自動でインストールするには、以下を実行します。

npx -y @smithery/cli install @dlwjdtn535/mcp-bybit-server --client claude

設定(Claude Desktop、Cline、Roo Code など)

以下のいずれかを MCP 設定ファイル(例:claude_desktop_config.json/mcp_settings.json)に追加します。

uv を使用する場合(クローンしたリポジトリから実行):

{
  "mcpServers": {
    "bybit": {
      "command": "uv",
      "args": [
        "run",
        "--directory",
        "/absolute/path/to/mcp-bybit-server",
        "mcp-bybit-server"
      ],
      "env": {
        "ACCESS_KEY": "YOUR_BYBIT_API_KEY",
        "SECRET_KEY": "YOUR_BYBIT_SECRET_KEY",
        "TESTNET": "true",
        "TRADING_ENABLED": "false"
      }
    }
  }
}

Windows では、バックスラッシュを 2 つ使用した絶対パスを指定してください(例:C:\\Users\\YOUR_USERNAME\\mcp-bybit-server)。

Docker を使用する場合:

まずイメージを取得します:docker pull dlwjdtn535/mcp-bybit-server:latest

{
  "mcpServers": {
    "bybit-server-docker": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "--init",
        "-e", "ACCESS_KEY=YOUR_BYBIT_API_KEY",
        "-e", "SECRET_KEY=YOUR_BYBIT_SECRET_KEY",
        "-e", "TESTNET=true",
        "-e", "TRADING_ENABLED=false",
        "-e", "MAX_ORDER_SIZE_USDT=100",
        "dlwjdtn535/mcp-bybit-server:latest"
      ]
    }
  }
}

注:意図したバージョンを使用するため、NPX と Docker の両方で、必ず @latest または特定のバージョンタグを指定してください。

環境変数

変数必須デフォルト説明
ACCESS_KEYはい–Bybit API キー。
SECRET_KEYはい–Bybit API シークレット。
MEMBER_IDいいえ–Bybit メンバー ID(任意)。
TESTNETいいえfalsetrue の場合、Bybit テストネットを使用します。
TRADING_ENABLEDいいえfalse変更を伴うツール/取引ツールを許可するには true にする必要があります。
READONLY_MODEいいえfalsetrue の場合、すべての変更を伴うツールをブロックします(TRADING_ENABLED より優先されます)。
MAX_ORDER_SIZE_USDTいいえ1001 件の注文の推定想定元本額(USDT)に上限を設定します。
RESPONSE_VERBOSITYいいえnormalトークンを節約するため、minimal では get_tickers/get_positions の応答を主要なフィールドに絞ります。normal/full ではペイロード全体を返します。

ツール 🛠️

市場データ
  • get_orderbook — オーダーブック(category、symbol、limit?)。
  • get_kline — ローソク足(category、symbol、interval、start?、end?、limit?)。
  • get_tickers — ティッカー情報(category、symbol)。
  • get_public_trade_history — 最近の公開取引(category、symbol、limit?)。
  • get_instruments_info — 銘柄のメタデータ/制限(category、symbol、status?、baseCoin?)。
  • get_funding_rate_history — 無期限契約の資金調達率履歴(category、symbol、startTime?、endTime?、limit?)。
  • get_open_interest — 時系列の未決済建玉(category、symbol、intervalTime?、...)。
  • get_fee_rate — メイカー/テイカー手数料率(category、symbol?、baseCoin?)。
  • get_server_time — Bybit サーバー時刻。
  • market_snapshot — 1 回の呼び出しで複合的な市場情報を取得します(オーダーブック+ティッカー+ローソク足+銘柄情報+最近の取引、および先物の資金調達率と未決済建玉)。
アカウント
  • get_wallet_balance — 残高(accountType、coin?)。
  • get_positions — 保有中のポジション(category、symbol?)。
  • get_order_history — 注文履歴。
  • get_open_orders — 現在の未決済注文。
  • get_api_key_information — API キーの詳細。
取引(変更を伴います — TRADING_ENABLED=true が必要です)
  • validate_order — 発注前の検証。注文は発注しません。取引フラグによる制限は受けません。
  • place_order — 注文を発注します。dry_run=true を指定すると、発注せずに検証できます。
  • amend_order — 既存の注文をその場で変更します。
  • cancel_order — 単一の注文をキャンセルします。
  • cancel_all_orders — すべての未決済注文をキャンセルします(任意で対象を指定できます)。
  • set_trading_stop — 利益確定/損切り/トレーリングストップを設定します。
  • set_margin_mode — 分離マージン/クロスマージンを設定します。
  • set_leverage — 先物銘柄のレバレッジを設定します。

(パラメーターの詳細な説明と使用例については、コード内の関数の docstring を参照してください。)

API キーの設定

この Bybit API インターフェースを使用するには、Bybit で API キーを作成してください。

  1. Bybit アカウントにログインします。
  2. API 管理に移動します。
  3. 新しい API キーを作成します。
  4. 重要なセキュリティ設定:
    • 可能であれば IP 制限を有効にし、サーバーの実行元となる IP アドレスのみを追加してください。
    • API キーを他者と共有したり、公開リポジトリで公開したりしないでください。
    • 推奨される権限:
      • 読み取り(必須)
      • 取引(注文執行を有効にする場合のみ必須)
      • ウォレット(残高の確認に必須)

開発

uv sync --group dev   # install dev dependencies (pytest, ruff)
uv run ruff check .   # lint
uv run pytest -q      # run the unit test suite (no live API calls)

CI(GitHub Actions)はプッシュまたは PR ごとに lint とテストを実行します。Docker イメージは main へのプッシュ時に自動でビルドされ、公開されます。

スポンサーと寄付

このプロジェクトが役に立ち、開発を支援したいと思われた場合は、以下をご利用ください。

コーヒーをおごる

"Buy Me A Coffee"

紹介プログラム

紹介リンクから Bybit に登録して、このプロジェクトを支援することもできます。

皆さまのご支援により、このプロジェクトの保守と改善が可能になります。ありがとうございます! 🙏

お問い合わせとサポート

お問い合わせやサポートが必要な場合は、以下までご連絡ください。

ご質問やフィードバックをお待ちしています。

ライセンス

MIT ライセンス

コメント

MCP は初めてですか?

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

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