AI 코딩 어시스턴트

AI 코딩 어시스턴트란?

DB증권 Open API 코드 어시스턴트(MCP 서버)를 설치하고 Claude Desktop 에 연동해, 자연어로 DB증권 API 코드를 작성하는 전 과정을 안내합니다.



1

개요

DB증권 Open API 코드 어시스턴트는 AI 앱(Claude 등)에 연결하는 MCP 서버입니다. AI 가 DB증권 Open API 의 실제 예제 코드·명세·문서를 근거로 사용자 맞춤 코드를 작성하도록 돕습니다. MCP 개념은 MCP 소개 페이지를 참고하세요.


[ 동작 원리 ] 사용자 ──질문──▶ AI 앱 ──도구 호출──▶ MCP 서버 ──인덱싱(읽기)──▶ examples/ · docs/ ◀─맞춤코드─ (Claude 등) ◀──예제/문서── (샘플코드) ▲ │ 서버 켤 때 git pull GitHub 저장소
구성 요소
  • examples/ — 실행 가능한 표준 예제 코드 (국내·해외 주식/선물옵션/채권/실시간 등)
  • docs/ — 코드 규약·오류코드·호출 한도(TPS)·모의투자 지원 매트릭스
  • mcp_server/ — 위 자료를 인덱싱해 AI 에게 제공하는 MCP 서버 본체
제공 도구 (7개)
도구 하는 일
list_api_groups API 그룹(도메인) 목록과 그룹별 개수.모의투자 지원 수
search_apis 키워드.TR코드.그룹으로 API 검색
get_api_spec 엔드포인트.TPS.요청(In).응답(Out) 파라미터 명세
get_sample_code 해당 API의 실행 가능한 파이썬 샘플코드 원문
get_setup_guide 설치.설정.토큰 발급.실행 시작 가이드
2

사용 전 설치사항 (요구사항)

준비물 설명 확인 방법
Python 3.10+ 샘플코드·MCP 서버 실행 python --version
Git 코드 내려받기·자동 동기화 git --version
DB증권 앱키 Open API 서비스 신청 후 발급(앱키/시크릿) 포털 마이페이지
AI 앱 (택1) Claude Desktop · Claude Code · Cursor 등 MCP 지원 앱 앱 설치
💡 Python 이 없다면 python.org/downloads 에서 설치하세요. Windows 는 설치 화면의 “Add Python to PATH” 체크박스를 꼭 켜야 합니다.
3

설치 및 설정

STEP 1 · 샘플코드 내려받기

GitHub 저장소를 git clone 으로 받습니다. (자동 동기화 기능을 쓰려면 ZIP 이 아닌 git clone 이어야 합니다.)


https://github.com/DBsecurities/dbsec-open-api.git
cd dbsec-open-api

STEP 2 · 설정 파일(config.yaml) 만들기

저장소 루트의 config.yaml.example 을 복사해 config.yaml 로 만든 뒤 앱키를 채웁니다.


# Windows Copy-Item config.yaml.example config.yaml
# macOS / Linux cp config.yaml.example config.yaml
auth:
    vtl_app_key: "모의투자_앱키" # 먼저 여기서 테스트!
    vtl_app_secret: "모의투자_시크릿"
    prd_app_key: "실전_앱키"
    prd_app_secret: "실전_시크릿"

environment:
    base_url: "https://openapi.dbsec.co.kr:8443"
    mode: "demo" # demo(모의투자) 또는 production(실전). 처음엔 반드시 demo!
⚠️ 처음에는 반드시 mode: "demo"(모의투자) 로 시작하세요. 주문 API 는 실전에서 실제 매매가 체결됩니다.
config.yaml.gitignore에 등록되어 GitHub 에 올라가지 않습니다(앱키 보호).

STEP 3 · MCP 서버 의존성 설치 (가상환경 권장)

서버는 mcp_server/폴더에 있습니다.
가상환경(.venv)을 만들고 의존성(mcp, pyyaml)을 설치합니다.


# Windows    cd mcp_server
   python -m venv .venv
   .\.venv\Scripts\python -m pip install -r requirements.txt
   cd ..

# macOS / Linux    cd mcp_server
   python3 -m venv .venv
   .venv/bin/pip install -r requirements.txt
   cd ..

설치가 끝나면 서버가 정상 동작하는지 한 번 켜 봅니다(입력 대기 상태가 정상 — Ctrl+C 로 종료):


# Windows mcp_server\.venv\Scripts\python mcp_server\run_server.py
✅ 로그에 indexed_apis=169 groups=19 비슷한 줄이 보이면 정상입니다. 여기서 사용한 python 경로를 다음 단계 연동에 그대로 사용합니다.
4

Claude Desktop 연동하기

① 설정 파일 열기

Claude Desktop 메뉴 -> 설정(Settings) -> 개발자(Developer) -> 설정 편집을 누르거나,
아래 경로의 설정 파일을 엽니다(없으면 새로 만듭니다).

Windows %APPDATA%\Claude\claude_desktop_config.json
macOS ~/Library/Application Support/Claude/claude_desktop_config.json

② 서버 등록 내용 붙여넣기

아래 JSON 을 넣고 저장합니다.
경로는 반드시 본인 PC 의 절대경로
로 바꾸고, Windows 디렉토리 경로는 / 로 적습니다.
commandSTEP 3 의 .venv python 을 가리켜야 합니다.
보다 상세한 설명은 https://github.com/DBsecurities/dbsec-open-api/tree/main/mcp_server 참고 부탁드립니다.


{
    "mcpServers": {
      "dbsec-code-assistant": {
        "command": "python",
        "args": ["C:/절대경로/dbsec-open-api/mcp_server/run_server.py"],
        "env": {
          "DBSEC_MCP_GIT_BRANCH": "main",
        }
      }
    }
}
💡 macOS·Linux 는 command/절대경로/mcp_server/.venv/bin/python로, args["/절대경로/mcp_server/run_server.py"]로 바꿉니다.
연동이 안 될 때
  • command(가상환경 파이썬)와 args(run_server.py) 경로가 모두 실제 존재하는 절대경로인지 확인하세요.
  • 의존성 설치를 그 .venv 파이썬으로 했는지 확인하세요. (다른 파이썬에 설치하면 모듈을 못 찾습니다.)
  • JSON 문법(따옴표·쉼표)이 올바른지 확인하세요.

③ 완전 종료 후 재시작

Claude Desktop 을 완전히 종료(트레이/백그라운드 포함)한 뒤 다시 실행합니다.
파일 > 설정 > 개발자 도구에 등록한 dbsec_code_assistant 서버가 running 상태이면 연동 성공입니다.


📎 다른 AI 앱도 동일한 방식
Claude Code(CLI): claude mcp add dbsec-openapi-assistant -- "(.venv python 경로)" "(run_server.py 경로)" 로 등록.
Cursor: 설정 → MCP → Add new server 에서 위와 동일한 JSON 입력.
5

사용법

AI 앱 채팅창에 자연어로 요청하면 됩니다. AI 가 알아서 도구를 호출해 예제를 찾고, 당신의 요구에 맞춰 코드를 만들어 줍니다.

예시 프롬프트
삼성전자 현재가를 조회하는 파이썬 코드 만들어줘.”
국내주식 시장가 매수 주문 예제를 1주 매수로 바꿔줘. 모의투자로 안전하게.”
실시간 호가를 구독하는 코드가 필요해. KODEX200 으로.”
“해외주식 애플(AAPL) 잔고/증거금 조회 코드 알려줘.”
“이 주문 API 의 오류코드호출 한도(TPS) 알려줘.”
실전 흐름 예시
            나: "국내주식 현재가 조회 코드를 만들어줘. 종목은 삼성전자."

            Claude:
              1) search_apis("현재가")        → kr_stock_inquire_price (TR: PRICE) 발견
              2) get_api_spec("PRICE")        → 요청(InputIscd1 등)·응답(Prpr 등) 파라미터 확인
              3) get_sample_code("PRICE")     → 검증된 샘플코드를 가져와
              4) 삼성전자(005930)로 채운 정확한 코드를 작성

생성된 코드는 config.yaml 이 있는 저장소 폴더에서 바로 실행할 수 있습니다. 샘플코드가 업데이트되면 AI 앱만 재시작하면 최신 내용이 반영됩니다.


⚠️ 안전 수칙
  • 항상 모의투자(demo) 에서 먼저 테스트하세요. 주문 API 는 실제 매매가 체결됩니다.
  • 앱키/시크릿은 코드에 직접 쓰지 말고 config.yaml 에만 두세요.
  • 생성된 코드는 반드시 직접 검토 후 실행하세요. 매매 손실·오작동의 책임은 사용자에게 있습니다.
  • API 별 호출 한도(TPS)를 지키세요.
⚠️ API별 호출 한도 확인
  • AI에게 질문 - 예: "kr_stock_inquire_price의 TPS 알려줘" -> get_api_spec응답의 TPS 항목에서 확인됩니다.
  • 일람표에서 직접 확인 - 저장소의 docs/api_support_matrix.md TPS 컬럼 에 전체 API의 한도가 정리되어 있습니다.
간단 문제 해결
증상 해결
도구가 안 보임 설정 JSON 의 절대경로·역슬래시(\\) 확인 후 앱 완전 종료→재시작
ModuleNotFoundError command 가 .venv 의 python 을 가리키는지 확인, 의존성 재설치
config.yaml 없음 STEP 2 수행(example 복사 + 키 입력)
토큰 발급 실패 앱키 오타, mode 와 키 짝(demo↔vtl / production↔prd) 일치 확인
최신 코드 반영 안 됨 AI 앱 재시작(서버는 켜질 때 동기화)