AI CLIENTS
Use the DraftKings API with ChatGPT
Connect ChatGPT to DraftKings API documentation over MCP, understand why connectors cannot send an API key, and bring live observations in with REST or an Action.
Editorial review: · Not a live coverage report
ChatGPT cannot present a custom API key to an MCP server, per OpenAI's documentation. Connected here, it reads public documentation through search and fetch, not live data rows.
Choose a route
What you can get depends on your plan and on who holds the key. Plan details below follow OpenAI's documentation as checked on the date in the sources list.
| Route | What ChatGPT gets | Who it suits |
|---|---|---|
| Attach a file you pulled over REST | The rows you fetched, with their clocks | Any plan that accepts file uploads |
| Custom MCP connector with no authentication | search and fetch over public documentation | Business, Enterprise and Edu on web. Pro with read and fetch permissions. Plus and Free are not stated |
| GPT Action with an API key | Live rows through the Action schema | Existing GPTs only, ending 11 December 2026 on the standard schedule |
| Your own backend | Whatever your backend returns | Developers building on the OpenAI API |
Connect the documentation over MCP
On ChatGPT web, open Plugins, select the plus button, then Add custom MCP server. OpenAI says Developer Mode is no longer needed first. Enter the URL below and choose no authentication.
https://draftkingsapi.com/api/mcpUse the draftkings search tool to find the page about API request limits, then fetch it and tell me the plans and limits it states, with the page URL. Do not guess anything the page does not say.OpenAI lists noauth and oauth2 for this route and says ChatGPT cannot present custom API keys. This server has no OAuth sign-in, so the keyed data tools are not usable from ChatGPT. A call to one returns a message explaining that it needs a key.
Bring live rows in with REST
Run a bounded request on your own machine, where your key is, and attach the output. ChatGPT never sees the key. Pick6 has a native CSV option, which suits file upload.
curl --fail-with-body "https://draftkingsapi.com/api/v1/pick6/projections?sport=NHL&stat=Shots%20on%20Goal&limit=100&format=csv" \
-H "Authorization: Bearer $DRAFTKINGS_API_KEY" \
-o pick6-nhl.csvThese rows are recorded DraftKings Pick6 observations. observed_at is a capture clock. stale=true means older than 15 minutes. Standings multipliers are not odds. Summarize targets by player and tell me how many rows are stale. Do not recommend entries or bets.For sportsbook or DFS rows, use export-csv.py, because those datasets have no native CSV. A file is a snapshot, so attach a new one when you need newer observations.
Use a GPT Action only if you already have one
A GPT Action can send a Bearer key and reach live rows. Import /openapi-chatgpt.json, which holds the subset of operations an Action can use, and set authentication to API key, Bearer.
OpenAI says custom GPTs retire on 11 December 2026, or 11 February 2027 for FedRAMP and approved-deferral workspaces, and that custom actions do not transfer through migration. Do not start new work here without checking OpenAI's current guidance.
The key you enter sits in that GPT's configuration, so use a dedicated named key and revoke it when the GPT is retired.
Keep the credential out of the conversation
Do not paste a key into a chat. Keep it in your shell, or in your backend's secret store, and use a dedicated named key for anything an assistant can reach. Keys on one account share one allowance.
Tools the server exposes
The endpoint is Streamable HTTP in its stateless JSON form, over POST. search and fetch read public documentation and need no key. Every other tool calls the same handler as its REST endpoint, so a Bearer key is required and each call counts against your plan.
| Tool | Key needed | Use it for |
|---|---|---|
search, fetch | No | Guides, questions, data reports and integration pages |
get_coverage | Yes | Call this first: measured stored coverage and collector context |
get_pick6_projections, get_pick6_history | Yes | Pick6 rows and recorded changes |
get_sportsbook_events, get_sportsbook_odds, get_sportsbook_history | Yes | Mainline observations and retained history |
get_dfs_sports, get_dfs_contests, get_dfs_slates, get_dfs_players | Yes | DFS catalog, contests, slates and salaries |
get_context_games, get_context_player_stats, get_context_team_stats | Yes | Scores and box scores for observed events |
get_stats_games, get_stats_player_games, get_stats_team_games | Yes | Independent statistics. sport and season are required |
As of 2026-11-03, native sportsbook scopes cover New York NFL, NHL, college basketball and college football game lines and New York NHL Shots on Goal, points, assists, saves, goalscorers, power-play points and first-period shots. Read snapshots and streamed changes through the sportsbook endpoints. ESPN-attributed DraftKings moneyline, spread and total observations are also available across eight leagues. Current scope inventory is listed at /api/v1/sportsbook/scopes. Pick6 rows carry standings multipliers such as 1.5x. A standings multiplier is not decimal odds, a probability or an established entry payout.
Troubleshoot ChatGPT
These are the failures you are most likely to see.
- The Add custom MCP server option is missing: your plan or workspace settings may not allow it. Check OpenAI's page in the sources below.
- A tool says it needs an API key: expected. Use the REST route for rows.
- ChatGPT presents retrieved documentation as a live board: tell it to report the page URL and to treat documentation as documentation.
- An Action returns 401: the key is wrong or revoked, or the authentication type is not Bearer.
- A GET request to the endpoint returns 405: this is expected. The server is stateless JSON over POST.
REST alternative
Everything the data tools do is a plain HTTP call, and MCP is optional. Use REST when a client cannot send a header, or when a scheduled job needs no assistant in the loop.
curl --fail-with-body "https://draftkingsapi.com/api/v1/pick6/projections?sport=NHL&stat=Shots%20on%20Goal&limit=5" \
-H "Authorization: Bearer $DRAFTKINGS_API_KEY"The public contract is at /api/openapi. See the Python guide and the JavaScript guide for retries and pagination.
Evaluate before you build on ChatGPT
Check the data before you promise a feature. A connected client shows that the transport works, not that the coverage fits your project.
- Read the measured coverage report and status for the sports and stats you need.
- Read league coverage, because filter labels differ by dataset.
- Read odds vs Pick6 multipliers vs DFS salaries so the assistant does not mix up what the numbers mean.
- Read freshness, then ask the assistant to report
observed_atandstalefor each row it uses. - Compare other providers on the comparison hub if you need full-book sportsbook props or multi-book feeds.
Free includes 500 requests/month at 20/minute; Developer is $49/month with 10,000 requests/month at 60/minute; Production is $149/month with 50,000 requests/month at 120/minute. Limits are shared across keys.
Try it
Pull a small CSV on your own machine and attach it to the chat.
curl --fail-with-body "https://draftkingsapi.com/api/v1/pick6/projections?sport=NHL&stat=Shots%20on%20Goal&limit=5" \
-H "Authorization: Bearer $DRAFTKINGS_API_KEY"Working assets
Check the recorded data
Questions
Can ChatGPT read live DraftKings rows through the connector?
No. OpenAI documents no authentication and OAuth as the options and says ChatGPT cannot present custom API keys. Connected with no authentication, ChatGPT reads public documentation through search and fetch.
What is the simplest way to analyze rows in ChatGPT?
Pull a bounded CSV on your own machine and attach it. It costs one request and ChatGPT never holds your key.
Should I build a new custom GPT?
OpenAI says custom GPTs retire on 11 December 2026 on the standard schedule and that actions do not transfer through migration, so check its current guidance first.
Which ChatGPT plans can add a custom MCP server?
OpenAI's page lists Business and Enterprise or Edu on web, and Pro with read and fetch permissions. It does not state Plus or Free eligibility.
Sources
- OpenAI: connecting custom MCP servers in ChatGPT checked 2026-11-03
- OpenAI: plugin authentication checked 2026-11-03
- OpenAI: custom GPT retirement and migration FAQ checked 2026-11-03
- OpenAI: configuring actions in GPTs checked 2026-11-03
Related resources
Connect Claude Code to DraftKings Pick6, sportsbook and DFS observations over MCP with an environment-backed key, and see what Claude web chat can reach.
Export DraftKings data to CSVUse native format=csv on Pick6 endpoints, and convert sportsbook, DFS and statistics JSON to CSV on your side with a working script.
DraftKings API developer starter kitDownload Python and Node examples, a notebook, Postman templates, a daily archive workflow and a comparison feed. Bounded requests and no embedded credentials.
DraftKings API quickstart: your first call in one minuteFor developers who want a response now: a keyless sample, then a free key, then an authenticated call. Not for production hardening or sportsbook player props.
Is there an MCP server for AI agents?Yes. The hosted MCP endpoint offers keyless search and fetch tools plus data tools that need a Bearer key in the client configuration.
Compare DraftKings data providersSourced, dated comparisons of OpticOdds, ParlayAPI and DFS pick'em providers, plus a scraper migration path.
Independent service operated by DD Inc., not affiliated with or endorsed by DraftKings. Technical access is not a redistribution license. No wagering: this service does not place, recommend or settle entries or bets. Check sources and status for actual capture context.