Veynor — Prediction Market Intelligence

io.github.veynor-xyzPublished by GitHub account veynor-xyzv1.0.0Updated Oct 24, 2026

Prediction market intelligence for AI agents. Live data from Kalshi and Polymarket.

VerifiedSSEWeb executableFinanceData & Analytics

Overview

AI-generated overview

Remote MCP server giving assistants live Kalshi and Polymarket prediction-market data, whale trades, alpha signals and AI-synthesized analysis, plus order tools

What you can do
Search, list and inspect markets across Kalshi and Polymarket, including top-volume rankings, full market details and short price history with pre-computed moves. Ask natural-language intelligence questions and get AI-synthesized analysis, or pull a full market pulse briefing. Retrieve topic-tagged markets, alpha signals (wide spreads, price movers, cross-venue arbitrage) and a feed of large whale trades. Place Kalshi limit or market orders, or relay a pre-signed Polymarket order. Check credit usage and remaining balance.
When to use it
Useful when you want an assistant to monitor or reason about prediction markets: morning briefings, tracking large trades, comparing how Kalshi and Polymarket price the same event, or executing trades from natural language. Not needed if you only want general web search or news.
Requirements
A remote SSE endpoint; no local install. A free API key is required, obtained by registering an email, and passed in the connection URL as an api_key query parameter. Credits are consumed per tool call (free tier 100 per month; paid tiers available). Kalshi trading requires separately registering Kalshi credentials; Polymarket orders must be signed locally with a wallet.
Before you install
The API key is placed in the connection URL, so treat it as a secret and keep it out of shared configs. Tool calls spend credits, and paid tiers cost money. The server can place real trades and relay signed orders, which risks financial loss; Kalshi credentials are stored server-side. Queries and order data go to a third-party service that also calls Anthropic for synthesis.

Installation

In SourceWeft

  1. Open Veynor — Prediction Market Intelligence in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via SSE. Remote servers run from the web runtime once configured in a workspace.

Other MCP clients

Follow the launch instructions in the repository.

README

Veynor MCP Server

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.


What is this?

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:

  • "What are whales betting on right now? Any large trades on Iran or tariffs?"
  • "What are prediction markets saying about the Fed rate decision?"
  • "Find markets where the bid/ask spread is unusually wide."
  • "Is the same Fed rate decision priced differently on Kalshi vs Polymarket?"
  • "Buy 10 contracts of KXIRANUKE-26 YES at 30 cents."
  • "Any unusual volume spikes today? Give me a full signal scan."

Get started in 2 minutes

1. Register for a free API key

bash
curl -X POST https://mcp.veynor.xyz/keys/register \  -H "Content-Type: application/json" \  -d '{"email": "[email protected]", "name": "Your Name"}'

Response:

json
{  "key": "vey_sk_a1b2c3d4...",  "tier": "free",  "credits_per_month": 100,  "connect_url": "https://mcp.veynor.xyz/sse?api_key=vey_sk_a1b2c3d4..."}

Store your key safely — it won't be shown again.


2. Connect your agent

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

json
{  "mcpServers": {    "veynor": {      "url": "https://mcp.veynor.xyz/sse?api_key=vey_sk_YOUR_KEY_HERE"    }  }}

Restart Claude Desktop. You'll see Veynor appear in the tools panel.

Cursor / Windsurf
json
{  "mcpServers": {    "veynor": {      "url": "https://mcp.veynor.xyz/sse?api_key=vey_sk_YOUR_KEY_HERE"    }  }}
Any MCP-compatible client
SSE endpoint: https://mcp.veynor.xyz/sse?api_key=vey_sk_YOUR_KEY_HEREMessages:     https://mcp.veynor.xyz/messages

Available tools

query_intelligence

Cost: 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:

  • Topic queries ("what are markets saying about Iran?") → relevant markets + synthesis
  • Signal queries ("any unusual volume today?") → movers/spikes/spreads + signal summary
  • Trade idea queries ("any edge in crypto?") → markets + whale data + trade-angle analysis
Parameters:  query  Natural-language question or signal request  (required)

Example:

"What are prediction markets pricing on the Iran nuclear deal?""Any big movers or unusual volume today?""Find edge in crypto prediction markets""What's the market saying about Fed rate cuts in 2026?"

get_market_pulse

Cost: 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.

Parameters:  venue     "all" | "kalshi" | "polymarket"  category  "All" | "Sports" | "Politics" | "Other"

Best for: morning briefings, high-level situation awareness, "what's happening right now" overviews.


get_topic_markets

Cost: 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.

Parameters:  tag    "crypto" | "geopolitics" | "trump" | "us_politics" | "macro" | "sports"  (required)  limit  Max markets (default 20, max 50)

get_alpha_signals

Cost: 3 credits

Returns three types of alpha signals:

  • wide_spreads — markets with unusually large bid/ask spreads (liquidity opportunity — not arb)
  • price_movers — biggest YES price moves in the last 24h
  • arb_opportunities — same event priced differently on Kalshi vs Polymarket simultaneously
Parameters:  signal_type  "wide_spreads" | "price_movers" | "arb_opportunities" | "all"  limit        Max results per signal type (1–20, default 10)

get_whale_feed

Cost: 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.

Parameters:  limit         Max trades to return (1–60, default 20)  category      "All" | "Sports" | "Politics" | "Other"  platform      "all" | "polymarket" | "kalshi"  min_notional  Minimum trade size in USD (default 8000)

place_kalshi_order

Cost: 2 credits

Places a limit or market order on Kalshi using your registered API credentials. Requires prior credential registration via POST /v1/credentials/kalshi.

Parameters:  ticker      Kalshi market ticker (e.g. KXIRANUKE-26)  (required)  action      "buy" | "sell"  (required)  count       Number of contracts  (required)  side        "YES" | "NO" (default: YES)  price       Limit price as probability 0.01–0.99 (required for limit orders)  order_type  "limit" | "market" (default: limit)

submit_signed_order

Cost: 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.

Parameters:  order      EIP-712 order object  (required)  signature  0x hex signature  (required)  wallet     Trader's Polymarket proxy wallet address  (required)  order_type "GTC" | "FOK" | "GTD" (default: GTC)

get_top_markets

Cost: 1 credit

Returns the top 20 most actively traded markets from Kalshi and Polymarket, ranked by 24-hour volume.

Parameters:  platform  "all" | "kalshi" | "polymarket"  category  "All" | "Sports" | "Politics" | "Other"  limit     Max markets per platform (1–20, default 10)

get_market

Cost: 1 credit

Fetch full details for a specific market by ID — prices, volume, open interest, order book summary, and resolution rules.

Parameters:  platform  "polymarket" | "kalshi"  (required)  id        Polymarket condition ID (0x...) or Kalshi ticker  (required)

search_markets

Cost: 1 credit

Search for prediction markets by keyword across both platforms. Tokenized search handles multi-word queries well ("fed rate cut", "trump china").

Parameters:  query     Search query, e.g. "Fed rate", "NBA finals", "Iran"  (required)  platform  "all" | "polymarket" | "kalshi"  limit     Max results (1–20, default 10)

get_price_history

Cost: 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.

Parameters:  platform  "polymarket" | "kalshi"  (required)  id        Polymarket condition ID or Kalshi ticker  (required)

get_usage

Cost: free

Returns your current credit usage, tier, remaining credits, and per-tool costs. Always free to call.


Credit system

TierCredits / monthPrice
Free100Free forever
Advanced2,000$29 / month
Pro10,000$89 / month
InternalUnlimited—

Credits reset on the 1st of each month (UTC).

Tool costs:

ToolCost
query_intelligence5
get_market_pulse5
get_topic_markets3
get_alpha_signals3
get_whale_feed2
place_kalshi_order2
submit_signed_order2
get_top_markets1
get_market1
search_markets1
get_price_history1
get_usage0

Upgrading your plan

bash
# See available planscurl https://mcp.veynor.xyz/stripe/plans
# Create a Checkout session (returns a payment URL)curl -X POST https://mcp.veynor.xyz/stripe/checkout \  -H "Content-Type: application/json" \  -d '{"api_key": "vey_sk_YOUR_KEY", "price_id": "price_..."}'

After payment, your key is automatically upgraded.


REST API

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>

MethodPathCreditsNotes
GET/v1/intelligence5?q= natural-language query with AI synthesis
GET/v1/pulse5venue, category — full market briefing
GET/v1/signals3signal_type, limit
GET/v1/markets/topic/:tag3tag = crypto|geopolitics|trump|us_politics|macro|sports
GET/v1/whale-trades2limit, category, platform, min_notional
POST/v1/trade/kalshi2ticker, action, side, count, price
POST/v1/trade/submit2Polymarket no-custody relay
GET/v1/markets/top1platform, category, limit
GET/v1/markets/search1?q= required
GET/v1/markets/:platform/:id1platform = polymarket|kalshi
GET/v1/markets/:platform/:id/history1Rolling ~1h price history
POST/v1/credentials/kalshi0Register Kalshi credentials (encrypted at rest)
GET/v1/credentials/kalshi0Check if credentials are registered
DELETE/v1/credentials/kalshi0Remove stored credentials
GET/v1/usage0Credit balance and usage

REST example

bash
# Natural-language intelligence querycurl -H "X-API-Key: vey_sk_YOUR_KEY" \  "https://api.veynor.xyz/v1/intelligence?q=what+are+markets+saying+about+Iran"
# Whale feedcurl -H "X-API-Key: vey_sk_YOUR_KEY" \  "https://api.veynor.xyz/v1/whale-trades?limit=10&platform=polymarket"
# Place a Kalshi ordercurl -X POST https://api.veynor.xyz/v1/trade/kalshi \  -H "X-API-Key: vey_sk_YOUR_KEY" \  -H "Content-Type: application/json" \  -d '{"ticker":"KXIRANUKE-26","action":"buy","side":"YES","count":10,"price":0.30}'

Example agent workflows

One-shot intelligence query

"What are prediction markets saying about a US recession in 2026?"

Uses query_intelligence — one call, full synthesis.

Morning briefing

"Give me the full market pulse — top volume, whale activity, biggest movers."

Uses get_market_pulse.

Arb scanner

"Run alpha signals for arb_opportunities. For any gap > 5 cents, show details."

Uses get_alpha_signals.

Trade execution

"Find Kalshi markets on the Fed rate decision, then buy 5 contracts YES at 40 cents."

Uses search_markets → place_kalshi_order.

Liquidity hunting

"Show markets with wide bid/ask spreads where providing liquidity would be profitable."

Uses get_alpha_signals with signal_type=wide_spreads.

Geopolitics scan

"What are all the Iran and Taiwan markets pricing right now? Any divergence between platforms?"

Uses get_topic_markets with tag=geopolitics.


Data sources

  • Polymarket — Gamma API and CLOB API (real-time)
  • Kalshi — Trade API v2 (real-time)
  • Whale feed — proprietary monitoring of large trades across both platforms
  • Alpha signals — rolling scanner updated every ~60 seconds

Roadmap

  • Whale feed monitoring (Polymarket + Kalshi)
  • Top markets by volume
  • Alpha signals (wide spreads, price movers, arb)
  • Market search with tokenized multi-word matching
  • MCP server with SSE transport
  • Self-serve key registration
  • REST API v1
  • Price history (rolling 1h, 60s snapshots)
  • Market pulse — AI briefing synthesis
  • Topic markets with AI analysis (crypto, geopolitics, macro, sports, trump, us_politics)
  • Place Kalshi orders via MCP / REST
  • Polymarket no-custody order relay
  • Kalshi credential storage (AES-256-GCM encrypted at rest)
  • Natural-language intelligence queries (query_intelligence)
  • Stripe integration for plan upgrades
  • Streaming whale alerts (webhook / websocket)
  • Portfolio monitoring tool
  • MCP registry listing

Self-hosting

bash
git clone https://github.com/veynor-xyz/veynor-mcpcd mcp-servernpm installcp .env.example .envnpm run buildnpm start

Required env vars:

env
MCP_PORT=3001MCP_ADMIN_SECRET=your-secret-hereVEYNOR_API_URL=http://localhost:3000   # URL of your Next.js appANTHROPIC_API_KEY=sk-ant-...           # Required for AI synthesis tools

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.


Community

Built by the Veynor team. Prediction markets meet AI agents.

Source: README.md at commit a32ecd6

Tools

0
SourceWeft has not read this server's tools yet.

Version history

1
  1. v1.0.0LatestSep 16, 2026

Score

75% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

    Declare a license in the repository or the registry entry.