Bybit MCP Server
# Bybit MCP Server
A Model Context Protocol (MCP) server for the Bybit V5 API. This server allows LLMs (like Gemini, Claude, etc.) to interact with Bybit for market data, trading, account management, and position tracking.
## Features
- **Market Data:** Get tickers, K-lines (candlesticks), and orderbook data.
- **Trading:** Place, cancel, and track orders across Spot and Derivatives.
- **Account:** Check wallet balances and account information.
- **Positions:** Monitor open positions for linear/inverse perpetuals and options.
## Installation
### Prerequisites
- Node.js (v18 or higher)
- Bybit API Key and Secret (with V5 permissions)
### Setup
1. Clone the repository:
```bash
git clone https://github.com/YOUR_USERNAME/bybit-mcp.git
cd bybit-mcp
```
2. Install dependencies:
```bash
npm install
```
3. Build the project:
```bash
npm run build
```
## Configuration
The server requires environment variables for authentication. You can set these in your shell or via an MCP client configuration (like Claude Desktop or Gemini).
| Variable | Description | Default |
|----------|-------------|---------|
| `BYBIT_API_KEY` | Your Bybit API Key | Required |
| `BYBIT_API_SECRET` | Your Bybit API Secret | Required |
| `BYBIT_TESTNET` | Set to `true` for Testnet | `false` |
### Using with Claude Desktop
Add this to your `claude_desktop_config.json`:
```json
{
"mcpServers": {
"bybit": {
"command": "node",
"args": ["/path/to/bybit-mcp/dist/index.js"],
"env": {
"BYBIT_API_KEY": "your_api_key",
"BYBIT_API_SECRET": "your_api_secret",
"BYBIT_TESTNET": "false"
}
}
}
}
```
## Available Tools
- `get_tickers`: Get latest ticker information for symbols.
- `get_kline`: Get candlestick data (K-line).
- `get_orderbook`: Get orderbook data.
- `get_wallet_balance`: Get wallet balance for the account.
- `get_account_info`: Get account configuration and info.
- `place_order`: Place a new order.
- `cancel_order`: Cancel an order.
- `get_open_orders`: Get open orders.
- `get_positions`: Get position information.
## License
MIT License. See [LICENSE](LICENSE) for details.
## Contributing
Contributions are welcome! See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
TDQS
Scored across 9 tools
Each tool has a clearly distinct purpose: market data (tickers, kline, orderbook), account state (balance, info), and trading actions (place, cancel, open orders, positions). No two tools appear to do the same thing or have ambiguous boundaries.
All tools follow a consistent snake_case verb_noun pattern: get_*, place_*, cancel_*. The convention is predictable and readable, with no mixing of styles.
Nine tools is well-scoped for an exchange trading server. Each tool earns its place covering market data, account management, and order/position operations without redundancy.
Core trading workflows are covered: place, cancel, open orders, positions, and account state. Minor gaps exist, such as order history, trade history, modify order, or cancel-all, but agents can work around them for basic trading.