SEO Authority MCP
This server provides AI agents with typed SEO tools for authority measurement, keyword research, content optimization, competitor analysis, site auditing, and internal linking, with paid USDC settlement and no fabricated Google metrics.
Get free capability, provenance, and metric-disclosure info via
get_seo_capabilities.Measure a single domain's SEO authority (
get_domain_authority, $0.01).Compare and rank 2–20 domains' authority (
compare_domain_authority, $0.02).Score supplied page HTML for on-page SEO checks (
score_page_seo, $0.01).Correct spelling in SEO queries (
correct_seo_query, $0.005).Expand queries into long-tail variants (
expand_seo_query, $0.01).Generate and prioritize keyword opportunities (
find_keyword_opportunities, $0.05).Find content gaps using supplied site and competitor pages (
find_competitor_content_gaps, $0.10).Create evidence-tagged content briefs (
create_seo_content_brief, $0.10).Audit multiple pages for on-page, duplication, and internal-link issues (
audit_site_seo, $0.15).Discover contextual internal link opportunities (
find_internal_link_opportunities, $0.05).
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@SEO Authority MCPCompare domain authority of my site with competitor.com"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
SEO Authority MCP
Give AI agents typed SEO authority, keyword, competitor, content, audit, and internal-link tools backed by seo.forgemesh.io. Authority scores use open Common Crawl graph data. The server does not invent search volume, CPC, live SERP positions, complete backlinks, or Google metrics.
Install
npx -y @forgemeshlabs/seo-authority-mcpRelated MCP server: Agent Readiness MCP
Claude Desktop
Challenge-only mode—safe default, never spends:
{
"mcpServers": {
"seo-authority": {
"command": "npx",
"args": ["-y", "@forgemeshlabs/seo-authority-mcp"]
}
}
}Automatic x402 settlement:
{
"mcpServers": {
"seo-authority": {
"command": "npx",
"args": ["-y", "@forgemeshlabs/seo-authority-mcp"],
"env": {
"SEO_X402_PRIVATE_KEY": "YOUR_DEDICATED_LOW_BALANCE_WALLET_KEY",
"SEO_MAX_PAYMENT_USDC": "0.15"
}
}
}
}Use a dedicated low-balance wallet. Never commit its private key.
Tools
MCP tool | Purpose | Price |
| Source and metric disclosures | Free |
| Common Crawl graph authority | $0.01 |
| Compare 2–20 domains | $0.02 |
| Deterministic on-page checks | $0.01 |
| Did-you-mean correction | $0.005 |
| Long-tail query variants | $0.01 |
| Prioritized keyword ideas | $0.05 |
| Supplied-content gap analysis | $0.10 |
| Evidence-tagged brief | $0.10 |
| Multi-page SEO audit | $0.15 |
| Contextual internal links | $0.05 |
Paid tools use exact USDC settlement on Base. Without SEO_X402_PRIVATE_KEY, each tool returns price, network, receiver, and retry guidance instead of spending.
Docker
docker build -t seo-authority-mcp:0.1.0 .
docker run --rm -i --read-only --cap-drop=ALL seo-authority-mcp:0.1.0For automatic payment, pass the private key at runtime using your secret manager. Do not bake it into the image.
Environment
Variable | Required | Default | Purpose |
| No | unset | Enables automatic payment |
| No |
| Per-call payment ceiling |
| No |
| Backend URL |
| No |
| Explicitly allows a custom HTTPS backend |
| No |
| Upstream timeout, capped at 120 seconds |
Links
x402 discovery: https://seo.forgemesh.io/.well-known/x402
Contact: clawdbotworker@gmail.com
License
MIT
Available Tools
11 toolsaudit_site_seoARead-onlyIdempotent
Audit supplied page HTML for on-page, duplication, and internal-link problems; costs $0.15 USDC.
| Name | Required | Description | Default |
|---|---|---|---|
| pages | Yes | Pages to audit; each requires url and html. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the tool is safe and non-mutating. The description adds valuable context by disclosing the cost of $0.15 USDC, which is not in annotations, and emphasizes that HTML must be supplied, clarifying the required input 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the main action and includes the cost. Every word earns its place, and there is no redundancy or unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool accepts up to 50 pages and has no output schema, the description gives enough context to understand the tool's role (audit HTML for problems) and a critical practical detail (cost). It could be more specific about the output format, but the annotations and schema fill in most safety and input details, making it reasonably complete for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% — every parameter (url, html, text, title) is already described in the schema. The description only reinforces the html field, adding no new semantic detail about the optional text or title fields. This meets the baseline of 3 but does not exceed it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the action (audit), the resource (supplied page HTML), and the scope (on-page, duplication, and internal-link problems). It distinguishes itself from sibling tools like score_page_seo which focuses on scoring, and find_internal_link_opportunities which is about finding opportunities, not auditing existing problems.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: it is for auditing HTML pages you supply, implying you need the HTML beforehand. It does not explicitly mention when not to use it or name alternatives, but the specific wording and the cost indicate a deliberate choice for bulk auditing. Missing exclusions prevent a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_domain_authorityARead-onlyIdempotent
Compare open-web SEO authority for 2 to 20 domains and rank the results; costs $0.02 USDC.
| Name | Required | Description | Default |
|---|---|---|---|
| domains | Yes | Two to twenty domains or URLs. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the tool as read-only, non-destructive, idempotent, and open-world. The description adds valuable behavioral context beyond these annotations by revealing the cost ($0.02 USDC) and the ranking behavior of the output. It also clarifies the 'open-web' scope of the authority metric. This supplements the annotation coverage effectively.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that conveys the action, scope, and cost without any fluff. Every word contributes to the tool's understanding, achieving high information density in a compact format.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with a single parameter, a simple read-only operation, and strong annotations, the description is complete. It covers the action, domain count range, ranking behavior, and cost. The absence of an output schema is compensated by the description's 'rank the results' phrasing, which implies a structured output. No critical information is missing for an agent to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides 100% coverage for the only parameter ('domains') with a clear description ('Two to twenty domains or URLs') and constraints (min/max items). The tool description adds minimal additional parameter meaning beyond restating the range ('2 to 20 domains'). Since the schema does the heavy lifting, a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('compare'), a clear resource ('domains'), and an outcome ('rank the results'), making the tool's purpose unambiguous. It distinguishes itself from the sibling 'get_domain_authority' by focusing on multi-domain comparison and ranking. The mention of 'open-web SEO authority' adds specificity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly indicates when to use this tool: when you need to compare and rank SEO authority for 2 to 20 domains. It implies a multi-domain use case, setting it apart from single-domain tools, but it does not explicitly name alternatives or provide exclusionary guidance. This is clear context without explicit 'when-not-to-use' advice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
correct_seo_queryARead-onlyIdempotent
Correct likely spelling errors in an SEO search query; costs $0.005 USDC.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | SEO query to correct. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true. The description adds the cost of $0.005 USDC, which is valuable behavioral context beyond annotations. It doesn't describe the output format, but the annotation coverage lowers the burden.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that includes both the purpose and the cost, with no redundant information. It is perfectly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with one parameter and no output schema, so the description is mostly complete. It could mention what the corrected query looks like, but the cost and purpose are sufficient for most use cases.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds minimal semantic value beyond the schema, merely restating that the query is an SEO query with likely spelling errors.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Correct') and resource ('SEO search query'), clearly distinguishing it from sibling tools like expand_seo_query. It also adds a cost detail that makes the tool's function unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for correcting spelling errors in SEO queries, which gives clear context for when to use it. However, it doesn't explicitly name alternatives or state when not to use it, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_seo_content_briefARead-onlyIdempotent
Create an evidence-tagged SEO content brief from a keyword and supplied competitor or site pages; costs $0.10 USDC.
| Name | Required | Description | Default |
|---|---|---|---|
| keyword | Yes | Primary keyword or topic. | |
| site_pages | No | Optional existing site pages for differentiation and linking. | |
| competitor_pages | No | Optional competitor pages providing evidence. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds the critical behavioral detail of cost ('costs $0.10 USDC') and the 'evidence-tagged' output nature, which are not present in annotations. This is a valuable addition.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that states the action, inputs, and cost without any filler. Every word contributes to understanding, making it exceptionally concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple input schema (3 params, all optional except keyword) and existing annotations, the description covers the essential aspects: what it creates, from what inputs, and the cost. It does not describe the output structure, but the lack of an output schema and the straightforward nature of a 'content brief' make this acceptable. It is reasonably complete for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so parameters are already well documented (e.g., site_pages for differentiation and linking, competitor_pages for evidence). The description only mentions 'keyword' and 'supplied competitor or site pages' without adding new details, so it contributes marginal value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Create') and resource ('SEO content brief'), and clarifies the input sources ('from a keyword and supplied competitor or site pages'). This clearly separates it from sibling tools like score_page_seo or audit_site_seo, which focus on analysis rather than brief generation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies its use case: generating a brief from a keyword and optionally supplied pages. However, it does not explicitly state when to choose this tool over alternatives, nor does it mention any exclusions. The context is clear but not comparative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
expand_seo_queryARead-onlyIdempotent
Generate deterministic long-tail and intent-oriented variants of an SEO query; costs $0.01 USDC.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Seed SEO query to expand. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false. The description adds value by disclosing deterministic behavior and a cost of $0.01 USDC, which are not present in annotations. No contradiction found.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, front-loaded with the core action, and includes essential extras (determinism, cost) without waste. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter tool with no output schema, the description adequately conveys purpose, determinism, and cost. It does not describe the return format or variant count, but this is acceptable given the tool's simplicity and the presence of annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with a clear description of the 'query' parameter. The description adds context about the nature of the variants but does not elaborate on query constraints or formatting, 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Generate') and resource ('long-tail and intent-oriented variants of an SEO query'), which distinguishes it from siblings like correct_seo_query. It is specific and actionable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies a clear use case—expanding a seed query into variants—but does not explicitly mention alternatives or when not to use it. The context is evident from the description alone, so it earns a 4 rather than a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_competitor_content_gapsARead-onlyIdempotent
Find content gaps from customer-supplied site and competitor pages without claiming live SERP verification; costs $0.10 USDC.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | Your domain and supplied pages. | |
| competitors | Yes | One to ten competitors with supplied pages. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint false. The description adds valuable behavioral context beyond annotations: it costs $0.10 USDC and explicitly disclaims live SERP verification. This informs the agent about cost implications and the tool's reliance on supplied data, which is useful for invocation decisions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the core purpose, then adds two critical constraints (no live SERP verification, cost). No filler or redundancy; every element earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has moderate complexity (nested objects, two required params) but no output schema. The description covers input source and cost but does not mention what the output looks like (e.g., list of gaps, structured data). Since there is no output schema, the description should provide some expectation of return format, which it lacks. The provided context is adequate for invoking the tool but incomplete for fully anticipating results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with each parameter (site, competitors) and nested properties documented. The tool description adds minimal extra meaning beyond 'customer-supplied site and competitor pages', which is already clear from the schema. Baseline of 3 applies as schema handles the parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: finding content gaps between a customer-supplied site and competitor pages. It uses a specific verb ('find') and resource ('content gaps'), and the scope (customer-supplied pages) distinguishes it from sibling tools like 'find_keyword_opportunities' or 'audit_site_seo'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context about when to use the tool: it requires customer-supplied site and competitor pages, and it explicitly notes it does not claim live SERP verification. This implies the tool is for analyzing provided data rather than live search results, but it does not explicitly name alternatives or mention when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_internal_link_opportunitiesARead-onlyIdempotent
Find missing contextually relevant internal links across supplied pages; costs $0.05 USDC.
| Name | Required | Description | Default |
|---|---|---|---|
| pages | Yes | Two or more site pages with title and text for best results. | |
| domain | Yes | Site domain. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds the cost of $0.05 USDC, which is important for agent decision-making, and the qualifier 'contextually relevant' suggests a nuanced matching behavior. It does not contradict the annotations and provides additional behavioral context beyond the structured metadata.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the primary action ('Find missing contextually relevant internal links') and appends the cost as a secondary but necessary detail. Every word earns its place, and there is no redundant phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a read-only analysis with two parameters, full schema coverage, and rich annotations (readOnly, idempotent). The description states the purpose and cost, which is sufficient for a straightforward 'find links' operation. The lack of an output schema is acceptable because the description implies a result (missing links), and the schema provides enough input guidance.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with 'domain' and 'pages' each having a clear description (e.g., 'Site domain.' and 'Two or more site pages with title and text for best results.'). The tool description adds no extra parameter-level meaning beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with the specific verb 'Find' and names the resource ('missing contextually relevant internal links') with an explicit scope ('across supplied pages'). This clearly distinguishes it from sibling tools like find_keyword_opportunities and find_competitor_content_gaps, which target different SEO entities.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies the input expectation ('supplied pages') and the task (finding missing internal links), which sets context for when to use the tool. It does not explicitly name alternatives or exclusions, but the distinct resource and scope make the usage evident without needing to refer to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_keyword_opportunitiesARead-onlyIdempotent
Generate and prioritize long-tail keyword opportunities without fabricating volume, CPC, SERP, or difficulty metrics; costs $0.05 USDC.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | Yes | Seed topic or keyword. | |
| audience | No | Optional target audience. | |
| domain_authority_score | No | Optional known authority score used for prioritization. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, open-world, idempotent, and non-destructive behavior. The description adds valuable non-obvious context: it explicitly states that no metrics (volume, CPC, SERP, difficulty) are fabricated, and discloses a cost of $0.05 USDC. These are beyond annotations and help the agent set expectations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that conveys the core function, a key constraint, and the cost. No wasted words, and the most important information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is relatively simple with a clear schema and annotations. The description covers the key behavioral aspects (output type, no fabrication, cost). A return format is not specified, but the absence of an output schema and the tool's simplicity make this acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with all three parameters already described in the schema. The description adds no additional parameter-level meaning, 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: generating and prioritizing long-tail keyword opportunities. It specifies the resource (long-tail keyword opportunities) and the action (generate and prioritize), but it does not explicitly differentiate from sibling tools like find_competitor_content_gaps or find_internal_link_opportunities.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. It does not mention any context in which this tool should be preferred or excluded, leaving the agent to infer from the name and siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_domain_authorityARead-onlyIdempotent
Measure one domain's open-web SEO authority using Common Crawl harmonic centrality and PageRank graph data; costs $0.01 USDC.
| Name | Required | Description | Default |
|---|---|---|---|
| domain | Yes | Domain or URL to measure, such as example.com. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover read-only, idempotent, and non-destructive behavior, so the description does not need to repeat these. It adds valuable context about the cost ($0.01 USDC) and the data sources used, which go beyond the annotations. This additional context is useful for decision-making, though it does not disclose any potential rate limits or failure modes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the primary action and includes essential details (methodology and cost) without unnecessary words. It is well-structured and respects the reader's attention.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and no output schema, the description covers the core purpose, methodology, and cost. However, it does not explicitly state the return format (e.g., a numeric score), which could be important for an agent invoking the tool. Given the annotations and simplicity, this is a minor gap but not detrimental.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already fully describes the 'domain' parameter with 100% coverage, so the description adds no additional parameter semantics. The baseline of 3 applies since the schema handles the burden. The description's mention of 'one domain' is consistent but does not deepen understanding of the parameter itself.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Measure') and resource ('one domain's open-web SEO authority'), and further specifies the methodology (Common Crawl harmonic centrality and PageRank graph data). It clearly distinguishes from sibling tools like 'compare_domain_authority' by emphasizing the single-domain scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'one domain' provides clear context for when to use this tool—when a single domain's authority is needed. However, it does not explicitly mention alternatives or when not to use it, so it falls short of an explicit guideline. The context is clear enough for an agent to infer the appropriate use case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_seo_capabilitiesARead-onlyIdempotent
Retrieve free capability, provenance, and unavailable-metric disclosures before choosing a paid SEO tool.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false, covering safety. The description goes beyond this by specifying the nature of the retrieved data (capability, provenance, unavailable-metric disclosures), adding useful context about what callers can expect. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is front-loaded with the action ('Retrieve') and the resource, followed by the usage context. Every word earns its place; there is no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no parameters and no output schema, the description is complete. It tells the user what it does, what it returns (capability, provenance, unavailable-metric disclosures), and when to use it (before choosing a paid SEO tool). No additional context is necessary given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and schema coverage is 100% (trivially). The baseline for zero params is 4, and the description does not need to explain parameter syntax. It provides no additional parameter info, but none is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'retrieve' and clearly describes the resource: 'free capability, provenance, and unavailable-metric disclosures.' This distinguishes it from sibling tools, which focus on domain authority, keyword opportunities, etc. This is a clear, non-tautological statement of purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use the tool: 'before choosing a paid SEO tool.' This gives clear usage context. While it does not explicitly mention alternatives, the sibling tools serve different purposes, and the uniqueness of this tool is implied through its focus on capabilities rather than SEO metrics.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
score_page_seoARead-onlyIdempotent
Score supplied page HTML for deterministic on-page SEO checks without claiming page authority; costs $0.01 USDC.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Canonical URL for the supplied page. | |
| html | Yes | Complete page HTML, up to 512 KB. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnly, openWorld, idempotent, non-destructive), the description adds valuable behavioral context: it is deterministic, costs $0.01 USDC, and does not claim page authority. This gives the agent a clearer understanding of side effects and constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that immediately states the core purpose and key constraints. Every word contributes meaning, with no fluff or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple two-parameter tool with rich annotations, the description covers the essential aspects: what it does, its deterministic nature, its cost, and its boundary (no authority claim). It does not specify the exact return format, but the tool name and verb 'score' strongly imply a score output, and the lack of an output schema is mitigated by this.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already fully describes both parameters (url and html) with 100% coverage. The description does not add additional parameter-level meaning beyond referring to 'supplied page HTML', so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function with a specific verb ('Score') and resource ('page HTML') for on-page SEO checks. It also distinguishes itself from sibling tools by explicitly noting it is deterministic and does not claim page authority, which contrasts with tools like get_domain_authority.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool (for on-page SEO checks) and when not to (when page authority is needed), but it does not explicitly name alternative tools or provide exclusion criteria. The context is clear, but there is no explicit guidance on alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Each tool targets a distinct SEO task, such as authority measurement, query modification, or content analysis. The only possible confusion is between score_page_seo and audit_site_seo, but their descriptions clearly distinguish scoring from auditing.
All tool names follow a consistent verb_noun pattern in snake_case (get_, compare_, score_, correct_, expand_, find_, audit_, create_), making the set highly predictable and easy to navigate.
With 11 tools, the server is well-scoped within the typical 3-15 range. Each tool represents a meaningful SEO operation, and while a few could theoretically be combined, the count is justified by the breadth of functionality.
The tool set covers core SEO workflows: authority measurement, on-page scoring, query expansion, keyword opportunities, site auditing, content gaps, and internal links. Backlink analysis and rank tracking are absent, but their omission seems deliberate given the stated capabilities and cost disclosures.
Maintenance
Related MCP Connectors
SEO research, audits, backlinks, GSC, and content workflow tools for AI agents.
5 pay-per-call SEO tools over MCP. Free discovery, tool calls settle in USDC on Base via x402.
Pay-per-call (x402/USDC-Base) web + crypto data tools for AI agents: audit, extract, crypto, DeFi.
29 pay-per-call DNS, SEO, SSL, security, and dev tools for AI agents. x402, no API key.
Related MCP Servers
- AlicenseAqualityDmaintenanceProvides AI agents with professional-grade SEO capabilities including on-page analysis, technical audits, PageSpeed insights, and Ahrefs data integration.13185MIT
- AlicenseAqualityAmaintenanceScans any website to generate an Agent Readiness Report based on the ASO framework, evaluating agent discoverability, trust, interoperability, and commerce readiness.25363MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to perform SEO searches and retrieve SEO intelligence data via the Model Context Protocol.MIT
- AlicenseAqualityCmaintenanceExposes professional SEO tools (content briefs, keyword research, SERP analysis, backlink profiles, and on-page audits) to MCP-compatible AI agents with automatic x402 micropayment handling on Base.577MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/forgemeshlabs/seo-authority-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server