MCP server for the Pacifica perpetual-futures exchange API
16 tools with basic schemas and descriptions, but significant gaps in parameter documentation and output schema clarity. Most tools have 1-4 parameters with type info, but descriptions are minimal (10-50 chars) and lack actionable guidance. No error handling patterns, no output schemas documented, no tool annotations. Naming is verb-first and clear (getMarkets, createOrder, cancelAllOrders), but parameter descriptions are sparse and many lack format/constraint details. No evidence of idempotency hints, confirmation patterns for destructive ops, or recovery guidance.
Cancel all orders for specified symbols
Cancel an existing order
Cancel a stop order
Create a new order with specified parameters
Create a stop order with nested stop_order object containing stop_price and optional limit_price
Deposit USDC into exchange account
Get account information including balance and positions
Get funding payment history for an account
No output schemas documented. LLMs cannot infer what fields to expect from tool responses, forcing them to guess at downstream field names and risk broken tool chains.
Parameter descriptions are minimal (10-50 chars) and lack format/constraint details. E.g., 'interval' for getKline lists valid values in description but should use enum constraint. 'price' and 'amount' in createOrder lack decimal format guidance.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 48 | 2026-07-28+ | v2 |
Get kline/candlestick data for a symbol with specified interval and time range
Get list of available markets
Get order history by order ID
Get open orders for an account
Get portfolio history for an account with specified time range
Get position/trade history for an account
Get spot token balance for an account
Request test tokens from the faucet (testnet only)
No error handling or recovery guidance. Tools lack descriptions of failure modes, retryability, or what the LLM should do if a call fails (e.g., 'Account not found, try getAccountInfo first').
Destructive operations (createOrder, cancelOrder, cancelAllOrders, deposit) lack confirmation or dry-run patterns. No guidance on idempotency or retry safety, agents may accidentally double-execute.
Tool descriptions do not explain when to use each tool vs. similar ones. E.g., getOrders vs. getOrderHistoryById, when should an LLM call each? No dependency hints or discovery guidance.