Claude와 Cursor를 위한 Kalshi + Polymarket MCP
Claude와 Cursor는 Dino의 네이티브 Model Context Protocol 서버를 통해 Kalshi와 Polymarket을 조회할 수 있습니다. 이 연결은 매칭된 시장을 도구로 노출합니다. 에이전트는 시장 이름을 안정적인 Dino id로 변환한 뒤, 가격 비교 뒤에 있는 정산 공시를 읽을 수 있습니다.
이 가이드는 무료 Dino 키로 MCP 클라이언트를 연결합니다. 서버는 읽기 전용입니다. 시장 데이터와 확정된 Opportunity를 반환할 뿐, 모든 거래는 각자의 거래소 계정에 남습니다.
키를 생성하고 소스 코드 밖에 보관하기
무료 API 키를 생성한 뒤, 이 서버 블록을 Claude Desktop이나 Cursor에 추가합니다. 두 클라이언트 모두 mcp-remote를 사용해 로컬 MCP 프로세스를 Dino의 Streamable HTTP 엔드포인트에 연결할 수 있습니다. 비공개 로컬 클라이언트 설정에서 자리 표시자를 교체합니다:
{
"mcpServers": {
"dino-markets": {
"command": "npx",
"args": [
"mcp-remote",
"https://api.dino.markets/v2/mcp/",
"--header",
"Authorization:Bearer ${DINO_API_KEY}"
],
"env": {
"DINO_API_KEY": "sk_live_..."
}
}
}
}
env 블록은 로컬 mcp-remote 프로세스에 DINO_API_KEY를 전달하며, header 인자는 그 값을 읽습니다. 이 클라이언트 설정에는 이제 시크릿이 포함되므로, 저장소와 공유 폴더 밖에 두고 사용자 계정으로만 접근을 제한합니다.
/v2/mcp/의 끝 슬래시는 중요합니다. 엄격한 클라이언트는 슬래시 없는 URL에서 발생하는 리다이렉트에서 실패할 수 있기 때문입니다. 설정을 저장한 뒤 클라이언트를 재시작합니다. 키가 노출되는 스크린샷은 피합니다.
구체적인 질문으로 도구 검증하기
서버가 클라이언트의 도구 목록에 나타나면, 명확한 작업 하나에 대응하는 질문을 합니다. 다음 프롬프트는 제목만으로 에이전트가 시장 정체성을 추론하게 하지 않으면서 탐색과 상세 조회 흐름을 검증합니다:
- "Dino에서 사용할 수 있는 시장 카테고리와 유효한 필터를 알려줘."
- "Kalshi와 Polymarket 전반에서 열려 있는 BTC 임계값 시장을 찾아줘."
- "첫 번째 결과를 열어서 결과 구조와 정산 리스크를 요약해줘."
- "확정된 야구 Opportunity를 찾은 다음, 첫 번째 결과 뒤에 있는 전체 Market을 조회해줘."
예상되는 도구 경로는 답변에서 확인할 수 있습니다. 카테고리 탐색은 list_categories를 호출합니다. 이름이나 주제로 조회할 때는 find_markets를 호출합니다. 전체 약관은 get_market에서 가져옵니다. 확정된 Opportunity는 find_arbitrage에서 가져오며, 반환된 market_id를 사용해 get_market을 이어서 호출해야 합니다.
가격보다 먼저 계약 조건을 읽게 하기
쓸모 있는 거래소 간 리서치 프롬프트는 에이전트에게 어떤 확인을 수행해야 하는지 알려줍니다. 시장이 두 거래소 모두에 나타날 때는 다음 형태를 사용합니다:
[topic]에 해당하는 매칭된 시장을 찾아줘. 선택한 id로 get_market을 호출해.
가격을 논의하기 전에 다음을 보고해:
- 매칭된 Market의 결과 키와 이름
- 모든 결과에 대해 두 거래소 모두 가격을 보유하고 있는지 여부
- settlement 패리티와 공시된 각 리스크
- 퍼센트 포인트 단위의 가격 차이와 priced_at
spread는 관측된 차이로 취급해. find_arbitrage가 반환한 경우에만 확정된
Opportunity라고 불러.
이 순서가 중요한 이유는, 두 리스팅이 같은 헤드라인을 공유하면서도 서로 다른 컷오프, 소스, 결과 버킷, 또는 경계 표현을 사용할 수 있기 때문입니다. Dino의 Market 상세 정보는 이러한 차이를 settlement.risks[] 아래에 담고 있습니다. signal 필드는 쌍이 전체 패리티와 리스크 게이트를 통과하지 않는 한 spread로 유지됩니다.
MCP 서버의 경계 알아두기
MCP 서버는 Dino의 매칭 카탈로그와 공개 Opportunity 리소스를 읽습니다. 거래소 계정이나 자금에는 접근할 수 없으며, 주문을 넣을 수도 없습니다. 개발자용 데이터이며 거래 또는 금융 조언이 아닙니다. watch_markets는 WebSocket 티켓과 Dino 플랜이 허용하는 채널을 반환하지만, 그 스트림을 실제로 소비하는 작업은 여전히 WebSocket 클라이언트나 공식 SDK 중 하나에서 이루어져야 합니다.
문서화된 모든 MCP 도구는 Free에서 사용할 수 있습니다. 채널 접근 권한은 플랜마다 다릅니다. Free는 선별된 sample과 status 채널을 받고, 유료 플랜은 전체 markets:* 스트림을 받습니다. 전체 인자 목록은 MCP 도구 레퍼런스를, 서버가 사용하는 신뢰도와 정산 게이트는 매칭 가이드를 참고합니다.
무료 키 생성하기 후 서버에 연결합니다. 위의 카테고리 프롬프트부터 시작합니다.
블로그의 다른 글
Python로 Kalshi와 Polymarket 모니터링하기
매칭된 Kalshi와 Polymarket 시장을 위한 Python 모니터를 만들고, 지연된 REST 스냅샷을 실시간 업데이트로 확장합니다.
Kalshi와 Polymarket 안전하게 비교하기
모든 관측 가격에 정산 리스크와 계약 차이를 함께 표시하며 Kalshi와 Polymarket 계약을 비교합니다.
기관 자금은 예측 시장에 도달했다. 원자재가 시험대다
ICE와 Tradeweb이 Polymarket과 Kalshi를 지원한다. 원자재 유동성이 기관 인프라가 실제 거래 흐름으로 이어지는지 보여줄 것이다.