The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Veynor — Prediction Market Intelligence listing page.
Prediction market intelligence for AI agents.
Real-time whale trades, market data, alpha signals, and AI-synthesized analysis from Kalshi and Polymarket — available as a Model Context Protocol server and REST API that any AI agent can connect to.
The Veynor MCP server gives AI agents (Claude, Cursor, Windsurf, or any MCP-compatible client) direct access to live prediction market data. Instead of scraping websites or parsing unstructured HTML, agents get clean structured data through a standardized protocol — and can reason over it, summarize it, monitor it, and place trades in natural language.
Example prompts your agent can handle once connected:
Response:
Store your key safely — it won't be shown again.
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
Restart Claude Desktop. You'll see Veynor appear in the tools panel.
query_intelligenceCost: 5 credits
The most powerful single tool. Ask a natural-language question — the engine automatically detects intent, loads relevant market data, and returns an AI-synthesized analysis written by Claude Haiku. No need to chain multiple tools manually.
Intent routing happens automatically:
Example:
get_market_pulseCost: 5 credits
Full AI-synthesized market briefing covering top volume, whale activity, price movers, volume spikes, and wide spreads — all in one call. Returns a ready-to-read paragraph written by Claude Haiku plus structured data by category.
Best for: morning briefings, high-level situation awareness, "what's happening right now" overviews.
get_topic_marketsCost: 3 credits
Returns active markets for a curated topic tag with an AI-synthesized summary of what the collective market is pricing in. Cross-venue by default.
get_alpha_signalsCost: 3 credits
Returns three types of alpha signals:
get_whale_feedCost: 2 credits
Returns the most recent large trades (≥$8,000) across Polymarket and Kalshi. Each trade includes platform, market, side (YES/NO), price, notional size, timestamp, and category.
place_kalshi_orderCost: 2 credits
Places a limit or market order on Kalshi using your registered API credentials. Requires prior credential registration via POST /v1/credentials/kalshi.
submit_signed_orderCost: 2 credits
Relays a pre-signed Polymarket EIP-712 order to the CLOB. No-custody: Veynor never holds private keys. Sign locally, relay through Veynor.
get_top_marketsCost: 1 credit
Returns the top 20 most actively traded markets from Kalshi and Polymarket, ranked by 24-hour volume.
get_marketCost: 1 credit
Fetch full details for a specific market by ID — prices, volume, open interest, order book summary, and resolution rules.
search_marketsCost: 1 credit
Search for prediction markets by keyword across both platforms. Tokenized search handles multi-word queries well ("fed rate cut", "trump china").
get_price_historyCost: 1 credit
Returns the rolling ~1-hour price history for one specific market (60-second snapshots) with pre-computed 5m, 15m, and 1h price moves.
get_usageCost: free
Returns your current credit usage, tier, remaining credits, and per-tool costs. Always free to call.
| Tier | Credits / month | Price |
|---|---|---|
| Free | 100 | Free forever |
| Advanced | 2,000 | $29 / month |
| Pro | 10,000 | $89 / month |
| Internal | Unlimited | — |
Credits reset on the 1st of each month (UTC).
Tool costs:
| Tool | Cost |
|---|---|
query_intelligence | 5 |
get_market_pulse | 5 |
get_topic_markets | 3 |
get_alpha_signals | 3 |
get_whale_feed | 2 |
place_kalshi_order | 2 |
submit_signed_order | 2 |
get_top_markets | 1 |
get_market | 1 |
search_markets | 1 |
get_price_history | 1 |
get_usage | 0 |
After payment, your key is automatically upgraded.
All data tools are also available as a standard REST API at https://api.veynor.xyz.
Auth: X-API-Key: <key> or Authorization: Bearer <key>
| Method | Path | Credits | Notes |
|---|---|---|---|
| GET | /v1/intelligence | 5 | ?q= natural-language query with AI synthesis |
| GET | /v1/pulse | 5 | venue, category — full market briefing |
| GET | /v1/signals | 3 | signal_type, limit |
| GET | /v1/markets/topic/:tag | 3 | tag = crypto|geopolitics|trump|us_politics|macro|sports |
| GET | /v1/whale-trades | 2 | limit, category, platform, min_notional |
| POST | /v1/trade/kalshi | 2 | ticker, action, side, count, price |
| POST | /v1/trade/submit | 2 | Polymarket no-custody relay |
| GET | /v1/markets/top | 1 | platform, category, limit |
| GET | /v1/markets/search | 1 | ?q= required |
| GET | /v1/markets/:platform/:id | 1 | platform = polymarket|kalshi |
| GET | /v1/markets/:platform/:id/history | 1 | Rolling ~1h price history |
| POST | /v1/credentials/kalshi | 0 | Register Kalshi credentials (encrypted at rest) |
| GET | /v1/credentials/kalshi | 0 | Check if credentials are registered |
| DELETE | /v1/credentials/kalshi | 0 | Remove stored credentials |
| GET | /v1/usage | 0 | Credit balance and usage |
Uses query_intelligence — one call, full synthesis.
Uses get_market_pulse.
Uses get_alpha_signals.
Uses search_markets → place_kalshi_order.
Uses get_alpha_signals with signal_type=wide_spreads.
Uses get_topic_markets with tag=geopolitics.
query_intelligence)Required env vars:
The server runs on port 3001 by default. The Next.js app must be running at VEYNOR_API_URL — the MCP server reads data files from disk and calls the intelligence endpoint via localhost HTTP.
Built by the Veynor team. Prediction markets meet AI agents.