Skip to main content
Glama

MCP Bybit API Interface

Buy Me A Coffee

Bybit MCP (Model Context Protocol) Server. Provides a convenient interface to interact with the Bybit API using MCP tools. Allows fetching market data, managing account information, and placing/canceling orders via API calls wrapped as tools.

Usage

Installing via Smithery

To install this Bybit API Interface server for Claude Desktop automatically via Smithery:

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

Using with Claude, Roo Code, Cline, etc.

Add the following configuration to your MCP settings file (e.g., mcp_settings.json): Using uv With Windows:

{
  "mcpServers": {
    "mcp-server-demo": {
      "command": "uv",
      "args": [
        "run",
        "--directory",
        "C:\\Users\\YOUR_USERNAME\\AppData\\Local\\Programs\\mcp-server-demo\\src",
        "server.py"
      ],
      "env": {
          "ACCESS_KEY": "{ACCESS_KEY}",
          "SECRET_KEY": "{ACCESS_KEY}"
        }
    }
    // ... other servers might be here ...
  }
}

(Remember to replace YOUR_USERNAME and use double backslashes \)

Using uv With macOS:

{
  "mcpServers": {
    "mcp-server-demo": {
      "command": "uv",
      "args": [
        "run",
        "--directory",
        "/usr/local/bin/mcp-server-demo/src",
        "server.py"
      ],
      "env": {
        "ACCESS_KEY": "{ACCESS_KEY}",
        "SECRET_KEY": "{ACCESS_KEY}"
      }
    }
    // ... other servers might be here ...
  }
}

(Replace YOUR_USERNAME if using ~/bin)

Using uv With Linux:

{
  "mcpServers": {
    "mcp-server-demo": {
      "command": "uv",
      "args": [
        "run",
        "--directory",
        "/home/YOUR_USERNAME/bin/mcp-server-demo/src",
        "server.py"
      ],
      "env": {
        "ACCESS_KEY": "{ACCESS_KEY}",
        "SECRET_KEY": "{ACCESS_KEY}"
      }
    }
    // ... other servers might be here ...
  }
}

Using Docker (Requires Docker)

Make sure you have pulled the image first: docker pull dlwjdtn535/mcp-bybit-server:latest

{
  "mcpServers": {
    "bybit-server-docker": {
      "command": "docker",
      "args": [
        "run",
        "-i", 
        "--rm",
        "--init",
        "-e", "ACCESS_KEY={ACCESS_KEY}",
        "-e", "SECRET_KEY={SECRET_KEY}",
        "dlwjdtn535/mcp-bybit-server:latest"
      ]
    }
  }
}

Using Docker with .env (Requires Docker)

Make sure you have pulled the image first: docker pull dlwjdtn535/mcp-bybit-server:latest

{
  "mcpServers": {
    "bybit-server-docker": {
      "command": "/bin/sh",
      "args": [
        "-c",
        "source .env && docker run -i --rm --init -e ACCESS_KEY=$BYBIT_API_KEY -e SECRET_KEY=$BYBIT_API_SECRET -e TESTNET=true dlwjdtn535/mcp-bybit-server:latest"
      ]
    }
  }
}

Note: Always use @latest or a specific version tag for both NPX and Docker to ensure you are using the intended version.

Related MCP server: XTBApiServer

Tools πŸ› οΈ

This MCP server provides the following tools for interacting with the Bybit API:

  1. get_orderbook: Fetches order book information.

    • Inputs: category, symbol, limit (optional)

    • Returns: Order book details.

  2. get_kline: Fetches K-line (candlestick) data.

    • Inputs: category, symbol, interval, start (optional), end (optional), limit (optional)

    • Returns: Candlestick data.

  3. get_tickers: Fetches cryptocurrency ticker information.

    • Inputs: category, symbol

    • Returns: Ticker information.

  4. get_wallet_balance: Fetches account balance.

    • Inputs: accountType, coin (optional)

    • Returns: Balance information.

  5. get_positions: Fetches position information.

    • Inputs: category, symbol (optional)

    • Returns: Position information.

  6. place_order: Places a limit or market order.

    • Inputs: category, symbol, side, orderType, qty, price (optional for limit), positionIdx (optional for futures), and other optional parameters (e.g., timeInForce, takeProfit, stopLoss).

    • Returns: Order placement confirmation.

  7. cancel_order: Cancels an existing order.

    • Inputs: category, symbol, orderId (optional), orderLinkId (optional)

    • Returns: Cancellation confirmation.

  8. get_order_history: Fetches historical order details.

    • Inputs: category, symbol (optional), orderId (optional), limit (optional), etc.

    • Returns: Order history.

  9. get_open_orders: Fetches current open orders.

    • Inputs: category, symbol (optional), limit (optional), etc.

    • Returns: Open order details.

  10. set_trading_stop: Sets take profit, stop loss, or trailing stop for a position.

    • Inputs: category, symbol, takeProfit (optional), stopLoss (optional), trailingStop (optional), positionIdx (optional)

    • Returns: Setting confirmation.

  11. set_margin_mode: Sets the margin mode (isolated or cross).

    • Inputs: category, symbol, tradeMode, buyLeverage, sellLeverage

    • Returns: Setting confirmation.

  12. get_api_key_information: Fetches information about the current API key.

    • Inputs: None

    • Returns: API key details.

  13. get_instruments_info: Fetches details about trading instruments (symbols).

    • Inputs: category, symbol, status (optional), baseCoin (optional)

    • Returns: Instrument details.

(Refer to the function docstrings in the code for detailed parameter descriptions and examples.)

Environment Variables

Before running the server, you must set the following environment variables:

ACCESS_KEY=YOUR_BYBIT_API_KEY
SECRET_KEY=YOUR_BYBIT_SECRET_KEY
TESTNET=false # Optional: set to true for testnet

API Key Setup

To use this Bybit API interface, you need to create an API key from Bybit. Follow these important steps:

  1. Go to Bybit and log into your account.

  2. Navigate to API Management.

  3. Create a new API key.

  4. Important Security Settings:

    • Enable IP restriction if possible.

    • Add ONLY the IP address(es) from which the server will run (your local PC IP, server IP, or Docker container's external IP).

    • Never share your API keys or expose them in public repositories.

    • Recommended permissions:

      • Read (Required)

      • Trade (Required for order execution)

      • Wallet (Required for balance checking)

Sponsorship & Donations

If you find this project helpful and would like to support its development, you can contribute in the following ways:

Buy Me a Coffee

"Buy Me A Coffee"

Referral Program

You can also support this project by signing up for Bybit using our referral link:

Your support helps maintain and improve this project. Thank you! πŸ™

Contact & Support

For additional inquiries or support, please contact:

  • Email: dlwjdtn5624@naver.com

We welcome your questions and feedback!

License

MIT License

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/dlwjdtn535/mcp-bybit-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server