DataFluxor MCP

Search Google, audit websites and collect web data for AI agents using DataFluxor tools.

Dokümantasyon

At a glance

  • Codex, Claude Code, Cursor: one command
  • Install the ChatGPT plugin or find DataFluxor in Claude Connectors
  • 38 tools: 16 data tools, 5 run controls, 16 saved-work tools and an account tool

Connect your AI in a minute.

Pick the option that matches the app you use. Any plan works, including the Free plan with no card (FUT Data alone does not include MCP). Nothing runs until your agent calls a tool.

Codex, Claude Code, Cursor: the fastest way

CLI

One command connects DataFluxor to every coding agent on your machine.

  1. Install the CLI

    Paste this into Terminal. It downloads the right build for your Mac or Linux machine and checks its checksum. $curl -fsSL https://datafluxor.com/install.sh | sh Copy
  2. Connect your AI agents

    Signs you in through your browser, then registers DataFluxor as an MCP server with Codex, Claude Code and Cursor. No config files to edit, except for Cursor: it cannot use browser sign-in with the remote URL, so create an API key in Workspace → API access and export DATAFLUXOR_API_KEY where Cursor starts. $datafluxor init --mcp Copy

One agent only? datafluxor setup mcp --agent codex (or claude-code, cursor). More in the CLI guide.

Connect DataFluxor in Claude or ChatGPT

Browser sign-in

Install the published ChatGPT plugin or find DataFluxor in Claude’s connectors directory. Sign in to your DataFluxor workspace to connect your tools.

Install in ChatGPT Connect in Claude

  1. Claude: Customize → Connectors → search for DataFluxor. ChatGPT: Open the listing above and choose Install plugin.
  2. Sign in to DataFluxor, choose a workspace, and approve.
  3. Start a chat and select DataFluxor to use its tools.

Prefer a custom MCP connection? Use this endpoint:

MCP server URL

https://datafluxor.com/mcp

A connector added on claude.ai also works in Claude Desktop. Custom connectors in ChatGPT depend on your ChatGPT plan and workspace settings.

What the MCP server gives you

01

Give agents a real product surface

Google results for 247 countries, autocomplete, index checks, technical crawls, page extraction, SERP volatility, keyword-gap comparisons, and Google AI Overview checks — as MCP tools your client discovers with tools/list.

02

Keep access scoped to the workspace

OAuth approval binds an MCP client to one DataFluxor workspace. Plans, permissions, rate limits, and credits remain enforced by the current workspace state, and tools/list only shows what the workspace can use.

03

Handle long work safely

A fresh Google search usually takes 20–35 seconds and can take up to 2 minutes. Repeat a timed-out call with the same idempotency_key within 24 hours to receive the finished result without a second charge (after that the key is forgotten and a repeat is a new, charged call), or start a retained run with scraper_run_create and poll it with scraper_run_get.

How agents use the MCP server

  1. 01 Let an SEO agent collect fresh SERP evidence before it writes a content recommendation.
  2. 02 Give a coding assistant a documented interface for controlled crawling and extraction jobs.
  3. 03 Run the same tools headlessly in CI with an API key sent in the X-API-Key header.

The MCP endpoint and its HTTP equivalent

Use the HTTP API for application code, or the MCP endpoint for agent workflows (the same tool, by name). Access comes with your plan.

https://datafluxor.com/mcp

Jump to install steps

Request

# Most clients only need the URL. Sign-in starts automatically:
https://datafluxor.com/mcp

# Claude Code
claude mcp add --transport http datafluxor https://datafluxor.com/mcp

# Generic JSON configuration
{ "mcpServers": { "datafluxor": {
    "type": "http", "url": "https://datafluxor.com/mcp" } } }

Example tool result (illustrative values)

// tools/call → google_serp_scrape
{
  "jsonrpc": "2.0",
  "id": 2,
  "result": {
    "content": [
      { "type": "text", "text": "{\"query\":\"serp api\",…}" }
    ],
    "structuredContent": {
      "query": "serp api",
      "country": "US",
      "language": "en",
      "cache_hit": true,
      "credits_used": 1,
      "items": [
        {
          "position": 1,
          "title": "What is a SERP API?",
          "url": "https://www.example.com/serp-api",
          "domain": "example.com"
        }
      ]
    },
    "_meta": {
      "datafluxor/credits": { "original_outcome_cost": 1 }
    }
  }
}

Manual setup.

Only needed if the options above do not fit: another client, a config file you manage yourself, an API key for headless use, or the local bridge.

Advanced / manual setup Config snippets for Claude Code, Claude Desktop, ChatGPT, Cursor, VS Code and Codex, plus API keys.

Claude (claude.ai and Claude Desktop)

Browser sign-in

Open Customize → Connectors, search for DataFluxor, and connect. Sign in to DataFluxor, choose a workspace, and approve. The URL below is an alternative for a custom connector.

Alternative: custom connector URL

https://datafluxor.com/mcp

A connector added on claude.ai is also available in Claude Desktop when you sign in with the same account.

Claude Code

Browser sign-in

Add the remote server, then run /mcp inside Claude Code, select datafluxor, and choose Authenticate to finish browser sign-in.

Terminal

claude mcp add --transport http datafluxor https://datafluxor.com/mcp

# then, inside Claude Code:
/mcp   # select datafluxor → Authenticate

Headless / CI (API key from the environment)

claude mcp add --transport http datafluxor https://datafluxor.com/mcp \
  --header 'X-API-Key: ${DATAFLUXOR_API_KEY}'

Claude Desktop (local command)

Local bridge

The custom connector above is the simplest route. If you prefer a local stdio server, download the bridge below, run datafluxor-mcp login once, and add it to claude_desktop_config.json.

claude_desktop_config.json

{
  "mcpServers": {
    "datafluxor": {
      "command": "/path/to/datafluxor-mcp",
      "args": [
        "-timeout",
        "5m"
      ]
    }
  }
}

ChatGPT

Browser sign-in

Open the published DataFluxor listing in ChatGPT, choose Install plugin, then sign in to your DataFluxor workspace. Review the available tools before using them. The URL below is an alternative for custom MCP connections.

Alternative: custom MCP server URL

https://datafluxor.com/mcp

Custom connectors depend on your ChatGPT plan and workspace settings.

Cursor

API key

Add this entry to ~/.cursor/mcp.json (or.cursor/mcp.json in a project) and export DATAFLUXOR_API_KEY in the shell that starts Cursor. The key is read from the environment, not written to the file.

~/.cursor/mcp.json

{
  "mcpServers": {
    "datafluxor": {
      "url": "https://datafluxor.com/mcp",
      "headers": {
        "X-API-Key": "${env:DATAFLUXOR_API_KEY}"
      }
    }
  }
}

Cursor cannot use browser sign-in with the remote server URL (its callback is not accepted), so this entry always needs an API key. datafluxor init --mcp writes this same entry; create the key in Workspace → API access and export DATAFLUXOR_API_KEY where Cursor starts. Prefer browser sign-in? Use the local bridge configuration instead.

VS Code

Browser sign-in

Add the server to.vscode/mcp.json (or run the one-line command). VS Code opens the DataFluxor sign-in when the server first starts.

.vscode/mcp.json

{
  "servers": {
    "datafluxor": {
      "type": "http",
      "url": "https://datafluxor.com/mcp"
    }
  }
}

Or from a terminal

code --add-mcp '{"name":"datafluxor","type":"http","url":"https://datafluxor.com/mcp"}'

API key instead of sign-in (.vscode/mcp.json)

{
  "inputs": [
    {
      "type": "promptString",
      "id": "datafluxor-api-key",
      "description": "DataFluxor API key",
      "password": true
    }
  ],
  "servers": {
    "datafluxor": {
      "type": "http",
      "url": "https://datafluxor.com/mcp",
      "headers": {
        "X-API-Key": "${input:datafluxor-api-key}"
      }
    }
  }
}

OpenAI Codex

API key

Add the server to your Codex configuration and export DATAFLUXOR_API_KEY. Codex sends the key as a bearer token, which the DataFluxor endpoint accepts. Codex stops waiting for a tool after 60 seconds by default and a synchronous DataFluxor call can take up to 85, so keep the 120-second tool timeout.

~/.codex/config.toml

[mcp_servers.datafluxor]
url = "https://datafluxor.com/mcp"
bearer_token_env_var = "DATAFLUXOR_API_KEY"
tool_timeout_sec = 120

Prefer browser sign-in? Run codex mcp add datafluxor --url https://datafluxor.com/mcp, then codex mcp login datafluxor, and add the tool_timeout_sec line to the [mcp_servers.datafluxor] table by hand. The API key entry above suits headless use.

Use an API key instead of browser sign-in

Create a key in Workspace → API access and send it as the X-API-Key header, or as Authorization: Bearer where a client only supports bearer tokens. Keep it in an environment variable or secret store — never in a URL or a committed file.

Raw MCP request with an API key

curl -s https://datafluxor.com/mcp \
  -H "X-API-Key: $DATAFLUXOR_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"example","version":"1.0"}}}'

Local bridge with an API key

{
  "mcpServers": {
    "datafluxor": {
      "command": "/path/to/datafluxor-mcp",
      "args": [
        "-timeout",
        "5m"
      ],
      "env": {
        "DATAFLUXOR_API_KEY": "df_live_…"
      }
    }
  }
}

Stdio-only clients can run the local bridge. After datafluxor-mcp login, the configuration needs no key at all:

Local bridge after login

{
  "mcpServers": {
    "datafluxor": {
      "command": "/path/to/datafluxor-mcp",
      "args": [
        "-timeout",
        "5m"
      ]
    }
  }
}

Bridge setup

# Rename the file you downloaded to datafluxor-mcp (datafluxor-mcp.exe on Windows)
# macOS
mv ./datafluxor-mcp-darwin-* ./datafluxor-mcp
chmod +x ./datafluxor-mcp
xattr -d com.apple.quarantine ./datafluxor-mcp
./datafluxor-mcp login     # browser sign-in, stored locally
./datafluxor-mcp status    # confirm the saved sign-in

# Linux
mv ./datafluxor-mcp-linux-* ./datafluxor-mcp
chmod +x ./datafluxor-mcp && ./datafluxor-mcp login

# Windows (PowerShell)
Rename-Item .\datafluxor-mcp-windows-amd64.exe datafluxor-mcp.exe
.\datafluxor-mcp.exe login

Plugin, CLI, and the tool list.

Agent plugin

The DataFluxor plugin adds the DataFluxor connection to your AI app together with an SEO research skill that tells the agent how to use the tools well. It signs in to your own workspace and never contains a key.

Install the ChatGPT plugin, add DataFluxor from the Claude connectors directory, or use the steps at the top of this page for any other app.

DataFluxor CLI

Install the CLI, then datafluxor init --mcp sets up Codex, Claude Code and Cursor for you. For any other client, datafluxor mcp-config <client> prints a ready-to-paste configuration, and agents that only run shell commands can call every tool directly with JSON output.

Terminal

datafluxor init --mcp
datafluxor mcp-config <client>

Read the CLI guide

ToolWhat it does
google_serp_scrapeGoogle organic results for 247 countries (desktop)
google_suggest_harvestGoogle Autocomplete expansion from a seed
google_index_checksite: index observations for up to 100 URLs
site_seo_crawlerBounded technical SEO crawl, up to 100 pages
web_scrapeScrape one page as Markdown, using an isolated browser only when the page needs it
url_fetchFetch one URL exactly as served (feeds and files, gzip aware)
url_probeStatus and headers for up to 100 URLs in one call
web_searchSearch the web and read the result pages
html_metadata_extractorTitles, meta, headings, Open Graph, and links from a URL
serp_volatility_sensorRanking movement against a retained baseline
competitor_gap_extractorCompare domains across a keyword list you supply
ai_overview_visibility_trackerBrand presence in Google AI Overviews
content_brief_generatorA content brief from the pages that rank for a keyword
site_crawl_changesWhat changed between two of your crawls of a site (free)
site_link_sourcesWhich of your crawled pages link to a domain (free)
serp_marketsThe supported search markets: country codes, the language Google serves in each, and devices (free)
scraper_run_createStart a retained background run for long or batch work
scraper_run_getRead a retained run's status, evidence, and result
scraper_run_listList retained runs in the workspace
scraper_run_cancelCancel a queued or running retained run
scraper_run_deletePermanently delete a finished retained run and its result
account_infoShow which account the connection is signed in to, its credits and limits
projects_listList the organization's projects and what each holds
saved_keywords_listList a project's saved keywords without fetching Google data
saved_keywords_saveSave supplied keywords to a workspace project
saved_keyword_getWhat is already known about one saved keyword: latest position and observation history
research_documents_listList a project's retained research documents
research_document_getRead a research document from a workspace project
research_document_saveCreate a research document from supplied notes, items and sources
project_createCreate a project, optionally with the site its positions are computed for (a refused site creates nothing)
project_renameRename a project; everything saved in it stays (owner or admin)
project_deletePermanently delete a project with everything saved in it, after confirming its name or revision (owner or admin)
project_set_siteAttach a site to a project and make it the project's target
saved_keyword_updateReplace the tags of one saved keyword
saved_keywords_deletePermanently delete saved keywords and their rank history
research_document_updateEdit a research document's title or content
research_document_deletePermanently delete a research document
project_rank_reportCurrent rank of every saved keyword in a project (unstable ones with their range), what moved, and a difficulty estimate, from existing observations

web_scrape reads one page as Markdown for 1 credit and opens it in the isolated browser, for 5 credits, only when the page needs JavaScript or the site refuses a plain request (browser: auto, never or always); a detected access challenge is free. Use url_fetch for files and feeds.

Use the bridge where your client needs a local command.

Each binary uses the same browser OAuth flow as the remote MCP endpoint. Download a matching build, verify its checksum, run datafluxor-mcp login, then add the command to your MCP client.

Questions about the MCP server

What is MCP?

Model Context Protocol is a standard way for compatible AI clients to discover and use tools. DataFluxor exposes an MCP endpoint alongside its HTTP API and CLI.

Which clients can use browser sign-in?

Claude (claude.ai and Claude Desktop connectors), Claude Code, ChatGPT, VS Code and Codex (codex mcp login datafluxor) sign in through OAuth: add the server, sign in to DataFluxor, choose a workspace, and approve. For other clients, such as Cursor, use an API key header or the local bridge, which runs the same browser sign-in once with datafluxor-mcp login.

Which plans include MCP?

New Free, PAYG, Starter, Pro and Scale accounts can use available public scraper tools over MCP. Browser page scraping appears only when the isolated browser is ready. Plans differ in included credits and limits; existing request-based Free accounts retain their terms. FUT Data is a separate REST API subscription and exposes no MCP tools.

Do calls cost credits?

Scraper tool calls, and the retained runs that scraper_run_create starts, are metered exactly like the equivalent HTTP API request, against the same plan credits, rate limits, daily live-page allowance, and per-tool entitlements — 5 credits per live Google results page, 1 per cached page. Free: the handshake, tools/list, the run controls that only read or manage a run (scraper_run_get, scraper_run_list, scraper_run_cancel, scraper_run_delete), the 16 project, saved-keyword and research-document tools, account_info, serp_markets, and the crawl-history reads (site_crawl_changes, site_link_sources). Every paid result states what it cost; your remaining credits and today's live-page allowance are shown in the dashboard.

Is tool output safe to act on?

Treat it as untrusted data. Results contain text from third-party web pages and Google results (titles, snippets, page content), and that text can contain instructions aimed at an AI agent. Let your agent read the results, not obey them, and keep its confirmation prompts on for tools that spend credits or change saved work.

Which MCP transport is supported?

Streamable HTTP, version 2025-06-18 with 2025-03-26 compatibility, answering each POST with JSON. Initialize first and send the negotiated protocol header. The server issues an Mcp-Session-Id so that a connected client can be told when the tool list changes (after a release or a plan change): the next call of that session is answered as a short event stream carrying notifications/tools/list_changed and then the result. No legacy 2024-11-05 HTTP+SSE, standing or resumable streams, or cross-request cancellation/progress are advertised.

My assistant does not see a new tool or argument. What do I do?

Assistants read the tool list when they connect and keep it. After a DataFluxor release, reconnect the DataFluxor connector (in Claude Code: /mcp, then reconnect; in other apps, turn the connector off and on, or start a new chat) so it reads the current list. Clients that support the MCP list-changed notification refresh on their own at their next call.

Where do I find the full tool reference?

Call tools/list — the catalogue reflects your workspace’s current entitlement. A full workspace sees 38 tools: 16 data tools, 5 retained-run controls, 16 saved-work tools and account_info (which account the connection is signed in to), all listed below. The API documentation describes the scraper tools and run controls, their parameters, request limits, and the direct API envelope. FUT Data is sold separately through the REST API only and exposes no MCP tools.

What if a long search times out?

A fresh Google search usually takes 20–35 seconds and can take up to 2 minutes. If your client times out, repeat the identical call with the same idempotency_key within 24 hours: the finished result is returned from cache without a second charge. After 24 hours the key is forgotten and a repeat is charged as a new call; a retained run stays readable free for 30 days (see saved runs on the credits page). For batches or longer work, start a retained run with scraper_run_create and poll it with scraper_run_get.