AI Agents & MCP

How to Connect to the Quote.Trade Crypto Trading MCP Server

Connect to Quote.Trade’s hosted MCP endpoint, complete initialization, list the available tools, and run a public status or ticker call before enabling account, order, or withdrawal tools.

15 minutesBeginnerAI-agent builders and developers

What you will accomplish

  • Verify the hosted endpoint and protocol version
  • Send initialize and notifications/initialized correctly
  • Preserve an MCP session ID when the server returns one
  • List live tools instead of assuming tool names or schemas
  • Identify the withdrawal preview and live withdrawal tools
  • Call public status or ticker data before any authenticated workflow

Before you begin

  • An MCP-compatible client or curl for a protocol-level smoke test
  • Network access to https://quote.trade/mcp
  • No Quote.Trade account API key is required for the documented public market-data tools
EndpointPOST https://quote.trade/mcp
ProtocolStreamable HTTP; JSON-RPC 2.0; MCP 2025-06-18
Required request headersContent-Type, Accept, and MCP-Protocol-Version
Withdrawal supportPreview plus live withdrawal to the user's login wallet
Step-by-step

Open the official MCP discovery record

Open the official MCP discovery JSON. Confirm status hosted-live, endpoint https://quote.trade/mcp, Streamable HTTP transport, protocol version 2025-06-18, and the current safety settings. REST and WebSocket remain available for direct application integrations.

text
https://quote.trade/.well-known/mcp.json
Expected result

The discovery document identifies the hosted endpoint, and the agent guide classifies status, exchange information, instruments, ticker, and depth as public tools.

Send a complete initialize request

Use POST. Send both application/json and text/event-stream in Accept because Streamable HTTP clients may negotiate either response form. Save MCP-Session-Id from the response headers if the server returns it; later requests in that session should echo the value.

bash
curl -i https://quote.trade/mcp \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json, text/event-stream' \
  -H 'MCP-Protocol-Version: 2025-06-18' \
  --data '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"quote-trade-smoke-test","version":"1.0.0"}}}'
Expected result

HTTP 200 with a JSON-RPC initialize result. Record any MCP-Session-Id response header.

Complete initialization

After a successful initialize response, send notifications/initialized. It is a notification and normally has no JSON-RPC result. If initialize returns MCP-Session-Id, add a header containing that exact returned value to later requests; otherwise omit the header.

bash
curl -i https://quote.trade/mcp \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json, text/event-stream' \
  -H 'MCP-Protocol-Version: 2025-06-18' \
  --data '{"jsonrpc":"2.0","method":"notifications/initialized"}'
Expected result

A successful notification may return HTTP 202 with an empty body.

List the tools exposed by the live server

Read tool names, argument schemas, output schemas, and safety annotations from the live tools/list response.

bash
curl -i https://quote.trade/mcp \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json, text/event-stream' \
  -H 'MCP-Protocol-Version: 2025-06-18' \
  --data '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}'
Expected result

A tools array containing the public tools and any additional tools enabled on the server.

Call a public read-only tool

Start with status or ticker. The documented public market-data tools do not require a Quote.Trade account API key, although the MCP connection itself may still require authentication. Keep the structured response and its source fields, and use a fresh result for any current price.

bash
curl -i https://quote.trade/mcp \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json, text/event-stream' \
  -H 'MCP-Protocol-Version: 2025-06-18' \
  --data '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"quote_trade_status","arguments":{}}}'
Expected result

A structured public status response. Then repeat with quote_trade_ticker and a symbol returned by live metadata.

Review the withdrawal tools

The server provides two withdrawal tools: quote_trade_withdraw_preview and quote_trade_withdraw. Preview checks the account, asset, scaled quantity, and quantity scale without moving funds. Live withdrawal also requires server-side withdrawal permission, per-request credentials, humanApproved: true, and the exact phrase APPROVE QUOTE.TRADE LIVE WITHDRAW.

Funds can go only to the user's login wallet; the agent cannot choose another address. Wallet challenge signing happens outside MCP. The server does not expose arbitrary-address transfers, staking, or unrestricted action loops.

bash
curl -s https://quote.trade/mcp -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' -H 'MCP-Protocol-Version: 2025-06-18' --data '{"jsonrpc":"2.0","id":4,"method":"tools/call","params":{"name":"quote_trade_withdraw_preview","arguments":{"symbol":"USDC","quantity":"20000000","quantity_scale":6}}}'
Expected result

A preview with willSend: false, a 20 USDC estimated amount, destination own-wallet-login-only, and the exact approval text required for a separate live withdrawal. No funds move.

Troubleshooting

Common problems and fixes

GET /mcp returns 405

Expected. The hosted endpoint accepts MCP messages over POST; GET is not a human-readable documentation route.

The server rejects Accept

Send Accept: application/json, text/event-stream together with Content-Type: application/json.

A later request loses the session

Echo MCP-Session-Id only when initialize returned it. Do not invent a session ID.

The live tool list changed

Review the changed schema and stop before calling a tool whose behavior or permissions are unclear.

Frequently asked questions

Answers before you continue

Does a successful public tool call authorize trading or withdrawal?

No. Public tools are read-only. Account, order, and withdrawal workflows require separate credentials, server-side controls, and request-specific approval.

Does Quote.Trade MCP support withdrawals?

Yes. The server exposes withdrawal preview and live withdrawal tools. A live withdrawal can send only to the user’s login wallet; an agent cannot supply an arbitrary destination address.

Primary sources

Use the live tools/list response and quote_trade_api_manifest for currently exposed MCP capabilities; use the official guides for workflow context. If a guide and the live tool definition disagree, stop before any order or withdrawal call and update the integration. Public metadata fields, permissions, routes, and behavior can change.

Ready for the next step?

Open the MCP integration guide

Open the MCP integration guide