78 Tools • MCP + REST + A2A

Build with Chikoh

Fantasy sports intelligence, entertainment predictions, and real-time analytics for your AI agents, bots, and applications. REST API, MCP, OpenAPI — pick your protocol.

Choose Your Protocol

Three ways to integrate. All give you access to the same intelligence layer.

MCP (Model Context Protocol)

The gold standard for AI agent integration. 78 tools with full type safety, session management, and interactive UI cards.

Endpoints

POST/mcpStreamable HTTP (preferred, MCP 2025-03-26 spec)
GET/sseLegacy SSE transport
stdioLocal dev via Cursor/Windsurf

Quick Start

// Connect via Streamable HTTP
const response = await fetch("https://chikoh.com/mcp", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    "Authorization": "Bearer chk_agent_your_key_here"
  },
  body: JSON.stringify({
    jsonrpc: "2.0",
    method: "initialize",
    params: {
      protocolVersion: "2025-03-26",
      capabilities: {},
      clientInfo: { name: "my-agent", version: "1.0" }
    },
    id: 1
  })
});

OpenAPI / REST

Standard REST API with OpenAPI 3.1 spec. Works with ChatGPT GPT Actions, Gemini Extensions, and any HTTP client.

Endpoints

GET/.well-known/openapiFull OpenAPI 3.1 spec (32 tools)
GET/.well-known/openapi?client=chatgptChatGPT-optimized (30 ops)
GET/.well-known/gemini-extension.jsonGemini extension manifest

Quick Start

// Fetch the OpenAPI spec
const spec = await fetch(
  "https://chikoh.com/.well-known/openapi"
).then(r => r.json());

// Call a tool via REST
const outlook = await fetch(
  "https://chikoh.com/api/v1/mcp/player-outlook", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    "Authorization": "Bearer chk_agent_your_key_here"
  },
  body: JSON.stringify({
    player_name: "Patrick Mahomes",
    context: { scoring_format: "ppr", sport: "nfl" }
  })
});

Agent-to-Agent (A2A)

Machine-to-machine discovery and communication. Google A2A Agent Card, PX-402 commerce protocol, and agent.txt.

Endpoints

GET/.well-known/agent-cardA2A Agent Card (capabilities, skills, auth)
GET/.well-known/ai-subscribePX-402 subscription catalog
GET/.well-known/agent.txtAgent discovery (like robots.txt for AI)
GET/.well-known/ai-plugin.jsonChatGPT plugin manifest

Quick Start

// Discover Chikoh's agent capabilities
const agentCard = await fetch(
  "https://chikoh.com/.well-known/agent-card"
).then(r => r.json());

// Check subscription tiers
const catalog = await fetch(
  "https://chikoh.com/.well-known/ai-subscribe"
).then(r => r.json());

// Agent self-registration
const reg = await fetch(
  "https://chikoh.com/api/v1/agent/register", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    agent_name: "my-fantasy-bot",
    contact_email: "[email protected]"
  })
});

RapidAPI Marketplace

Try 18 free tools instantly on RapidAPI — no account required. Upgrade to native Chikoh for AI-powered intelligence.

Chikoh on RapidAPI

FREE TIER

18 billboard tools — player projections, draft rankings, trade values, waiver trends, injury reports, entertainment, and identity resolution. All formula/template-based with <200ms latency.

Free Tools (18)

Player Intel: outlook, compare, performance, devils advocate, roster analysis, trade value

Market Intel: draft rankings, waivers, buy/sell, breakouts, injuries

Entertainment: trade messages, press conference, roast, genre recap

Utility: sport primer, resolve player, batch resolve

Upgrade Path

Hit a gated tool on RapidAPI? You get a 402 response with:

- Browser checkout URL

- Machine-readable subscription catalog

- Agent self-registration endpoint

Paid tiers unlock AI-powered analysis via native Chikoh subscription.

// RapidAPI — call any free tool
const response = await fetch(
  "https://chikoh.com/api/rapidapi/get_player_outlook", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    "X-RapidAPI-Key": "your_rapidapi_key",
    "X-RapidAPI-Host": "chikoh-fantasy-sports.p.rapidapi.com"
  },
  body: JSON.stringify({
    player_name: "Ja'Marr Chase",
    scoring_format: "ppr",
    sport: "nfl"
  })
});

Connect Your Client

Copy-paste configs for popular AI clients. All use MCP Streamable HTTP. Use your chk_user_* key from Settings → API Keys or a chk_agent_* developer key.

Cursor / Windsurf

// .cursor/mcp.json  (or .windsurf/mcp.json)
{
  "mcpServers": {
    "chikoh": {
      "url": "https://chikoh.com/mcp",
      "headers": {
        "Authorization": "Bearer chk_agent_YOUR_KEY"
      }
    }
  }
}

Python (httpx)

import httpx

resp = httpx.post(
    "https://chikoh.com/api/v1/tools/get_player_outlook",
    headers={"Authorization": "Bearer chk_agent_YOUR_KEY"},
    json={
        "player_name": "Patrick Mahomes",
        "scoring_format": "ppr",
        "sport": "nfl"
    }
)
print(resp.json())

curl

curl -X POST https://chikoh.com/api/v1/tools/get_player_outlook \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer chk_agent_YOUR_KEY" \
  -d '{
    "player_name": "Patrick Mahomes",
    "scoring_format": "ppr",
    "sport": "nfl"
  }'

OpenClaw Integration

Connect Chikoh as an AgentSkill in your self-hosted OpenClaw instance. Your agents get access to 76 fantasy sports and entertainment intelligence tools.

1

Subscribe to Chikoh

Pick any tier at chikoh.com/choose-plan. Even the free Bleachers tier works (5 queries/week).

2

Generate an API Key

Go to Settings → API Keys in your Chikoh dashboard. Create a key and copy it.

3

Add to OpenClaw Config

Drop the skill manifest into your OpenClaw skills directory, or paste the config below.

4

Ask Your Agents Anything

"Who should I start this week?" — your agents now have full Chikoh intelligence.

OpenClaw Skills Config

MCP Streamable HTTP
{
  "skills": {
    "chikoh": {
      "type": "mcp",
      "url": "https://chikoh.com/mcp",
      "auth": {
        "type": "bearer",
        "token": "${CHIKOH_API_KEY}"
      }
    }
  }
}

Set CHIKOH_API_KEY in your environment, or paste the key directly. Download the full skill manifest at /openclaw-skill.json

Which API key do I need?

Personal Key (chk_user_*)

For connecting your own Chikoh account to tools. Included with any subscription. Get it from Settings → API Keys.

Developer Key (chk_agent_*)

For building apps that serve other users. $29+/mo with metered billing. Register at /developers/get-api-key

Set Up as a ChatGPT GPT Action

Turn Chikoh into a custom GPT in ChatGPT. Your users get fantasy intelligence directly in chat.

ChatGPT Custom GPT

30 TOOLS
1

Create a new GPT

Go to chat.openai.com → Explore GPTs → Create. Name it "Chikoh Fantasy Sports".

2

Add Actions → Import URL

In the Configure tab, click "Create new action". Under "Import from URL", paste:

3

Set Authentication

Select "OAuth" as the auth type. Configure with:

4

Set the Instructions

Paste this system prompt in the GPT Instructions field:

5

Publish

Save and publish. ChatGPT will auto-discover all 30 tools from the OpenAPI spec.

Step 2: Import URL

https://chikoh.com/.well-known/openapi?client=chatgpt

Trimmed to 30 operations (ChatGPT's limit). Priority tools: player outlook, injury report, show predictions, Kalshi markets.

Step 3: OAuth Configuration

Authorization URL:  https://chikoh.com/api/v1/oauth/authorize
Token URL:          https://chikoh.com/api/v1/oauth/token
Scope:              read
Client ID:          (from Chikoh developer dashboard)
Client Secret:      (from Chikoh developer dashboard)

Step 4: System Prompt

You are Chikoh, an AI fantasy sports co-manager.
Use tools for player outlook, injury report, comparisons,
waiver trends, trade value, draft rankings, show predictions,
and entertainment. Call tools with inferred sport/league
defaults — never ask for context first. Default sport: NFL.
Default scoring: PPR.

Set Up as a Gemini Extension

Connect Chikoh to Gemini, Google AI Mode, Gems, or Vertex AI Agent Builder.

Gemini Gems

1

Open gemini.google.com → Gem Manager → New Gem

2

Add extension → Import from URL → paste manifest URL below

3

Set auth to API Key, paste your chk_agent_* key

4

Add instructions: "You are Chikoh, a fantasy sports co-manager..."

5

Save. Gemini auto-discovers all tools from the spec.

Manifest URL

https://chikoh.com/.well-known/gemini-extension.json

Auth Config

Type:   API Key
Header: Authorization
Value:  Bearer chk_agent_YOUR_KEY
Extension Manifest

Vertex AI Agent Builder

1

Go to Vertex AI console → Agent Builder → Create Agent

2

Add Tool → OpenAPI → paste the Gemini-optimized spec URL below

3

Configure auth: API Key in Authorization header

4

Set agent instructions and deploy

5

Tools are auto-mapped from the OpenAPI spec

OpenAPI Spec URL

https://chikoh.com/.well-known/openapi?client=gemini

OAuth Alternative

Auth URL:  https://chikoh.com/api/v1/oauth/authorize
Token URL: https://chikoh.com/api/v1/oauth/token
Scopes:    read, syndicate
OpenAPI Spec (Gemini)

Authentication

Three auth methods. Anonymous access is free — no signup required.

Agent API Key

Best for bots and automated agents. Register to get a key prefixed with chk_agent_*.

Authorization: Bearer chk_agent_...

OAuth 2.1

Best for user-facing applications. Standard OAuth flow with PKCE support. Access tokens last 30 days (plus a 7-day grace window); when a token expires or is invalid, the server replies 401 with a WWW-Authenticate header — re-run the OAuth flow to reconnect. Compliant clients handle this automatically.

Authorization: Bearer <oauth_token>

Anonymous (Free Tier)

No auth needed for basic access. 10 calls per hour, limited tool set.

No header required

Register your agent to get an API key:

POST https://chikoh.com/api/v1/agent/register
Content-Type: application/json

{
  "agent_name": "my-fantasy-bot",
  "contact_email": "[email protected]"
}

// Response: { "api_key": "chk_agent_...", "tier": "bleachers" }

Commerce Protocols

Three agentic commerce standards — subscribe or pay in-chat on ChatGPT, Gemini, or any agent.

ACP (Agentic Commerce Protocol)

Standard by: OpenAI + Stripe

Enables ChatGPT users to subscribe to Chikoh directly in-chat.

Endpoints: /api/acp/checkout_sessions, /api/acp/products, /.well-known/acp.json

Payment: Stripe Shared Payment Token

agenticcommerce.dev →

UCP (Universal Commerce Protocol)

Standard by: Google (with Shopify, Walmart, Visa, Mastercard, Stripe, etc.)

Enables Gemini/AI Mode users to purchase Chikoh subscriptions natively.

Discovery: /.well-known/ucp

Endpoints: /ucp/v1/checkout-sessions/*

Payment: Stripe + PayPal via UCP payment handlers

ucp.dev →

PX-402 (Open Source)

Created by: Chikoh

Agent-discoverable API monetization. When agents hit rate limits, they get a 402 response with upgrade options and checkout URLs.

Discovery: /.well-known/ai-subscribe

NPM: px-402 · License: Apache 2.0

Fills the gap ACP and UCP don't cover — subscription-based API access for AI agents.

github.com/chikoh/px-402 →

Manual Import Acceptance

Convert staged bookmarklet and URL-sync imports into canonical leagues. Two endpoints: accept to convert, reject to discard.

POST /api/import/accept

Convert staged import data to canonical leagues, teams, rosters

Request

{
  "imported_data_id": "uuid",
  "overrides": { /* optional */ }
}

Response (200 OK)

{
  "ok": true,
  "league_id": "uuid",
  "summary": {
    "teams_created": 12,
    "rosters_created": 12,
    "matchups_created": 0
  }
}

Auth

Requires authenticated user (cookie or Authorization header). RLS enforces user_id match.

POST /api/import/reject

Soft-delete staged import (preserved for audit, cleaned after 90 days)

Request

{
  "imported_data_id": "uuid",
  "reason": "optional explanation"
}

Response (200 OK)

{
  "ok": true,
  "message": "Import rejected..."
}

Behavior

Sets deleted_at timestamp. Hard-deleted after 90 days. Provenance retained.

Flow: Bookmarklet/URL sync → imported_data staging →/api/import/accept → Canonical leagues/teams/rosters withimport_source provenance marker

78 Tools Across 13 Categories

Every tool works across all 10 supported sports. Data availability varies by season.

CategoryToolsExamples
Player Intel6outlook, compare, performance, trends, injury, matchup
Market Intel5draft rankings, waiver, trade value, roster optimizer, league analysis
Entertainment (TV)12shows, kalshi + polymarket, awards, buzz, contestants, elimination, edit analysis
Entertainment (Fun)5trade messages, press conference, roast, genre recap, sport primer
Strategic1ask_chikoh — natural language meta-router
Syndicate9war room, backtest, portfolio, ledger, CRUD
Commerce6register, subscribe, status, credits, buy, feedback
Gambling5line movement, parlays, props, survivor, DFS (whitelist-gated)
Special4simulation, roster insight, identity conflicts, resolve conflict
My Teams10my leagues, roster, matchup, start/sit, trade targets, waivers, weekly brief, standings, trade history, season outlook
Draft Intel6draft board, draft pick, draft strategy, auction values, dynasty rankings, FPL squad builder
Agent Tools9advanced analysis, game day intel, Monte Carlo, DFS optimizer, survivor picks + pools (create/join/pick/settle), pick'em, sharp money, player deep dive
Intelligence & Analytics3accuracy report, signal report, projection weights (Field Level+)
Total78All available via MCP, REST, and A2A
NFLNBAMLBNHLSoccerF1GolfCollege FootballCollege BasketballEntertainment

Rate Limits & Pricing Tiers

Free anonymous access for evaluation. Upgrade for production usage.

TierPriceRate LimitToolsAuth
AnonymousFree10/hourAll free toolsNone
BleachersFree5/week/sportAll free toolsOAuth
Essentials$6.99/mo25/week/sportAll toolsOAuth or API Key
Field Level$8.99/mo50/week/sportAll toolsOAuth or API Key
Owner's Suite$11.99/moUnlimitedAll toolsOAuth or API Key
Front Office$14.99/moUnlimitedAll + commissionerOAuth or API Key
Syndicate$49.99/moUnlimited + priorityAll + syndicate + data APIOAuth or API Key

All prices are monthly. Annual and 6-month billing available at checkout with up to 33% savings (billed as a single charge).

Tickets available for premium operations: Simulations (3 tickets), War Room (5 tickets). View full pricing

Always-on

AI Context Enrichment

Chat responses are enriched with canonical real-time context before the model sees them — weather, odds, advanced stats, coaching tendencies, prediction-market blends, injury detail, and DataGolf fields. Pure composition over existing services; no new API keys, no feature flag. Per-tier input token budget is the only throttle.

Enrichment Blocks

Composed per request based on sport + intent. Failures degrade to empty — never blocks chat.

  • weather — NFL game weather, F1 session weather
  • odds — sportsbook lines + best-price shopping whitelist
  • line-movement — NFL open→current deltas, steam whitelist
  • advanced-stats — target share, snap %, YPRR, EPA, xFP (intent-scoped)
  • coaching — NFL staff, PROE, pace, archetypes, scenario tendencies
  • prediction-market — blended model/book/Kalshi/Polymarket probabilities
  • injury-detail — per-sport injury tables (status, body part, practice, notes)
  • datagolf — SG:T/APP/PUTT, course fit, form, model edges (Golf only)

Per-Tier Input Token Budget

Budget = 0 short-circuits the dispatcher before any DB or service call. Bleachers (free) pays zero enrichment cost.

TierEnrichment Budget
Bleachers0 tokens (off)
Essentials500 tokens
Field Level1,500 tokens
Owner's Suite4,000 tokens
Front Office4,000 tokens
Syndicate4,000 tokens
Agent Developer4,000 tokens

Syndicate's differentiator is synthesis + model routing — not input budget.

Semantics

  • No feature flag. Enrichment is always on. The ENRICHMENT_BUDGETS_BY_TIER constant in config/CENTRAL_FUCKING_CONFIG.ts is the only throttle.
  • Policy gating. Blocks flagged whitelist are filtered out for users without sports_whitelist. Entertainment prediction markets stay public.
  • Intent-aware. The dispatcher derives intent (lineup / trade / waiver / draft / prediction-market / general) from page context and sport, then greedy-fits blocks into the token budget by priority.
  • Canonical-only. All reads go through canonical tables (player_universe, universal_teams) and existing services. No imported_data reads; no fabricated values.
  • Never blocks chat. Every enricher is wrapped in try/catch. Failures return an empty block with a reason code and the chat continues without that context.
  • Anonymized telemetry. Each enrichment run emits one structured event to feature_telemetry recording tier, intent, budget, tokens spent, per-block outcomes, and dropped blocks. No prompt text, no player names, no league content is logged. Telemetry failures are swallowed — they never affect the chat response.

Agent Developer Pricing

Building a bot or agent? Pay per call with split pricing — data calls are near-free, intelligence calls include LLM compute.

Data Calls

$0.0005

per call

Player outlook, draft rankings, trade values, waiver trends, injury reports, identity resolution

DB + formula. No LLM. <200ms.

Intelligence Calls

$0.02

per call

ask_chikoh, roster insight, simulations, show predictions, awards predictions

LLM-backed. 91 agents. 1-5s.

Spend Cap

$20

monthly default

Auto-reload with configurable monthly cap. Full audit trail with IP, user-agent, timestamps.

Adjustable. No surprise bills.

Discovery & Protocol Endpoints

Machine-readable endpoints for agent discovery, commerce, and capability negotiation.

ProtocolEndpointStatusPurpose
MCP Streamable HTTPPOST /mcpLivePrimary MCP transport (2025-03-26 spec)
MCP Legacy SSEGET /sseLiveBackward-compatible SSE transport
A2A Agent CardGET /.well-known/agent-cardLiveAgent capabilities, skills, auth
ACP DiscoveryGET /.well-known/acp.jsonLiveACP discovery — ChatGPT
UCPGET /.well-known/ucpLiveUCP business profile — Gemini, Google AI Mode
PX-402 CatalogGET /.well-known/ai-subscribeLivePX-402 commerce catalog — Any agent
OpenAPIGET /.well-known/openapiLiveOpenAPI 3.1 spec for GPT Actions / Gemini
Agent DiscoveryGET /.well-known/agent.txtLivePlain-text agent discovery
ChatGPT PluginGET /.well-known/ai-plugin.jsonLiveChatGPT plugin manifest
ACP APIPOST /api/acp/checkout_sessions, etc.LiveACP checkout, products, webhooks
UCP APIPOST /ucp/v1/checkout-sessionsLiveUCP checkout sessions, orders, webhooks
Intelligence MetricsGET /api/admin/intelligence-metricsLiveAdmin projection accuracy, signals, weights (admin-only)
User ConfidenceGET /api/user/confidenceLiveUser projection confidence score (Chikoh vs Sleeper)
Playbook ExecutePOST /api/playbooks/executeLiveExecute a multi-agent playbook workflow
Playbook TemplatesGET /api/playbooks/templatesLiveList playbook templates by domain (fantasy, tv, betting)
Playbook HistoryGET /api/playbooks/historyLiveExecution history with artifacts and betting outcomes
Custom Playbooks/api/playbooks/userLiveCRUD for user-created custom playbooks

PX-402 Protocol

Unauthenticated agent traffic returns HTTP 402 with a machine-readable subscription catalog. Your agent can programmatically discover tiers, pricing, and upgrade flows.

// HTTP 402 response body
{
  "status": 402,
  "protocol": "PX-402",
  "merchant": "Chikoh",
  "catalog_url": "https://chikoh.com/.well-known/ai-subscribe",
  "mcp_endpoint": "https://chikoh.com/mcp",
  "register": "https://chikoh.com/api/v1/agent/register",
  "human_fallback": "https://chikoh.com/choose-plan"
}

B2B Headless Fantasy API

Build custom fantasy leagues for any sport on top of Chikoh infrastructure. Bring your own scoring rules, your own data oracle, your own UI.

New B2B Endpoints

MethodEndpointPurpose
POST/api/v1/b2b/tenantsProvision tenant + API keys
GET/api/v1/b2b/tenants/meTenant info + usage
POST/api/v1/events/ingestBYOO event ingest
POST/api/v1/leaguesCreate league with Game DSL
POST/api/v1/b2b/sandbox/resetClear sandbox data
POST/api/v1/b2b/webhooksRegister outbound webhook

Start Building

Register your agent, get an API key, and make your first call in under a minute.