Skip to main content
Glama
Teake1404

seo-data-api-mcp-server

by Teake1404

MCP Server

Installation

Prerequisites

Before you begin, please ensure you have the following software and accounts ready:

  • SE Ranking Account: You will need an active SE Ranking account to generate an API token. If you don’t have one, you can sign up here.

  • Docker: A platform for developing, shipping, and running applications in containers. If you don’t have it, you can download it from the official Docker website.

  • Docker Compose Plugin: The Docker Compose plugin is a Docker CLI plugin that provides a command-line interface (CLI) for Docker Compose. To build the Docker image, you need to have Docker Compose installed.

  • Git: A free and open-source distributed version control system. You can download it from the official Git website.

  • AI Assistant: You will need either the Claude Desktop App or the Gemini CLI installed and configured on your machine.

Installation Steps

Follow these steps to install the SEO-MCP server on your local machine.

  • Open your terminal (or Command Prompt/PowerShell on Windows).

  • Clone the project repository from GitHub. This command downloads the necessary files to your machine.

git clone https://github.com/seranking/seo-data-api-mcp-server.git
  • Navigate into the new directory in your terminal:

cd seo-data-api-mcp-server

Build the Docker Image

Make sure you're in the seo-data-api-mcp-server repository directory, and run:

docker compose build
# Check that the image is built and named `se-ranking/seo-data-api-mcp-server`:
docker image ls

Note: don't worry about the warnings, this is normal when building the image:

WARN[0000] The "SERANKING_API_TOKEN" variable is not set. Defaulting to a blank string.

How to Update SEO-MCP

To ensure you have the latest features and improvements, you should update the tool periodically.

  • Navigate to your seo-data-api-mcp-server directory in the terminal.

  • Pull the latest changes from the GitHub repository.

git pull origin main

Related MCP server: SE Ranking SEO Data API MCP Server

Connect to Claude Desktop

Claude Desktop reads its configuration from claude_desktop_config.json.

  • Click on the Claude menu and select Settings....

  • In the Settings window, navigate to the Developer tab in the left sidebar.

  • Click the Edit Config button to open the configuration file. This action creates a new configuration file if one doesn’t exist or opens your existing configuration.

The file is located at:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %AppData%\Claude\claude_desktop_config.json

  • Linux: ~/.config/Claude/claude_desktop_config.json

Example of Claude Desktop configuration for MCP server

JSON Configuration Template:

{
  "mcpServers": {
    "seo-data-api-mcp": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "SERANKING_API_TOKEN",
        "se-ranking/seo-data-api-mcp-server"
      ],
      "env": {
        "SERANKING_API_TOKEN": "<your-api-token-here>"
      }
    }
  }
}
  • You need to change the SERANKING_API_TOKEN, get yours from https://online.seranking.com/admin.api.dashboard.html

  • After saving claude_desktop_config.json, restart Claude Desktop. You should see the server under MCP Servers/Tools.

  • To verify the setup, ask Claude: Do you have access to MCP? It should respond by listing seo-data-api-mcp.

Claude Desktop: Verify the MCP access

  • Your setup is complete! You can now run complex SEO queries using natural language.

Claude Desktop: List MCP Servers

Connect to Gemini CLI

  • Open the Gemini CLI settings file, which is typically located at: ~/.gemini/settings.json

  • Add the following JSON configuration, making sure to replace the SERANKING_API_TOKEN placeholder value.

{
  "mcpServers": {
    "seo-data-api-mcp": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "SERANKING_API_TOKEN",
        "se-ranking/seo-data-api-mcp-server"
      ],
      "env": {
        "SERANKING_API_TOKEN": "<your-api-token-here>"
      }
    }
  }
}

"SERANKING_API_TOKEN": Use your personal API token, which you can generate from the SE Ranking API Dashboard.

  • Save the configuration file.

  • To verify the setup, launch the Gemini CLI by running gemini in your terminal. Once the interface is active, press Ctrl+T to view the available MCP servers. Ensure seo-data-api-mcp is listed.

Gemini CLI: Configured MCP Servers

  • Your setup is complete! You can now run complex SEO queries using natural language.

Gemini CLI: SEO Queries Example

Run as HTTP Server (Node)

In order to run the local Node server, you need to have Node.js 20+ version installed on your machine.

Run the following commands in your terminal:

npm install

To build the project, use the following command:

npm run build

To start the server use the command:

npm run start-http

Then your HTTP server should be running at: http://0.0.0.0:5000/mcp.

In case you'd like to modify the HOST and PORT, you can do so by creating a .env file in the root directory of the project with the settings you want to override, for example:

HOST=127.0.0.1
PORT=5555

Additionally, when you're running the server in the external environments/tools like Replit and similar, you can set the SERANKING_API_TOKEN environment variable in the configuration panel, and the application will use it when you start the server.

Note: If you change the SERANKING_API_TOKEN value when the server is running, you need to restart the server.

Usage Example: Finding Keyword Opportunities

With the configuration complete, you can now use natural language prompts to interact with your SE Ranking data. Here is an example prompt to identify low-hanging keyword opportunities for a domain.

Copy and paste the following into your configured AI assistant:

Use the seo-mcp to identify the Keywords my domain is overlooking and find low-hanging fruit opportunities.
1. Analyze my domain's keyword performance:
   - Find keywords my domain has lost (not ranking) using the tool for domainKeywords with pos_change=lost.
   - Find keywords where my domain's position has gone down using the tool for domainKeywords with pos_change=down.
2. Conduct a competitive analysis:
   - Identify my top 2 competitors by finding all competitors with the tool for domainCompetitors and ordering them by common_keywords DESC.
   - Find 30 keywords that these competitors are ranking for but my domain is not. Use the domainKeywordsComparison tool with diff=1, order_field=volume, and order_type=DESC.
3. Identify new keyword opportunities:
   - For 10 of the competitor keywords found in the previous step, use the tools for relatedKeywords and similarKeywords to find the top 5 related and similar keywords for each, ordered by volume DESC.
4. Synthesize and Report:
   - Create a final report of the findings. In the report, highlight potential low-hanging fruit from the new keyword opportunities by analyzing their CPC and keyword difficulty.
Domain to review: seranking.com
Market: us

What This Prompt Does

This prompt instructs the model to perform a comprehensive competitive analysis by:

  • Finding Lost & Declining Keywords: It first identifies keywords for seranking.com that have either been lost from the rankings or have dropped in position.

  • Identifying Top Competitors: It finds all organic competitors and sorts them to identify the top two based on the number of shared keywords.

  • Uncovering Competitor-Ranked Keywords: It compares seranking.com against its top competitors to find 30 high-volume keywords that they rank for, but seranking.com does not.

  • Generating a Final Report: Finally, it synthesizes all of this information into a concise report, highlighting the most promising opportunities for growth.

To send the sample test request, which will verify if your server runs properly and has the correct setup, open another terminal window, and run the following command with your SE Ranking API token provided as an argument:

./test-http-server-curl-request.sh '<your-api-token-here>'

For batch MCP Requests testing, you can use this script:

./test-batch-http-server-curl-request.sh '<your-api-token-here>'

Troubleshooting

Docker image problems

If you’re having trouble getting the MCP server to connect, here are a few steps to diagnose the issue.

Verifying if the Docker container is running when you run your AI Assistant (Claude or Gemini). If you start a chat with an AI, and your MCP Server is set up properly via JSON config, it should automatically start the Docker container.

To check if it’s running, open your terminal and run:

docker ps

If it’s working correctly, you will see an output similar to this:

CONTAINER ID   IMAGE                                    COMMAND                  CREATED          STATUS          PORTS     NAMES
de4e410ef0fd   se-ranking/seo-data-api-mcp-server       "docker-entrypoint.s…"   9 seconds ago    Up 8 seconds              musing_bhabha

This confirms that your AI assistant has successfully started the container, and it’s listening for connections.

If docker ps shows no running containers related to the MCP server, it usually points to a configuration issue:

  • Incorrect/invalid JSON: Double-check the claude_desktop_config.json or settings.json for any syntax errors like missing commas or brackets. You can validate the JSON here: https://jsonlint.com/.

  • Incorrect image name: Double-check the claude_desktop_config.json or settings.json for the correct image name se-ranking/seo-data-api-mcp-server

Docker image running, but MCP server is not visible in Claude Desktop / Gemini CLI

If the docker image is running, but the MCP server is not visible in Claude Desktop, you can investigate the container by:

docker inspect <container-id>

For the following example, the container ID is de4e410ef0fd:

CONTAINER ID   IMAGE                                    COMMAND                  CREATED          STATUS          PORTS     NAMES
de4e410ef0fd   se-ranking/seo-data-api-mcp-server       "docker-entrypoint.s…"   9 seconds ago    Up 8 seconds              musing_bhabha

Note: you can shorten the container ID in case no other containers share that prefix, ex. docker inspect de4. When you're running multiple AI chats and/or tools connected to the MCP Servers, there can be multiple containers running, but all with the same IMAGE name.

This will show you the big JSON output, where particularly important is the "Config" section, ex.:

{
  "Config": {
    "Hostname": "0977c3dc06fb",
    "Domainname": "",
    "User": "",
    "AttachStdin": true,
    "AttachStdout": true,
    "AttachStderr": true,
    "Tty": false,
    "OpenStdin": true,
    "StdinOnce": true,
    "Env": [
      "SERANKING_API_TOKEN=8abcdef-6fdd-a981-3ad5-123456",
      "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
      "NODE_VERSION=20.19.5",
      "YARN_VERSION=1.22.22",
      "NODE_ENV=production"
    ]
  }
}

Which shows you if you have the correct environment variables set.

Support

SE Ranking API documentation: https://seranking.com/api/integrations/mcp/.

In case you have any questions or need help, please contact us at api@seranking.com

Available Tools

28 tools
aiSearchOverviewAI Search Overview (SE Ranking)B

Retrieve a high-level overview of a domain's performance in LLM: link presence, average position, AI traffic, and historical historical dynamics (trends over time).

ParametersJSON Schema
NameRequiredDescriptionDefault
targetYesThe target to analyze for LLM performance. Can be a root domain, subdomain, or a specific URL.
scopeNoScope of analysis: base_domain (the root domain only), domain (the domain including all subdomains), or url (an exact URL).domain
sourceYesAlpha-2 country code for the regional prompt database (e.g., us for United States results).
engineYesThe LLM to query (e.g., ai-overview, chatgpt, perplexity, gemini, ai-mode).

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries the burden. It implies a read operation ('retrieve') and mentions historical dynamics, hinting at aggregated time-series data. However, it does not explicitly state constraints like rate limits, authentication needs, or whether the data is cached or real-time.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence with a front-loaded verb and list of metrics, very concise. Penalized slightly for a typo ('historical historical dynamics'), but overall efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 4 parameters and no output schema, the description covers the what (link presence, position, traffic, trends) but not the why/when relative to siblings. Lacks details on return format or pagination, leaving some ambiguity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for all parameters. The description adds context by naming the output fields but does not elaborate on parameter meaning beyond what the schema already provides, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves a high-level overview of a domain's LLM performance, listing specific metrics (link presence, average position, AI traffic, historical dynamics). It distinguishes from siblings like aiSearchPromptsByBrand by focusing on summary data, but does not explicitly differentiate from domainAioOverview.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives such as domainAioOverview or aiSearchPromptsByTarget. The description only states what it retrieves, leaving the agent without context for tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

aiSearchPromptsByBrandAI Search: Get Prompts by Brand (SE Ranking)B

Fetch a paginated list of prompts where the specified brand is mentioned in LLM results. Maps to /v1/ai-search/prompts-by-brand.

ParametersJSON Schema
NameRequiredDescriptionDefault
engineYesLLM to query (e.g., 'ai-overview', 'chatgpt', 'perplexity', 'gemini', 'ai-mode').
brandYesBrand name to search for in LLM snippets.
sourceYesAlpha-2 country code of the regional prompt database (e.g., 'us').
sortNoThe field to sort the results by. Options: volume, type, snippet_length.volume
sort_orderNoSort direction. Default: desc.desc
limitNoMax prompts per page (1–1000). Default: 100.
offsetNoStarting index for pagination. Default: 0.
filter[volume][from]NoSpecifies the minimum volume of searches to be included in the results.
filter[volume][to]NoSpecifies the maximum volume of searches to be included in the results.
filter[keyword_count][from]NoSpecifies the minimum number of words in prompts.
filter[keyword_count][to]NoSpecifies the maximum number of words in prompts.
filter[characters_count][from]NoSpecifies the minimum prompt length in characters.
filter[characters_count][to]NoSpecifies the maximum prompt length in characters.
filter[multi_keyword_included]NoA URL-encoded JSON string specifying keywords that must be present in the prompt. For example: filter[multi_keyword_included]=[[{"type":"contains","value":"seo"},{"type":"contains","value":"tools"}],[{"type":"contains","value":"backlinks"}]]
filter[multi_keyword_excluded]NoA URL-encoded JSON string specifying keywords that must NOT be present in the prompt. For example: filter[multi_keyword_excluded]=[[{"type":"contains","value":"seo"},{"type":"contains","value":"tools"}],[{"type":"contains","value":"backlinks"}]]

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full responsibility for behavioral disclosure. The description only states the action and endpoint, omitting details about authorization, rate limits, error behavior, or what happens when the brand is not found. A simple fetch operation still warrants mentioning pagination nuances or data freshness.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence efficiently conveys the core purpose and endpoint. No redundant information. Ideal conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 15 parameters, no output schema, and no annotations, the description is insufficient. It does not explain the return format, pagination behavior beyond limit/offset, or how to interpret results. Users would need external documentation for effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, so each parameter is already well-documented. The description adds only the endpoint mapping and pagination context ('paginated list'), which is marginal. Given the baseline of 3 for high schema coverage, this score is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Fetch a paginated list of prompts'), the resource ('prompts where the specified brand is mentioned in LLM results'), and provides the endpoint. This effectively distinguishes it from siblings like 'aiSearchPromptsByTarget' or 'aiSearchOverview'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for brand-specific prompt searches but does not explicitly state when to use this tool versus alternatives (e.g., 'aiSearchPromptsByTarget') or provide context on prerequisites or complementary tools. No when-not-to-use guidance is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

aiSearchPromptsByTargetAI Search: Get Prompts by Target (SE Ranking)B

Fetch the list of prompts (queries) that refer to or mention a given target (domain/URL) in the AI Search context. Corresponds to SE Ranking’s “Get Prompts by Target” API section.

ParametersJSON Schema
NameRequiredDescriptionDefault
engineYesType of LLM engine (e.g. 'chatgpt', 'perplexity', 'ai-mode', etc.).
targetYesThe target to retrieve prompts for (domain, host, or URL).
sourceYesAlpha-2 country code of the regional prompt database (e.g. 'US').
scopeNoScope of analysis: base_domain (the root domain only), domain (the domain including all subdomains), or url (an exact URL).base_domain
sortNoThe field to sort the results by. Options: volume, type, snippet_length.volume
sort_orderNoSort order ('asc' for ascending, 'desc' for descending). Default is 'desc'.desc
limitNoMaximum number of prompts to return.
offsetNoOffset for pagination (starting index).
filter[volume][from]NoSpecifies the minimum volume of searches to be included in the results.
filter[volume][to]NoSpecifies the maximum volume of searches to be included in the results.
filter[keyword_count][from]NoSpecifies the minimum number of words in prompts.
filter[keyword_count][to]NoSpecifies the maximum number of words in prompts.
filter[characters_count][from]NoSpecifies the minimum prompt length in characters.
filter[characters_count][to]NoSpecifies the maximum prompt length in characters.
filter[multi_keyword_included]NoA URL-encoded JSON string specifying keywords that must be present in the prompt. For example: filter[multi_keyword_included]=[[{"type":"contains","value":"seo"},{"type":"contains","value":"tools"}],[{"type":"contains","value":"backlinks"}]]
filter[multi_keyword_excluded]NoA URL-encoded JSON string specifying keywords that must NOT be present in the prompt. For example: filter[multi_keyword_excluded]=[[{"type":"contains","value":"seo"},{"type":"contains","value":"tools"}],[{"type":"contains","value":"backlinks"}]]

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description does not disclose behavioral traits such as read-only nature, rate limits, authentication requirements, or pagination behavior (though limit/offset parameters exist). The description is minimal and does not compensate for missing annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no fluff. It front-loads the purpose and references the API section concisely.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having 16 parameters and no output schema, the description fails to mention return values, error handling, or output format. It is insufficient for a complex tool with rich filtering capabilities.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage for all 16 parameters, so the description adds no additional meaning. Baseline score of 3 is appropriate as the schema already provides semantic clarity.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool fetches a list of prompts that mention a given target (domain/URL). It uses specific verbs ('Fetch') and resource ('prompts that refer to or mention a given target'), and distinguishes from sibling tools like aiSearchOverview and aiSearchPromptsByBrand.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives (e.g., aiSearchPromptsByBrand). Sibling tools are listed but no explicit when-to-use or when-not-to-use instructions are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

backlinksAllBacklinks AllB

Fetch backlinks pointing to a single target with sorting, limits, rank filters, URL/anchor filters, and nofollow filter (v1/backlinks/all)

ParametersJSON Schema
NameRequiredDescriptionDefault
targetYesTarget to analyze: root domain, host (subdomain), or full URL.
modeNoScope: 'domain' (incl. subdomains), 'host' (no subdomains), or 'url' (single URL). Default: host.host
limitNoMax results to return (1–10,000). Default: 100.
per_domainNoNumber of backlinks per referring domain to return. If omitted, returns all backlinks (may exceed 100).
outputNoResponse format. Default: json.json
order_byNoSort field: 'date_found' (most recent first), 'domain_inlink_rank', or 'inlink_rank'.date_found
inlink_rank_fromNoMin InLink Rank filter (0–100).
inlink_rank_toNoMax InLink Rank filter (0–100).
domain_inlink_rank_fromNoMin Domain InLink Rank filter (0–100).
domain_inlink_rank_toNoMax Domain InLink Rank filter (0–100).
url_from_filterNoSubstring to filter 'url_from' by (ASCII, max 2063 chars).
url_from_filter_modeNoHow to match 'url_from_filter'. Default: contains.contains
url_to_filterNoSubstring to filter 'url_to' by (ASCII, max 2063 chars).
url_to_filter_modeNoHow to match 'url_to_filter'. Default: contains.contains
anchor_filterNoSubstring to filter 'anchor' by (ASCII, max 2063 chars).
anchor_filter_modeNoHow to match 'anchor_filter'. Default: contains.contains
nofollow_filterNoBacklink type filter: 'nofollow_only' or 'dofollow_only'. If omitted, returns all.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It only lists features that are already documented in the input schema (sorting, limits, filters). It does not disclose behavioral traits such as pagination behavior (despite limit and per_domain parameters), rate limits, data freshness, or whether the operation is read-only. The description adds no behavioral context beyond the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that efficiently lists the tool's capabilities. It is not verbose, but it could be improved by separating the purpose from the feature list (e.g., using a colon or bullet points). Still, it is concise and front-loaded with the main action ('Fetch backlinks').

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (17 parameters, no output schema), the description is insufficient. It does not explain the output structure, how results are ordered by default, or how to interpret the limit and per_domain interaction. The detailed parameter schema partially compensates, but the description lacks high-level context for an AI agent to understand the workflow (e.g., pagination, data scope).

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema coverage is 100%, so the baseline is 3. The description redundantly lists parameter categories (e.g., 'rank filters', 'URL/anchor filters') that are already defined in the schema, without adding new semantic meaning. For example, 'nofollow_filter' is mentioned but the description does not explain the difference between 'nofollow_only' and 'dofollow_only' beyond what the enum provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Fetch backlinks') and the resource ('a single target'), and lists all key filtering capabilities (sorting, limits, rank, URL/anchor, nofollow). It also includes the API endpoint (v1/backlinks/all), which helps distinguish it from sibling tools that focus on specific aspects (e.g., backlinksAnchors, backlinksAuthority).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no explicit guidance on when to use this tool versus alternatives. It does not mention when to prefer backlinksAll over other backlinks-related siblings (e.g., backlinksAnchors, backlinksSummary) or any prerequisites. The phrase 'with sorting, limits, rank filters' implies feature richness but does not clarify use cases.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

backlinksAnchorsBacklinks AnchorsB

Fetch anchor texts of backlinks pointing to a single target with sorting and limit controls (v1/backlinks/anchors)

ParametersJSON Schema
NameRequiredDescriptionDefault
targetYesTarget to analyze: root domain, host (subdomain), or full URL.
modeNoScope: 'domain' (incl. subdomains), 'host' (no subdomains), or 'url' (single URL). Default: host.host
order_byNoSort field (descending): 'backlinks' = total backlinks using the anchor; 'refdomains' = total referring domains using the anchor.backlinks
limitNoMaximum number of results to return (1–10,000). Default: 100.
outputNoResponse format. Default: json.json

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided. Description only states 'Fetch', implying a read operation, but lacks details on rate limits, pagination behavior, authentication needs, or error handling. Schema covers parameters but description adds no behavioral context beyond that.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence front-loads the verb and resource, efficiently conveying core functionality. Slightly improved structure could separate purpose from controls, but overall concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema and no annotations. The description does not explain return format (though output parameter exists), pagination details, or typical use cases. For a data-fetching tool, more context is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so each parameter is already documented. The description adds a summary mentioning 'sorting and limit controls', but this adds minimal value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the verb 'Fetch' and resource 'anchor texts of backlinks' with target scope 'single target'. It distinguishes from sibling tools like backlinksAll by specifying anchor texts specifically.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit when-to-use or when-not-to-use guidance. Implied usage is for fetching anchor text data, but no mention of alternatives or context for choosing this over other backlinks tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

backlinksAuthorityBacklinks AuthorityB

Fetch authority metrics for a target (domain, host or URL) (v1/backlinks/authority)

ParametersJSON Schema
NameRequiredDescriptionDefault
targetYesTarget to assess authority: root domain, host (subdomain), or full URL.
outputNoResponse format. Default: json.json

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided; description does not disclose behavioral traits like rate limits, authentication needs, or what authority metrics entail. Fails to compensate for missing annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single concise sentence with no fluff. Could front-load more critical info but remains efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema and no annotations; description omits return value details, pagination, or usage constraints. Incomplete for a tool that provides authority metrics.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 100% description coverage for both parameters. Description adds no additional meaning beyond 'Fetch authority metrics' and repeats target types already in schema. Baseline of 3 stands.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states 'Fetch authority metrics for a target' with specific resource and target types (domain, host, URL). This verb+resource combination distinguishes it from siblings like backlinksAll or backlinksSummary.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternative sibling tools (e.g., backlinksSummary, domainOverview). The description lacks any contextual cues for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

backlinksIndexedPagesBacklinks Indexed PagesB

Fetch site pages that have backlinks, with sorting and limit controls (v1/backlinks/indexed-pages)

ParametersJSON Schema
NameRequiredDescriptionDefault
targetYesTarget to analyze: root domain, host (subdomain), or full URL.
modeNoScope: 'domain' (incl. subdomains), 'host' (no subdomains), or 'url' (single URL). Default: host.host
order_byNoSort field (descending): 'backlinks' or 'refdomains'. Default: backlinks.backlinks
limitNoMaximum number of results to return (1–10,000). Default: 100.
outputNoResponse format. Default: json.json

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry full burden. It only states it fetches pages, but does not disclose authentication needs, rate limits, whether the operation is read-only, or any other behavioral traits beyond the basic action.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, front-loaded with purpose. The endpoint in parentheses is slightly extraneous but does not harm conciseness. Every part adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 5 parameters and no output schema, the description is incomplete. It does not describe the response format or what data is returned for each page (e.g., URL, backlink count). The schema covers parameter constraints but the description lacks return-value context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds little beyond what schema already provides, only mentioning sorting and limit controls generically. No additional meaning or context for parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool fetches site pages that have backlinks, with sorting and limit controls. It distinguishes from sibling tools that focus on anchors, refdomains, or summary by explicitly targeting pages with backlinks.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like backlinksAll or backlinksAnchors. The description does not mention when-not or provide context for choosing among the backlinks-focused siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

backlinksRefdomainsBacklinks Referring DomainsB

Fetch referring domains pointing to a single target with sorting and limit controls (v1/backlinks/refdomains)

ParametersJSON Schema
NameRequiredDescriptionDefault
targetYesTarget to analyze: root domain, host (subdomain), or full URL.
modeNoScope: 'domain' (incl. subdomains), 'host' (no subdomains), or 'url' (single URL). Default: host.host
order_byNoSort field: 'date_found' (most recent first), 'domain_inlink_rank' (highest first), or 'inlink_rank' (homepage IR highest first).date_found
limitNoMax results to return (1–10,000). Default: 100.
outputNoResponse format. Default: json.json

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It does not disclose behavioral traits like pagination (beyond the limit parameter), response structure, error handling, or rate limits. The description only mentions the endpoint version, which adds minimal value.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that is front-loaded with the core action and resource. It is efficient but could be slightly more informative without becoming verbose, making it appropriate for a 5-param tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema or annotations, the description lacks details on return format, pagination behavior, and edge cases. The sibling tools list is extensive, but the description does not help an agent decide when to use this specific tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with each parameter already explained. The description adds little beyond summarizing sorting and limit controls, so it meets the baseline but does not elevate understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Fetch'), the resource ('referring domains'), and the context ('pointing to a single target'). It also mentions sorting and limit controls, which distinguishes it from sibling tools like backlinksAll or backlinksAnchors.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives such as backlinksAll or backlinksAuthority. The description does not specify exclusions or conditions, leaving the agent to infer from the name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

backlinksSummaryBacklinks SummaryB

Fetch extended backlink statistics for one or multiple targets. Optionally builds an analysis prompt comparing your domain vs a competitor for a given keyword (v1/backlinks/summary)

ParametersJSON Schema
NameRequiredDescriptionDefault
targetYesSingle target or an array of targets (root domain, host, or full URL). When omitted, it defaults to [domain, competitor] if both are provided.
modeNoScope of analysis: 'domain' (*.example.com/* incl. subdomains), 'host' (www.example.com/* only), or 'url' (single URL). Default: host.host
outputNoResponse format. Default: json.json

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description does not disclose behavioral traits like whether the tool is read-only, what 'extended' statistics entail, rate limits, or auth requirements. The term 'optionally builds an analysis prompt' is vague.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the core action, but the mention of an optional analysis prompt introduces some ambiguity without adding structure.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, no annotations, and many sibling tools, the description lacks sufficient context about how the summary relates to other backlinks tools, what output to expect, and how to use the optional prompt feature.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with parameter descriptions, so baseline 3. The description adds only marginal meaning about an optional analysis prompt not reflected in the schema, but does not clarify parameter semantics further.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool fetches extended backlink statistics for one or multiple targets, and mentions an optional analysis prompt for competitor comparison, which distinguishes it from sibling tools focusing on specific backlink data like anchors or refdomains.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description hints at a competitor comparison use case but provides no explicit when-to-use or when-not-to-use guidance, nor direct alternatives among the many backlink sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

domainAdsByDomainDomain Ads by DomainC

Fetch domain ads by domain (v1/domain/ads)

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYesAlpha-2 country code of the regional keyword database.
domainYesThe specific domain for which to retrieve its paid ad data.
fromNoThe starting year and month for the data retrieval period, formatted as “YYYY-MM” (e.g., “2017-01”).
toNoThe ending year and month for the data retrieval period, formatted as “YYYY-MM”.
pageNoFor paginated results, specifies the page number of domains advertising on this keyword to retrieve.
limitNoThe maximum number of domains (advertising on the keyword) to return per page.

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description bears full burden. Only states what the tool does, but discloses no behavioral traits such as pagination behavior, rate limits, or data returned.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Extremely short (one sentence) but under-specified; includes unnecessary API version info while omitting key context. Not efficiently informative.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 6 parameters, no output schema, and no annotations, the description is incomplete; lacks explanation of pagination, return format, or how to interpret results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%; description adds no additional meaning beyond schema descriptions, so baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description states action ('Fetch') and resource ('domain ads'), but merely repeats the tool name and doesn't differentiate from sibling tools like 'domainAdsByKeyword'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., domainAdsByKeyword), no context on prerequisites or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

domainAdsByKeywordDomain Ads by KeywordC

Fetch domain ads by keyword (v1/domain/ads)

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYesAlpha-2 country code of the regional keyword database.
keywordYesThe specific keyword for which to retrieve paid ad data.
fromNoThe starting year and month for the data retrieval period, formatted as “YYYY-MM” (e.g., “2017-01”).
toNoThe ending year and month for the data retrieval period, formatted as “YYYY-MM”.
pageNoFor paginated results, specifies the page number of domains advertising on this keyword to retrieve.
limitNoThe maximum number of domains (advertising on the keyword) to return per page.

TDQS

C2.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It mentions 'fetch' implying a read operation but does not explicitly state idempotency, rate limits, or pagination behavior. The description lacks disclosure of what the tool returns or side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very short (one sentence), which is concise but at the cost of providing necessary context. It is front-loaded but does not earn its place with substantive information beyond the tool name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that there is no output schema and no annotations, the description is incomplete. It does not describe the return value, pagination details, or how the data is structured. The tool has 6 parameters with pagination, yet the description offers no guidance on usage patterns.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema covers 100% of parameters with descriptions, so the description does not need to add much. The description itself adds no parameter-specific meaning beyond the endpoint name, which is acceptable given schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Fetch domain ads by keyword' which specifies the verb and resource, but it does not distinguish this tool from the sibling tool 'domainAdsByDomain', which also fetches ads but by domain. The lack of differentiation reduces clarity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like domainAdsByDomain or other keyword tools. There is no discussion of prerequisites, context, or when not to use this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

domainAioDiscoverBrandAIO Discover BrandC

Fetch AI Overviews brand names (v1/domain/aio/discover-brand)

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYesThe alpha-2 country code for the regional database. Example: us
targetYesThe domain, subdomain, or URL to analyze. Example: seranking.com
scopeNoThe scope of the analysis. Can be base_domain (domain and all subdomains), domain (specific host), or url (exact URL).base_domain

TDQS

C2.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description bears the full burden of disclosing behavioral traits. It only hints at a read operation ('Fetch') but omits any details about side effects, permissions, rate limits, or return format. The description is insufficient for an agent to understand the tool's behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise (one sentence), but it sacrifices utility for brevity. It could be considered efficient, but the lack of contextual information makes it less helpful. No structure or front-loading of key information is evident.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (3 parameters, no output schema, no annotations), the description is incomplete. It fails to explain what the output contains, how results are structured, or any limitations. The tool's purpose is vaguely stated but not sufficiently elaborated for an agent to use it correctly without additional knowledge.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema covers all three parameters with descriptions (100% coverage), so the baseline is 3. The description adds no additional meaning beyond the schema; it does not clarify parameter usage or format beyond what is already in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Fetch AI Overviews brand names' provides a clear verb and resource, but it essentially restates the tool name and title without differentiation from sibling tools like domainAioKeywordsByBrand or domainAioOverview. It lacks specificity about what constitutes a 'brand name' in this context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to use this tool versus its siblings. The description does not mention any prerequisites, context, or scenarios where this tool is appropriate or not.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

domainAioKeywordsByBrandAIO Keywords by BrandC

Fetch AI Overviews domain keywords by brand (v1/domain/aio/keywords-by-brand)

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYesThe alpha-2 country code for the regional database. Example: us
brandYesThe brand name to search for in AIO snippets. Example: SE Ranking.
scopeNoThe scope of the analysis. Can be base_domain (domain and all subdomains), domain (specific host), or url (exact URL).base_domain
sortNoThe field to sort the results by. Available values: volume, type, snippet_length.volume
sort_orderNoThe order for sorting. Available values: asc, desc.desc
offsetNoThe starting position for paginated results.
limitNoThe maximum number of keywords to return per page.
filter[volume][from]NoSpecifies the minimum monthly search volume for keywords to be included.
filter[volume][to]NoSpecifies the maximum monthly search volume for keywords to be included.
filter[difficulty][from]NoSpecifies the minimum keyword difficulty score (typically 0-100) for keywords to be included.
filter[difficulty][to]NoSpecifies the maximum keyword difficulty score for keywords to be included.
filter[keyword_count][from]NoSpecifies the minimum number of words in a keyword phrase.
filter[keyword_count][to]NoSpecifies the maximum number of words in a keyword phrase.
filter[intents]NoA comma-separated list of search intent codes to filter keywords.
filter[competition][from]NoSpecifies the minimum competition score (typically 0-1 or 0-100, depending on the metric scale) for keywords.
filter[competition][to]NoSpecifies the maximum competition score for keywords.
filter[cpc][from]NoSpecifies the minimum Cost Per Click (CPC) value for keywords.
filter[cpc][to]NoSpecifies the maximum Cost Per Click (CPC) value for keywords.
filter[traffic][from]NoSpecifies the minimum estimated monthly traffic for keywords.
filter[traffic][to]NoSpecifies the maximum estimated monthly traffic for keywords.
filter[position][from]NoSpecifies the minimum ranking position for keywords.
filter[position][to]NoSpecifies the maximum ranking position for keywords.
filter[characters_count][from]NoSpecifies the minimum character length for keyword phrases.
filter[characters_count][to]NoSpecifies the maximum character length for keyword phrases.

TDQS

C2.4/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must disclose behavioral traits. It only provides the endpoint path, omitting any details about authentication, rate limits, data freshness, pagination limits, or what happens with missing brands. This is severely lacking.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely short (one sentence) but under-specified. It provides no helpful structure or front-loaded key information. It sacrifices completeness for brevity, making it less useful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has 24 parameters, 2 required, and no output schema. The description is far too minimal to cover the complexity. It does not explain return structure, pagination, or how filters interact, leaving the agent with only the schema to infer behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the input schema already documents each parameter's meaning. The description adds no additional semantic value beyond the endpoint context. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Fetch AI Overviews domain keywords by brand' clearly states the verb (fetch) and resource (AIO domain keywords by brand). It distinguishes from sibling tools like domainAioKeywordsByTarget, but does not explicitly mention how it differs, so it's not a full 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives like domainAioKeywordsByTarget or domainAioOverview. The description fails to provide context for selection, leaving the agent to infer from the name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

domainAioKeywordsByTargetAIO Keywords by TargetC

Fetch AI Overviews domain keywords by target (v1/domain/aio/keywords-by-target)

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYesThe alpha-2 country code for the regional database. Example: us
targetYesThe domain, subdomain, or URL to analyze. Example: seranking.com
scopeNoThe scope of the analysis. Can be base_domain (domain and all subdomains), domain (specific host), or url (exact URL).base_domain
sortNoThe field to sort the results by. Available values: volume, type, snippet_length.volume
sort_orderNoThe order for sorting. Available values: asc, desc.desc
offsetNoThe starting position for paginated results.
limitNoThe maximum number of keywords to return per page.
filter[volume][from]NoSpecifies the minimum monthly search volume for keywords to be included.
filter[volume][to]NoSpecifies the maximum monthly search volume for keywords to be included.
filter[difficulty][from]NoSpecifies the minimum keyword difficulty score (typically 0-100) for keywords to be included.
filter[difficulty][to]NoSpecifies the maximum keyword difficulty score for keywords to be included.
filter[keyword_count][from]NoSpecifies the minimum number of words in a keyword phrase.
filter[keyword_count][to]NoSpecifies the maximum number of words in a keyword phrase.
filter[intents]NoA comma-separated list of search intent codes to filter keywords.
filter[competition][from]NoSpecifies the minimum competition score (typically 0-1 or 0-100, depending on the metric scale) for keywords.
filter[competition][to]NoSpecifies the maximum competition score for keywords.
filter[cpc][from]NoSpecifies the minimum Cost Per Click (CPC) value for keywords.
filter[cpc][to]NoSpecifies the maximum Cost Per Click (CPC) value for keywords.
filter[traffic][from]NoSpecifies the minimum estimated monthly traffic for keywords.
filter[traffic][to]NoSpecifies the maximum estimated monthly traffic for keywords.
filter[position][from]NoSpecifies the minimum ranking position for keywords.
filter[position][to]NoSpecifies the maximum ranking position for keywords.
filter[characters_count][from]NoSpecifies the minimum character length for keyword phrases.
filter[characters_count][to]NoSpecifies the maximum character length for keyword phrases.

TDQS

C2.4/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description provides no behavioral context beyond the bare endpoint. With no annotations and no mention of rate limits, pagination behavior (beyond offset/limit schema), or response characteristics, the agent is left uninformed about important runtime aspects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely short (a single sentence repeating the endpoint), but for a tool with 24 parameters, this is under-specification rather than conciseness. Important context is missing, making it inadequate for effective tool selection.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite rich parameter documentation in the schema, the description omits any explanation of the return data, pagination logic, or domain relationship. Without an output schema, the agent lacks essential completion information for a tool of this complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, so parameters are already well-documented. The description adds no additional semantic value beyond the endpoint name, but given full schema coverage, the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool fetches AI Overviews domain keywords by target, using a specific verb 'Fetch' and indicating the resource. However, it does not differentiate from sibling tools like domainAioKeywordsByBrand, as it only restates the endpoint path without additional context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives (e.g., domainAioOverview or domainAioKeywordsByBrand). There is no mention of prerequisites, scenarios, or exclusions, leaving the agent without decision support.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

domainAioOverviewAIO OverviewC

Fetch AI Overviews domain metrics (v1/domain/aio/overview)

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYesThe alpha-2 country code for the regional database. Example: us
targetYesThe domain, subdomain, or URL to analyze. Example: seranking.com
scopeNoThe scope of the analysis. Can be base_domain (domain and all subdomains), domain (specific host), or url (exact URL).base_domain

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. Only states 'Fetch' implying read-only, but doesn't disclose any behavioral traits like data freshness, pagination, or error handling.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence is extremely concise. However, it could include a bit more context without becoming verbose. Still, it is efficiently structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 3 parameters, no output schema, and no annotations, the description is insufficient. It does not explain return values, limitations, or how the tool fits into the workflow.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptive parameter names and descriptions. The description adds no additional meaning beyond the schema, achieving the baseline for adequate parameter clarity.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states action 'Fetch' and resource 'AI Overviews domain metrics', distinguishing it from siblings like aiSearchOverview or domainKeywords. However, it could be more specific about what metrics are returned.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus siblings like domainAioDiscoverBrand or domainAioKeywordsByTarget. The description lacks context for when AI Overviews domain metrics are appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

domainCompetitorsDomain CompetitorsC

Fetch domain competitors (v1/domain/competitors)

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYesAlpha-2 country code of the regional keyword database.
domainYesThe primary domain for which to find competitors.
typeNoSpecifies whether to find competitors in organic search results or paid search (advertising).organic
statsNoA flag to control the level of detail in the response. If set to “1”, additional statistical parameters are returned for each competitor.

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description must convey behavioral traits. It only states 'Fetch', implying read-only, but does not disclose response size limits, authentication needs, or error handling. The API version is noted but adds little behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that directly states the tool's purpose. There is no wasted text, and it is front-loaded with the critical action and resource.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has four parameters and no output schema. The description does not explain what the response contains (e.g., list of competitor domains, metrics, pagination), leaving the agent to guess the output structure.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the description adds no parameter information beyond what the schema provides. Baseline score of 3 is appropriate as the schema already documents all parameters adequately.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Fetch' and the resource 'domain competitors', distinguishing it from sibling tools like domainKeywords or domainOverview. However, it could be more specific about what constitutes a competitor (e.g., domains that rank for same keywords).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, nor does it mention any prerequisites or exclusions. With a large set of sibling tools, this lack of direction forces the agent to infer usage from the tool name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

domainKeywordsDomain KeywordsC

Fetch domain keywords (v1/domain/keywords)

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYesAlpha-2 country code of the regional keyword database.
domainYesThe domain name for which to retrieve keywords.
typeNoSpecifies whether to retrieve keywords for organic search traffic or paid search (advertising) traffic.organic
order_fieldNoThe field by which the returned keyword list should be sorted.traffic
order_typeNoThe order of sorting.desc
pageNoFor paginated results, specifies the page number to retrieve.
limitNoThe maximum number of keywords to return per page.
colsNoA comma-separated list of specific response parameter names to include in the output. If omitted, a default set of relevant columns is returned.
pos_changeNoFilters keywords based on changes in their ranking positions compared to the previous period.
filter[volume][from]NoSpecifies the minimum monthly search volume for keywords to be included.
filter[volume][to]NoSpecifies the maximum monthly search volume for keywords to be included.
filter[difficulty][from]NoSpecifies the minimum keyword difficulty score (typically 0-100) for keywords to be included.
filter[difficulty][to]NoSpecifies the maximum keyword difficulty score for keywords to be included.
filter[keyword_count][from]NoSpecifies the minimum number of words in a keyword phrase.
filter[keyword_count][to]NoSpecifies the maximum number of words in a keyword phrase.
filter[intents]NoA comma-separated list of search intent codes to filter keywords.
filter[competition][from]NoSpecifies the minimum competition score (typically 0-1 or 0-100, depending on the metric scale) for keywords.
filter[competition][to]NoSpecifies the maximum competition score for keywords.
filter[cpc][from]NoSpecifies the minimum Cost Per Click (CPC) value for keywords.
filter[cpc][to]NoSpecifies the maximum Cost Per Click (CPC) value for keywords.
filter[traffic][from]NoSpecifies the minimum estimated monthly traffic for keywords.
filter[traffic][to]NoSpecifies the maximum estimated monthly traffic for keywords.
filter[position][from]NoSpecifies the minimum ranking position for keywords.
filter[position][to]NoSpecifies the maximum ranking position for keywords.
filter[characters_count][from]NoSpecifies the minimum character length for keyword phrases.
filter[characters_count][to]NoSpecifies the maximum character length for keyword phrases.

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose behavioral traits. It only gives the endpoint path, omitting details like read-only nature, required authentication, rate limits, or error scenarios. This is insufficient for safe invocation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that essentially repeats the endpoint name. It is under-specified and fails to provide useful information efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 26 parameters, no output schema, and no annotations, the description is extremely incomplete. It lacks information on pagination, sorting, filtering semantics, return format, and behavior with invalid inputs.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 26 parameters. The description adds no extra meaning beyond the schema, meeting the baseline of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Fetch' and the resource 'domain keywords', making the tool's core purpose unambiguous. However, it does not distinguish this tool from siblings like 'domainKeywordsComparison' or 'keywordsLongtail', missing a chance to differentiate.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. Among many sibling keyword tools, explicit when-to-use and when-not-to-use advice would significantly help an agent select correctly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

domainKeywordsComparisonDomain Keywords ComparisonB

Analyzes and compares the keyword rankings of two websites: domain and compare. It can find keywords they have in common or identify a 'keyword gap'—keywords for which the domain ranks, but the compare domain does not.

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYesAlpha-2 country code of the regional keyword database.
domainYesThe primary domain for the analysis. For a keyword gap analysis (`diff=1`), this will be the domain that has the keywords.
compareYesThe secondary domain for comparison. For a keyword gap analysis (`diff=1`), this will be the domain that is missing the keywords.
typeNoSpecifies whether to compare keywords based on organic search traffic or paid search (advertising) traffic.organic
pageNoFor paginated results, specifies the page number of keywords to retrieve.
limitNoThe maximum number of keywords to return per page.
colsNoA comma-separated list of specific response parameter names to include in the output. If omitted, a default set of relevant columns is returned for the comparison.
diffNoControls the comparison mode. Use `0` to find keywords common to both domains. Use `1` for a keyword gap analysis to find keywords the `domain` ranks for, but the `compare` domain does not.
order_fieldNoSpecifies the field by which to sort the results.keyword
order_typeNoSpecifies the sort order for the results.asc

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must disclose behavioral traits. It states the tool is read-only (analyzes/comparses), but does not mention required permissions, rate limits, data freshness, or side effects. The description lacks depth for a complex tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, efficient and front-loaded. No redundant information. Every sentence serves a purpose: first states core function, second clarifies the two comparison modes.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is minimal for a tool with 10 parameters and no output schema. It covers the main idea but does not elaborate on pagination, sorting, or typical use cases. The schema fills some gaps, but the description could be richer.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents each parameter. The description adds overarching context (e.g., explaining diff=0 vs 1, and which domain has keywords in gap mode). This adds moderate value beyond the schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool compares keyword rankings between two domains, with two modes (common keywords or gap). It uses specific verbs ('analyzes', 'compares', 'finds'). However, it does not explicitly differentiate from sibling tools like 'domainKeywordsReverseComparison', which likely does the opposite comparison.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for comparing two domains, but provides no explicit guidance on when to use this tool versus alternatives (e.g., domainCompetitors, domainKeywords). No 'when not to use' or prerequisite conditions are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

domainKeywordsReverseComparisonDomain Keywords Reverse ComparisonC

Compare keywords across domains (v1/domain/keywords/comparison)

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYesAlpha-2 country code of the regional keyword database.
domainYesThe primary domain for the comparison.
compareYesThe competitor domain to compare against the primary domain.
typeNoSpecifies whether to compare keywords based on organic search traffic or paid search (advertising) traffic.organic
pageNoFor paginated results, specifies the page number of keywords to retrieve.
limitNoThe maximum number of keywords to return per page.
colsNoA comma-separated list of specific response parameter names to include in the output. If omitted, a default set of relevant columns is returned for the comparison.
order_fieldNoSpecifies the field by which to sort the results.keyword
order_typeNoSpecifies the sort order for the results.asc

TDQS

C2.1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so the description must disclose behavioral traits. It fails to mention any: no indication of side effects (likely read-only but unstated), no rate limits, no auth requirements. The bare description adds nothing.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence but is under-specified, providing minimal value. It does not effectively front-load key information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 9 parameters, no output schema, and no annotations, the description is far from complete. It lacks explanation of result format, pagination details, or how the comparison differs from similar tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description itself adds no extra meaning beyond what the input schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Compare keywords across domains' which indicates the core action and resource, but it lacks differentiation from the sibling tool 'domainKeywordsComparison'. The term 'Reverse' in the title is not explained.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus the similar sibling 'domainKeywordsComparison'. No context about prerequisites or typical use cases.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

domainOverviewDomain OverviewC

Fetch domain overview (v1/domain/overview)

ParametersJSON Schema
NameRequiredDescriptionDefault
domainYesThe domain for which to retrieve database data.

TDQS

C2.3/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full responsibility for behavioral disclosure. It fails to mention any traits such as read-only nature, rate limits, or potential side effects. The description is essentially a restatement of the endpoint.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, which is concise but at the expense of informativeness. It repeats the endpoint path, which is not useful for understanding the tool's purpose. It could be restructured to add value without increasing length.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and no annotations, the description is incomplete. It does not explain what the returned data represents, how to interpret it, or any limitations. For a simple one-parameter tool, it still leaves key questions unanswered.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with a single parameter 'domain' described minimally. The tool description adds no extra meaning beyond the schema. Baseline score of 3 applies because the schema covers the parameter, but the description does not enhance understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Fetch domain overview' which identifies the action and resource, but it is vague and does not distinguish from numerous sibling tools like domainOverviewDb or domainOverviewHistory. The lack of specificity about what the overview contains reduces clarity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. The description does not mention context, prerequisites, or exclusions, leaving the agent to guess which domain overview tool is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

domainOverviewDbDomain Overview DBC

Fetch domain overview by database (v1/domain/overview/db)

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYesAlpha-2 country code of the regional keyword database.
domainYesThe domain for which to retrieve the keyword statistics.
with_subdomainsNoA flag to determine whether data for subdomains should be included in the analysis.

TDQS

C2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry full weight. It only states 'Fetch' with no details on side effects, data freshness, rate limits, or response structure. It does not disclose if the operation is read-only or has any behavioral traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise (one sentence) but at the cost of completeness. It fails to convey essential information, making it under-specified rather than efficiently precise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema and a complex domain (keyword statistics over regional databases), the description is insufficient. It does not explain what the response contains or how the three parameters interact. The agent would lack key information to validate results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% with clear descriptions for each parameter (source as country code, domain as keyword statistics, with_subdomains flag). The tool description adds no additional meaning beyond the schema, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Fetch domain overview by database (v1/domain/overview/db)' is nearly a tautology of the tool name, providing no explanation of what 'overview' entails or how it differs from sibling tools like domainOverview, domainOverviewWorldwide, etc. The parameter description for 'domain' mentioning 'keyword statistics' introduces ambiguity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description offers no guidance on when to use this tool versus alternatives. There is no mention of prerequisites, context, or exclusions. The agent is left to infer usage solely from the parameters.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

domainOverviewHistoryDomain Overview HistoryC

Fetch domain historical overview (v1/domain/overview/history)

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYesAlpha-2 country code of the regional keyword database.
domainYesThe domain name for which to retrieve historical performance data.
typeNoSpecifies whether to retrieve historical data for organic search traffic or paid search (advertising) traffic.organic

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must cover behavioral traits. It only repeats the API endpoint and does not disclose what historical data is returned, time range, or any operational constraints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence is concise but includes redundant API endpoint. Could be more informative without adding length.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Without output schema or annotations, the description should explain return values and scope. It does not address what the historical overview contains, limiting completeness for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds no extra context beyond the schema, but the schema itself is adequate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool fetches domain historical overview, which is a specific verb+resource. The term 'history' helps distinguish from current overview tools like domainOverview, but no explicit differentiation is made, so it's not a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. A long list of sibling tools exists, but the description provides no context for selection or exclusion.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

domainOverviewWorldwideDomain Overview WorldwideC

Fetch domain worldwide overview (v1/domain/overview/worldwide)

ParametersJSON Schema
NameRequiredDescriptionDefault
domainYesThe domain name for which to retrieve worldwide statistics.
currencyNoAn ISO 4217 currency code to be used for any monetary values (like traffic cost) returned in the response.USD
fieldsNoA comma-separated list specifying which data fields or categories to include in the response. This allows for tailoring the response to only the needed information.price, traffic, keywords
show_zones_listNoA boolean-like value (“1” for true, “0” for false) to determine if the response should include a detailed breakdown of statistics for each individual regional zone (country) in addition to the aggregated worldwide statistics.

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description must disclose behavioral traits. It only states the action, omitting details about rate limits, data freshness, or side effects. The parameter descriptions in the schema do not compensate for the lack of behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very concise at 10 words, but it may be too terse. It front-loads the action but lacks structure and often omits important context, making it merely adequate.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 4 parameters and no output schema, the description should provide more context about the response or typical usage. It only mentions the endpoint path, leaving the agent uncertain about the data structure and scope.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All 4 parameters have full descriptions in the schema with default values. The tool description adds no extra semantic information, meeting the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Fetch' and the resource 'domain worldwide overview', distinguishing it from sibling overview tools by its geographic scope. However, it does not specify what data fields are included in the overview, relying on the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool over alternatives like domainOverview or domainOverviewDb. The description lacks any context about prerequisites or typical use cases.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

keywordsExportExport Keywords MetricsB

Bulk retrieve metrics for a list of keywords (v1/keywords/export, POST form-data; source in query)

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYesAlpha-2 country code of the regional keyword database.
keywordsYesFor a single keyword, use one keywords[] parameter. Repeat the keywords[] to analyze multiple keywords. A maximum of 5,000 keywords can be submitted per call.
sortNoThe field by which the returned list of keywords should be sorted. Common sortable fields include volume, cpc, difficulty, competition.cpc
sort_orderNoThe order of sorting for the sort field.desc
colsNoA comma-separated list of specific response parameter names to include in the output for each keyword. If omitted, all available data points are returned.keyword, volume, cpc, competition, difficulty, history_trend

TDQS

B3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It mentions 'POST form-data; source in query' but lacks behavioral details like rate limits, data freshness, error handling, or response structure. The schema caps keywords at 5000, but description does not reinforce or explain this.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise (one sentence) and front-loaded with the core action. However, it includes technical details (endpoint, method) that could be moved to the schema or noted separately. It is adequate but not structured for maximum clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (5 parameters, no output schema, no annotations), the description is incomplete. It omits return value format, usage context among sibling tools, and any important behavioral notes. The schema provides param details, but the description adds little context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description does not add extra meaning beyond schema; the parameters are already well-documented in the schema. The mention of 'source in query' is a minor technical detail.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Bulk retrieve metrics for a list of keywords', specifying the action (retrieve metrics) and scope (list of keywords). The endpoint and method are provided, distinguishing it from sibling tools that focus on specific keyword queries like questions or related.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs. alternatives like keyword-specific tools. It does not mention when not to use it or provide any context for selection among similar tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

keywordsLongtailLongtail KeywordsC

Fetch longtail (low search volume) keywords (v1/keywords/longtail)

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYesAlpha-2 country code of the regional keyword database.
keywordYesThe seed keyword for which to find similar keywords.
limitNoMaximum number of keywords to return per page.
offsetNoStarting offset for pagination.
sortNoThe field by which the returned list of keywords should be sorted.
sort_orderNoThe order of sorting for the sort field.
filter[volume][from]NoMinimum monthly search volume.
filter[volume][to]NoMaximum monthly search volume.
filter[difficulty][from]NoMinimum keyword difficulty score (0-100).
filter[difficulty][to]NoMaximum keyword difficulty score (0-100).
filter[cpc][from]NoMinimum Cost Per Click.
filter[cpc][to]NoMaximum Cost Per Click.
filter[competition][from]NoMinimum competition score (0.0-1.0).
filter[competition][to]NoMaximum competition score (0.0-1.0).
filter[keyword_count][from]NoMinimum number of words in the keyword.
filter[keyword_count][to]NoMaximum number of words in the keyword.
filter[characters_count][from]NoMinimum character length of the keyword.
filter[characters_count][to]NoMaximum character length of the keyword.
filter[serp_features]NoComma-separated list of SERP features to filter by.

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, and the description only states 'Fetch longtail (low search volume) keywords' without disclosing behavioral traits such as pagination, rate limits, or what happens if no results are found. The endpoint is mentioned but adds minimal transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is very short (one sentence), achieving conciseness, but it lacks structure such as sections or bullet points. It could be more informative without being overly verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 19 parameters, no output schema, and no annotations, the description is too brief. It does not explain return values, pagination, or filter behavior, leaving the agent without sufficient context for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% (all 19 parameters have descriptions), so the description does not need to add much. The description itself adds no parameter-specific meaning; baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it fetches longtail keywords with low search volume, and the name 'keywordsLongtail' aligns with sibling tools like 'keywordsRelated' and 'keywordsSimilar', providing some differentiation. However, it could more explicitly contrast with similar keyword tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives (e.g., keywordsRelated or keywordsSimilar). The description does not mention prerequisites, when not to use it, or preferred use cases.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

keywordsQuestionsKeyword QuestionsC

Fetch keyword questions (v1/keywords/questions)

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYesAlpha-2 country code of the regional keyword database.
keywordYesThe seed keyword for which to find similar keywords.
limitNoMaximum number of keywords to return per page.
offsetNoStarting offset for pagination.
sortNoThe field by which the returned list of keywords should be sorted.
sort_orderNoThe order of sorting for the sort field.desc
history_trendNoWhether to include historical search volume trend data in the response.
filter[volume][from]NoMinimum monthly search volume.
filter[volume][to]NoMaximum monthly search volume.
filter[difficulty][from]NoMinimum keyword difficulty score (0-100).
filter[difficulty][to]NoMaximum keyword difficulty score (0-100).
filter[cpc][from]NoMinimum Cost Per Click.
filter[cpc][to]NoMaximum Cost Per Click.
filter[competition][from]NoMinimum competition score (0.0-1.0).
filter[competition][to]NoMaximum competition score (0.0-1.0).
filter[keyword_count][from]NoMinimum number of words in the keyword.
filter[keyword_count][to]NoMaximum number of words in the keyword.
filter[characters_count][from]NoMinimum character length of the keyword.
filter[characters_count][to]NoMaximum character length of the keyword.
filter[serp_features]NoComma-separated list of SERP features to filter by.

TDQS

C2.2/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It only mentions the API endpoint and fails to state any behavioral traits like read-only nature, pagination behavior, response format, or side effects. This is a critical gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely short (one phrase) which is concise but lacks structure or complete sentences. It is not front-loaded with key information; it barely communicates purpose. A 3 is adequate but not well-crafted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 20 parameters, no output schema, and no annotations, the description is severely incomplete. It does not explain what the tool returns, how to interpret results, or any usage constraints. A 1 indicates significant gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so all parameters have descriptions in the schema. The tool description itself adds no additional meaning beyond the schema. Baseline 3 is appropriate as the description does not detract but adds no value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Fetch keyword questions' which is a specific verb and resource, but it lacks any explanation of what 'keyword questions' are, making it minimally clear. It does not distinguish from sibling tools like keywordsSimilar or keywordsLongtail. A score of 3 reflects adequate but not differentiating clarity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, such as when a user needs question-based keywords versus related keywords or long-tail keywords. There are no explicit usage contexts or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

keywordsRelatedRelated KeywordsC

Fetch related keywords (v1/keywords/related)

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYesAlpha-2 country code of the regional keyword database.
keywordYesThe seed keyword for which to find similar keywords.
limitNoMaximum number of keywords to return per page.
offsetNoStarting offset for pagination.
sortNoThe field by which the returned list of keywords should be sorted.
sort_orderNoThe order of sorting for the sort field.desc
history_trendNoWhether to include historical search volume trend data in the response.
filter[volume][from]NoMinimum monthly search volume.
filter[volume][to]NoMaximum monthly search volume.
filter[difficulty][from]NoMinimum keyword difficulty score (0-100).
filter[difficulty][to]NoMaximum keyword difficulty score (0-100).
filter[cpc][from]NoMinimum Cost Per Click.
filter[cpc][to]NoMaximum Cost Per Click.
filter[competition][from]NoMinimum competition score (0.0-1.0).
filter[competition][to]NoMaximum competition score (0.0-1.0).
filter[keyword_count][from]NoMinimum number of words in the keyword.
filter[keyword_count][to]NoMaximum number of words in the keyword.
filter[characters_count][from]NoMinimum character length of the keyword.
filter[characters_count][to]NoMaximum character length of the keyword.
filter[serp_features]NoComma-separated list of SERP features to filter by.

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden but only mentions the API endpoint. It fails to disclose pagination, rate limits, data freshness, or what 'related' means behaviorally.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

While brief, the description is undersized for the complexity (20 params). It lacks front-loaded details and reads as a tautology of the name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is completely inadequate for a tool with 20 parameters, no output schema, and no annotations. It does not explain return structure, pagination, or the meaning of 'related'.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds no parameter-level meaning beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Fetch related keywords' clearly states the action and resource. However, it does not differentiate from sibling tools like keywordsSimilar or keywordsLongtail, which may overlap in concept.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool vs alternatives. The description simply states what it does without context for selection among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

keywordsSimilarSimilar KeywordsC

Fetch similar keywords from SE Ranking Data API (v1/keywords/similar)

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYesAlpha-2 country code of the regional keyword database.
keywordYesThe seed keyword for which to find similar keywords.
limitNoMaximum number of keywords to return per page.
offsetNoStarting offset for pagination.
sortNoThe field by which the returned list of keywords should be sorted.
sort_orderNoThe order of sorting for the sort field.desc
history_trendNoWhether to include historical search volume trend data in the response.
filter[volume][from]NoMinimum monthly search volume.
filter[volume][to]NoMaximum monthly search volume.
filter[difficulty][from]NoMinimum keyword difficulty score (0-100).
filter[difficulty][to]NoMaximum keyword difficulty score (0-100).
filter[cpc][from]NoMinimum Cost Per Click.
filter[cpc][to]NoMaximum Cost Per Click.
filter[competition][from]NoMinimum competition score (0.0-1.0).
filter[competition][to]NoMaximum competition score (0.0-1.0).
filter[keyword_count][from]NoMinimum number of words in the keyword.
filter[keyword_count][to]NoMaximum number of words in the keyword.
filter[characters_count][from]NoMinimum character length of the keyword.
filter[characters_count][to]NoMaximum character length of the keyword.
filter[serp_features]NoComma-separated list of SERP features to filter by.

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description only states the core action and endpoint. It does not disclose behavioral traits such as pagination behavior, rate limits, response structure, or any side effects. Since no annotations are provided, the description carries the full burden and fails to address these.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very brief (one sentence) and could be more informative without becoming verbose. It sacrifices valuable context for brevity, but it is not overly long.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 20 parameters and no output schema, the description is insufficiently complete. It should explain what 'similar' means, how pagination works, and what the response contains. The current description leaves significant gaps for the agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage for all 20 parameters, so the schema already explains each parameter. The tool description adds no additional meaning beyond the schema, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it fetches similar keywords from a specific API endpoint. However, it does not differentiate 'similar' from sibling tools like 'keywordsRelated' or 'keywordsLongtail', which could cause confusion about when to use this tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus its siblings. There is no mention of prerequisites, context, or exclusions, leaving the agent to infer when 'similar' is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 28 tool updatesv1.0.0
    • First observedaiSearchOverview
    • First observedaiSearchPromptsByBrand
    • First observedaiSearchPromptsByTarget
    • First observedbacklinksAll
    • First observedbacklinksAnchors
    • First observedbacklinksAuthority
    • First observedbacklinksIndexedPages
    • First observedbacklinksRefdomains
    • First observedbacklinksSummary
    • First observeddomainAdsByDomain
    • First observeddomainAdsByKeyword
    • First observeddomainAioDiscoverBrand
    • First observeddomainAioKeywordsByBrand
    • First observeddomainAioKeywordsByTarget
    • First observeddomainAioOverview
    • First observeddomainCompetitors
    • First observeddomainKeywords
    • First observeddomainKeywordsComparison
    • First observeddomainKeywordsReverseComparison
    • First observeddomainOverview
    • First observeddomainOverviewDb
    • First observeddomainOverviewHistory
    • First observeddomainOverviewWorldwide
    • First observedkeywordsExport
    • First observedkeywordsLongtail
    • First observedkeywordsQuestions
    • First observedkeywordsRelated
    • First observedkeywordsSimilar

TDQS

B3/5.0
Disambiguation4/5

Tools are grouped by clear prefixes (aiSearch, backlinks, domain, keywords), making their purposes generally distinct. However, minor overlap exists within domain overview variants and keyword-related tools, and 'domainKeywordsComparison' vs 'domainKeywordsReverseComparison' may cause confusion.

Naming Consistency4/5

The naming follows a consistent camelCase pattern with category prefixes. Most tools are well-structured, though a few, like 'domainKeywordsReverseComparison', break the typical verb-noun pattern slightly.

Tool Count4/5

With 28 tools, the set is slightly larger than ideal but still well-scoped for a comprehensive SEO data API covering multiple subdomains. Each tool serves a specific function, and no tool appears redundant.

Completeness4/5

The toolset covers a wide range of SEO data retrieval tasks, including AI search, backlinks, domain analysis, and keywords. However, it lacks write operations (e.g., create, update) and some advanced backlink analysis tools, leaving minor gaps.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    C
    quality
    D
    maintenance
    Connects AI assistants to SE Ranking's SEO and project management APIs to enable natural language queries for keyword research, backlink analysis, and technical audits. It supports comprehensive tasks including competitive analysis, domain traffic tracking, and AI search visibility monitoring.
    100
    Apache 2.0
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables querying Google Search Console and Google Analytics 4 through natural language, with tools for SEO analysis like anomaly detection, cannibalization detection, and opportunity scoring.
    29
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables SEO analytics via the Semrush Analytics API, allowing AI agents to query Semrush data through natural language.
    16
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Teake1404/seo-data-api-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server