WMCA MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@WMCA MCP Server삼성전자 현재가 알려줘"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
WMCA MCP Server
NH투자증권(나무증권) WMCA DLL을 MCP(Model Context Protocol) 서버로 래핑한 프로젝트입니다.
Claude Code CLI, Claude Desktop 등 MCP를 지원하는 AI 클라이언트에서 주식 시세 조회 및 주문을 자연어로 실행할 수 있습니다.
데모
사용자: 삼성전자 현재가 알려줘
Claude: 삼성전자(005930) 현재가 73,400원, 전일 대비 +800원 (13:24 기준)
사용자: 2번째 계좌 잔고 조회해줘
Claude: 계좌 20101398553 — 예수금 33,905,892원, KG이니시스 368주 보유 중Related MCP server: pykrx-mcp
아키텍처
[AI 클라이언트] [mcp_server.py] [Windows]
Claude Code ──────► FastMCP (stdio) ──────► WmcaHandler
Claude Desktop MCP 도구 정의 Win32 메시지 루프
Cursor 등 asyncio Future wmca.dll
WmcaBridge 증권사 서버핵심 흐름:
AI 클라이언트가 MCP 도구 호출 (예:
query_price("005930"))mcp_server.py가 asyncio Future를 등록하고WmcaHandler로 DLL 함수 호출WMCA DLL이 숨겨진 Win32 윈도우로 응답 메시지 전송
wmca_proc.py가 메시지를 파싱하고WmcaBridge를 통해 Future를 resolvemcp_server.py가 결과를 AI 클라이언트에 반환
요구사항
OS: Windows 전용 (Win32 API 사용)
Python: 3.9 이상
DLL: 아래 파일들이 프로젝트 루트에 있어야 합니다 (NH투자증권 별도 제공)
wmca.dll(핵심 SDK)wmca.ini(서버 접속 설정)libeay32.dll,librsa32.dll,nsldap32.dllSKComd*.dll,SKComm*.dll,sha256w32.dll,CloudNPKI.dll
DLL 파일들은 NH투자증권 개발자 센터에서 신청 후 수령합니다.
라이선스 문제로 이 저장소에는 포함되어 있지 않습니다.
설치
# 1. 저장소 클론
git clone https://github.com/your-id/wmca-mcp.git
cd wmca-mcp
# 2. 패키지 설치
pip install -r requirements.txt
# 3. 환경변수 설정
cp .env.example .env
# .env 파일을 열어 본인의 계정 정보 입력환경변수 설정 (.env)
WMCA_USER_ID=나무증권_아이디
WMCA_USER_PW=비밀번호
WMCA_CERT_PW=공인인증서_비밀번호
.env파일은.gitignore에 등록되어 있어 git에 올라가지 않습니다.
환경변수가 설정되어 있으면 서버 시작 시 자동 로그인됩니다.
실행
python mcp_server.pyMCP 클라이언트 등록
Claude Code CLI (.mcp.json)
프로젝트 루트에 .mcp.json 파일 생성:
{
"mcpServers": {
"wmca": {
"type": "stdio",
"command": "python",
"args": ["C:/절대경로/mcp_server.py"]
}
}
}MCP Inspector (테스트용)
npx @modelcontextprotocol/inspector python mcp_server.pyMCP 도구 목록
도구 | 설명 | 주요 파라미터 |
| NH투자증권 서버 로그인 |
|
| 로그인된 계좌 목록 조회 | — |
| 주식 현재가 조회 |
|
| 계좌 잔고 조회 |
|
| 매도 주문 |
|
| 실시간 시세 구독 시작 |
|
| 실시간 체결 데이터 조회 |
|
| 서버 수신 메시지 조회 |
|
| 서버 연결 해제 | — |
acc_index는get_accounts반환 목록의 순서 (1번부터 시작)
파일 구조
wmca-mcp/
├── mcp_server.py # FastMCP 서버 — MCP 도구 정의 및 진입점
├── wmca_bridge.py # asyncio ↔ Win32 스레드 브리지 (Future 관리)
├── wmca_handler.py # Win32 메시지 루프 및 DLL 호출
├── wmca_client.py # ctypes DLL 로더 및 함수 시그니처 바인딩
├── wmca_proc.py # Win32 메시지 디스패처 및 응답 파서
├── wmca_def.py # 공통 상수 및 로그인/계좌 ctypes 구조체
├── trio_inv.py # 시세/투자 데이터 ctypes 구조체 (현재가 등)
├── trio_ord.py # 주문/잔고 ctypes 구조체 (잔고조회, 매도 등)
├── app.py # PyQt5 GUI 클라이언트 (MCP 없이 직접 실행)
├── .env.example # 환경변수 템플릿 (복사 후 .env로 사용)
├── .gitignore
├── requirements.txt
└── wmca.ini # 서버 접속 설정 (git 제외, DLL과 함께 제공)ctypes 구조체 규칙
새 TR을 추가할 때 참고할 규칙입니다.
_pack_ = 1— 1바이트 정렬 필수 (DLL 전문 규격)_fieldname접미사 — 전문 구분자용 1바이트 패딩 필드입력 구조체 초기화 —
ctypes.memset(..., 0x20)(공백 0x20, 제로 아님)문자열 인코딩 —
cp949(한국어 EUC-KR)
보안 주의사항
.env파일을 절대 git에 커밋하지 마세요.DLL 파일도 라이선스 문제로 커밋하지 마세요.
주문(매도/매수) 도구는 실제 거래로 이어지므로 신중하게 사용하세요.
라이선스
MIT — 단, WMCA DLL 및 관련 바이너리는 NH투자증권 라이선스를 따릅니다.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mydream1208/wmca-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server