MCP Binance Futures

Communauté Finance et paiements

Binance USDT-M Futures trading: market data, account state, order management and position and margin control.

Installation

Les étapes d'installation sont dans la documentation ci-dessous. Documentation

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

Sommaire
  1. mcp-binance-futures
  2. Tools
  3. Setup
  4. Running
  5. MCP Client Configuration
  6. Testing
  7. Common Usage Patterns
  8. Architecture

mcp-binance-futures

MCP server for Binance USDT-M Futures trading. Exposes tools for market data, account state, order management, and position/margin control — designed to give an LLM everything it needs to monitor, place, and manage futures trades.

Built with FastMCP and httpx.


Tools

Market Data (public, no auth)
ToolDescription
pingTest API connectivity
get_tickerPrice, 24 h stats, mark price, funding rate for a symbol
get_order_bookTop N bids/asks for a symbol
get_recent_tradesLatest public trades
get_klinesOHLCV candlestick data (1m → 1w)
get_symbol_infoTrading rules: tick size, lot size, min notional, order types
Account (signed)
ToolDescription
get_balanceWallet balances (non-zero assets only)
get_positionsOpen positions with PnL, leverage, margin type — optionally scoped to one symbol
get_account_summaryTotal balance, unrealized PnL, margin usage, open position count
Orders (signed)
ToolDescription
place_orderPlace LIMIT, MARKET, STOP, STOP\_MARKET, TAKE\_PROFIT, TAKE\_PROFIT\_MARKET, TRAILING\_STOP\_MARKET
modify_orderChange price or quantity of an open LIMIT order
cancel_orderCancel a single order by ID
cancel_all_ordersCancel all open orders for a symbol
get_open_ordersList all open orders for a symbol
get_orderGet a specific order by ID
get_order_historyRecent order history (all statuses)
get_trade_historyPersonal fill history for a symbol
Position Management (signed)
ToolDescription
set_leverageSet leverage multiplier (1–125×) for a symbol
set_margin_typeSwitch between ISOLATED and CROSSED margin
adjust_isolated_marginAdd or remove margin from an isolated position
set_position_modeSwitch between One-way and Hedge Mode
get_position_modeGet current position mode
get_leverage_bracketsLeverage tiers with maintenance margin rates

Setup

Requirements
  • Python 3.11+
  • uv (recommended) or pip
Install
# with uv (recommended)
uv sync

# or with pip
pip install -e .
API Keys

Create a Binance API key with Futures trading enabled. Set environment variables:

export BINANCE_API_KEY="your_api_key"
export BINANCE_API_SECRET="your_api_secret"

Security: Use IP whitelisting on your Binance API key. Never commit keys to version control.


Running

# stdio transport (default — for MCP clients like Claude Desktop)
python server.py

# or via the installed script
mcp-binance-futures

MCP Client Configuration

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "binance-futures": {
      "command": "python",
      "args": ["/path/to/mcp-binance-futures/server.py"],
      "env": {
        "BINANCE_API_KEY": "your_api_key",
        "BINANCE_API_SECRET": "your_api_secret"
      }
    }
  }
}
With uv
{
  "mcpServers": {
    "binance-futures": {
      "command": "uv",
      "args": ["run", "--project", "/path/to/mcp-binance-futures", "mcp-binance-futures"],
      "env": {
        "BINANCE_API_KEY": "your_api_key",
        "BINANCE_API_SECRET": "your_api_secret"
      }
    }
  }
}

Testing

# install dev dependencies
uv sync --extra dev

# run all tests
pytest

# run with output
pytest -v

Tests use respx to mock all HTTP calls — no real API keys or network required.


Common Usage Patterns

Open a long position with stop loss and take profit
1. get_ticker(symbol="BTCUSDT")          → check current price
2. get_balance()                          → check available margin
3. get_positions(symbol="BTCUSDT")        → confirm no existing position
4. set_leverage(symbol="BTCUSDT", leverage=10)
5. set_margin_type(symbol="BTCUSDT", margin_type="ISOLATED")
6. place_order(symbol="BTCUSDT", side="BUY", order_type="MARKET", quantity=0.01)
7. place_order(symbol="BTCUSDT", side="SELL", order_type="STOP_MARKET",
               stop_price=45000, close_position=True)
8. place_order(symbol="BTCUSDT", side="SELL", order_type="TAKE_PROFIT_MARKET",
               stop_price=55000, close_position=True)
Modify a limit order
1. get_open_orders(symbol="BTCUSDT")      → find the order ID
2. modify_order(symbol="BTCUSDT", order_id=123456, side="BUY",
                quantity=0.01, price=48500)
Emergency close all
1. cancel_all_orders(symbol="BTCUSDT")
2. place_order(symbol="BTCUSDT", side="SELL", order_type="MARKET",
               quantity=<position_size>, reduce_only=True)

Architecture

server.py      — FastMCP server, all tool definitions
client.py      — Async HTTP client: signing, transport, error handling
tests/
  test_client.py  — Unit tests for BinanceClient (signing, HTTP, errors)
  test_server.py  — Integration tests for all MCP tools

The client and server are intentionally kept in separate files: client.py handles all Binance API mechanics (HMAC signing, error parsing, HTTP verbs) while server.py contains only tool logic and MCP wiring. This makes both independently testable.

Questions fréquentes

Qu'est-ce que MCP Binance Futures ?

Binance USDT-M Futures trading: market data, account state, order management and position and margin control.

Comment installer MCP Binance Futures ?

Suivez les étapes d'installation de sa documentation, affichée sur cette page et dans son dépôt.

MCP Binance Futures est-il open source ?

Oui. Son code est sur GitHub sous licence Apache-2.0.

Qui maintient MCP Binance Futures ?

Il est publié par muvon. AI.tn le référence sans le maintenir ni le recommander.

Issu des listes communautaires awesome-mcp-servers et du dépôt GitHub du projet. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.