JTX MARKETS LIVE
Multi-asset trading on 300+ instruments · Two account types: Exchange (deposit-funded) and Prop Trading Programme (evaluated)
MCP SERVER

Trade JTX Markets from Claude, in plain English.

@jtxmarkets/mcp-server is a Model Context Protocol server that plugs into Claude Desktop, Cursor, Claude Code and any MCP-compatible client. Ask questions about your account, place orders, run TWAP algos — without leaving the chat.

What is MCP?

The interoperability standard that turns LLMs into real trading clients.

Model Context Protocol is Anthropic’s open standard for wiring language models into external tools. An MCP server exposes a set of typed “tools” that the model can call — with schemas so the model knows exactly what arguments each tool expects. Because MCP is a spec rather than a proprietary API, any MCP-compatible client (Claude Desktop, Cursor, Claude Code, Zed, and a growing list of others) can use the same server.

The @jtxmarkets/mcp-server package exposes 15 tools against the JTX Markets matching engine — 7 read, 5 trade, 3 algos. All tools are HMAC-signed against your per-account API key. Trade + algo tools respect the same scope gate as the REST API — a Read-scoped key literally cannot submit an order.

Install & configure

Four steps from zero to trading in Claude Desktop.

1

Create an API key

Sign in and go to account › API keys. Pick Read scope if you only want the model to query state, or Trade if you want it to place orders. Copy the key and secret — the secret is shown once.

2

Grab your client ID

Your engine client_id is on the account overview page, next to the API key section. It’s a UUID.

3

Add to your MCP client config

For Claude Desktop, open ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\\Claude\\claude_desktop_config.json (Windows) and add an mcpServers.jtx-markets entry:

{
  "mcpServers": {
    "jtx-markets": {
      "command": "npx",
      "args": ["-y", "@jtxmarkets/mcp-server"],
      "env": {
        "JTX_MARKETS_API_KEY":    "your-api-key-here",
        "JTX_MARKETS_API_SECRET": "your-api-secret-here",
        "JTX_MARKETS_CLIENT_ID":  "your-client-id-uuid",
        "JTX_MARKETS_ENV":        "production"
      }
    }
  }
}

Cursor, Claude Code and Zed use the same JSON shape in their respective MCP config sections.

4

Restart the client

Open a new chat. Click the tools icon. You should see jtx-markets listed with a green dot and 15 tools available. Try one of the prompts below.

Tools exposed

All 15 tools currently shipped. Trade + algo tools require a Trade-scoped API key.

Read tools (7)

ToolPurpose
get_balanceBalance / Available / Withdrawable / Locked / uPNL / rPNL with plain-English notes on what each means.
get_positionsOpen positions — entry, mark, uPNL, liquidation price.
get_ordersResting orders — symbol, side, type, price, size, id.
get_tradesRecent fills. Optional symbol filter, configurable limit.
get_funding_historyFunding payments received or paid, per symbol.
list_marketsEvery listed instrument with mark and 24h volume.
get_market_summaryMark, funding rate, next funding, open interest, 24h volume for one symbol.

Trade tools (5)

ToolPurpose
submit_orderPlace a market, limit, stop-market or stop-limit order. Cross-margin or isolated.
cancel_orderCancel one open order by id.
cancel_all_ordersCancel every open order (optionally scoped to one symbol).
close_positionReduce-only market sweep to flatten one position.
set_leverageChange the leverage tier on a symbol (subject to your account's max leverage cap).

Algo tools (3)

ToolPurpose
submit_twapStart a TWAP execution — target size split across a duration in slices. Runtime-enforced ALGO_DISCLAIMER.
list_algosCurrently running algos + their status.
cancel_algoStop a running algo before completion.

Example prompts

What actual conversations look like once the server is wired up.

  • "How much can I withdraw right now?"
  • "Show me my open ETH-PERP positions."
  • "Which of my open orders are furthest below the mark?"
  • "Total funding I received on BTC-PERP this month?"
  • "Buy 0.01 BTC at market with a 2% stop-loss."
  • "Start a TWAP: sell 0.5 ETH over the next 30 minutes."

Safety notes

What the server can and can’t do — read before wiring it up.

  • Scope-enforced by the engine. A Read-scoped API key literally cannot submit an order — the JTX Markets auth middleware rejects the request before it reaches the matching engine. The MCP server does not enforce this itself; the engine does.
  • Withdrawals never touch MCP. Withdrawals require email verification code + TOTP + admin approval on the dashboard. That flow does not translate to natural language and never will.
  • Optional IP allowlist per key. Recommended for production use. Add your dev machine’s public IP to the key from the account dashboard.
  • Do not paste transcripts publicly. If a chat contains active JTX Markets tool calls, the responses include your account state. Redact before sharing.
  • Runtime disclaimer on algo tools. Every call to submit_twap is wrapped in a disclaimer response the model surfaces to the user before the order goes live. Cannot be disabled.

Ready to try it?

The package is currently distributed as a tarball while npm publish is deferred to launch. Grab the latest release from GitHub, or contact us for early npm access.

Current package version: 0.3.0 · Tarball: jtxmarkets-mcp-server-0.3.0.tgz