Integration guide, checked 5 November 2026

Use with Gemini

Short answerAdd https://fanduelapi.com/api/mcp under mcpServers in ~/.gemini/settings.json with httpUrl and an Authorization header that reads $FANDUEL_API_KEY from your environment.

FanDuel API is an independent data service operated by FF API Inc. It is not affiliated with, endorsed by or sponsored by FanDuel.

Set it up

  1. Get a key

    Create a free key at https://fanduelapi.com/dashboard/keys, or let the agent start the signup for you through https://fanduelapi.com/connect. Store it as FANDUEL_API_KEY; it is shown once.

  2. Gemini CLI settings

    Gemini CLI expands $VARIABLE references in settings.json from your environment, so the key stays out of the file.

    ~/.gemini/settings.json
    {
      "mcpServers": {
        "fanduelapi": {
          "httpUrl": "https://fanduelapi.com/api/mcp",
          "headers": {
            "Authorization": "Bearer $FANDUEL_API_KEY"
          },
          "timeout": 30000
        }
      }
    }
  3. Check it

    Run /mcp inside Gemini CLI: fanduelapi should list its tools.

  4. Check the key with one REST call

    If a client cannot reach MCP, the same data is plain REST.

    Terminal
    export FANDUEL_API_KEY=<your key>
    curl "https://fanduelapi.com/api/v1/props?sport=nba&stat=points&limit=3" \
      -H "Authorization: Bearer $FANDUEL_API_KEY"

A first prompt

Bounded and specific, so the first answer shows whether the data fits.

Prompt
Use the FanDuel API MCP server. List tonight's NBA points props from FanDuel for one game, show each line with the over and under prices, and flag any prop whose line moved since it opened. Quote meta.as_of.

If something is off

The tools list is empty or the server will not connect

The server speaks streamable HTTP as stateless JSON over POST at https://fanduelapi.com/api/mcp. A client that only speaks SSE or stdio needs a bridge such as mcp-remote.

A tool says it needs an API key

Data tools need the Authorization header. search_docs, fetch_doc, get_sample_props and send_feedback work without one.

A 429 or quota error

Relay error.user_message to the person as is. Wait until error.reset_at for a rate limit; a monthly quota needs the month to reset or a plan change, which only the person can approve.

Other clients

The same server works anywhere MCP does. Everything an agent needs is in the agent guide and the llms.txt file.