Skip to main content
Glama

@qbtlabs/openmm-mcp

npm version npm downloads License: MIT Ask DeepWiki

MCP (Model Context Protocol) server for OpenMM — exposes market data, account, trading, and strategy tools to AI agents via Claude Desktop, Claude Code, Cursor, Windsurf, and other MCP clients.

Install and connect — 13 tools are now available to your AI agent.

What Agents Can Do

  • Monitor markets — Real-time prices, order books, and trade history across multiple exchanges

  • Trade — Place limit and market orders, cancel orders, manage positions

  • Check balances — View account holdings across all connected exchanges

  • Run grid strategies — Configure and deploy automated grid trading with dry-run preview

  • Discover Cardano DEX liquidity — Aggregated token prices and pool discovery via on-chain data

⚡ Quick Start

MCP Server (13 tools)

# 1. Install & Setup OpenMM MCP
npm install -g @qbtlabs/openmm-mcp
npx @qbtlabs/openmm-mcp setup

The setup wizard will:

  • Ask which MCP clients to configure (Claude Desktop, Claude Code, Cursor, Windsurf)

  • Let you select exchanges (MEXC, Gate.io, Kraken, Bitget)

  • Prompt for API credentials

  • Automatically update your MCP config files

CLI Tool — Optional

# 2. Install & Setup OpenMM CLI
npm install -g @3rd-eye-labs/openmm
npx @3rd-eye-labs/openmm setup

Creates a .env file with your exchange credentials for direct CLI usage.

Verify Installation

After setup, restart your MCP client and try:

"What is my balance on MEXC?"

Manual Installation

npm install -g @qbtlabs/openmm-mcp

Or run directly:

npx @qbtlabs/openmm-mcp

Available Tools

Tool

Description

Parameters

get_ticker

Real-time price, bid/ask, spread, volume

exchange, symbol

get_orderbook

Order book depth (bids/asks)

exchange, symbol, limit?

get_trades

Recent trades with buy/sell summary

exchange, symbol, limit?

get_balance

Account balances (all or filtered)

exchange, asset?

list_orders

Open orders (all or by symbol)

exchange, symbol?

create_order

Place limit or market order

exchange, symbol, type, side, amount, price?

cancel_order

Cancel order by ID

exchange, symbol, orderId

cancel_all_orders

Cancel all orders for a pair

exchange, symbol

start_grid_strategy

Calculate and place grid orders

exchange, symbol, levels?, spacing?, orderSize?, spacingModel?, sizeModel?, dryRun?

stop_strategy

Cancel all orders for a pair

exchange, symbol

get_strategy_status

Grid status with open orders and spread

exchange, symbol

get_cardano_price

Aggregated Cardano token price from DEXes

symbol

discover_pools

Discover Cardano DEX liquidity pools

symbol

MCP Resources

URI

Description

exchanges://list

Supported exchanges with credential requirements

strategies://grid

Grid trading strategy documentation

strategies://grid/profiles

Example grid profiles (conservative/moderate/aggressive)

Prompts

Prompt

Description

market_analysis

Analyze ticker + order book + trades for a pair

portfolio_overview

Summarize balances and open orders

grid_setup_advisor

Recommend grid config based on market analysis

Supported Exchanges

  • MEXCMEXC_API_KEY, MEXC_SECRET_KEY

  • BitgetBITGET_API_KEY, BITGET_SECRET, BITGET_PASSPHRASE

  • Gate.ioGATEIO_API_KEY, GATEIO_SECRET

  • KrakenKRAKEN_API_KEY, KRAKEN_SECRET

Framework Setup

Claude Code

claude mcp add openmm -- npx @qbtlabs/openmm-mcp

Set your exchange API keys as environment variables before launching Claude Code.

Claude Desktop

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

{
  "mcpServers": {
    "openmm": {
      "command": "npx",
      "args": ["@qbtlabs/openmm-mcp"],
      "env": {
        "MEXC_API_KEY": "your_key",
        "MEXC_SECRET_KEY": "your_secret",
        "KRAKEN_API_KEY": "your_key",
        "KRAKEN_SECRET": "your_secret"
      }
    }
  }
}

Cursor

Add to .cursor/mcp.json in your project:

{
  "mcpServers": {
    "openmm": {
      "command": "npx",
      "args": ["@qbtlabs/openmm-mcp"],
      "env": {
        "MEXC_API_KEY": "your_key",
        "MEXC_SECRET_KEY": "your_secret"
      }
    }
  }
}

Windsurf

Add to ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "openmm": {
      "command": "npx",
      "args": ["@qbtlabs/openmm-mcp"],
      "env": {
        "MEXC_API_KEY": "your_key",
        "MEXC_SECRET_KEY": "your_secret"
      }
    }
  }
}

Docker

docker build -t openmm-mcp .
docker run -e MEXC_API_KEY=your_key -e MEXC_SECRET_KEY=your_secret openmm-mcp

Remote Server

Connect directly to the hosted server — no local install required:

https://openmm-mcp.qbtlabs.io/mcp

Any MCP-Compatible Client

The server uses stdio transport by default. Point your client at:

npx @qbtlabs/openmm-mcp

Pass exchange credentials as environment variables (see Supported Exchanges).

HTTP Mode

Run the server with HTTP transport (Streamable HTTP + SSE):

MCP_TRANSPORT=http PORT=3000 npx @qbtlabs/openmm-mcp
  • POST /mcp — MCP endpoint

  • GET /health — Health check

Example Usage

Check a ticker price:

{
  "tool": "get_ticker",
  "arguments": {
    "exchange": "mexc",
    "symbol": "BTC/USDT"
  }
}

Place a limit buy order:

{
  "tool": "create_order",
  "arguments": {
    "exchange": "kraken",
    "symbol": "ETH/USDT",
    "type": "limit",
    "side": "buy",
    "amount": 0.5,
    "price": 2400
  }
}

Preview a grid strategy (dry run):

{
  "tool": "start_grid_strategy",
  "arguments": {
    "exchange": "mexc",
    "symbol": "INDY/USDT",
    "levels": 5,
    "spacing": 0.02,
    "orderSize": 50,
    "dryRun": true
  }
}

Get aggregated Cardano DEX price:

{
  "tool": "get_cardano_price",
  "arguments": {
    "symbol": "INDY"
  }
}

Development

git clone https://github.com/QBT-Labs/openMM-mcp-agent.git
cd openMM-mcp-agent
npm install
cp .env.example .env  # Edit with your API keys

npm run typecheck    # Type checking
npm run lint         # Linting
npm run format:check # Format checking
npm test             # Run tests
npm run build        # Build to dist/

Resources

Contributing

See CONTRIBUTING.md for guidelines on submitting issues and pull requests.

License

MIT

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/QBT-Labs/openmm-mcp'

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