Labsco
MCP SERVER

Toss Invest

by scjang01

Ask about Korean and US stock prices, your Toss Securities holdings and your open orders in plain language — with order placement switched off until you turn it on.

Trading Execution & BrokerageVerified
Summary
Market data and account reads by default; placing real money at risk takes several deliberate switches.

Read access covers both Korean and US markets — prices, order books, candles, calendars — alongside your holdings, buying power and order history. Trading is a separate decision, and the design assumes you might not have meant it: toss_create_order, toss_modify_order and toss_cancel_order only appear with TOSSINVEST_ENABLE_TRADING=true, each call still needs confirmOrderAction: true, and sells and market orders stay blocked until TOSSINVEST_ALLOW_SELL_ORDERS and TOSSINVEST_ALLOW_MARKET_ORDERS are turned on. There is no paper-trading environment behind any of it.

What it is

A local server over the Toss Securities Open API. It runs on your own machine with your API key, covering market data and account reads; the order tools are not registered unless you enable them.

What you get
  • Current prices for up to 200 comma-separated KRX or US symbols in one call, and master data for the same
  • Order book, recent trades, and 1-minute or daily OHLCV candles for a single symbol
  • Upper and lower price limits, and the buy warning flags on a symbol
  • KRW/USD exchange rate, optionally at a given moment
  • Korean and US market calendars with session hours for a given date
  • Account reads: the accounts your credentials can see, holdings, buying power in KRW or USD, sellable quantity for a symbol, and commission rates
  • Order history searched by status, symbol, date range and cursor, plus one specific order fetched by its ID
Requirements

A Toss Securities account with Open API access: issue an API Key and Secret Key from the Open API screen in Toss WTS and pass them as TOSSINVEST_API_KEY and TOSSINVEST_SECRET_KEY — the server will not start without both. Your machine's public IP has to be on the allowed-IP list in the same screen, or every call fails. Node.js v20 or newer; run it with npx tossinvest-mcp from the npm package tossinvest-mcp, currently 0.2.0, over stdio. OAuth tokens are issued internally and refreshed 60 seconds before they expire. Account-scoped calls default to accountSeq 1; TOSSINVEST_ACCOUNT picks a different one. There is no sandbox environment for this API.

Setup effort

One command plus a key — npx tossinvest-mcp, then supply credentials