{
  "name": "io.github.dataforseo/mcp-server-typescript",
  "description": "The official DataForSEO MCP connects an AI agent to the DataForSEO API — the data layer behind a large share of third-party SEO tools. It exposes live SERP snapshots for Google, Bing, and Yahoo, keyword volumes and clickstream metrics, backlink and referring-domain analysis, on-page crawl results, and the DataForSEO Labs algorithmic keyword/domain data. It is the most complete read-only SEO data MCP because you pay per request against one API rather than buying a seat in a fixed dashboard.",
  "status": "active",
  "version": "latest",
  "_meta": {
    "com.top-mcps/lastVerified": "2026-06-15",
    "com.top-mcps/score": {
      "value": 82,
      "rubricVersion": "2026-04",
      "lastComputed": "2026-06-17T11:53:23.802Z",
      "methodology": "https://top-mcps.com/about/methodology"
    },
    "com.top-mcps/stats": {
      "fetchedAt": "2026-06-17T07:09:46.832Z",
      "githubStars": 218,
      "lastCommitAt": "2026-06-08T13:36:12Z",
      "npmWeeklyDownloads": 10123
    }
  },
  "repository": {
    "url": "https://github.com/dataforseo/mcp-server-typescript",
    "source": "github"
  },
  "author": {
    "name": "DataForSEO"
  },
  "packages": [
    {
      "registryType": "npm",
      "registryBaseUrl": "https://registry.npmjs.org",
      "identifier": "dataforseo-mcp-server",
      "version": "latest",
      "transport": {
        "type": "stdio"
      },
      "environmentVariables": [
        {
          "name": "DATAFORSEO_USERNAME",
          "description": "DATAFORSEO_USERNAME — required credential for DataForSEO.",
          "isRequired": true,
          "isSecret": true
        },
        {
          "name": "DATAFORSEO_PASSWORD",
          "description": "DATAFORSEO_PASSWORD — required credential for DataForSEO.",
          "isRequired": true,
          "isSecret": true
        }
      ]
    }
  ],
  "capabilities": {
    "tools": [
      {
        "name": "serp",
        "description": "Fetch live SERP results for a keyword on Google, Bing, or Yahoo.",
        "sideEffect": "network",
        "args": [
          {
            "name": "keyword",
            "type": "string",
            "required": true
          }
        ]
      },
      {
        "name": "keywords_data",
        "description": "Return search volume, CPC, and clickstream metrics for keywords.",
        "sideEffect": "network",
        "args": [
          {
            "name": "keywords",
            "type": "string[]",
            "required": true
          }
        ]
      },
      {
        "name": "dataforseo_labs",
        "description": "Run DataForSEO Labs algorithmic keyword/domain queries (ranked keywords, competitors).",
        "sideEffect": "network"
      },
      {
        "name": "backlinks",
        "description": "Return backlinks and referring domains for a target.",
        "sideEffect": "network",
        "args": [
          {
            "name": "target",
            "type": "string",
            "required": true
          }
        ]
      },
      {
        "name": "on_page",
        "description": "Crawl a site and return on-page SEO issues.",
        "sideEffect": "network",
        "args": [
          {
            "name": "target",
            "type": "string",
            "required": true
          }
        ]
      }
    ],
    "security": {
      "scope": "read-only",
      "sandbox": "Authenticates with a DataForSEO API login/password pair passed via env vars. All exposed tools are read-only data lookups — none mutate external state. The blast radius is financial (paid API calls), not destructive, so the key control is balance and the module allow-list, not write-scoping.",
      "gotchas": [
        "Every tool call costs money against your DataForSEO balance — an agent that loops can spend quickly. Cap with a low-balance account.",
        "Use ENABLED_MODULES to expose only the endpoints you need; the default exposes every module including the more expensive Labs and Backlinks calls.",
        "Credentials sit in client config files in plaintext — rotate the API password if a config is shared or committed."
      ]
    }
  },
  "_links": {
    "html": "https://top-mcps.com/mcp/dataforseo",
    "markdown": "https://top-mcps.com/mcp/dataforseo.md",
    "methodology": "https://top-mcps.com/about/methodology"
  }
}
