Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| REKKO_API_KEY | Yes | Your API key for rekko.ai (get one at rekko.ai/dashboard). |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_markets | List current prediction markets from Kalshi and Polymarket. Args: source: Filter by platform: "kalshi", "polymarket", or "" for all. limit: Maximum number of markets to return (1-100). |
| get_market | Get detailed information about a specific prediction market. Args: market_id: Platform-specific market identifier (e.g. Kalshi ticker or Polymarket slug). source: Platform hint: "kalshi", "polymarket", or "" to search both. |
| search_markets | Search prediction markets by keyword in market title. Args: query: Search query string to match against market titles. limit: Maximum number of results to return. |
| get_market_history | Get price history for a prediction market over a configurable period. Args: platform: Platform: "kalshi" or "polymarket". market_id: Platform-specific market identifier. period: History window: "48h", "7d", or "30d". max_points: Maximum data points to return. |
| get_resolution | Get resolution intelligence for a market — time urgency, mechanism, theta estimate. Args: platform: Platform: "kalshi" or "polymarket". market_id: Platform-specific market identifier. |
| get_execution_guidance | Get execution guidance for a market — spread analysis, slippage estimate, order recommendation. Args: platform: Platform: "kalshi" or "polymarket". market_id: Platform-specific market identifier. |
| screen_markets | Batch screen markets by score, volume, or specific IDs. Returns scored markets with an action recommendation: "analyze", "watch", or "skip". Args: market_ids: Optional list of specific market IDs to screen. platform: Filter by platform: "kalshi", "polymarket", or "" for all. min_volume_24h: Minimum 24h volume filter. min_score: Minimum composite score filter. limit: Maximum number of results to return. |
| get_calibration | Get signal accuracy and calibration metrics — Brier score, hit rates, total signals. Args: category: Filter by category (e.g. "crypto", "politics") or "" for all. period: Time period: "7d", "30d", "90d", or "all". mode: Trading mode: "shadow" or "live". |
| analyze_market | Start a deep research analysis pipeline for a prediction market bet. Returns immediately with an analysis_id. Poll with check_analysis_status every 5 seconds until complete, then retrieve results with get_analysis. Args: bet_text: Description of the bet or market question to analyze. platform: Source platform hint: "kalshi", "polymarket", or "". |
| check_analysis_status | Check the current status of a running or completed analysis. Args: analysis_id: Analysis identifier returned by analyze_market. |
| get_analysis | Retrieve the full structured analysis result for a completed analysis. Includes probability estimate, edge assessment, scenarios, key factors, risks, and trading recommendation. Args: analysis_id: Analysis identifier for a completed analysis. |
| list_analyses | List recent analyses with summary information. Args: limit: Maximum number of analyses to return. |
| get_strategy | Run a full analysis and return a strategy signal with causal decomposition. This is a blocking call that takes 30-90 seconds. For async control, use analyze_market + check_analysis_status + get_analysis instead. Args: market_query: Description of the bet or market question to analyze. risk_limit: Reserved for position sizing constraints. |
| get_portfolio_strategy | Get a portfolio-aware strategy signal with position context and correlation analysis. Args: market_query: Description of the bet or market question to analyze. portfolio: Optional list of current positions (dicts with ticker, side, size_usd). bankroll_usd: Total bankroll in USD for position sizing. max_position_pct: Maximum fraction of bankroll per position. |
| get_consensus | Get consensus probability from aggregated agent trades. Args: market_id: Platform-specific market identifier. platform: Platform: "kalshi" or "polymarket". period: Lookback period: "48h", "7d", or "30d". |
| get_arbitrage | Get cross-platform arbitrage opportunities between Kalshi and Polymarket (cached). Args: min_spread: Minimum spread threshold (0.0-1.0). Default 0.02 (2%). |
| get_arbitrage_live | Run a fresh cross-platform arbitrage scan (may take 10-30 seconds). Args: min_spread: Minimum spread threshold (0.0-1.0). Default 0.02 (2%). |
| get_correlation | Compute cross-market correlation graph for portfolio diversification analysis. Args: market_ids: List of market IDs to correlate (minimum 2). platform: Platform: "kalshi" or "polymarket". period: Lookback period: "48h", "7d", or "30d". |
| place_shadow_trade | Place a paper (shadow) trade on a prediction market for tracking purposes. Args: ticker: Market ticker symbol (e.g. "KXBTC-100K"). side: Trade direction: "yes" or "no". size_usd: Trade size in USD. |
| report_trade | Report a trade for consensus probability aggregation. Args: market_id: Platform-specific market identifier. platform: Platform: "kalshi" or "polymarket". side: Trade direction: "yes" or "no". size_usd: Trade size in USD. price: Execution price (0.0-1.0). |
| get_portfolio | Get current portfolio positions and performance summary. Args: mode: Portfolio mode: "shadow" for paper trades, "live" for real trades. |
| get_performance | Get aggregate trading performance statistics. Args: mode: Portfolio mode: "shadow" for paper trades, "live" for real trades. |
| check_resolutions | Check all open trades for market resolution and update P&L. |
| run_scraper | Fetch fresh market data from a platform scraper. Args: source: Which scraper to run: "kalshi", "polymarket", or "arbitrage". |
| create_webhook | Register a webhook for real-time event notifications. Args: url: HTTPS URL to receive POST notifications. events: Event types: "whale_alert", "price_shift", "analysis_complete". secret: Optional shared secret for HMAC signature verification. |
| list_webhooks | List registered webhooks. |
| delete_webhook | Remove a registered webhook. Args: webhook_id: Webhook identifier returned by create_webhook. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |