Live Kalshi + Polymarket prediction-market data and cross-venue arbitrage spreads, one schema.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Optional API key for higher rate limits (anonymous free tier: 120 req/hr)
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Get one normalized market. venue is 'kalshi' or 'polymarket'.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Get one normalized market. venue is 'kalshi' or 'polymarket'.
| Argument | Type | Description |
|---|---|---|
| venue* | string | |
| market_id* | string |
{
"type": "object",
"title": "get_marketArguments",
"required": [
"venue",
"market_id"
],
"properties": {
"venue": {
"type": "string",
"title": "Venue"
},
"market_id": {
"type": "string",
"title": "Market Id"
}
}
}List open prediction markets across Kalshi and Polymarket (normalized).
| Argument | Type | Description |
|---|---|---|
| limit | integer | |
| venue | any |
{
"type": "object",
"title": "list_marketsArguments",
"properties": {
"limit": {
"type": "integer",
"title": "Limit",
"default": 50
},
"venue": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Venue",
"default": null
}
}
}Find the same real-world event on both venues, with the YES price spread.
| Argument | Type | Description |
|---|---|---|
| limit | integer | |
| threshold | number |
{
"type": "object",
"title": "matching_marketsArguments",
"properties": {
"limit": {
"type": "integer",
"title": "Limit",
"default": 100
},
"threshold": {
"type": "number",
"title": "Threshold",
"default": 0.55
}
}
}