Crosswire — Polymarket & Kalshi Arbitrage
com.crosswire-api/crosswire-polymarket-kalshi-arbitrageVersion 0.6.2Cross-venue Polymarket+Kalshi arbitrage: resolution mismatch, void risk & settlement divergence.
Status
Responds254 msAnswered our handshake without sign-in.- Last checked
- Nov 14, 2026, 13:52 UTC
- Latency
- 254 ms
- Remotes responding
- 1 of 1
- Sign-in
- No sign-in
- Hosting
- Hosted outside the EU (detected)
- Registry data as of
- Nov 14, 2026, 22:14 UTC
Data from the official MCP Registry, checked by run.zero. How we check
Connect
Streamable HTTP
https://api.crosswire-api.com/mcpResponds254 msNo sign-in
Claude Code
claude mcp add --transport http crosswire-polymarket-kalshi-arbitrage https://api.crosswire-api.com/mcpClaude Desktop and claude.ai
Settings > Connectors > Add custom connector
Name: crosswire-polymarket-kalshi-arbitrage
Remote MCP server URL: https://api.crosswire-api.com/mcpCursor
{
"mcpServers": {
"crosswire-polymarket-kalshi-arbitrage": {
"url": "https://api.crosswire-api.com/mcp"
}
}
}VS Code
code --add-mcp '{"name":"crosswire-polymarket-kalshi-arbitrage","type":"http","url":"https://api.crosswire-api.com/mcp"}'Built your own server? run.zero hosts MCP servers on European infrastructure.
Tools
2 tools
Read-only | Idempotent | Open world | ||
|---|---|---|---|---|
check_resolution_riskPre-trade safety check for cross-venue event markets (crypto
oracle-divergence pairs, metered; World Cup football, free). Flags
resolution mismatches, void-rule divergence, scope differences
(e.g. 90-minute vs extra-time; matched vs differing strike),
settlement-source and -timing gaps, stale data, and thin liquidity
between the two Polymarket and Kalshi legs BEFORE you execute both.
Returns a machine-readable verdict — execution_verdict:
safe / caution / block — inside a full Fungibility & Settlement Audit Object
(FSAO) with structured findings, top-level divergence flags, venue
rule overrides, fee-adjusted spread, and verdict reasons. Identify the
pair by EITHER canonical_event_id (a live pair id from
list_covered_events — the metered 'crypto:' inventory rolls daily, so
fetch a current id there rather than reusing an old one; the free 'wc26:'
World Cup pairs are stable) OR market_a + market_b (one Polymarket
conditionId + one Kalshi ticker, order-insensitive). If the pair is not
covered, returns a non-error
coverage reply (covered: false) naming the covered inventories (free
World Cup football + metered crypto pairs) and the coverage cutoff
instead of an FSAO. | Not declared | Yes | Not declared | Not declared |
list_covered_eventsFree discovery of everything check_resolution_risk can audit across
both inventories — the free World Cup football pairs and the metered
crypto oracle-divergence pairs (the 'crypto:' namespace is the paid
surface: $0.02 USDC per call after 3 free calls/day). Returns the
covered canonical events, their per-outcome pair ids (…#home / #draw /
#away for football), the Polymarket conditionIds and Kalshi tickers
with outcome labels for each pair, match dates, the frozen ruleset_sha
pinning the identity graph, the coverage kickoff cutoff, and snapshot
freshness. Use a returned pair_id (or a pair's two market ids) as input
to check_resolution_risk. | Not declared | Yes | Not declared | Not declared |
Details
- Registry status
- Active
- Published
- Jun 21, 2026
- Updated
- Jun 21, 2026
- Categories (suggested)
- SecuritySuggested categories are assigned automatically from the registry text and may be wrong. Verified operators can correct them.
- GDPR
- Not declared