Fast MCP server for interacting with Upbit (public market data and optional private trading tools).
Server has 19 tools with consistent naming (verb_noun pattern) and complete input schemas. All tools have descriptions and parameter types. However, descriptions are minimal (10-50 chars, well below the 194-char baseline), lack context on WHEN to use tools, and omit error recovery guidance. Output schemas are not documented. No tool annotations (readOnlyHint/destructiveHint) despite 5 destructive/irreversible tools. Parameter descriptions are sparse. Error handling is absent from visible code.
Cancel an existing Upbit order (requires private API)
Cancel a digital asset withdrawal by UUID (requires private API)
Request creation of a deposit address (requires private API)
Create an Upbit order (requires private API)
Request a digital asset withdrawal (requires private API)
Get Upbit account balances (requires private API enabled)
Descriptions are critically short (10-50 chars vs 194-char baseline). Missing WHEN to use, prerequisites, and return value guidance. LLMs cannot distinguish between similar tools (GET_DEPOSIT vs GET_DEPOSIT_ADDRESS) or understand consequences.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite 5 destructive/irreversible tools (CANCEL_ORDER, CANCEL_WITHDRAWAL, CREATE_ORDER, CREATE_WITHDRAWAL, CREATE_DEPOSIT_ADDRESS). Agents cannot distinguish safe from dangerous operations.
Output schemas not documented in source. LLMs cannot plan downstream tool calls or extract required fields (e.g., order_id from CREATE_ORDER for GET_ORDER lookup).
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 57 | 2026-07-28+ | v2 |
Get a single deposit by UUID (requires private API)
Get a single deposit address for a currency and net_type (private)
Get deposit availability information for a currency (private)
Get a single Upbit order (requires private API)
Get orderbook snapshot for a given market
List Upbit orders (requires private API)
Get the latest ticker data from Upbit for a single market
Get recent trades for a market
Get a single withdrawal by UUID (requires private API)
List deposits (requires private API)
List all deposit addresses (requires private API)
List withdrawals (requires private API)
List all withdrawal addresses (requires private API)
Parameter descriptions are minimal or absent. 'currency' appears in 8 tools with no description of format (e.g., 'BTC', 'ETH'). 'net_type' undefined (Ethereum mainnet? Polygon?). LLMs will hallucinate invalid values.
No error handling or recovery guidance visible. Destructive operations (CANCEL_ORDER, CREATE_WITHDRAWAL) lack confirmation/dry-run patterns. No guidance on retryable vs fatal errors.