@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.
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.
Four steps from zero to trading in Claude Desktop.
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.
Your engine client_id is on the account overview page, next to the API key section. It’s a UUID.
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.
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.
All 15 tools currently shipped. Trade + algo tools require a Trade-scoped API key.
| Tool | Purpose |
|---|---|
get_balance | Balance / Available / Withdrawable / Locked / uPNL / rPNL with plain-English notes on what each means. |
get_positions | Open positions — entry, mark, uPNL, liquidation price. |
get_orders | Resting orders — symbol, side, type, price, size, id. |
get_trades | Recent fills. Optional symbol filter, configurable limit. |
get_funding_history | Funding payments received or paid, per symbol. |
list_markets | Every listed instrument with mark and 24h volume. |
get_market_summary | Mark, funding rate, next funding, open interest, 24h volume for one symbol. |
| Tool | Purpose |
|---|---|
submit_order | Place a market, limit, stop-market or stop-limit order. Cross-margin or isolated. |
cancel_order | Cancel one open order by id. |
cancel_all_orders | Cancel every open order (optionally scoped to one symbol). |
close_position | Reduce-only market sweep to flatten one position. |
set_leverage | Change the leverage tier on a symbol (subject to your account's max leverage cap). |
| Tool | Purpose |
|---|---|
submit_twap | Start a TWAP execution — target size split across a duration in slices. Runtime-enforced ALGO_DISCLAIMER. |
list_algos | Currently running algos + their status. |
cancel_algo | Stop a running algo before completion. |
What actual conversations look like once the server is wired up.
What the server can and can’t do — read before wiring it up.
submit_twap is wrapped in a disclaimer response the model surfaces to the user before the order goes live. Cannot be disabled.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