Guide · DataForSEO MCP Setup

DataForSEO MCP Setup: Complete Guide for 2026

DataForSEO is the data wholesaler behind a long list of SEO tools you already know. In late 2024 it shipped its own server for the Model Context Protocol, which means you can point Claude, Cursor, or Claude Code straight at that data and ask SEO questions in plain language. It is genuinely powerful, the data is the real thing, and running the server itself costs nothing.

The catch is that a free server and a free tool are not the same thing. You bring your own DataForSEO account, fund it with a deposit, manage the credentials, and wire up a wall of raw tools. Done once, the setup is short. Done blind, it is a maze, and the most common ending is an agent that connects fine and shows zero tools.

This guide walks the real setup, in order, for Claude Desktop, Cursor, and Claude Code. Then the one config variable that breaks most installs, what the data actually costs, and an honest read on whether the raw MCP is the right call or whether a productized wrapper saves you the hassle. I run my own SEO inside an agent every day, so this is the workflow as it runs, not a feature list.

Quick answer
  • The DataForSEO MCP server is free to run but bills per request through your own DataForSEO account.
  • Setup is npx plus two environment variables, then a full restart of your agent.
  • The number-one failure is ENABLED_MODULES. Wrong or misspelled module names mean zero tools show up.
  • You fund the account yourself. $50 minimum deposit, pay-as-you-go from a fraction of a cent per request, $1 trial to start.
  • It is a developer tool, not a product. For one URL and digested answers, ContextBolt SEO wraps the same class of data at $35/month.

What is the DataForSEO MCP server?

The Model Context Protocol, or MCP, is an open standard from Anthropic that lets an AI agent call external tools and data through one common interface. If you are new to the idea, the what is MCP explainer covers the basics. The short version is that MCP is the plug, and a server is whatever you plug in.

The DataForSEO MCP server plugs the DataForSEO API into that interface. DataForSEO is a wholesale SEO data provider. It powers a large slice of the SEO products on the market behind the scenes, so the numbers it returns are the same class of data sitting inside dashboards you already trust. The open-source server lives on GitHub and exposes that data as tools your agent can call.

Once it is connected, you stop opening a dashboard for quick questions. You ask the agent. Keyword volume, difficulty, live SERP results, domain traffic estimates, ranked keywords, competitor overlap, backlinks. The agent picks the tool and the answer lands in your chat. If you want the full argument for why that beats a dashboard, the SEO MCP server explainer makes the case.

What you need before you start

Three things, and the order matters.

  • Node.js 18 or newer. The server runs through npx, which ships with Node. Check your version with node -v. If you are below 18, update first.
  • A DataForSEO account. Sign up, then open the API dashboard and copy your API login and password. These are not your website login. They are a separate credential pair for API access.
  • A funded balance. New accounts get a $1 trial credit, which is enough to test the connection. Real work needs a top-up, and the minimum deposit is $50. Nothing happens until the account has money, because every tool call spends it.

That third point trips people up. The server is free. The data is metered. You are paying DataForSEO directly, per request, with no middle layer smoothing it out.

How do you set up the DataForSEO MCP server?

There are three install paths depending on your agent. All of them hand the same two credentials to the same npx command. Pick the one that matches your tool.

Claude Code

This is the fastest. One command in your terminal registers the server.

claude mcp add dataforseo \
  --env DATAFORSEO_USERNAME=your-api-login \
  --env DATAFORSEO_PASSWORD=your-api-password \
  -- npx -y dataforseo-mcp-server

The -y flag matters. Without it, npx stops to ask permission to install the package and hangs forever waiting for an answer you never see. Run claude mcp list afterward to confirm it registered.

Claude Desktop and Cursor

Both read MCP servers from a JSON config file. Claude Desktop uses claude_desktop_config.json. Cursor uses mcp.json, either globally at ~/.cursor/mcp.json or per project at .cursor/mcp.json. The block is identical in both.

{
  "mcpServers": {
    "dataforseo": {
      "command": "npx",
      "args": ["-y", "dataforseo-mcp-server"],
      "env": {
        "DATAFORSEO_USERNAME": "your-api-login",
        "DATAFORSEO_PASSWORD": "your-api-password"
      }
    }
  }
}

Everything hangs off the mcpServers key. Miss that key and the app ignores the whole file. After you save, fully quit and reopen the app. MCP servers only load at startup, and a window reload is not always enough. For a deeper walkthrough of the Cursor side specifically, the SEO inside Cursor guide covers it end to end.

That is the whole install. If your tools show up, you are done and can skip to the cost section. If they do not, the next part is almost certainly why.

SEO tool ContextBolt SEO· Ahrefs-grade data· $35/mo See it

Why are no tools showing up?

This is the single most common DataForSEO MCP setup problem, and it has nothing to do with your credentials. The cause is a variable called ENABLED_MODULES.

The DataForSEO API is split into modules, each a family of endpoints. The MCP server only exposes the modules you switch on. If you set ENABLED_MODULES and get a name wrong, the server starts cleanly, connects to your agent, and offers zero tools. No error, no warning, just an empty toolbox.

Two rules fix it. First, the module names are uppercase and exact. KEYWORDS_DATA works. keyword_data silently fails. Second, if you leave ENABLED_MODULES unset entirely, the server loads every module by default, which is the simplest way to confirm the connection works before you trim it down.

Here are the module names you can pick from.

ModuleWhat it covers
SERPLive Google search results for any keyword
KEYWORDS_DATASearch volume, CPC, and keyword metrics
DATAFORSEO_LABSKeyword ideas, difficulty, ranked keywords, competitors
BACKLINKSReferring domains, backlink profiles, anchors
ONPAGETechnical crawl and on-page audit data
DOMAIN_ANALYTICSDomain-level traffic and technology data
BUSINESS_DATAReviews, local listings, business profiles
CONTENT_ANALYSISBrand mentions and sentiment across the web

For most keyword and content work, ENABLED_MODULES=KEYWORDS_DATA,SERP,DATAFORSEO_LABS is plenty and keeps the tool list short enough that the agent picks the right one. Add BACKLINKS and ONPAGE only when you need them. A shorter list is not just tidier. It makes the agent faster and less likely to reach for the wrong tool.

What does the DataForSEO MCP actually cost?

This is where the “free” framing falls apart, so it is worth being precise.

The server costs nothing. The data is pure pay-as-you-go, billed by DataForSEO per request. Pricing starts at a fraction of a cent. A standard SERP query runs around $0.0006, with live real-time queries closer to $0.002, and the Labs endpoints priced per call in the same low range. There is no monthly subscription. You top the account up and draw it down.

The friction is not the per-request price, which is genuinely cheap. It is the shape. You fund a $50 minimum deposit up front, you watch a balance, and you manage credentials in every config file. For a developer who wants raw access to everything DataForSEO sells, that is a fair trade and the best-value SEO data you can plug into an agent. For someone who just wants to know if a keyword is winnable before they write the post, it is a lot of plumbing for one number.

Is the raw DataForSEO MCP right for you?

Here is the take I will own the bias on, since I build a competing tool. The DataForSEO MCP is the best free SEO server you can connect to an agent, and most people who do their own SEO should not run it directly.

The reason is not the data. The data is excellent. It is that the raw server is built for developers, and it shows. You provision an account, fund a deposit, manage two credentials per machine, choose your modules, and then sift a wide field of raw tools that return raw API responses. None of that is hard. All of it is friction, and friction is the exact thing you connected an agent to remove. The whole point of asking your agent instead of opening a dashboard is to make a quick SEO question cost almost nothing. A server that takes an afternoon to wire up and a balance to babysit puts some of that cost back.

So the honest split looks like this.

What you care aboutDataForSEO MCP (raw)Hosted wrapper (ContextBolt SEO)
SetupAccount, deposit, npx, credentials, modulesOne URL, paste, restart
BillingPay-as-you-go, $50 minimum, watch a balanceFlat $35/month, 1,000 lookups
ToolsWide field of raw endpointsSix curated research tools
OutputRaw API responsesDigested summary with a verdict line
Best forDevelopers who want full accessBuilders who want the answer

If you are a developer who will use the breadth, run the raw server. If you want the answer without the setup project, a wrapper earns its keep. For the full field of options, the best SEO MCP servers roundup ranks all of them honestly, raw and hosted.

Where ContextBolt SEO fits

ContextBolt SEO is the wrapper I make, and it exists for the second column above. It is a hosted MCP server that sits on the same class of data and hands you one URL. You paste that URL into Claude Code, Claude Desktop, or Cursor, restart, and you have six research tools in the chat. Keyword research, keyword difficulty, SERP overview, domain overview, ranked keywords, and competitor keywords. No DataForSEO account, no $50 deposit, no credentials to copy into three config files. You subscribe, you get a URL, you work.

Two things make the difference day to day. Every tool returns a digested answer with a verdict line, not a wall of JSON, so the chat stays readable while you work. And in a file-aware client, every lookup also writes to a ./seo-findings/ folder in your project as markdown, one file per keyword or domain, so your research lives in the repo and you can ask about the same keyword next month and get told what changed. That is the keyword research with Claude workflow with the setup tax removed.

The honest framing holds here too. This is Ahrefs-grade data, decision-useful and directionally accurate, not Ahrefs’ exact numbers. It costs $35 a month, month to month, cancel any time, no refund and no long contract. For deciding what to build and what to write, it is more than enough, and it is a quarter of the entry price of the big suites.

The honest verdict

The DataForSEO MCP server is a real piece of work and the data behind it is the genuine article. If you are comfortable with a deposit, a balance, and a config file in every tool, it is the cheapest serious SEO data you can put in front of an agent, and this guide is everything you need to run it.

But free-to-run is not free-to-use, and a developer tool is not a product. Most builders doing their own SEO want one thing from this setup. They want to ask a question and get a number, fast, without a context switch and without babysitting an account. If that is you, run the raw server only if you will use its breadth. Otherwise let something else handle the plumbing, and spend your time on the writing instead of the wiring.

DataForSEO MCP Setup: FAQs

Is the DataForSEO MCP server free?
The server itself is free and open source. The data is not. Every tool call bills your own DataForSEO account, which is pay-as-you-go from fractions of a cent per request, with a $50 minimum deposit to start. Running the server costs nothing, but the lookups cost money.
How do you set up the DataForSEO MCP server?
Install Node.js 18 or newer, get your API login and password from the DataForSEO dashboard, then add the server to your agent with npx and two environment variables. In Claude Code it is one claude mcp add command. In Claude Desktop or Cursor it is a short block in the config file. Restart the app and the tools appear.
Why are no tools showing up after setup?
The usual cause is the ENABLED_MODULES variable. Module names are uppercase and exact, so a typo like keyword_data instead of KEYWORDS_DATA silently disables everything. Leave ENABLED_MODULES unset to load all modules, or list the exact uppercase names you want, then fully restart the agent.
Do you need a DataForSEO account to use the MCP server?
Yes. The server is just a wrapper. It calls the DataForSEO API with your credentials, so you need your own account, your API login and password, and a funded balance. There is no shared key and no built-in billing. A managed wrapper like ContextBolt SEO removes that step.
DataForSEO MCP or a hosted SEO MCP server?
Use the raw DataForSEO MCP if you want full API access and will manage credentials, modules, and a balance. Use a hosted server like ContextBolt SEO if you want one URL, digested answers, and a flat price with no account to provision. Same class of data, very different setup.