Quote.Trade MCP Adapter
Was dieses MCP kann
Connects to Quote.Trade for market data, account and position checks, order placement and cancellation, deposits, stablecoin withdrawals, and order history.
Tools
Eingabeschema
{'type': 'object', 'required': [], 'properties': {}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['method', 'endpoint', 'status', 'body', 'raw'], 'properties': {'raw': {'type': 'string', 'description': 'Raw JSON response body.'}, 'body': {'description': 'Parsed JSON response body when valid JSON; otherwise the raw text.'}, 'method': {'type': 'string', 'description': 'HTTP method used against Quote.Trade.'}, 'status': {'type': 'integer', 'description': 'HTTP status code.'}, 'endpoint': {'type': 'string', 'description': 'Quote.Trade API endpoint path.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': [], 'properties': {}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['schemaVersion', 'serverVersion', 'releaseDate', 'purpose', 'discoveryUrl', 'bases', 'documentation', 'workflow', 'rest', 'webSocket', 'depthSemantics', 'executionControls'], 'properties': {'rest': {'type': 'object', 'description': 'Routes and route-specific signing guidance.'}, 'bases': {'type': 'object', 'description': 'Configured REST, WebSocket, and MCP URLs.'}, 'purpose': {'type': 'string', 'description': 'How to use the guide.'}, 'workflow': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Efficient agent integration workflow.'}, 'webSocket': {'type': 'object', 'description': 'Subscriptions and reconnection guidance.'}, 'releaseDate': {'type': 'string', 'description': 'MCP implementation release date (YYYY-MM-DD).'}, 'discoveryUrl': {'type': 'string', 'description': 'Public HTTP discovery URL.'}, 'documentation': {'type': 'object', 'description': 'Canonical documentation links.'}, 'schemaVersion': {'type': 'string', 'description': 'Discovery document schema version.'}, 'serverVersion': {'type': 'string', 'description': 'MCP implementation version.'}, 'depthSemantics': {'type': 'object', 'description': 'Cumulative quantity and quote freshness.'}, 'executionControls': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Controls required in direct API clients.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': [], 'properties': {}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['adapter', 'version', 'releaseDate', 'ordersExposedThroughMcp', 'withdrawalsExposedThroughMcp', 'depositsExposedThroughMcp', 'liveTradingExecutable', 'liveWithdrawExecutable', 'tradingEnabled', 'allowedSymbols', 'allowedSymbolsMode', 'maxNotionalUsd', 'maxNotionalMode', 'approvalFrictionOnly', 'credentialStatus', 'tools'], 'properties': {'tools': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Registered tool names.'}, 'wsBase': {'type': 'string', 'description': 'Quote.Trade WebSocket base.'}, 'adapter': {'type': 'string', 'description': 'MCP adapter name.'}, 'apiBase': {'type': 'string', 'description': 'Quote.Trade REST API base.'}, 'version': {'type': 'string', 'description': 'Adapter version.'}, 'releaseDate': {'type': 'string', 'description': 'Adapter release date (YYYY-MM-DD).'}, 'servletOnly': {'type': 'boolean', 'description': 'True when this adapter is servlet-hosted only.'}, 'mcpPublicUrl': {'type': 'string', 'description': 'Public MCP URL.'}, 'allowLeverage': {'type': 'boolean', 'description': 'Server-side leverage allowance.'}, 'depositAssets': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Supported deposit asset symbols (USDC, USDT, XUSDC).'}, 'allowedSymbols': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Trading symbol allowlist. Empty=deny-all; *=all instruments; else explicit symbols.'}, 'maxNotionalUsd': {'type': 'null', 'description': 'Null: no MCP per-order or per-withdrawal USD notional cap.'}, 'tradingEnabled': {'type': 'boolean', 'description': 'Server-side live trading/withdraw enablement.'}, 'withdrawAssets': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Supported withdraw asset symbols (stablecoins only: USDC, USDT, XUSDC).'}, 'maxNotionalMode': {'type': 'string', 'description': 'Always unlimited for MCP orders and withdrawals. Backend account controls still apply.'}, 'mcpEndpointPath': {'type': 'string', 'description': 'Local MCP path.'}, 'credentialStatus': {'type': 'object', 'required': ['mode', 'apiKeyHeader', 'apiSecretHeader', 'apiKey', 'apiSecret', 'outboundAuthHeaders', 'mcpHostSeesApiSecret', 'trustWarning'], 'properties': {'mode': {'type': 'string', 'description': 'Credential mode.'}, 'apiKey': {'type': 'string', 'description': 'Redacted per-request API key status.'}, 'apiSecret': {'type': 'string', 'description': 'Whether the per-request API secret is set.'}, 'apiKeyHeader': {'type': 'string', 'description': 'Inbound API key header name (X-MBX-APIKEY).'}, 'trustWarning': {'type': 'string', 'description': 'What possession of the API secret grants this MCP host.'}, 'accountDefault': {'type': 'string', 'description': 'Optional default account id.'}, 'apiSecretHeader': {'type': 'string', 'description': 'Inbound API secret header name (X-MBX-APISECRET).'}, 'outboundAuthHeaders': {'type': 'string', 'description': 'Headers sent to Quote.Trade private APIs.'}, 'mcpHostSeesApiSecret': {'type': 'boolean', 'description': 'True: this MCP host receives the raw API secret to compute the HMAC signature.'}}, 'additionalProperties': False}, 'liquidityApiBase': {'type': 'string', 'description': 'Configured and validated at startup, but no MCP tool currently routes a request through it - every tool (withdraw included) calls apiBase. Reported here for operator visibility only.'}, 'canonicalBehavior': {'type': 'string', 'description': 'Adapter behavior summary.'}, 'credentialMapping': {'type': 'string', 'description': 'How to map a logon/register response, or a web-app API key, onto MCP client headers.'}, 'credentialScoping': {'type': 'string', 'description': 'Wallet login optional. Trade-only key: no withdraw. Full-access key (trade+withdraw): withdraw allowed.'}, 'dailyNotionalUsed': {'type': 'number', 'description': 'Compatibility field, always zero: MCP does not track a daily USD budget.'}, 'maxCallsPerMinute': {'type': 'integer', 'description': 'Per-caller MCP call rate limit.'}, 'allowedSymbolsMode': {'type': 'string', 'description': 'deny-all | all-quote-trade-instruments (*) | allowlist.'}, 'mcpProtocolVersion': {'type': 'string', 'description': 'MCP protocol version.'}, 'withdrawAssetsOnly': {'type': 'string', 'description': 'stablecoins-only'}, 'maxDailyNotionalUsd': {'type': 'null', 'description': 'Null: no MCP cumulative daily USD cap on orders or withdrawals.'}, 'walletLoginOptional': {'type': 'boolean', 'description': 'True: agents can trade with a web-app API key without wallet logon.'}, 'withdrawDestination': {'type': 'string', 'description': 'Always own-wallet-login-only; no toAddress is ever accepted.'}, 'approvalFrictionOnly': {'type': 'boolean', 'description': 'True when humanApproved/approvalText are friction only.'}, 'approvalTextRequired': {'type': 'string', 'description': 'Exact approval friction text for live orders.'}, 'mcpHostSeesApiSecret': {'type': 'boolean', 'description': 'True when private tools accept X-MBX-APISECRET at this MCP host.'}, 'allowedWithdrawAssets': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Withdraw asset allowlist, independent of allowedSymbols. Empty=deny-all withdrawals; *=all stablecoins; else explicit assets (USDC, USDT, XUSDC).'}, 'directApiDiscoveryUrl': {'type': 'string', 'description': 'Public GET guide for efficient direct REST/WebSocket use.'}, 'liveTradingExecutable': {'type': 'boolean', 'description': 'Server configuration permits orders: trading enabled and a nonempty symbol allowlist. No MCP USD cap; caller credentials and backend account checks are still required.'}, 'liveWithdrawExecutable': {'type': 'boolean', 'description': 'Server configuration permits a supported withdrawal asset: trading enabled and USDC/USDT/XUSDC allowed. No MCP USD cap; caller withdrawal entitlement and backend balance checks are still required.'}, 'ordersExposedThroughMcp': {'type': 'boolean', 'description': 'True when order tools are registered in tools/list.'}, 'depositsExposedThroughMcp': {'type': 'boolean', 'description': 'True when deposit-address tools are registered in tools/list.'}, 'withdrawApprovalTextRequired': {'type': 'string', 'description': 'Exact approval friction text for live withdraws.'}, 'withdrawalsExposedThroughMcp': {'type': 'boolean', 'description': 'True when withdraw tools are registered in tools/list.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': ['symbol', 'orderId', 'humanApproved', 'approvalText'], 'properties': {'side': {'type': 'string', 'description': 'Optional BUY or SELL, matching the original order. Passed through if given.'}, 'symbol': {'type': 'string', 'description': 'Instrument symbol the order was placed on, such as BTC.'}, 'account': {'type': 'integer', 'description': 'Quote.Trade account/user id. Optional (defaults to account init-param, QUOTE_TRADE_ACCOUNT, or 0).'}, 'orderId': {'type': 'integer', 'description': 'The order id returned by quote_trade_place_order.'}, 'approvalText': {'type': 'string', 'description': 'Agent-supplied confirmation friction (not a security control). Must exactly equal: APPROVE QUOTE.TRADE CANCEL ORDER'}, 'humanApproved': {'type': 'boolean', 'description': 'Agent-supplied confirmation friction (not a security control). Must be true; enableTrading remains authoritative.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['method', 'endpoint', 'status', 'body', 'raw'], 'properties': {'raw': {'type': 'string', 'description': 'Raw JSON response body.'}, 'body': {'description': 'Parsed JSON response body when valid JSON; otherwise the raw text.'}, 'method': {'type': 'string', 'description': 'HTTP method used against Quote.Trade.'}, 'status': {'type': 'integer', 'description': 'HTTP status code.'}, 'endpoint': {'type': 'string', 'description': 'Quote.Trade API endpoint path.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': ['symbol'], 'properties': {'limit': {'type': 'integer', 'description': 'Optional maximum levels per side. Positive values are enforced by MCP; omitted/nonpositive uses upstream depth.'}, 'symbol': {'type': 'string', 'description': 'Instrument symbol from quote_trade_instruments, such as BTC or ETH.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['method', 'endpoint', 'status', 'body', 'raw'], 'properties': {'raw': {'type': 'string', 'description': 'Raw JSON response body.'}, 'body': {'description': 'Parsed JSON response body when valid JSON; otherwise the raw text.'}, 'method': {'type': 'string', 'description': 'HTTP method used against Quote.Trade.'}, 'status': {'type': 'integer', 'description': 'HTTP status code.'}, 'endpoint': {'type': 'string', 'description': 'Quote.Trade API endpoint path.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': [], 'properties': {'skip': {'type': 'integer', 'description': 'Number of matching symbols to skip before returning. Default 0.'}, 'limit': {'type': 'integer', 'description': 'Max symbols to return. Default 50, max 200.'}, 'symbols': {'type': 'string', 'description': 'Optional comma-separated symbol filter, e.g. BTC,ETH,SOL. When set, pagination applies to the filtered list.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['method', 'endpoint', 'status', 'body', 'raw'], 'properties': {'raw': {'type': 'string', 'description': 'Raw JSON response body.'}, 'body': {'description': 'Parsed JSON response body when valid JSON; otherwise the raw text.'}, 'method': {'type': 'string', 'description': 'HTTP method used against Quote.Trade.'}, 'status': {'type': 'integer', 'description': 'HTTP status code.'}, 'endpoint': {'type': 'string', 'description': 'Quote.Trade API endpoint path.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': ['login'], 'properties': {'login': {'type': 'string', 'description': 'Wallet address used as login, e.g. 0x15b65a49faf9a4047e912d7de4a77fe24c7cf483.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['method', 'endpoint', 'status', 'body', 'raw'], 'properties': {'raw': {'type': 'string', 'description': 'Raw JSON response body.'}, 'body': {'description': 'Parsed JSON response body when valid JSON; otherwise the raw text.'}, 'method': {'type': 'string', 'description': 'HTTP method used against Quote.Trade.'}, 'status': {'type': 'integer', 'description': 'HTTP status code.'}, 'endpoint': {'type': 'string', 'description': 'Quote.Trade API endpoint path.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': ['symbol'], 'properties': {'symbol': {'type': 'string', 'description': 'Deposit asset symbol: USDC or USDT (mainnet), or XUSDC (USDC on XDC network).'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['method', 'endpoint', 'status', 'body', 'raw'], 'properties': {'raw': {'type': 'string', 'description': 'Raw JSON response body.'}, 'body': {'description': 'Parsed JSON response body when valid JSON; otherwise the raw text.'}, 'method': {'type': 'string', 'description': 'HTTP method used against Quote.Trade.'}, 'status': {'type': 'integer', 'description': 'HTTP status code.'}, 'endpoint': {'type': 'string', 'description': 'Quote.Trade API endpoint path.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': [], 'properties': {}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['method', 'endpoint', 'status', 'body', 'raw'], 'properties': {'raw': {'type': 'string', 'description': 'Raw JSON response body.'}, 'body': {'description': 'Parsed JSON response body when valid JSON; otherwise the raw text.'}, 'method': {'type': 'string', 'description': 'HTTP method used against Quote.Trade.'}, 'status': {'type': 'integer', 'description': 'HTTP status code.'}, 'endpoint': {'type': 'string', 'description': 'Quote.Trade API endpoint path.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': [], 'properties': {'assetType': {'type': 'string', 'description': 'Optional index/basket asset type filter. Omit for all.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['method', 'endpoint', 'status', 'body', 'raw'], 'properties': {'raw': {'type': 'string', 'description': 'Raw JSON response body.'}, 'body': {'description': 'Parsed JSON response body when valid JSON; otherwise the raw text.'}, 'method': {'type': 'string', 'description': 'HTTP method used against Quote.Trade.'}, 'status': {'type': 'integer', 'description': 'HTTP status code.'}, 'endpoint': {'type': 'string', 'description': 'Quote.Trade API endpoint path.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': [], 'properties': {'orderId': {'type': 'integer', 'description': "Optional order id to narrow to one order's history. Omit for the full order history."}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['method', 'endpoint', 'status', 'body', 'raw'], 'properties': {'raw': {'type': 'string', 'description': 'Raw JSON response body.'}, 'body': {'description': 'Parsed JSON response body when valid JSON; otherwise the raw text.'}, 'method': {'type': 'string', 'description': 'HTTP method used against Quote.Trade.'}, 'status': {'type': 'integer', 'description': 'HTTP status code.'}, 'endpoint': {'type': 'string', 'description': 'Quote.Trade API endpoint path.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': [], 'properties': {'limit': {'type': 'integer', 'description': 'Optional maximum number of orders to return.'}, 'symbol': {'type': 'string', 'description': 'Optional instrument symbol filter, such as BTC. Omit for all symbols.'}, 'endTime': {'type': 'integer', 'description': 'Optional inclusive end of a time range, epoch milliseconds.'}, 'startTime': {'type': 'integer', 'description': 'Optional inclusive start of a time range, epoch milliseconds.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['method', 'endpoint', 'status', 'body', 'raw'], 'properties': {'raw': {'type': 'string', 'description': 'Raw JSON response body.'}, 'body': {'description': 'Parsed JSON response body when valid JSON; otherwise the raw text.'}, 'method': {'type': 'string', 'description': 'HTTP method used against Quote.Trade.'}, 'status': {'type': 'integer', 'description': 'HTTP status code.'}, 'endpoint': {'type': 'string', 'description': 'Quote.Trade API endpoint path.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': ['orderId'], 'properties': {'orderId': {'type': 'integer', 'description': 'The order id returned by quote_trade_place_order.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['method', 'endpoint', 'status', 'body', 'raw'], 'properties': {'raw': {'type': 'string', 'description': 'Raw JSON response body.'}, 'body': {'description': 'Parsed JSON response body when valid JSON; otherwise the raw text.'}, 'method': {'type': 'string', 'description': 'HTTP method used against Quote.Trade.'}, 'status': {'type': 'integer', 'description': 'HTTP status code.'}, 'endpoint': {'type': 'string', 'description': 'Quote.Trade API endpoint path.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': [], 'properties': {}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['method', 'endpoint', 'status', 'body', 'raw'], 'properties': {'raw': {'type': 'string', 'description': 'Raw JSON response body.'}, 'body': {'description': 'Parsed JSON response body when valid JSON; otherwise the raw text.'}, 'method': {'type': 'string', 'description': 'HTTP method used against Quote.Trade.'}, 'status': {'type': 'integer', 'description': 'HTTP status code.'}, 'endpoint': {'type': 'string', 'description': 'Quote.Trade API endpoint path.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': [], 'properties': {}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['method', 'endpoint', 'status', 'body', 'raw'], 'properties': {'raw': {'type': 'string', 'description': 'Raw JSON response body.'}, 'body': {'description': 'Parsed JSON response body when valid JSON; otherwise the raw text.'}, 'method': {'type': 'string', 'description': 'HTTP method used against Quote.Trade.'}, 'status': {'type': 'integer', 'description': 'HTTP status code.'}, 'endpoint': {'type': 'string', 'description': 'Quote.Trade API endpoint path.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': [], 'properties': {}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['method', 'endpoint', 'status', 'body', 'raw'], 'properties': {'raw': {'type': 'string', 'description': 'Raw JSON response body.'}, 'body': {'description': 'Parsed JSON response body when valid JSON; otherwise the raw text.'}, 'method': {'type': 'string', 'description': 'HTTP method used against Quote.Trade.'}, 'status': {'type': 'integer', 'description': 'HTTP status code.'}, 'endpoint': {'type': 'string', 'description': 'Quote.Trade API endpoint path.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': [], 'properties': {}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['method', 'endpoint', 'status', 'body', 'raw'], 'properties': {'raw': {'type': 'string', 'description': 'Raw JSON response body.'}, 'body': {'description': 'Parsed JSON response body when valid JSON; otherwise the raw text.'}, 'method': {'type': 'string', 'description': 'HTTP method used against Quote.Trade.'}, 'status': {'type': 'integer', 'description': 'HTTP status code.'}, 'endpoint': {'type': 'string', 'description': 'Quote.Trade API endpoint path.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': [], 'properties': {'skip': {'type': 'integer', 'description': 'Number of instruments to skip before returning. Default 0.'}, 'limit': {'type': 'integer', 'description': 'Max instruments to return. Default 50, max 200.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['method', 'endpoint', 'status', 'body', 'raw'], 'properties': {'raw': {'type': 'string', 'description': 'Raw JSON response body.'}, 'body': {'description': 'Parsed JSON response body when valid JSON; otherwise the raw text.'}, 'method': {'type': 'string', 'description': 'HTTP method used against Quote.Trade.'}, 'status': {'type': 'integer', 'description': 'HTTP status code.'}, 'endpoint': {'type': 'string', 'description': 'Quote.Trade API endpoint path.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': ['challenge', 'signature'], 'properties': {'challenge': {'type': 'string', 'description': 'Challenge text returned by quote_trade_get_challenge (Sign auth token: ...).'}, 'isNewUser': {'type': 'boolean', 'description': 'From quote_trade_get_challenge. true -> registerUser; false -> logon. If omitted, logon is tried first then registerUser on failure.'}, 'signature': {'type': 'string', 'description': 'Wallet signature of the challenge text (0x-prefixed hex).'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['method', 'endpoint', 'status', 'body', 'raw'], 'properties': {'raw': {'type': 'string', 'description': 'Raw JSON response body.'}, 'body': {'description': 'Parsed JSON response body when valid JSON; otherwise the raw text.'}, 'method': {'type': 'string', 'description': 'HTTP method used against Quote.Trade.'}, 'status': {'type': 'integer', 'description': 'HTTP status code.'}, 'endpoint': {'type': 'string', 'description': 'Quote.Trade API endpoint path.'}, 'nextStep': {'type': 'string', 'description': 'Present on success only. What to configure before calling private tools.'}, 'credentialMapping': {'type': 'object', 'description': "Present on success only. Maps this response's requestToken/requestSecret/id to the MCP client headers and account field to use next."}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': ['symbol', 'side', 'price', 'quantity'], 'properties': {'side': {'type': 'string', 'description': 'BUY or SELL.'}, 'type': {'type': 'string', 'description': 'LIMIT only in this adapter.'}, 'price': {'type': 'number', 'description': 'Limit price chosen after quote_trade_depth.'}, 'symbol': {'type': 'string', 'description': 'Instrument symbol from quote_trade_instruments, such as BTC.'}, 'account': {'type': 'integer', 'description': 'Quote.Trade account/user id. Optional for preview (defaults to account init-param, QUOTE_TRADE_ACCOUNT, or 0). Required for live place_order.'}, 'quantity': {'type': 'number', 'description': 'Order quantity.'}, 'timestamp': {'type': 'integer', 'description': 'Optional client timestamp in milliseconds.'}, 'disableLeverage': {'type': 'integer', 'description': '1 disables leverage; 0 enables leverage/shorting only if server allowLeverage is true.'}, 'paymentCurrency': {'type': 'string', 'description': 'Payment currency such as USDT.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['willSend', 'endpoint', 'requestBody', 'estimatedNotional', 'symbolAllowed', 'withinMaxNotional', 'tradingEnabled', 'credentialsPresent', 'approvalFrictionOnly', 'safety'], 'properties': {'safety': {'type': 'string', 'description': 'Preview safety notes.'}, 'endpoint': {'type': 'string', 'description': 'Target Quote.Trade order endpoint.'}, 'priceUsd': {'type': 'number', 'description': 'USD unit price used for withdraw notional.'}, 'willSend': {'type': 'boolean', 'description': 'Whether this preview would send a live order.'}, 'destination': {'type': 'string', 'description': 'Withdraw previews only: always own-wallet-login-only (no toAddress accepted).'}, 'priceSource': {'type': 'string', 'description': 'How priceUsd was obtained (stablecoin-peg|ticker|ticker-unavailable).'}, 'requestBody': {'type': 'object', 'description': 'Normalized order request body that would be posted.', 'additionalProperties': True}, 'symbolAllowed': {'type': 'boolean', 'description': 'Whether the order symbol or withdrawal asset passes its own allowlist (empty=deny-all; *=all supported).'}, 'tradingEnabled': {'type': 'boolean', 'description': 'Server-side trading enablement.'}, 'notionalWarning': {'type': 'string', 'description': 'Withdraw previews only: present when a USD price could not be resolved.'}, 'estimatedNotional': {'type': 'number', 'description': 'Estimated notional in USD (orders: price×qty; withdraws: USD price×human quantity).'}, 'estimatedQuantity': {'type': 'number', 'description': 'Withdraw human quantity only (quantity / 10^quantity_scale). Present on withdraw previews.'}, 'withinMaxNotional': {'type': 'boolean', 'description': 'Always true for a valid preview: MCP imposes no USD notional cap. This does not establish balance, margin or authorization.'}, 'credentialsPresent': {'type': 'boolean', 'description': 'Whether per-request trading credentials are present.'}, 'approvalFrictionOnly': {'type': 'boolean', 'description': 'True when approval fields are friction only.'}, 'approvalTextRequired': {'type': 'string', 'description': 'Exact approval friction text.'}, 'estimatedNotionalUsd': {'type': 'number', 'description': 'Withdraw USD notional. Present on withdraw previews when priced.'}, 'withdrawAssetAllowed': {'type': 'boolean', 'description': 'Withdraw previews only: whether the asset passes allowedWithdrawAssets.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': ['account', 'symbol', 'side', 'price', 'quantity', 'humanApproved', 'approvalText'], 'properties': {'side': {'type': 'string', 'description': 'BUY or SELL.'}, 'type': {'type': 'string', 'description': 'LIMIT only in this adapter.'}, 'price': {'type': 'number', 'description': 'Limit price chosen after quote_trade_depth.'}, 'symbol': {'type': 'string', 'description': 'Instrument symbol from quote_trade_instruments, such as BTC.'}, 'account': {'type': 'integer', 'description': 'Quote.Trade account/user id. Optional for preview (defaults to account init-param, QUOTE_TRADE_ACCOUNT, or 0). Required for live place_order.'}, 'quantity': {'type': 'number', 'description': 'Order quantity.'}, 'timestamp': {'type': 'integer', 'description': 'Optional client timestamp in milliseconds.'}, 'approvalText': {'type': 'string', 'description': 'Agent-supplied confirmation friction (not a security control). Must exactly equal: APPROVE QUOTE.TRADE LIVE ORDER'}, 'humanApproved': {'type': 'boolean', 'description': 'Agent-supplied confirmation friction (not a security control). Must be true; enableTrading remains authoritative.'}, 'disableLeverage': {'type': 'integer', 'description': '1 disables leverage; 0 enables leverage/shorting only if server allowLeverage is true.'}, 'paymentCurrency': {'type': 'string', 'description': 'Payment currency such as USDT.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['method', 'endpoint', 'status', 'body', 'raw'], 'properties': {'raw': {'type': 'string', 'description': 'Raw JSON response body.'}, 'body': {'description': 'Parsed JSON response body when valid JSON; otherwise the raw text.'}, 'method': {'type': 'string', 'description': 'HTTP method used against Quote.Trade.'}, 'status': {'type': 'integer', 'description': 'HTTP status code.'}, 'endpoint': {'type': 'string', 'description': 'Quote.Trade API endpoint path.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': [], 'properties': {}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['method', 'endpoint', 'status', 'body', 'raw'], 'properties': {'raw': {'type': 'string', 'description': 'Raw JSON response body.'}, 'body': {'description': 'Parsed JSON response body when valid JSON; otherwise the raw text.'}, 'method': {'type': 'string', 'description': 'HTTP method used against Quote.Trade.'}, 'status': {'type': 'integer', 'description': 'HTTP status code.'}, 'endpoint': {'type': 'string', 'description': 'Quote.Trade API endpoint path.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': ['symbol'], 'properties': {'symbol': {'type': 'string', 'description': 'Instrument symbol from quote_trade_instruments, such as BTC or ETH.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['method', 'endpoint', 'status', 'body', 'raw'], 'properties': {'raw': {'type': 'string', 'description': 'Raw JSON response body.'}, 'body': {'description': 'Parsed JSON response body when valid JSON; otherwise the raw text.'}, 'method': {'type': 'string', 'description': 'HTTP method used against Quote.Trade.'}, 'status': {'type': 'integer', 'description': 'HTTP status code.'}, 'endpoint': {'type': 'string', 'description': 'Quote.Trade API endpoint path.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': ['account', 'symbol', 'quantity', 'quantity_scale', 'humanApproved', 'approvalText'], 'properties': {'symbol': {'type': 'string', 'description': 'Stablecoin to withdraw: USDC, USDT, or XUSDC only (not BTC/ETH/other).'}, 'account': {'type': 'integer', 'description': 'Quote.Trade account/user id. Optional for preview (defaults to account init-param, QUOTE_TRADE_ACCOUNT, or 0). Required for live withdraw.'}, 'quantity': {'type': 'string', 'description': 'Scaled integer quantity as string (API format). Example: "20000000" with quantity_scale=6 means 20 USDC.'}, 'approvalText': {'type': 'string', 'description': 'Agent-supplied confirmation friction (not a security control). Must exactly equal: APPROVE QUOTE.TRADE LIVE WITHDRAW'}, 'humanApproved': {'type': 'boolean', 'description': 'Agent-supplied confirmation friction (not a security control). Must be true; enableTrading remains authoritative.'}, 'quantity_scale': {'type': 'integer', 'description': 'Decimal scale for quantity. Example: 6 for USDC.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['method', 'endpoint', 'status', 'body', 'raw'], 'properties': {'raw': {'type': 'string', 'description': 'Raw JSON response body.'}, 'body': {'description': 'Parsed JSON response body when valid JSON; otherwise the raw text.'}, 'method': {'type': 'string', 'description': 'HTTP method used against Quote.Trade.'}, 'status': {'type': 'integer', 'description': 'HTTP status code.'}, 'endpoint': {'type': 'string', 'description': 'Quote.Trade API endpoint path.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': ['symbol', 'quantity', 'quantity_scale'], 'properties': {'symbol': {'type': 'string', 'description': 'Stablecoin to withdraw: USDC, USDT, or XUSDC only (not BTC/ETH/other).'}, 'account': {'type': 'integer', 'description': 'Quote.Trade account/user id. Optional for preview (defaults to account init-param, QUOTE_TRADE_ACCOUNT, or 0). Required for live withdraw.'}, 'quantity': {'type': 'string', 'description': 'Scaled integer quantity as string (API format). Example: "20000000" with quantity_scale=6 means 20 USDC.'}, 'quantity_scale': {'type': 'integer', 'description': 'Decimal scale for quantity. Example: 6 for USDC.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['willSend', 'endpoint', 'requestBody', 'estimatedNotional', 'symbolAllowed', 'withinMaxNotional', 'tradingEnabled', 'credentialsPresent', 'approvalFrictionOnly', 'safety'], 'properties': {'safety': {'type': 'string', 'description': 'Preview safety notes.'}, 'endpoint': {'type': 'string', 'description': 'Target Quote.Trade order endpoint.'}, 'priceUsd': {'type': 'number', 'description': 'USD unit price used for withdraw notional.'}, 'willSend': {'type': 'boolean', 'description': 'Whether this preview would send a live order.'}, 'destination': {'type': 'string', 'description': 'Withdraw previews only: always own-wallet-login-only (no toAddress accepted).'}, 'priceSource': {'type': 'string', 'description': 'How priceUsd was obtained (stablecoin-peg|ticker|ticker-unavailable).'}, 'requestBody': {'type': 'object', 'description': 'Normalized order request body that would be posted.', 'additionalProperties': True}, 'symbolAllowed': {'type': 'boolean', 'description': 'Whether the order symbol or withdrawal asset passes its own allowlist (empty=deny-all; *=all supported).'}, 'tradingEnabled': {'type': 'boolean', 'description': 'Server-side trading enablement.'}, 'notionalWarning': {'type': 'string', 'description': 'Withdraw previews only: present when a USD price could not be resolved.'}, 'estimatedNotional': {'type': 'number', 'description': 'Estimated notional in USD (orders: price×qty; withdraws: USD price×human quantity).'}, 'estimatedQuantity': {'type': 'number', 'description': 'Withdraw human quantity only (quantity / 10^quantity_scale). Present on withdraw previews.'}, 'withinMaxNotional': {'type': 'boolean', 'description': 'Always true for a valid preview: MCP imposes no USD notional cap. This does not establish balance, margin or authorization.'}, 'credentialsPresent': {'type': 'boolean', 'description': 'Whether per-request trading credentials are present.'}, 'approvalFrictionOnly': {'type': 'boolean', 'description': 'True when approval fields are friction only.'}, 'approvalTextRequired': {'type': 'string', 'description': 'Exact approval friction text.'}, 'estimatedNotionalUsd': {'type': 'number', 'description': 'Withdraw USD notional. Present on withdraw previews when priced.'}, 'withdrawAssetAllowed': {'type': 'boolean', 'description': 'Withdraw previews only: whether the asset passes allowedWithdrawAssets.'}}, 'additionalProperties': False}
Letzte Tool-Änderungen
Ähnliche MCP-Server
The Stall
Provides pay-per-call tools for YouTube keyword research and research on stocks, crypto, DeFi, options, and macroeconomic data.
Crank Protocol
Provides non-custodial Solana and EVM tools for swaps, derivatives, lending, staking, tokenized equities, bridging, and strategy …
x402-services
Provides on-chain, trading, and AI tools for Robinhood Chain.
FortFi Treasury MCP
Provides policy-controlled crypto treasury operations across chains, including wallets, payments, token discovery, swaps, bridges…
DeltaSignal ATLAS-7
Analyzes SEC and XBRL data for crypto-related public companies, including fundamentals, issuer signals, peer comparisons, stress …
intel
Provides multi-chain market intelligence, blockchain activity metrics, trading and portfolio planning, sanctions clearance, agent…
TradingCalc MCP: Options, Forex, Risk Stats, Prediction Markets, On-Chain & Crypto Futures
Performs deterministic calculations for crypto futures, funding, leverage, liquidation, position sizing, token swaps, on-chain ri…
Market Intelligence API
Analyzes crypto and tokenized-asset markets using DEX flows, perpetual positioning, smart-money activity, token risk, market news…