피드로 돌아가기
Dev.toBackend
원문 읽기
I Gave Claude the Ability to Trade on a DEX. Here's How It Works
Claude AI 에이전트가 Casper DEX에서 private key를 로컬에 보관한 채로 swap 트랜잭션을 원격 빌드 후 로컬 서명·실행하는 무보관 아키텍처 구현
AI 요약
Context
DeFi MCP 서버는 읽기 전용(시세 조회만 가능) 또는 보관형(private key 제출 필수) 두 가지만 지원했다. 읽기 전용은 실제 거래를 실행할 수 없고, 보관형은 지갑이 draining될 수 있는 신뢰 위험을 안고 있다.
Technical Solution
- 원격 서버와 로컬 서명자 분리: remote MCP 서버가 unsigned 트랜잭션 JSON을 생성하고, 로컬 머신의 signer가 private key로 서명한 후 remote 서버에 제출
- 14개 도구를 3개 카테고리로 구성: 시장 데이터 조회(get_tokens, get_pairs, get_quote 등 7개), 트랜잭션 빌드(build_swap, build_approve_token, build_add_liquidity, build_remove_liquidity), 로컬 서명 및 체인 제출(sign_deploy, submit_transaction)
- MCP 설정에서 두 서버 구성: cspr-trade(원격 URL 기반)와 cspr-signer(로컬 npx 커맨드, CSPR_TRADE_KEY_PATH 환경변수로 PEM 키 경로 지정)
- 트랜잭션 플로우: 에이전트가 remote server로 quote 요청 → remote server가 unsigned transaction JSON 반환 → 에이전트가 로컬 signer로 sign_deploy 호출 → 서명된 deploy를 remote server의 submit_transaction으로 체인 제출
- 자체 호스팅 및 테스트넷 지원: stdio 모드로 전체 서버를 로컬 머신에서 실행 가능하며, CSPR_TRADE_NETWORK 환경변수로 testnet 전환 가능
Key Takeaway
AI 에이전트가 블록체인과 상호작용할 때 "private key를 원격 서버에 맡기지 않으면서도 거래를 실행할 수 있는가"라는 설계 문제는 read-local-sign-local 아키텍처 패턴으로 해결 가능하다. 이 패턴은 Casper에 한정되지 않으며 모든 블록체인이 직면할 문제다.
실천 포인트
DeFi 에이전트를 개발하는 팀에서 에이전트가 DEX와 거래할 때 private key를 로컬 환경에서만 관리하려면, 트랜잭션 구성(unsigned JSON 생성)과 서명(PEM 키 사용) 단계를 물리적으로 분리된 MCP 서버로 구현하면 보관 위험 없이 end-to-end 거래 자동화가 가능하다.