MCP 서버
네이티브 Model Context Protocol 서버로, 코딩 에이전트가 클라이언트 코드를 작성하지 않고도 매칭 피드와 실시간 기회를 읽을 수 있습니다. 모든 플랜에서 무료입니다.
이 API는 네이티브 Model Context Protocol 서버이기도 합니다. Claude나 Cursor 같은 코딩 에이전트가 클라이언트 코드 없이 매칭 피드, 기회, 나머지 카탈로그를 툴로 호출할 수 있습니다. 서버는 모든 플랜에서 무료입니다: 툴 목록은 모든 키에 열려 있으며, 각 툴이 반환하는 데이터는 키의 티어에 따라 제한됩니다.
서버는 https://api.dino.markets/v2/mcp/에서 Streamable HTTP로 실행됩니다(끝에 슬래시가 있음에 유의하세요. 엄격한 MCP 클라이언트/스캐너는 슬래시 없는 /v2/mcp → /v2/mcp/ 리다이렉트에서 502를 받을 수 있습니다).
연결
REST API와 동일한 키를 API 키로, 베어러 토큰으로 인증하세요. 대부분의 MCP 클라이언트는 로컬 클라이언트를 HTTP 엔드포인트에 연결해주는 mcp-remote를 통해 연결합니다.
{
"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_..." }
}
}
}
Streamable HTTP를 직접 지원하는 클라이언트는 mcp-remote 없이 이 URL로 바로 연결해 Authorization: Bearer sk_live_...를 직접 전송할 수 있습니다.
툴
각 툴은 REST 엔드포인트를 그대로 반영합니다. 다섯 개는 카탈로그를 읽으며 활성 키라면 누구나 무료로 사용할 수 있고, watch_markets는 스트림 티켓을 발급하므로 유료 플랜이 필요합니다. v2에는 별도의 pair-list 툴이 없습니다. 페어 상세 정보는 get_market에 통합되어 있습니다.
| Tool | Does | Plan |
|---|---|---|
list_markets | 표준 market 객체 형태의 크로스벤뉴 매칭 카탈로그로, 스포츠, 리그, 상태, signal로 필터링할 수 있습니다. GET /v2/markets를 반영합니다. | 활성 키 누구나 |
find_arbitrage | 확정된 크로스벤뉴 차익거래 기회로, 스포츠로 필터링할 수 있습니다. signal이 "arb"인 표준 market 객체를 반환합니다: 정합성 확정, 차단 수준의 정산 리스크 없음, potential_arb_pct 채워짐. GET /v2/markets?signal=arb를 반영합니다. | 활성 키 누구나 |
get_market | id(list_markets 또는 find_arbitrage에서 얻은 dino_<uuid> 또는 순수 UUID)로 조회하는 하나의 마켓에 대한 표준 market 객체이며, 정산 공개 정보, 거래소 id, 뎁스(호가 잔량)를 포함합니다. 거래 전에 먼저 읽으세요. GET /v2/pairs/{market_id}를 반영합니다. | 활성 키 누구나 |
list_leagues | 스포츠별 open/live/settled 카운트와 함께, 현재 시즌 중인 스포츠와 리그를 제공합니다. GET /v2/leagues를 반영합니다. | 활성 키 누구나 |
get_coverage | 거래소 커버리지 센서스입니다: Kalshi의 모든 헤드투헤드 리그(연결 여부와 무관)와 그 집계 상태, 스포츠 레벨의 Polymarket 잉여분을 제공합니다. GET /v2/coverage를 반영합니다. | 활성 키 누구나 |
report_bad_arb | 잘못된 것으로 보이는 기회를 신고합니다. opp_id는 마켓의 id 값을 받습니다. POST /v2/report-bad-arb를 반영합니다. | 활성 키 누구나 |
watch_markets | 실시간 WebSocket 스트림을 위한 티켓을 발급받고 ws_url과 해당 티어에서 허용되는 채널을 반환합니다. 결과의 allowed.channels를 최종 기준(source of truth)으로 취급하세요. Basic과 Pro 토큰은 v2의 markets:* 매칭 피드 채널을 받습니다. POST /v1/stream/token을 반영합니다(v2에서도 변경되지 않음). | Basic, Pro |
툴이 반환하는 데이터는 해당 REST 엔드포인트와 일치하므로, find_arbitrage와 list_markets 모두 market 객체(signal, potential_arb_pct, outcomes)를 반환합니다. 정산 상세 정보는 각 거래소 고유의 것입니다. 에이전트가 실행 전에 불일치를 검토해야 한다면 get_market(또는 REST의 /v2/pairs/{market_id} 엔드포인트)을 호출해 공개된 리스크의 전체 상세 정보를 확인하세요.
티어가 반영되는 방식
MCP 툴은 HTTP 상태가 아니라 데이터를 반환하므로, 키에 권한이 없을 때도 툴은 여전히 응답하며 상태를 본문에 담습니다. Free 키로 watch_markets를 호출하면 에이전트가 읽을 수 없는 오류 대신 402와 업그레이드 URL을 받습니다. 이를 통해 에이전트가 결과를 분기 처리해 업그레이드를 안내할 수 있습니다.
제품 전체에 대한 에이전트 친화적인 개요는 /llms.txt를 에이전트에 알려주세요.