# ─────────────────────────────────────────────────────────────
# pointless/mcp · developer console
# region: us-central1 · status: ONLINE · protocol: mcp/http
# ─────────────────────────────────────────────────────────────
██████╗  ██████╗ ██╗███╗   ██╗████████╗██╗     ███████╗███████╗███████╗
██╔══██╗██╔═══██╗██║████╗  ██║╚══██╔══╝██║     ██╔════╝██╔════╝██╔════╝
██████╔╝██║   ██║██║██╔██╗ ██║   ██║   ██║     █████╗  ███████╗███████╗
██╔═══╝ ██║   ██║██║██║╚██╗██║   ██║   ██║     ██╔══╝  ╚════██║╚════██║
██║     ╚██████╔╝██║██║ ╚████║   ██║   ███████╗███████╗███████║███████║
╚═╝      ╚═════╝ ╚═╝╚═╝  ╚═══╝   ╚═╝   ╚══════╝╚══════╝╚══════╝╚══════╝
v0.4 / private-betaexposes live nba + mlb markets, player props, sharp consensus, historical datasets, order execution
[✓]mcp.endpointus-central1 · https · online
[✓]tool.registry100+ tools · data | trading
[✓]auth.layerbearer · sha256 · revocable
[✓]data.feedsespn · nba_api · kalshi · polymarket
[✓]agent.runtimecodex · claude code · any mcp client
[✓]readyawaiting connection

A hosted Model Context Protocol server that exposes real-time NBA and MLB games, props, sharp consensus, multi-season historical datasets, and order execution on Kalshi / Polymarket — directly inside Codex, Claude Code, or any MCP client. Sign in with Google, generate an API key, choose a focused MCP profile, paste one snippet, done.

requires
an MCP-compatible clientClaude Code, Codex, Cursor, Zed, OpenClaw, or any chat app with Model Context Protocol support. For Claude app custom connectors, prefer the smaller core or research URLs instead of the full catalog. There's no standalone web UI or direct REST API.

── [ mcp_profiles ]────────────────────────────────────────────────

Pointless exposes focused MCP profiles so hosted chat apps do not have to load the entire tool registry at once. Use one profile per connector/session when possible.

profileendpointbest for
corehttps://pointless-agent-service-7bjvrfi3aa-uc.a.run.app/mcp/core
Compact sports data catalog: slate, team/player data, props, markets, sharp reads, strategy summaries.
Claude app custom connector, daily questions, and ordinary research.
researchhttps://pointless-agent-service-7bjvrfi3aa-uc.a.run.app/mcp/research
Historical datasets, Python analysis, shard reducers, backtests, saved research context, and research agents.
Claude app custom connector when you want backtests or load_research_dataset/run_analysis.
tradinghttps://pointless-agent-service-7bjvrfi3aa-uc.a.run.app/mcp/trading
Portfolio, orders, strategy mutations, and order execution tools. Requires trading scope.
Dedicated trading sessions after you have linked venue credentials.
fullhttps://pointless-agent-service-7bjvrfi3aa-uc.a.run.app/mcp
Full legacy catalog for clients that handle large MCP registries well.
Claude Code, Codex, Cursor, Zed, and advanced MCP clients.

── [ what_you_get ]────────────────────────────────────────────────

module.tools

100+ tools

Everything the Pointless app uses internally, exposed as MCP tools. Scoped to data (read-only research) or data + trading (full trading access with your own venue credentials).

module.prompts

28 slash-command workflows

Sport-aware multi-step prompts for the questions that actually matter at tip-off and first pitch — backtest-gated, no invented precision. Plus 7 agent system-prompts for power users.

$ls --tools --featured
scopetooldescription
dataquery_slateCanonical slate tool for NBA/MLB games with odds + enrichment
datafind_prop_edgesRank props by season average vs line
dataanalyze_propL10 hit rate, recent form, matchup history
dataget_prop_progressLive prop trajectory: current vs expected vs pace
datafind_arbitrageCross-venue (Kalshi vs Polymarket) price gaps
dataget_game_timelineMinute-by-minute score + price history
dataload_research_datasetFull season game dataset for custom backtests
datarun_analysisExecute Python analysis against loaded datasets
tradingbuy_propPlace a prop order (preview → confirm)
tradingbuy / sell / cancelMoneyline trading on Kalshi or Polymarket

# full list appears in codex / claude code after install — this is a sampler

$history | grep ^/
└─ daily_flow
  • $ /morning-briefDaily digest: overnight settlements, open positions, today's slate, pending actions
  • $ /gamesSchedule table + what's interesting tonight (lopsided/tight, injury swings, strategy proximity, movers, arbs)
  • $ /strategies-tonightActive strategies ranked by proximity, pregame vs live-only separation, dead strategy flags
  • $ /injury-impactToday's status changes, line movement, tradeable teammate usage angles
  • $ /why-moved <market>Why this market moved: price history, whale activity, sharp timing, injury/news, cross-venue context
  • $ /lineup-watchTrack or set up lineup-change watches — surprise actives, late scratches, role shifts that swing props
└─ research
  • $ /best-props [budget]Tonight's best props with L10/H2H validation + a Conversation Stat per pick
  • $ /best-ml [budget]Moneyline slate validated by historical backtests — no fake model, just data
  • $ /player <name>Season baseline, L10 trend, tonight's status, live props, Conversation Stat
  • $ /prop-focus <player> <stat>Deep dive on a single prop with hit rate, trend, and matchup history
  • $ /leaders [stat]League leaders with playable context — plays tonight? line vs baseline? RESPECTED/FADING/CHASING
  • $ /whats-unusualReal market anomalies only: movers, volume spikes, whale trades, cross-venue arbs. No picks.
  • $ /parlay-builder [budget]2-3 lotto ticket combos: 5-6 legs across games + stat types, big payout, small cost
  • $ /sharp-boardTracked sharp picks board: source agreement, conflicts, which ideas are worth pricing
  • $ /edge-auditAudit edge candidates for stale prices, thin samples, sharp overlap, and liquidity before you bet
└─ strategy
  • $ /strategy-builderGuided intake for new strategies: templates, condition vocabulary, sizing + exit choices
  • $ /strategy-reportDeep dive into strategy performance, win rate trends, optimization ideas
  • $ /correlation-checkFlag same-game, same-team, same-player, opposite-side clusters across positions or proposed legs
└─ review
  • $ /week-review [days]Calendar in text form: daily breakdown, bet size buckets, top 5 teams won/lost on, story of the week
  • $ /portfolioFull portfolio health check with P&L, exposure, and recommendations
  • $ /pregameFull pregame prep for tonight's slate
  • $ /best-exitsRank open positions by exit urgency — what to sell, trim, or protect, with executable liquidity
  • $ /clv-reportAudit entry quality vs closing-line value: true CLV where available, proxy where not

── [ install ]─────────────────────────────────────────────────────

  1. 01get your key

    Sign in with Google — a key is generated automatically. No forms, no decisions.

    pointless@mcp ~ %
    $ ! open https://pointless-nba.vercel.app/mcp/setup

    # run this from codex / claude code, or just open the url in a browser

  2. 02paste the command

    The setup page gives you a single terminal command that creates .mcp.json in your project. Claude Code/Codex can use the full URL. Claude app custom connectors should use the profile URL that matches the chat: /mcp/core, /mcp/research, or /mcp/trading.

    pointless@mcp ~ %
    echo '{"mcpServers":{"pointless":{"type":"http","url":"...","headers":{"Authorization":"Bearer pk_live_..."}}}}' > .mcp.json

    # the real command has your key pre-filled — just copy + paste

  3. 03restart codex / claude code

    mcp__pointless__* tools appear. Try /best-props or ask “what NBA games are on tonight?”

    # want to trade? link your kalshi/polymarket keys at /mcp/account

── [ auth · security ]───────────────────────────────────────────

scopes

Scopes

  • data — read-only. Everything the Pointless research terminal shows: games, props, injuries, sharp consensus, historical datasets. Never touches your exchange accounts.
  • trading — adds order execution (buy, sell, cancel, buy_prop). Requires you to have configured your Kalshi / Polymarket credentials separately in Pointless; those are encrypted at rest and never shared with the MCP client.
storage

What's stored

  • The API key itself is SHA-256-hashed server-side — we can't recover the plaintext. If you lose it, revoke and generate a new one.
  • Revoke any key instantly from /account. Revocation takes effect within ~60 seconds.
  • Every MCP tool call is scoped to your Firebase user — no other user can see or touch your positions, balances, or strategy history through your key.
Developers — Pointless NBA MCP