Skip to main content
Glama
SartoRiccardo

dataforseo-mcp

README.md
# dataforseo-mcp-server

An MCP server (stdio) that exposes the [DataForSEO](https://dataforseo.com) SEO API
— SERP, keywords, backlinks, labs, on-page, and more — as tools for Claude Code or
any other MCP client.

## Install

Requires Node.js 20+.

```bash
git clone <this-repo>
cd dataforseo-mcp-server
npm install
npm run build
npm link        # puts the `dataforseo-mcp-server` command on your PATH
```

## Credentials

```bash
cp .env.example .env
```

Then edit `.env`:

```
DATAFORSEO_LOGIN=your_login
DATAFORSEO_PASSWORD=your_password
```

Both come from your DataForSEO account (dashboards → API access page). The server
finds this `.env` no matter which directory it's launched from, so the `.mcp.json`
block needs no `env` entry — and any `DATAFORSEO_LOGIN`/`DATAFORSEO_PASSWORD` set
in the environment still take precedence over `.env`.

## Use with Claude Code

Paste into a project's `.mcp.json`, or into `~/.claude.json` under `mcpServers`
to make it available everywhere:

```json
{
  "mcpServers": {
    "dataforseo": {
      "type": "stdio",
      "command": "dataforseo-mcp-server"
    }
  }
}
```

Restart the session or run `/mcp`. Do not use `"command": "npm", "args": ["start"]"`,
as npm's output corrupts the MCP stream.

## Optional settings (in `.env`)

| Variable | What it does |
|---|---|
| `ENABLED_MODULES` | Expose only some API categories, e.g. `SERP,LABS,BACKLINKS`. Fewer tools = less context used by the LLM |
| `ENABLED_TOOLS` | Expose only specific tools, e.g. `serp_google_maps_live,labs_google_keyword_ideas` |
| `LOCALFALCON_API_KEY` | Optional Local Falcon (local ranking) integration |

If none are set, everything is exposed.

## Troubleshooting

`404` on some tools usually means that DataForSEO module isn't enabled for your
account (subscriptions are per module) — enable it in the DataForSEO dashboard.
It is not a bug in this server.

## Secrets

Never commit `.env` (already gitignored).

TDQS

D1.5/5.0

Scored across 224 tools

Disambiguation2/5

With 224 tools and no descriptions, many tools have unclear boundaries—especially the labs_google_* keyword research family (keywords_for_site, related_keywords, keyword_suggestions, keyword_ideas) and multiple backlinks bulk endpoints. Platform prefixes help, but within categories multiple tools appear to overlap in purpose.

Naming Consistency3/5

Names consistently use lowercase snake_case with domain prefixes, but the action placement varies (live suffix vs task_post/task_ready/task_get triads vs bare resource names). Some names are confusingly repetitive, like domain_analytics_technologies_domain_technologies, and granularity differs (merchant_google_products vs merchant_google_product_info).

Tool Count1/5

224 tools is an extreme mismatch for an agent-facing MCP server. While DataForSEO is a broad API, exposing this many endpoints creates overwhelming selection pressure and exceeds any reasonable scope for a coherent tool set.

Completeness4/5

For a data-gathering API, the tool surface is very comprehensive, covering SERPs, keyword research, backlinks, on-page, business listings, reviews, app store data, and AI model responses. Minor inconsistencies exist—some providers have full task_post/ready/get flows while others only have live endpoints—but no major domain area is missing.

Maintenance

ActivityMaintained
ResponsivenessNo issues