Changelog
Every shipped change to Diamond Projections — projections, optimizer, MCP server, REST API, and integrations. Subscribe via RSS.
New here? Create a free trial account or browse the API docs.
Postponed-game filtering
Players from postponed, cancelled, or suspended games are now automatically removed from the slate, projections, and optimizer.
- Track MLB game status (Postponed / Cancelled / Suspended) on every slate refresh.
- Filter non-playable games out of the player pool, public projections, and lineup optimizer.
- REST and MCP responses (`/api/v1/slates/*/players`, `get_player_pool`) now exclude affected teams immediately.
Competitor comparison pages
Launched side-by-side comparison pages so DFS players can evaluate Diamond DFS against Stokastic, SaberSim, RotoWire, and FantasyLabs.
- New `/compare/{competitor}` pages with feature, pricing, and FAQ schema.
- Added `/alternatives/mlb-dfs-projections` aggregator page.
- Sitemap and internal links updated.
Domain cutover and SEO foundations
Canonicalized the site on https://diamonddfs.com and shipped the first wave of search-engine and LLM-discovery foundations.
- All hardcoded references migrated to the diamonddfs.com apex.
- Added `/sitemap.xml`, `robots.txt`, Organization + WebSite JSON-LD.
- FAQPage and SoftwareApplication JSON-LD on ChatGPT, Claude, and Gemini integration pages.
- Expanded `/llms.txt` and `/llms-full.txt` for LLM-native discovery.
MCP server (Streamable HTTP) + OAuth 2.1
Diamond Projections is now available as an MCP connector for ChatGPT, Claude, and any MCP-aware agent.
- Streamable-HTTP MCP server at `/api/mcp`.
- OAuth 2.1 with PKCE, Dynamic Client Registration (RFC 7591), and rotating refresh tokens.
- Tools: `get_slates`, `get_player_pool`, `build_optimal_lineup`, `swap_player`, `explain_projection`, `explain_lineup`, weight-preset management.
REST API v1
Stable v1 REST API for projections, optimization, and PAPPI data, with full OpenAPI 3.1 spec at `/api/v1/openapi.json`.
- `slateId` (DraftKings draft-group ID) is the canonical slate selector; `slateDate` accepted with ambiguous-slate handling.
- API key auth (`dp_live_*`) plus OAuth and Supabase JWT support on every v1 endpoint.
- Self-serve API key management at `/settings/api-keys`.