A Model Context Protocol (MCP) server for the DataForSEO API, enabling modular and extensible integration of DataForSEO endpoints with support for both HTTP and SSE transports.
This server exposes 17 tools from the DataForSEO Backlinks API. All tools have descriptions and parameter schemas with type definitions. However, there are systematic issues: (1) Tool names do not follow verb_noun conventions, names like 'backlinks_anchors', 'backlinks_backlinks', 'backlinks_bulk_backlinks' use noun-noun structure and are difficult to disambiguate. LLMs will struggle to choose between 'backlinks_backlinks' vs 'backlinks_bulk_backlinks' vs 'backlinks_backlinks' based on name alone. (3) Array-type parameters ('filters', 'order_by') lack detailed schema definitions, they are typed as 'array' but the description explains the syntax inline rather than via JSON Schema. (4) Output schemas are not documented, no definition of what each tool returns, field types, or structure. (5) Error handling is generic, tools catch errors and call 'formatErrorResponse' but no evidence of actionable error messages or recovery guidance. (6) No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite all tools being read-only operations.
This endpoint will provide you with a detailed overview of anchors used when linking to the specified website with relevant backlink data for each of them
Here you will find all the necessary information about filters that can be used with DataForSEO Backlinks API endpoints. Please, keep in mind that filters are associated with a certain object in the result array, and should be specified accordingly.
This endpoint will provide you with a list of backlinks and relevant data for the specified domain, subdomain, or webpage
This endpoint will provide you with the number of backlinks pointing to domains, subdomains, and pages specified in the targets array. The returned numbers correspond to all live backlinks, that is, total number of referring links with all attributes (e.g., nofollow, noreferrer, ugc, sponsored etc) that were found during the latest check. Note that if you indicate a domain as a target, you will get results for the root domain (domain with all of its subdomains), e.g. dataforseo.com and app.dataforseo.com
This endpoint will provide you with the number of referring domains pointing to domains, subdomains, and pages specified in the targets array. The returned numbers are based on all live referring domains, that is, total number of domains pointing to the target with any type of backlinks (e.g., nofollow, noreferrer, ugc, sponsored etc) that were found during the latest check. Note that if you indicate a domain as a target, you will get result for the root domain (domain with all of its subdomains), e.g. dataforseo.com and app.dataforseo.com
Tool names violate verb_noun convention. Most names use 'backlinks_<noun>' structure (backlinks_anchors, backlinks_backlinks, backlinks_bulk_backlinks). Names do not start with action verbs (get_, list_, search_). This makes it difficult for LLMs to infer intent and disambiguate between similar tools.
Output schemas are not documented. Tools have descriptions but no explicit definition of response structure, field types, or nested objects. LLMs cannot plan downstream tool calls or extract specific fields without knowing what the response contains.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 51 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 29 | - | v1 |
This endpoint will provide you with the number of referring domains pointing to the domains, subdomains and pages specified in the targets array. Note that if you indicate a domain as a target, you will get result for the root domain (domain with all of its subdomains), e.g. dataforseo.com and app.dataforseo.com
This endpoint will provide you with rank scores of the domains, subdomains, and pages specified in the targets array. The score is based on the number of referring domains pointing to the specified domains, subdomains, or pages. The rank values represent real-time data for the date of the request and range from 0 (no backlinks detected) to 1,000 (highest rank). A similar scoring system is used in Google's Page Rank algorithm
This endpoint will provide you with the number of referring domains pointing to domains, subdomains, and pages specified in the targets array. The returned numbers are based on all live referring domains, that is, total number of domains pointing to the target with any type of backlinks (e.g., nofollow, noreferrer, ugc, sponsored etc) that were found during the latest check. Note that if you indicate a domain as a target, you will get result for the root domain (domain with all of its subdomains), e.g. dataforseo.com and app.dataforseo.com
This endpoint will provide you with spam scores of the domains, subdomains, and pages you specified in the targets array. Spam Score is DataForSEO's proprietary metric that indicates how "spammy" your target is on a scale from 0 to 100
This endpoint will provide you with a list of competitors that share some part of the backlink profile with a target website, along with a number of backlink intersections and the rank of every competing website
This endpoint will provide you with the list of domains pointing to the specified websites. This endpoint is especially useful for creating a Link Gap feature that shows what domains link to your competitors but do not link out to your website
This endpoint will provide you with a detailed overview of domain pages with backlink data for each page
This endpoint will provide you with detailed summary data on all backlinks and related metrics for each page of the target domain or subdomain you specify. If you indicate a single page as a target, you will get comprehensive summary data on all backlinks for that page
This endpoint will provide you with the list of domains pointing to the specified websites. This endpoint is especially useful for creating a Link Gap feature that shows what domains link to your competitors but do not link out to your website
This endpoint will provide you with a detailed overview of referring domains pointing to the target you specify
This endpoint will provide you with a detailed overview of referring domains pointing to the target you specify
This endpoint will provide you with an overview of backlinks data available for a given domain, subdomain, or webpage
Parameter descriptions include inline examples ('e.g. 2021-01-01', 'e.g. dataforseo.com') rather than formal schema constraints. This forces LLMs to parse documentation text rather than use machine-readable constraints.
Complex array parameters ('filters', 'order_by') are typed as generic 'array of strings' with documentation inline describing syntax. JSON Schema should define the structure explicitly (e.g. as a tuple schema or with item type constraints) so clients can validate inputs programmatically.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite all tools being read-only queries. Adding readOnlyHint=true would inform clients and agents that these tools have no side effects and are safe to call speculatively.
Error handling is generic. Code shows 'formatErrorResponse(error)' is called, but there is no evidence of actionable error messages.