Upbit MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| UPBIT_ACCESS_KEY | No | Your Upbit API access key (Required for trading functionality) | |
| UPBIT_SECRET_KEY | No | Your Upbit API secret key (Required for trading functionality) | |
| UPBIT_SERVER_URL | No | Upbit API server URL | https://api.upbit.com |
| UPBIT_ENABLE_TRADING | No | Enable private trading tools (e.g., 'true') | false |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
| logging | {} |
| completions | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| GET_TICKERB | Get the latest ticker data from Upbit for a single market |
| GET_ORDERBOOKB | Get orderbook snapshot for a given market |
| GET_TRADESC | Get recent trades for a market |
| GET_ACCOUNTSA | Get Upbit account balances (requires private API enabled) |
| CREATE_ORDERC | Create an Upbit order (requires private API) |
| GET_ORDERSC | List Upbit orders (requires private API) |
| GET_ORDERC | Get a single Upbit order (requires private API) |
| CANCEL_ORDERB | Cancel an existing Upbit order (requires private API) |
| LIST_WITHDRAWAL_ADDRESSESA | List registered withdrawal-allowed addresses (requires private API) |
| CREATE_WITHDRAWALC | Request a digital asset withdrawal (requires private API) |
| GET_WITHDRAWALB | Get a single withdrawal by UUID (requires private API) |
| LIST_WITHDRAWALSC | List withdrawals (requires private API) |
| CANCEL_WITHDRAWALB | Cancel a digital asset withdrawal by UUID (requires private API) |
| GET_DEPOSIT_CHANCEC | Get deposit availability information for a currency (private) |
| CREATE_DEPOSIT_ADDRESSC | Request creation of a deposit address (requires private API) |
| GET_DEPOSIT_ADDRESSC | Get a single deposit address for a currency and net_type (private) |
| LIST_DEPOSIT_ADDRESSESA | List deposit addresses for all currencies (requires private API) |
| GET_DEPOSITA | Get a single deposit by UUID (requires private API) |
| LIST_DEPOSITSC | List deposits (requires private API) |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 19 tools
Each tool maps to a clearly distinct action and resource: market data, orders, deposits, and withdrawals are all separated. The similar-sounding pairs like GET_DEPOSIT vs GET_DEPOSIT_ADDRESS describe different objects, and GET_ORDER vs GET_ORDERS clearly distinguish single vs list operations.
All tool names use UPPER_SNAKE_CASE with a consistent VERB_NOUN pattern: LIST for collections, GET for single items, and CREATE/CANCEL for lifecycle actions. There is no mixing of camelCase or inconsistent verb styles.
At 19 tools, the server is slightly above the typical 3-15 tool sweet spot, but the count is justified by the breadth of exchange functionality: market data, orders, deposits, deposit addresses, and withdrawals. Each tool appears useful and non-redundant.
Core workflows are well covered: market reads, order lifecycle, deposit lifecycle, withdrawal lifecycle, and address management. Minor gaps include no market listing or candlestick/historical data endpoint and no withdrawal-chance check, but these are workable gaps rather than critical dead ends.