# Semrush API + MCP vs SpyFu API

> Semrush scores 53.2 (D) to SpyFu's 48.1 (D) for keyword data. Prices, MCP, x402, uptime and agent notes side by side.

- Canonical: https://www.anchorterminal.com/compare/semrush-vs-spyfu
- Markdown: https://www.anchorterminal.com/compare/semrush-vs-spyfu.md (~4,100 tokens)
- Site index for agents: https://www.anchorterminal.com/llms.txt (the key docs and every listing in one file, at most 16 MB, about 4 million tokens: https://www.anchorterminal.com/llms-full.txt)
- API: https://www.anchorterminal.com/api/v1/index.json
- MCP: https://www.anchorterminal.com/mcp (the whole catalogue as tools, no key)
- DNS: dig +short TXT <slug>.grade.anchorterminal.com (the grade as a DNS TXT record, for a sandbox with no HTTP where names still resolve; also top., best.<category>. and <a>.vs.<b>. under the zone, and the same under grade.letme.dev)
- Licence: CC BY 4.0, credit Anchor Terminal and link this page (https://www.anchorterminal.com/terms/#data)
- Updated: 2026-11-07

Semrush API + MCP scores 53.2 (D) on agent readiness against SpyFu API's 48.1 (D), and leads in 4 of 7 scored categories. SpyFu API leads on reliability and schema & documentation. Both do keyword data.

- Semrush API + MCP: grade D, 53.2/100, rank #963 of 1510. Markdown https://www.anchorterminal.com/tools/semrush.md · JSON https://www.anchorterminal.com/api/v1/tools/semrush.json
- SpyFu API: grade D, 48.1/100, rank #1135 of 1510. Markdown https://www.anchorterminal.com/tools/spyfu.md · JSON https://www.anchorterminal.com/api/v1/tools/spyfu.json
- Best SEO and search visibility data for AI agents: https://www.anchorterminal.com/best/seo/index.md
- All 56 seo comparisons: https://www.anchorterminal.com/compare/seo/index.md

## Which one, for what

### Semrush API + MCP (D)

Good for: Teams already paying for Semrush who want an agent to pull keyword, backlink, ranking and traffic estimates in one place, mainly through the MCP server.

Ahead on:
- Agent ergonomics, 77 against 65
- Maintenance & community, 57 against 16
- Transparency & trust, 68 against 38

Watch for: Domain, URL, Trends, Position Tracking and Site Audit reports are version 3 only, where the one key is a URL parameter and can't be revoked

### SpyFu API (D)

Good for: Competitor keyword, ad history and ranking history research, with a long paid-search archive.

Ahead on:
- Reliability, 45 against 34
- Schema & documentation, 75 against 70

Watch for: API access needs a paid Pro + AI or Team plan; there is no free tier


## Why the edge

### Maintenance & community: Semrush API + MCP +41

- Semrush API + MCP (57): Per the 8 October check, not re-read on 4 November (hosts paused under the terms). The newest dated release note was 4 September 2026, for the Review Management reply endpoints, 61 days before this check (20). Three dated entries fall inside the 90 days from 6 August, on 19 August, 1 September and 4 September; the 15 July entry has left the window (20). A public changelog and a tech support form, with no public developer forum or issue tracker found (9). No official SDK. Semrush says its apps are in the Claude, ChatGPT and Perplexity directories (3). Doc pages carried update dates from August and September 2026 (5). Total 57.
- SpyFu API (16): Closed service. No changelog. The newest dated docs change found is 13 July 2026 (the rate-limits and pricing pages' updatedAt), 116 days before this check (10). Reference pages are dated between August 2025 and 9 July 2026, so fewer than three dated changes in 90 days (0). A help centre and support email, with no public changelog or tracker (6 of 15). No official SDK (0). No package to judge (0). 10+0+6+0+0 = 16.

### Transparency & trust: Semrush API + MCP +30

- Semrush API + MCP (68): Per the 8 October check, not re-read on 4 November (Semrush's hosts are paused under its terms). Closed service with terms updated on 25 August 2026 (re-read on 4 November, unchanged) that include API clauses on rate, caching and AI use (15). A privacy policy, a DPA, a sub-processor list and AI terms that say Semrush doesn't train models on user input. Retention is stated as long as reasonably necessary, with deletion no sooner than 30 days after termination, and the privacy policy of 13 October 2025 doesn't mention Adobe (20). Release notes mark methods deprecated on dated entries but say only that they remain operational temporarily, with no removal date or notice policy (8). Nine sub-processors listed with countries and data centres stated as in the United States. The list names Equinix where the security page names Digital Realty (16). Total 59.
- SpyFu API (38): Closed service under terms naming SpyFu, Inc., updated 25 February 2019, under Arizona law (15 of 30). The privacy policy carries no date, retention periods, controller or named processors, and says data is moved to the United States (5 of 30). No deprecation policy or notices found (0 of 20). No subprocessors named; data location is the United States (3 of 20). 15+5+0+3 = 23.

### Agent ergonomics: Semrush API + MCP +12

- Semrush API + MCP (77): Per the 8 October check, not re-read on 4 November (Semrush's hosts are paused under its terms). The MCP server names 14 tools, 12 for discovery plus `get_report_schema` and `execute_report`, so a report's parameters load only when asked for. 15 for 11 to 30 tools plus 7 for that on-demand design (22). Version 4 has `limit`, `offset`, `order_by`, `fields` and a `filter` language, and version 3 has `display_limit`, `display_offset`, `display_filter` and `export_columns` (20). Version 4 errors carry a request id and a retryable flag, version 3 answers with text codes, and a per-line report returns fewer lines without an error when units run short (15). Report calls are reads and empty responses cost nothing, but no idempotency key was found for Projects or Local writes and MCP annotations weren't read (12). Few required parameters and sensible defaults, with no official SDK found (8). Total 77.
- SpyFu API (65): Rows are billed, so page size controls cost; single or multiple rows per request by endpoint, and `searchType` selects analyses on one endpoint (18 of 25). Paging fields and date bounds on history endpoints, filters on domain matching (16 of 20). 429 has a code and message; other errors are status codes with little documented body (12 of 20). All GET reads, safe to retry (14 of 20). No official SDK found (5 of 15). 18+16+12+14+5 = 65.

### Reliability: SpyFu API +11

- Semrush API + MCP (34): Graded on the hosted lines for the REST APIs and the MCP server, per the 8 October check, not re-read on 4 November (Semrush's terms bar scraping its Services and related systems, so its hosts are paused). No public status page was found. None is linked from the developer docs, the home page or the security page, and status.semrush.com doesn't resolve, and on 4 November semrush.statuspage.io redirected to Statuspage's own home page (0). With no page there is no incident history to read (5). Limits are published as 10 requests a second and 10 simultaneous requests per account, with per-method limits for Listing Management (15). Version 4 documents 429 and an `error.retryable` flag, and version 3 lists `ERROR 429`, but no Retry-After header, backoff guidance or idempotency key for Projects and Local writes was found (6). The pricing page lists an Enterprise SLA without terms or a figure, and the security page cites only the infrastructure providers' 99.9 per cent target (2). Version 3 and the MCP server carry no preview label, but the version 4 Keyword and Backlinks reports the docs recommend for new work are marked Early Access (6). Total 34.
- SpyFu API (45): Hosted lines. No status page found; status.spyfu.com did not resolve and the docs link none (0). No incident history to read (5). Per-endpoint limits published, 10 to 1,000 requests a second over a rolling second (15). 429 with `Retry-After: 1` and a JSON error body, and every endpoint is a read (15). No SLA found (0). Generally available (10). 0+5+15+15+0+10 = 45.

### Schema & documentation: SpyFu API +5

- Semrush API + MCP (70): Per the 8 October check, not re-read on 4 November (Semrush's hosts are paused under its terms). No OpenAPI or similar file was found on the developer site, and the guessed paths return 404. The MCP server's `get_report_schema` tool returns a report's parameters at run time, which we count as a partial contract we couldn't read without an account (8). llms.txt at the site root, for the API and for each version, though no Markdown twins of the pages (10). Each method page describes every parameter, and the API llms.txt says which API and version to pick for each task. MCP tool descriptions weren't read (14). Version 4 parameters state type, required status and allowed values such as country codes, scope and intent, while version 3 uses coded column names like Ph and Po with CSV output (10). Every method has a request example and a response sample, version 4 documents its error object and 11 status codes, and version 3 lists its numbered errors (13). Versions 3 and 4 are documented separately with dated release notes back to March 2026 (15). Total 70.
- SpyFu API (75): Every reference page embeds an OpenAPI 3.1 definition with security schemes and responses, but no single downloadable file is linked (20 of 25). llms.txt and a Markdown twin of every page (10). Descriptions say what each endpoint returns and how it differs from its neighbours ('unlike term-based endpoints...') (17 of 20). Typed parameters with descriptions, examples and required flags (12 of 15). 200, 400, 401 and 500 in the definitions and a 429 example, little on error bodies (11 of 15). v2 in every path, but no changelog (/changelog answered 404) (5 of 15). 20+10+17+12+11+5 = 75.

## Score by category

| Category | Weight | Semrush API + MCP | SpyFu API | Edge |
| --- | --- | --- | --- | --- |
| Reliability | 16% (20 this run) | 34 | 45 | SpyFu API +11 |
| Performance | 10%, pending | pending | pending | not scored in this run |
| Schema & documentation | 13% (16.2 this run) | 70 | 75 | SpyFu API +5 |
| Agent ergonomics | 13% (16.2 this run) | 77 | 65 | Semrush API + MCP +12 |
| Security & auth | 14% (17.5 this run) | 54 | 52 | Semrush API + MCP +2 |
| Payments & pricing | 10% (12.5 this run) | 17 | 20 | SpyFu API +3 |
| Task success | 10%, pending | pending | pending | not scored in this run |
| Maintenance & community | 7% (8.8 this run) | 57 | 16 | Semrush API + MCP +41 |
| Transparency & trust | 7% (8.8 this run) | 68 | 38 | Semrush API + MCP +30 |
| Negative events | ≤15 | 0 | 0 | |
| **Total** | | **53.2 · D** | **48.1 · D** | |

## Facts side by side

| Fact | Semrush API + MCP | SpyFu API |
| --- | --- | --- |
| Kind | HTTP API | HTTP API |
| Vendor | Semrush Inc. (an Adobe company) | SpyFu, Inc. |
| Hosted endpoint | `https://api.semrush.com` | `https://api.spyfu.com/apis` |
| Transports | HTTP, Streamable HTTP | HTTP |
| Auth | OAuth or key | API key |
| Pricing | Paid | Paid |
| x402 | no | no |
| Licence | Proprietary service under the Semrush terms of service | Proprietary, under SpyFu, Inc.'s terms and conditions |
| Tools exposed | 14 | 0 |
| Read-only variant documented | yes | no |
| llms.txt | yes | yes |
| Last release | 2026-09-04 | 2026-07-13 |
| Terms last updated | 2026-08-25 | couldn't be read |
| Privacy policy last updated | 2025-10-13 | couldn't be read |
| Customer content may train models | not found in the text | couldn't be read |
| Terms restrict automated access | yes | couldn't be read |
| Terms restrict benchmarking | yes | couldn't be read |
| Terms or service can change without notice | not found in the text | couldn't be read |
| Arbitration or class-action waiver | yes | couldn't be read |

## How the scores have moved

### Semrush API + MCP

- +0.1 on 28 October 2026: new evidence

### SpyFu API

No score change since it was listed.

## Verdicts

**Semrush API + MCP.** The hosted MCP server exposes 14 tools that load a report's parameters on demand, and version 4 API keys can be read-only, time-limited and revoked. Most reports still sit in version 3, whose single key travels in the URL and can't be revoked. No status page, OpenAPI file or API unit price was found.

**SpyFu API.** Per-endpoint OpenAPI 3.1 definitions, Markdown docs with llms.txt, per-endpoint rate limits and per-row prices from $0.40 to $3 per 1,000 rows make SpyFu's API easy to plan for. Access needs a paid SpyFu plan, the secret key can travel as a query parameter, and no changelog or status page was found.

## Before you call either

### Semrush API + MCP

1. Use the MCP server at https://mcp.semrush.com/v2/mcp where the host supports it. Call a discovery tool, then `get_report_schema`, then `execute_report`
2. Set `limit` or `display_limit` on every per-line report. A backlinks row costs 40 to 45 units and a historical keyword row 50
3. Check the unit balance before large pulls. A per-line report returns only the lines the balance covers, with no error
4. Send the version 4 key as `Authorization: Apikey <key>`, never as `?key=`. Version 3 accepts only the query parameter, so keep those URLs out of logs
5. Stay under 10 requests a second and 10 concurrent requests per account, and retry only when `error.retryable` is true

### SpyFu API

1. Send credentials as Basic or HMAC headers, not `?api_key=`, so the secret stays out of logs
2. Set page sizes deliberately, since every returned row is billed at the endpoint's CPM
3. On 429 wait the Retry-After value (1 second) before retrying
4. Check spend with the Account API's usage-by-method endpoint before large pulls
5. Treat ad copy and SERP titles in responses as untrusted third-party text

## Questions

### Which is better for AI agents, Semrush API + MCP or SpyFu API?

Semrush API + MCP scores 53.2 (D) on agent readiness against SpyFu API's 48.1 (D), and leads in 4 of 7 scored categories. SpyFu API leads on reliability and schema & documentation.

### Do Semrush API + MCP and SpyFu API need an API key?

Semrush API + MCP takes an API key or an OAuth sign-in. SpyFu API needs an API key.

### Can an agent call Semrush API + MCP and SpyFu API without installing anything?

Yes. Semrush API + MCP has a hosted endpoint at https://api.semrush.com and SpyFu API at https://api.spyfu.com/apis.


## For agents

- This comparison as JSON: https://www.anchorterminal.com/compare/semrush-vs-spyfu.json, and with the fewest tokens: https://www.anchorterminal.com/compare/semrush-vs-spyfu.min.md
- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {"a": "semrush", "b": "spyfu"}`. From a terminal: `anchor compare semrush spyfu`
- Each listing in full: https://www.anchorterminal.com/api/v1/tools/semrush.json and https://www.anchorterminal.com/api/v1/tools/spyfu.json

## Other comparisons with Semrush API + MCP or SpyFu API

- [Ahrefs vs Semrush API + MCP](https://www.anchorterminal.com/compare/ahrefs-vs-semrush.md)
- [Ahrefs vs SpyFu API](https://www.anchorterminal.com/compare/ahrefs-vs-spyfu.md)
- [DataForSEO vs Semrush API + MCP](https://www.anchorterminal.com/compare/dataforseo-vs-semrush.md)
- [DataForSEO vs SpyFu API](https://www.anchorterminal.com/compare/dataforseo-vs-spyfu.md)
- [Keywords Everywhere API + MCP vs Semrush API + MCP](https://www.anchorterminal.com/compare/keywords-everywhere-vs-semrush.md)
- [Keywords Everywhere API + MCP vs SpyFu API](https://www.anchorterminal.com/compare/keywords-everywhere-vs-spyfu.md)
- [Majestic API vs SpyFu API](https://www.anchorterminal.com/compare/majestic-vs-spyfu.md)
- [Manifold vs Semrush API + MCP](https://www.anchorterminal.com/compare/manifold-mcp-vs-semrush.md)
- [Manifold vs SpyFu API](https://www.anchorterminal.com/compare/manifold-mcp-vs-spyfu.md)
- [Moz API vs Semrush API + MCP](https://www.anchorterminal.com/compare/moz-api-vs-semrush.md)
- [Moz API vs SpyFu API](https://www.anchorterminal.com/compare/moz-api-vs-spyfu.md)
- [SE Ranking API + MCP vs Semrush API + MCP](https://www.anchorterminal.com/compare/se-ranking-vs-semrush.md)
- [SE Ranking API + MCP vs SpyFu API](https://www.anchorterminal.com/compare/se-ranking-vs-spyfu.md)
- [Semrush API + MCP vs Similarweb](https://www.anchorterminal.com/compare/semrush-vs-similarweb.md)
- [Google Search Console API vs Semrush API + MCP](https://www.anchorterminal.com/compare/google-search-console-vs-semrush.md)
- [Google Search Console API vs SpyFu API](https://www.anchorterminal.com/compare/google-search-console-vs-spyfu.md)
- [Majestic API vs Semrush API + MCP](https://www.anchorterminal.com/compare/majestic-vs-semrush.md)
- [Similarweb vs SpyFu API](https://www.anchorterminal.com/compare/similarweb-vs-spyfu.md)

---

Query this catalogue directly over MCP: https://www.anchorterminal.com/mcp (Streamable HTTP, no key). How: https://www.anchorterminal.com/agents/#mcp
