Upbit

Upbit

iqaicom

Connects to Upbit cryptocurrency exchange to access real-time Korean crypto market data and execute trading operations. Supports both public market information and authenticated trading with safety controls.

Integrates with Upbit cryptocurrency exchange to provide real-time market data access and optional trading functionality with JWT authentication, order management, and configurable safety controls for Korean crypto markets.

21,173 views2Local (stdio)

What it does

  • Fetch real-time ticker data and orderbooks
  • Execute buy/sell orders with multiple order types
  • View account balances and trading positions
  • Manage cryptocurrency deposits and withdrawals
  • Track order history and trading activity
  • Create and manage withdrawal addresses

Best for

Korean crypto traders and investorsAutomated trading bot developmentMarket analysis and portfolio managementLLM-powered trading assistants
South Korea's largest crypto exchangeOptional JWT authentication for tradingBuilt-in safety controls for trading operations

About Upbit

Upbit is a community-built MCP server published by iqaicom that provides AI assistants with tools and capabilities via the Model Context Protocol. Connect easily with Upbit for live Korean crypto market data, secure trading, order management, and advanced safety cont It is categorized under finance.

How to install

You can install Upbit in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.

License

Upbit is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.

πŸ“ˆ Upbit MCP Server

npm version License: MIT

πŸ“– Overview

Fast MCP server for interacting with Upbit, South Korea's largest cryptocurrency exchange. This server provides comprehensive access to public market data and optional private trading tools including order management, deposits, and withdrawals.

By implementing the Model Context Protocol (MCP), this server allows Large Language Models (LLMs) to access real-time ticker data, orderbooks, trade history, and execute trading operations directly through their context window.

Upbit Server MCP server

✨ Features

  • Public Market Data: Access real-time ticker data, orderbook snapshots, and recent trades for any Upbit market.
  • Account Management: View account balances and positions (requires API key).
  • Order Management: Create, query, and cancel orders with support for limit, market, and price order types.
  • Deposit Operations: Check deposit eligibility, create deposit addresses, and track deposit history.
  • Withdrawal Operations: Create withdrawals, manage withdrawal addresses, and track withdrawal history.

πŸ“¦ Installation

πŸš€ Using npx (Recommended)

To use this server without installing it globally:

npx @iqai/mcp-upbit

πŸ”§ Build from Source

git clone https://github.com/IQAIcom/mcp-upbit.git
cd mcp-upbit
pnpm install
pnpm run build

⚑ Running with an MCP Client

Add the following configuration to your MCP client settings (e.g., claude_desktop_config.json).

πŸ“‹ Minimal Configuration (Public Data Only)

{
  "mcpServers": {
    "upbit": {
      "command": "npx",
      "args": ["-y", "@iqai/mcp-upbit"],
      "env": {
        "UPBIT_SERVER_URL": "https://api.upbit.com"
      }
    }
  }
}

βš™οΈ Full Configuration (With Trading Enabled)

{
  "mcpServers": {
    "upbit": {
      "command": "npx",
      "args": ["-y", "@iqai/mcp-upbit"],
      "env": {
        "UPBIT_SERVER_URL": "https://api.upbit.com",
        "UPBIT_ACCESS_KEY": "your_access_key_here",
        "UPBIT_SECRET_KEY": "your_secret_key_here",
        "UPBIT_ENABLE_TRADING": "true"
      }
    }
  }
}

πŸ” Configuration (Environment Variables)

VariableRequiredDescriptionDefault
UPBIT_SERVER_URLNoUpbit API server URLhttps://api.upbit.com
UPBIT_ACCESS_KEYFor tradingYour Upbit API access key-
UPBIT_SECRET_KEYFor tradingYour Upbit API secret key-
UPBIT_ENABLE_TRADINGFor tradingEnable private trading toolsfalse

πŸ”‘ Where to Get Upbit API Keys

  1. Create an account on Upbit if you don't already have one
  2. Go to the Upbit Developer Center
  3. Create a new API key
  4. Set appropriate permissions (read, trade, withdraw as needed)
  5. Store your API keys in the environment variables

πŸ”’ Security & Permissions

  • Keep your UPBIT_SECRET_KEY private and IP-allowlist your server in Upbit.
  • Set UPBIT_ENABLE_TRADING=true only when you intend to place/cancel orders or create withdrawals/deposit addresses.
  • Upbit permission mapping:
    • Orders: create/cancel β†’ μ£Όλ¬Έν•˜κΈ°, query/list β†’ 주문쑰회
    • Accounts/balances β†’ μžμ‚°μ‘°νšŒ
    • Withdrawals: create/cancel β†’ μΆœκΈˆν•˜κΈ°, query/list/address list β†’ 좜금쑰회
    • Deposits: create deposit address β†’ μž…κΈˆν•˜κΈ°, query/list/chance/address read β†’ μž…κΈˆμ‘°νšŒ

Documentation:

πŸ’‘ Usage Examples

πŸ“Š Market Data

  • "What is the current price of Bitcoin on Upbit (KRW-BTC)?"
  • "Show me the orderbook for Ethereum (KRW-ETH)."
  • "Get the recent trades for XRP (KRW-XRP)."

πŸ’Ό Account & Orders (Requires API Key)

  • "What are my current account balances?"
  • "Place a limit buy order for 0.01 BTC at 50,000,000 KRW."
  • "Cancel my pending order with UUID xyz123."
  • "Show me my open orders for KRW-BTC."

πŸ’³ Deposits & Withdrawals (Requires API Key)

  • "Create a deposit address for BTC."
  • "List my recent deposits."
  • "Withdraw 1 ETH to my wallet address."
  • "Check the status of my withdrawal."

πŸ› οΈ MCP Tools

CANCEL_ORDER

Cancel an existing Upbit order (requires private API)

ParameterTypeRequiredDescription
uuidstringβœ…

CANCEL_WITHDRAWAL

Cancel a digital asset withdrawal by UUID (requires private API)

ParameterTypeRequiredDescription
uuidstringβœ…

CREATE_DEPOSIT_ADDRESS

Request creation of a deposit address (requires private API)

ParameterTypeRequiredDescription
currencystringβœ…
net_typestringβœ…

CREATE_ORDER

Create an Upbit order (requires private API)

ParameterTypeRequiredDescription
marketstringβœ…
sidestringβœ…
ord_typestringβœ…
volumestring
pricestring
time_in_forcestring
smp_typestring
identifierstring

CREATE_WITHDRAWAL

Request a digital asset withdrawal (requires private API)

ParameterTypeRequiredDescription
currencystringβœ…
amountstringβœ…
addressstringβœ…
net_typestringβœ…
secondary_addressstring
transaction_typestring

GET_ACCOUNTS

Get Upbit account balances (requires private API enabled)

No parameters

GET_DEPOSIT

Get a single deposit by UUID (requires private API)

ParameterTypeRequiredDescription
uuidstringβœ…

GET_DEPOSIT_ADDRESS

Get a single deposit address for a currency and net_type (private)

ParameterTypeRequiredDescription
currencystringβœ…
net_typestringβœ…

GET_DEPOSIT_CHANCE

Get deposit availability information for a currency (private)

ParameterTypeRequiredDescription
currencystringβœ…
net_typestring

GET_ORDER

Get a single Upbit order (requires private API)

ParameterTypeRequiredDescription
uuidstring
identifierstring

GET_ORDERBOOK

Get orderbook snapshot for a given market

ParameterTypeRequiredDescription
marketstringβœ…Upbit market code, e.g., KRW-BTC

GET_ORDERS

List Upbit orders (requires private API)

ParameterTypeRequiredDefaultDescription
marketstring
statestring"wait"
pageinteger1
limitinteger100

GET_TICKER

Get the latest ticker data from Upbit for a single market

ParameterTypeRequiredDescription
marketstringβœ…Upbit market code, e.g., KRW-BTC

GET_TRADES

Get recent trades for a market

ParameterTypeRequiredDescription
marketstringβœ…Upbit market code, e.g., KRW-BTC

GET_WITHDRAWAL

Get a single withdrawal by UUID (requires private API)

ParameterTypeRequiredDescription
uuidstringβœ…

LIST_DEPOSIT_ADDRESSES

List deposit addresses for all currencies (requires private API)

No parameters

LIST_DEPOSITS

List deposits (requires private API)

ParameterTypeRequiredDefaultDescription
currencystring
statestring
pageinteger1
limitinteger50

LIST_WITHDRAWAL_ADDRESSES

List registered withdrawal-allowed addresses (requires private API)

No parameters

LIST_WITHDRAWALS

List withdrawals (requires private API)

ParameterTypeRequiredDefaultDescription
currencystring
statestring
pageinteger1
limitinteger50

πŸ‘¨β€πŸ’» Development

πŸ—οΈ Build Project

pnpm run build

πŸ‘οΈ Development Mode (Watch)

pnpm run watch

βœ… Linting & Formatting

pnpm run lint
pnpm run format

πŸ§ͺ Testing with MCP Inspector

pnpm run build
npx @modelcontextprotocol/inspector node dist/index.js

πŸ“ Project Structure

  • src/tools/: Individual tool definitions
  • src/lib/: Configuration, HTTP client, and authentication utilities
  • src/index.ts: Server entry point

πŸ“š Resources

⚠️ Disclaimer

This project interacts with the Upbit cryptocurrency


README truncated. View full README on GitHub.

Alternatives

Related Skills

Browse all skills
finance-skills

Production-ready financial analyst skill with ratio analysis, DCF valuation, budget variance analysis, and rolling forecast construction. 4 Python tools (all stdlib-only). Works with Claude Code, Codex CLI, and OpenClaw.

55
news-aggregator-skill

Comprehensive news aggregator that fetches, filters, and deeply analyzes real-time content from 8 major sources: Hacker News, GitHub Trending, Product Hunt, 36Kr, Tencent News, WallStreetCN, V2EX, and Weibo. Best for 'daily scans', 'tech news briefings', 'finance updates', and 'deep interpretations' of hot topics.

21
finance-manager

Comprehensive personal finance management system for analyzing transaction data, generating insights, creating visualizations, and providing actionable financial recommendations. Use when users need to analyze spending patterns, track budgets, visualize financial data, extract transactions from PDFs, calculate savings rates, identify spending trends, generate financial reports, or receive personalized budget recommendations. Triggers include requests like "analyze my finances", "track my spending", "create a financial report", "extract transactions from PDF", "visualize my budget", "where is my money going", "financial insights", "spending breakdown", or any finance-related analysis tasks.

10
personal-finance-beancount

Professional personal finance advisor specializing in plain-text accounting with Beancount and Fava. Use when users need help with: (1) Analyzing spending habits and financial patterns from Beancount files, (2) Creating or understanding Beancount transactions and syntax, (3) Financial planning, budgeting, and investment advice, (4) Interpreting Fava reports and creating custom queries, (5) Organizing chart of accounts, (6) Double-entry bookkeeping principles, (7) Personal finance optimization and wealth building strategies. Provides analysis, education, and personalized recommendations while maintaining professional standards.

7
stock-analysis

Analyze stocks and cryptocurrencies using Yahoo Finance data. Supports portfolio management (create, add, remove assets), crypto analysis (Top 20 by market cap), and periodic performance reports (daily/weekly/monthly/quarterly/yearly). 8 analysis dimensions for stocks, 3 for crypto. Use for stock analysis, portfolio tracking, earnings reactions, or crypto monitoring.

7
tavily-search-pro

Tavily AI search platform with 5 modes: Search (web/news/finance), Extract (URL content), Crawl (website crawling), Map (sitemap discovery), and Research (deep research with citations). Use for: web search with LLM answers, content extraction, site crawling, deep research.

5