{
  "markdown": "# Veynor MCP Server\n\n**Prediction market intelligence for AI agents.**\n\nReal-time whale trades, market data, alpha signals, and AI-synthesized analysis from Kalshi and Polymarket — available as a [Model Context Protocol](https://modelcontextprotocol.io) server and REST API that any AI agent can connect to.\n\n---\n\n## What is this?\n\nThe 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.\n\n**Example prompts your agent can handle once connected:**\n\n- *\"What are whales betting on right now? Any large trades on Iran or tariffs?\"*\n- *\"What are prediction markets saying about the Fed rate decision?\"*\n- *\"Find markets where the bid/ask spread is unusually wide.\"*\n- *\"Is the same Fed rate decision priced differently on Kalshi vs Polymarket?\"*\n- *\"Buy 10 contracts of KXIRANUKE-26 YES at 30 cents.\"*\n- *\"Any unusual volume spikes today? Give me a full signal scan.\"*\n\n---\n\n## Get started in 2 minutes\n\n### 1. Register for a free API key\n\n```bash\ncurl -X POST https://mcp.veynor.xyz/keys/register \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"email\": \"you@example.com\", \"name\": \"Your Name\"}'\n```\n\nResponse:\n```json\n{\n  \"key\": \"vey_sk_a1b2c3d4...\",\n  \"tier\": \"free\",\n  \"credits_per_month\": 100,\n  \"connect_url\": \"https://mcp.veynor.xyz/sse?api_key=vey_sk_a1b2c3d4...\"\n}\n```\n\nStore your key safely — it won't be shown again.\n\n---\n\n### 2. Connect your agent\n\n#### Claude Desktop\n\nAdd to `~/Library/Application Support/Claude/claude_desktop_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"veynor\": {\n      \"url\": \"https://mcp.veynor.xyz/sse?api_key=vey_sk_YOUR_KEY_HERE\"\n    }\n  }\n}\n```\n\nRestart Claude Desktop. You'll see Veynor appear in the tools panel.\n\n#### Cursor / Windsurf\n\n```json\n{\n  \"mcpServers\": {\n    \"veynor\": {\n      \"url\": \"https://mcp.veynor.xyz/sse?api_key=vey_sk_YOUR_KEY_HERE\"\n    }\n  }\n}\n```\n\n#### Any MCP-compatible client\n\n```\nSSE endpoint: https://mcp.veynor.xyz/sse?api_key=vey_sk_YOUR_KEY_HERE\nMessages:     https://mcp.veynor.xyz/messages\n```\n\n---\n\n## Available tools\n\n### `query_intelligence`\n**Cost: 5 credits**\n\nThe 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.\n\nIntent routing happens automatically:\n- Topic queries (*\"what are markets saying about Iran?\"*) → relevant markets + synthesis\n- Signal queries (*\"any unusual volume today?\"*) → movers/spikes/spreads + signal summary\n- Trade idea queries (*\"any edge in crypto?\"*) → markets + whale data + trade-angle analysis\n\n```\nParameters:\n  query  Natural-language question or signal request  (required)\n```\n\nExample:\n```\n\"What are prediction markets pricing on the Iran nuclear deal?\"\n\"Any big movers or unusual volume today?\"\n\"Find edge in crypto prediction markets\"\n\"What's the market saying about Fed rate cuts in 2026?\"\n```\n\n---\n\n### `get_market_pulse`\n**Cost: 5 credits**\n\nFull 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.\n\n```\nParameters:\n  venue     \"all\" | \"kalshi\" | \"polymarket\"\n  category  \"All\" | \"Sports\" | \"Politics\" | \"Other\"\n```\n\nBest for: morning briefings, high-level situation awareness, \"what's happening right now\" overviews.\n\n---\n\n### `get_topic_markets`\n**Cost: 3 credits**\n\nReturns active markets for a curated topic tag with an AI-synthesized summary of what the collective market is pricing in. Cross-venue by default.\n\n```\nParameters:\n  tag    \"crypto\" | \"geopolitics\" | \"trump\" | \"us_politics\" | \"macro\" | \"sports\"  (required)\n  limit  Max markets (default 20, max 50)\n```\n\n---\n\n### `get_alpha_signals`\n**Cost: 3 credits**\n\nReturns three types of alpha signals:\n- **wide_spreads** — markets with unusually large bid/ask spreads (liquidity opportunity — not arb)\n- **price_movers** — biggest YES price moves in the last 24h\n- **arb_opportunities** — same event priced differently on Kalshi vs Polymarket simultaneously\n\n```\nParameters:\n  signal_type  \"wide_spreads\" | \"price_movers\" | \"arb_opportunities\" | \"all\"\n  limit        Max results per signal type (1–20, default 10)\n```\n\n---\n\n### `get_whale_feed`\n**Cost: 2 credits**\n\nReturns 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.\n\n```\nParameters:\n  limit         Max trades to return (1–60, default 20)\n  category      \"All\" | \"Sports\" | \"Politics\" | \"Other\"\n  platform      \"all\" | \"polymarket\" | \"kalshi\"\n  min_notional  Minimum trade size in USD (default 8000)\n```\n\n---\n\n### `place_kalshi_order`\n**Cost: 2 credits**\n\nPlaces a limit or market order on Kalshi using your registered API credentials. Requires prior credential registration via `POST /v1/credentials/kalshi`.\n\n```\nParameters:\n  ticker      Kalshi market ticker (e.g. KXIRANUKE-26)  (required)\n  action      \"buy\" | \"sell\"  (required)\n  count       Number of contracts  (required)\n  side        \"YES\" | \"NO\" (default: YES)\n  price       Limit price as probability 0.01–0.99 (required for limit orders)\n  order_type  \"limit\" | \"market\" (default: limit)\n```\n\n---\n\n### `submit_signed_order`\n**Cost: 2 credits**\n\nRelays a pre-signed Polymarket EIP-712 order to the CLOB. No-custody: Veynor never holds private keys. Sign locally, relay through Veynor.\n\n```\nParameters:\n  order      EIP-712 order object  (required)\n  signature  0x hex signature  (required)\n  wallet     Trader's Polymarket proxy wallet address  (required)\n  order_type \"GTC\" | \"FOK\" | \"GTD\" (default: GTC)\n```\n\n---\n\n### `get_top_markets`\n**Cost: 1 credit**\n\nReturns the top 20 most actively traded markets from Kalshi and Polymarket, ranked by 24-hour volume.\n\n```\nParameters:\n  platform  \"all\" | \"kalshi\" | \"polymarket\"\n  category  \"All\" | \"Sports\" | \"Politics\" | \"Other\"\n  limit     Max markets per platform (1–20, default 10)\n```\n\n---\n\n### `get_market`\n**Cost: 1 credit**\n\nFetch full details for a specific market by ID — prices, volume, open interest, order book summary, and resolution rules.\n\n```\nParameters:\n  platform  \"polymarket\" | \"kalshi\"  (required)\n  id        Polymarket condition ID (0x...) or Kalshi ticker  (required)\n```\n\n---\n\n### `search_markets`\n**Cost: 1 credit**\n\nSearch for prediction markets by keyword across both platforms. Tokenized search handles multi-word queries well (*\"fed rate cut\"*, *\"trump china\"*).\n\n```\nParameters:\n  query     Search query, e.g. \"Fed rate\", \"NBA finals\", \"Iran\"  (required)\n  platform  \"all\" | \"polymarket\" | \"kalshi\"\n  limit     Max results (1–20, default 10)\n```\n\n---\n\n### `get_price_history`\n**Cost: 1 credit**\n\nReturns the rolling ~1-hour price history for one specific market (60-second snapshots) with pre-computed 5m, 15m, and 1h price moves.\n\n```\nParameters:\n  platform  \"polymarket\" | \"kalshi\"  (required)\n  id        Polymarket condition ID or Kalshi ticker  (required)\n```\n\n---\n\n### `get_usage`\n**Cost: free**\n\nReturns your current credit usage, tier, remaining credits, and per-tool costs. Always free to call.\n\n---\n\n## Credit system\n\n| Tier     | Credits / month | Price        |\n|----------|----------------|--------------|\n| Free     | 100            | Free forever |\n| Advanced | 2,000          | $29 / month  |\n| Pro      | 10,000         | $89 / month  |\n| Internal | Unlimited      | —            |\n\nCredits reset on the 1st of each month (UTC).\n\n**Tool costs:**\n\n| Tool                  | Cost |\n|-----------------------|------|\n| `query_intelligence`  | 5    |\n| `get_market_pulse`    | 5    |\n| `get_topic_markets`   | 3    |\n| `get_alpha_signals`   | 3    |\n| `get_whale_feed`      | 2    |\n| `place_kalshi_order`  | 2    |\n| `submit_signed_order` | 2    |\n| `get_top_markets`     | 1    |\n| `get_market`          | 1    |\n| `search_markets`      | 1    |\n| `get_price_history`   | 1    |\n| `get_usage`           | 0    |\n\n### Upgrading your plan\n\n```bash\n# See available plans\ncurl https://mcp.veynor.xyz/stripe/plans\n\n# Create a Checkout session (returns a payment URL)\ncurl -X POST https://mcp.veynor.xyz/stripe/checkout \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"api_key\": \"vey_sk_YOUR_KEY\", \"price_id\": \"price_...\"}'\n```\n\nAfter payment, your key is automatically upgraded.\n\n---\n\n## REST API\n\nAll data tools are also available as a standard REST API at `https://api.veynor.xyz`.\n\n**Auth:** `X-API-Key: <key>` or `Authorization: Bearer <key>`\n\n| Method | Path | Credits | Notes |\n|--------|------|---------|-------|\n| GET | `/v1/intelligence` | 5 | `?q=` natural-language query with AI synthesis |\n| GET | `/v1/pulse` | 5 | `venue`, `category` — full market briefing |\n| GET | `/v1/signals` | 3 | `signal_type`, `limit` |\n| GET | `/v1/markets/topic/:tag` | 3 | tag = crypto\\|geopolitics\\|trump\\|us_politics\\|macro\\|sports |\n| GET | `/v1/whale-trades` | 2 | `limit`, `category`, `platform`, `min_notional` |\n| POST | `/v1/trade/kalshi` | 2 | `ticker`, `action`, `side`, `count`, `price` |\n| POST | `/v1/trade/submit` | 2 | Polymarket no-custody relay |\n| GET | `/v1/markets/top` | 1 | `platform`, `category`, `limit` |\n| GET | `/v1/markets/search` | 1 | `?q=` required |\n| GET | `/v1/markets/:platform/:id` | 1 | platform = polymarket\\|kalshi |\n| GET | `/v1/markets/:platform/:id/history` | 1 | Rolling ~1h price history |\n| POST | `/v1/credentials/kalshi` | 0 | Register Kalshi credentials (encrypted at rest) |\n| GET | `/v1/credentials/kalshi` | 0 | Check if credentials are registered |\n| DELETE | `/v1/credentials/kalshi` | 0 | Remove stored credentials |\n| GET | `/v1/usage` | 0 | Credit balance and usage |\n\n### REST example\n\n```bash\n# Natural-language intelligence query\ncurl -H \"X-API-Key: vey_sk_YOUR_KEY\" \\\n  \"https://api.veynor.xyz/v1/intelligence?q=what+are+markets+saying+about+Iran\"\n\n# Whale feed\ncurl -H \"X-API-Key: vey_sk_YOUR_KEY\" \\\n  \"https://api.veynor.xyz/v1/whale-trades?limit=10&platform=polymarket\"\n\n# Place a Kalshi order\ncurl -X POST https://api.veynor.xyz/v1/trade/kalshi \\\n  -H \"X-API-Key: vey_sk_YOUR_KEY\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"ticker\":\"KXIRANUKE-26\",\"action\":\"buy\",\"side\":\"YES\",\"count\":10,\"price\":0.30}'\n```\n\n---\n\n## Example agent workflows\n\n### One-shot intelligence query\n```\n\"What are prediction markets saying about a US recession in 2026?\"\n```\nUses `query_intelligence` — one call, full synthesis.\n\n### Morning briefing\n```\n\"Give me the full market pulse — top volume, whale activity, biggest movers.\"\n```\nUses `get_market_pulse`.\n\n### Arb scanner\n```\n\"Run alpha signals for arb_opportunities. For any gap > 5 cents, show details.\"\n```\nUses `get_alpha_signals`.\n\n### Trade execution\n```\n\"Find Kalshi markets on the Fed rate decision, then buy 5 contracts YES at 40 cents.\"\n```\nUses `search_markets` → `place_kalshi_order`.\n\n### Liquidity hunting\n```\n\"Show markets with wide bid/ask spreads where providing liquidity would be profitable.\"\n```\nUses `get_alpha_signals` with `signal_type=wide_spreads`.\n\n### Geopolitics scan\n```\n\"What are all the Iran and Taiwan markets pricing right now? Any divergence between platforms?\"\n```\nUses `get_topic_markets` with `tag=geopolitics`.\n\n---\n\n## Data sources\n\n- **Polymarket** — Gamma API and CLOB API (real-time)\n- **Kalshi** — Trade API v2 (real-time)\n- **Whale feed** — proprietary monitoring of large trades across both platforms\n- **Alpha signals** — rolling scanner updated every ~60 seconds\n\n---\n\n## Roadmap\n\n- [x] Whale feed monitoring (Polymarket + Kalshi)\n- [x] Top markets by volume\n- [x] Alpha signals (wide spreads, price movers, arb)\n- [x] Market search with tokenized multi-word matching\n- [x] MCP server with SSE transport\n- [x] Self-serve key registration\n- [x] REST API v1\n- [x] Price history (rolling 1h, 60s snapshots)\n- [x] Market pulse — AI briefing synthesis\n- [x] Topic markets with AI analysis (crypto, geopolitics, macro, sports, trump, us_politics)\n- [x] Place Kalshi orders via MCP / REST\n- [x] Polymarket no-custody order relay\n- [x] Kalshi credential storage (AES-256-GCM encrypted at rest)\n- [x] Natural-language intelligence queries (`query_intelligence`)\n- [x] Stripe integration for plan upgrades\n- [ ] Streaming whale alerts (webhook / websocket)\n- [ ] Portfolio monitoring tool\n- [x] MCP registry listing\n\n---\n\n## Self-hosting\n\n```bash\ngit clone https://github.com/veynor-xyz/veynor-mcp\ncd mcp-server\nnpm install\ncp .env.example .env\nnpm run build\nnpm start\n```\n\nRequired env vars:\n\n```env\nMCP_PORT=3001\nMCP_ADMIN_SECRET=your-secret-here\nVEYNOR_API_URL=http://localhost:3000   # URL of your Next.js app\nANTHROPIC_API_KEY=sk-ant-...           # Required for AI synthesis tools\n```\n\nThe 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.\n\n---\n\n## Community\n\n- **X / Twitter:** [@veynor_xyz](https://x.com/veynor_xyz)\n- **Discord:** [discord.gg/qYaRfhmq](https://discord.gg/qYaRfhmq)\n- **Telegram:** [t.me/predmarketwhales](https://t.me/predmarketwhales)\n- **Email:** hello@veynor.xyz\n\nBuilt by the Veynor team. Prediction markets meet AI agents.\n",
  "bytes": 13482,
  "sha": "ac8145a6a0ec3d1a53b7422bca89c99f816d9db18295b613950fed8a34db9bc1",
  "repo_slug": "veynor-xyz/veynor-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_veynor_xyz_veynor_82adb683/readme"
}