JTX MARKETS LIVE
Multi-asset trading on 300+ instruments · 24/7 crypto, equities, indices, commodities · 24/5 forex
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.

Add to claude.ai in 30 seconds

No install, no local config. Works with any claude.ai account (free tier included).

1

Create an API key

Sign in and go to account › API keys. Pick Read for query-only, or Tradefor order placement. Copy the api_key, the api_secret (shown once), and your client_id (a UUID, on the account overview).

2

Add the connector in claude.ai

In claude.ai, click your avatar → Settings → Connectors → Add custom connector.

URL:

https://mcp.jtxmarkets.com/mcp

Authentication: Bearer token. Paste your three credentials joined by colons (no spaces):

<api_key>:<api_secret>:<client_id>
3

Start a new chat

Open a new conversation. The jtx-markets tools appear in the tool list. Try: “What’s my BTC position?” or any of the example prompts below.

Advanced: Claude Desktop, Cursor, Claude Code

Running the server locally over stdio — no claude.ai account required.

Install globally with npm:

npm install -g @jtxmarkets/mcp-server

Then add an mcpServers.jtx-markets entry to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\\Claude\\claude_desktop_config.json (Windows):

{
  "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"
      }
    }
  }
}

Restart Claude Desktop. Cursor, Claude Code and Zed use the same JSON shape in their respective MCP config sections. The npm package and the GitHub repo share the same codebase; both transports (remote HTTP and local stdio) are supported from the same tool catalog.

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?

Create API keys in your account, add the connector URL to claude.ai, and chat your way through your positions. The npm package is published publicly if you prefer running the stdio bin locally.

Current package version: 0.4.0 · Remote connector: https://mcp.jtxmarkets.com/mcp