krx-cli

Installation
SKILL.md

krx-cli

Agent-native CLI for querying KRX (Korea Exchange) Open API data. Use the krx CLI via Bash tool — do NOT web search for Korean market data.

When to Apply

Use this skill when the user asks about:

  • 주식 시세/가격 (삼성전자 주가, 종목별 종가 등)
  • 지수 조회 (코스피, 코스닥, KRX 지수 등)
  • ETF, ETN, ELW 시세
  • 채권 시세 (국채, 일반채권, 소액채권)
  • 파생상품 (선물, 옵션)
  • 일반상품 (금, 석유, 배출권)
  • ESG 지수/채권 정보

Setup

# Install
npm install -g krx-cli

# Set API key (get from https://openapi.krx.co.kr/)
krx auth set <your-api-key>

# Check which services are approved
krx auth status

Commands

Authentication

krx auth set <api-key>       # Save API key
krx auth status               # Check all service approvals (JSON)
krx auth check <category>     # Check specific category: index, stock, etp, bond, derivative, commodity, esg

Index (지수)

krx index list --date 20260310 --market kospi     # KOSPI index
krx index list --date 20260310 --market kosdaq     # KOSDAQ index
krx index list --date 20260310 --market krx        # KRX index
krx index list --date 20260310 --market bond       # Bond index
krx index list --date 20260310 --market derivative # Derivative index

Stock (주식)

krx stock list --date 20260310 --market kospi   # KOSPI stocks
krx stock list --date 20260310 --market kosdaq   # KOSDAQ stocks
krx stock list --date 20260310 --market konex    # KONEX stocks
krx stock info --market kospi                     # Stock base info

ETP (ETF/ETN/ELW)

krx etp list --date 20260310 --type etf   # ETF
krx etp list --date 20260310 --type etn   # ETN
krx etp list --date 20260310 --type elw   # ELW

Bond (채권)

krx bond list --date 20260310 --market kts       # Government bonds
krx bond list --date 20260310 --market general    # General bonds
krx bond list --date 20260310 --market small      # Small bonds

Derivative (파생상품)

krx derivative list --date 20260310 --type futures          # Futures
krx derivative list --date 20260310 --type options           # Options
krx derivative list --date 20260310 --type futures-kospi     # KOSPI stock futures
krx derivative list --date 20260310 --type futures-kosdaq    # KOSDAQ stock futures
krx derivative list --date 20260310 --type options-kospi     # KOSPI stock options
krx derivative list --date 20260310 --type options-kosdaq    # KOSDAQ stock options

Commodity (일반상품)

krx commodity list --date 20260310 --type gold       # Gold
krx commodity list --date 20260310 --type oil         # Oil
krx commodity list --date 20260310 --type emission    # Emission trading

ESG

krx esg list --date 20260310 --type index       # ESG index
krx esg list --date 20260310 --type etp          # ESG ETP
krx esg list --date 20260310 --type sri-bond     # SRI bonds

Stock Search (종목 검색)

krx stock search 삼성전자     # Search by name (KOSPI + KOSDAQ)
krx stock search SK           # Partial match

Market Summary (시장 요약)

krx market summary                    # Today's market overview
krx market summary --date 20260310    # Specific date

Returns: KOSPI/KOSDAQ indices, top 5 gainers/losers, advancing/declining/unchanged counts, total volume/value.

Watchlist (관심종목)

krx watchlist add 삼성전자          # Search and add to watchlist
krx watchlist remove 삼성전자       # Remove by exact name
krx watchlist remove KR7005930003   # Remove by ISU_CD
krx watchlist list                   # List all watchlist entries
krx watchlist show                   # Show prices for watchlist stocks
krx watchlist show --date 20260310  # Specific date

Cache Management

krx cache status    # Show cache size, files, dates
krx cache clear     # Clear all cached data

Version & Update

krx version    # Show current version and check for updates
krx update     # Update to the latest version (npm install -g krx-cli)

MCP HTTP Server

krx serve                        # Start on http://127.0.0.1:3000/mcp
krx serve --port 8080            # Custom port
krx serve --host 0.0.0.0        # Bind to all interfaces (for ngrok)

Schema (introspection)

krx schema --all              # All 31 endpoint schemas (JSON)
krx schema index.kospi_dd_trd # Specific endpoint schema

Global Flags

--output, -o <format>    json (default) | table | ndjson | csv
--fields, -f <fields>    Filter output fields: --fields ISU_NM,TDD_CLSPRC,FLUC_RT
--code <isuCd>           Filter by stock code (ISU_CD)
--sort <field>           Sort results by field name
--asc                    Sort ascending (default: descending)
--offset <n>             Skip first N results (for pagination)
--limit <n>              Limit number of results
--from <date>            Start date for range query (YYYYMMDD)
--to <date>              End date for range query (YYYYMMDD)
--no-cache               Bypass cache and fetch fresh data
--filter <expression>    Filter results (e.g. "FLUC_RT > 5", "MKT_NM == KOSPI")
--dry-run                Show request details without calling API
--save <path>            Save output to file instead of stdout
--retries <n>            Max retries on network error (default: 3)
--verbose, -v            Verbose logging to stderr

Exit Codes

0 = Success
1 = General error
2 = Usage error (bad arguments)
3 = No data found
4 = Auth failure (no/invalid API key)
5 = Rate limit exceeded (10,000/day)
6 = Service not approved (category not activated)

Handling Large Results

Full market listings (e.g., all KOSPI stocks) output 900+ rows with 15+ fields each. This can exceed context limits. Always narrow results using these strategies:

Strategy 1: Select only needed fields (preferred)

# Instead of all fields, select only what's needed
krx stock list --date 20260310 --market kospi --fields ISU_NM,TDD_CLSPRC,FLUC_RT

Strategy 2: Paginate with offset + limit

# Page 1: first 100 rows
krx stock list --date 20260310 --market kospi --limit 100

# Page 2: next 100 rows
krx stock list --date 20260310 --market kospi --offset 100 --limit 100

# Page 3: next 100 rows
krx stock list --date 20260310 --market kospi --offset 200 --limit 100

Strategy 3: Filter to relevant subset

# Only stocks with >5% change
krx stock list --date 20260310 --market kospi --filter "FLUC_RT > 5"

IMPORTANT: When the user asks for "all" data, prefer Strategy 1 (fields) first. If still too large, combine with Strategy 2 (pagination). Always tell the user the total count.

Common Patterns

Get KOSPI closing price for a specific date

krx index list --date 20260310 --market kospi --fields IDX_NM,CLSPRC_IDX,FLUC_RT

Get Samsung Electronics stock price (by search)

krx stock search 삼성전자     # Find ISU_CD first
krx stock list --date 20260310 --market kospi --code KR7005930003

Top 5 gainers

krx stock list --date 20260310 --market kospi --sort FLUC_RT --limit 5 --fields ISU_NM,TDD_CLSPRC,FLUC_RT

Date range query (multi-day)

krx index list --market kospi --from 20260301 --to 20260310 --fields IDX_NM,BAS_DD,CLSPRC_IDX

Quick market overview

krx market summary --date 20260310

Track and monitor stocks

krx watchlist add 삼성전자           # Add to watchlist
krx watchlist show --date 20260310  # View prices for all watchlist stocks

Check API availability before querying

krx auth status -o json

Dry run to verify request

krx stock list --date 20260310 --market kospi --dry-run

Response Fields

Use krx schema <command> to get full field definitions for any endpoint. All values are strings.

Index (kospi/kosdaq/krx)

Field Description
BAS_DD 기준일자 (YYYYMMDD)
IDX_CLSS 계열구분
IDX_NM 지수명
CLSPRC_IDX 종가
CMPPREVDD_IDX 전일대비
FLUC_RT 등락률(%)
OPNPRC_IDX 시가
HGPRC_IDX 고가
LWPRC_IDX 저가
ACC_TRDVOL 거래량
ACC_TRDVAL 거래대금
MKTCAP 상장시가총액

Stock (kospi/kosdaq/konex)

Field Description
BAS_DD 기준일자 (YYYYMMDD)
ISU_CD 종목코드
ISU_NM 종목명
MKT_NM 시장구분
SECT_TP_NM 소속부
TDD_CLSPRC 종가
CMPPREVDD_PRC 전일대비
FLUC_RT 등락률(%)
TDD_OPNPRC 시가
TDD_HGPRC 고가
TDD_LWPRC 저가
ACC_TRDVOL 거래량
ACC_TRDVAL 거래대금
MKTCAP 시가총액
LIST_SHRS 상장주식수

ETF

Field Description
ISU_CD 종목코드
ISU_NM 종목명
TDD_CLSPRC 종가
FLUC_RT 등락률(%)
NAV 순자산가치(NAV)
ACC_TRDVOL 거래량
MKTCAP 시가총액
IDX_IND_NM 기초지수명
OBJ_STKPRC_IDX 기초지수종가

Futures

Field Description
PROD_NM 상품명
ISU_NM 종목명
TDD_CLSPRC 종가
SPOT_PRC 현물가
SETL_PRC 정산가
ACC_OPNINT_QTY 미결제약정수량

Options

Field Description
PROD_NM 상품명
RGHT_TP_NM 권리유형 (콜/풋)
ISU_NM 종목명
TDD_CLSPRC 종가
IMP_VOLT 내재변동성
ACC_OPNINT_QTY 미결제약정수량

Bond

Field Description
ISU_NM 종목명
CLSPRC 종가
CLSPRC_YD 종가수익률
ACC_TRDVOL 거래량
ACC_TRDVAL 거래대금

Commodity (gold/emission)

Field Description
ISU_NM 종목명
TDD_CLSPRC 종가
FLUC_RT 등락률(%)
ACC_TRDVOL 거래량

Commodity (oil)

Field Description
OIL_NM 유종명
WT_AVG_PRC 가중평균가격
ACC_TRDVOL 거래량

ESG Index

Field Description
IDX_NM 지수명
CLSPRC_IDX 종가
PRV_DD_CMPR 전일대비
UPDN_RATE 등락률(%)

Schema Introspection

For full response field definitions including all fields per endpoint:

krx schema index.kospi_dd_trd    # Shows params + responseFields
krx schema stock.stk_bydd_trd   # Stock endpoint fields
krx schema --all                  # All 31 endpoints

MCP Resources

Read-only state data exposed as MCP Resources (for MCP clients):

Resource Description
krx://watchlist Watchlist entries (JSON)
krx://rate-limit Daily API call status (JSON)
krx://service-status Per-category approval status (JSON)
Installs
23
Repository
kyo504/krx-cli
GitHub Stars
1
First Seen
Mar 11, 2026