Skip to main content
Glama

AEO Backlink

Server Details

Find brand mentions, link prospects and competitor link sources, and draft outreach. Read-only.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
Advance-Labs/aeo-toolkit
GitHub Stars
3

TDQS

A4/5.0

Scored across 7 tools

Disambiguation4/5

Most tools have clearly distinct purposes: history lookup, contact extraction, link verification, email drafting, and three link-prospecting modes. The three DuckDuckGo-based prospecting tools (competitor sources, mentions, prospects) could be confused at first glance, but their descriptions distinguish competitor-focused, brand-mention-focused, and footprint-based use cases.

Naming Consistency5/5

All tool names use a consistent snake_case verb_noun/verb_object pattern, such as check_page_history, extract_contact_info, find_mentions, and verify_page_links. The convention is predictable throughout the set.

Tool Count5/5

Seven tools is well-scoped for a backlink/outreach workflow, covering discovery, verification, contact extraction, and outreach drafting. Each tool has a clear role and the set does not feel bloated or thin.

Completeness4/5

The surface covers the core workflow: finding prospects/mentions/competitor sources, verifying links, extracting contacts, checking history, and generating outreach emails. Minor gaps remain around richer backlink metrics, campaign/state management, or exporting prospect lists, but agents can work around these for the stated directional prospecting purpose.

Available Tools

7 tools
check_page_historyCheck page historyA
Read-onlyIdempotent
Inspect

Return a Wayback Machine timeline for a URL: total snapshots, first/last archived dates, and a bounded list of snapshot records with direct archive links.

NameRequiredDescriptionDefault
urlYesThe URL to look up in the Wayback Machine.
limitNoMax snapshots to return (default 50).

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint, and destructiveHint=false, so the safety profile is covered. The description adds genuine value by disclosing the return shape (counts, dates, bounded records, direct links), but says nothing about behavior for URLs with no snapshots, rate limits, or pagination beyond the bound — relevant gaps given openWorldHint implies external dependency.

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?

One sentence, front-loaded with the verb and resource, followed immediately by the enumerated outputs. Every clause carries information; nothing is padding.

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

Completeness4/5

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

With only two parameters and no output schema, the description correctly compensates by describing the return payload in detail. It stops short of covering empty-result or error behavior for unarchived URLs, which an agent would benefit from knowing before calling.

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 both 'url' and 'limit' are already documented with format and bounds. The description's 'bounded list' phrase loosely correlates with 'limit' but adds no syntax, default, or semantics beyond the schema, so the baseline of 3 applies.

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?

States a specific verb ('Return') and resource ('Wayback Machine timeline for a URL'), then enumerates exactly what it yields: total snapshots, first/last archived dates, and bounded snapshot records with archive links. That precision makes it trivially distinguishable from siblings like verify_page_links or find_mentions, which act on live pages rather than archived history.

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?

There is no explicit when-to-use or when-not-to-use language, and no sibling is named as an alternative (e.g., verify_page_links for live link checking vs. this for historical snapshots). Usage is only implied by the purpose statement itself, which is the definition of a 3.

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

extract_contact_infoExtract contact infoA
Read-onlyIdempotent
Inspect

Fetch a page and extract contact emails (including de-obfuscated and mailto links) and social media handles (Twitter/X, LinkedIn, Facebook, Instagram, GitHub, YouTube).

NameRequiredDescriptionDefault
urlYesThe page URL to extract contact info from.

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, and openWorld, and the description is consistent with that profile (it does network fetching). It adds real value beyond annotations by disclosing that de-obfuscated emails and mailto links are resolved and naming the six platforms covered, though it says nothing about failed fetches, empty results, or rate/robots constraints.

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?

One front-loaded sentence with the action first and the extracted entity types enumerated in a compact parenthetical; no filler or redundancy.

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

Completeness4/5

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

With no output schema, the description usefully enumerates what comes back (emails, de-obfuscated variants, mailto links, social handles), which is the right compensation. It stops short of describing result shape (e.g., per-field lists or null handling) and edge-case behavior when nothing is found.

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% for the single 'url' parameter, so the schema carries the semantics and baseline is 3. The description only implies that the URL is a page to be fetched, adding marginal detail beyond the schema's own description.

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?

Specific verb ('Fetch a page and extract') with an enumerated resource set: emails (including de-obfuscated and mailto) and handles from six named social platforms. An agent knows exactly what this produces and can distinguish it from sibling tools like find_mentions or find_prospects.

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 'Fetch a page' framing implies usage context (you have a URL and want contact data), but there is no explicit when-to-use/when-not guidance and no routing against siblings such as find_prospects or find_mentions. Usage must be inferred.

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

find_mentionsFind brand mentionsA
Read-onlyIdempotent
Inspect

Find linked and unlinked mentions of a brand across the web via DuckDuckGo HTML results. When a domain is supplied, classifies each mention as linked (on the brand domain) or unlinked (a third-party page — a potential backlink opportunity).

NameRequiredDescriptionDefault
brandYesBrand or product name to search mentions for.
limitNoMax results (default 20).
domainNoThe brand's own domain (e.g. acme.com) — used to classify linked vs unlinked.

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, openWorld and non-destructive, so the safety profile is covered. The description adds that results come from DuckDuckGo HTML and that classification is conditional on the domain argument. It does not mention rate limits, empty-result behavior, whether 'unlinked' requires verification, or what an individual mention contains.

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 dense sentences with no filler; the core action and source are front-loaded and the second sentence conditions the classification behavior on the optional domain argument. Every sentence earns its place.

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

Completeness4/5

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

With no output schema, the description would ideally sketch what a returned mention looks like (URL, title, snippet, classification flag). The linked/unlinked labeling concept is conveyed, which is the key output concept, so it is nearly complete for a three-parameter read-only search 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 coverage is 100%, so all three parameters are already documented, including the domain's classification role. The description reinforces the optional-domain behavior but adds no syntax, format, or edge-case guidance (e.g. scheme/www handling, behavior when domain matches nothing) beyond the schema.

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?

States a specific verb and resource ('Find linked and unlinked mentions of a brand') and names the underlying source ('DuckDuckGo HTML results'), which tells an agent this is a web-wide scrape rather than an internal crawl like verify_page_links or find_competitor_link_sources. It stops short of explicitly contrasting itself with those siblings, so a 4 rather than 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 Guidelines3/5

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

Usage is implied rather than stated: the reader can infer this is the discovery tool for brand mentions and that supplying 'domain' unlocks the linked/unlinked split. There is no explicit when-to-use/when-not and no named alternative (e.g. find_competitor_link_sources for competitor domains).

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

find_prospectsFind link prospectsA
Read-onlyIdempotent
Inspect

Find guest-post, resource-page, and roundup link-building prospects for a topic by running classic outreach footprints through DuckDuckGo and merging the results by host.

NameRequiredDescriptionDefault
topicYesNiche or topic to find link-building prospects for.
limitPerAngleNoMax results per outreach angle (default 8).

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, openWorld and non-destructive, so the safety profile is covered. The description still adds real behavioral value by disclosing the data source (DuckDuckGo) and the merging-by-host dedupe behavior, and it frames the three outreach angles that drive result volume. It omits latency, rate-limit, or result-quality caveats for an open-world search.

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 that front-loads the verb and the resource types, then packs mechanism and merge behavior into a subordinate clause with no wasted words.

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

Completeness4/5

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

With only two fully documented parameters, full annotations, and no output schema, the description covers what the tool does and how results are consolidated by host. It leaves the shape of returned prospects (fields, counts) unspecified, which is a minor gap given no output schema exists.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline would be 3, but the description earns extra credit by naming the three outreach angles, which makes the 'per outreach angle' semantics of limitPerAngle concrete rather than abstract. It still says nothing about topic formatting or what a larger limit costs.

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?

States a specific verb (find), a specific resource (guest-post, resource-page and roundup link-building prospects), and the mechanism (outreach footprints via DuckDuckGo merged by host). It is clearly distinct from most siblings, though it never explicitly contrasts with the near-neighbour find_competitor_link_sources, leaving that differentiation to inference.

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?

Usage is only implied: the description makes it clear the tool is for topic-driven prospecting by footprint, but it never states when to prefer it over find_competitor_link_sources or find_mentions, nor any prerequisites or exclusions.

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

generate_outreach_emailGenerate outreach emailA
Read-onlyIdempotent
Inspect

Draft a short, personalized cold outreach email from a contact + context object using your own LLM key (BYOK). Returns a subject line and body. The API key is request-scoped and is never persisted or logged.

NameRequiredDescriptionDefault
modelYesModel id (e.g. claude-sonnet-4-20250514).
apiKeyYesBYOK API key — request-scoped, never persisted or logged.
contactYesThe recipient. All fields optional; more detail yields better personalization.
contextYesThe outreach angle and sender context.
providerYesLLM provider for @advance-labs/llm.
maxTokensNo
temperatureNo

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and non-destructive, so the safety bar is low, yet the description still adds real value: it names the return shape (subject line and body) and discloses the BYOK key handling — request-scoped, never persisted or logged. That's meaningful context beyond the annotations. It stops short of describing provider-side failure/rate-limit behavior.

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?

Three tight sentences, front-loaded with the action and inputs, followed by the return value and the security guarantee. No filler; every sentence carries information.

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

Completeness4/5

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

With no output schema, the description correctly supplies the return shape (subject + body) and the key-handling guarantee, and hints at brevity via 'short'. It leaves out error/fallback behavior across the five providers and any length or rate constraints, so it's strong but not exhaustive for a 7-param, nested-schema 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 coverage is 71%, so the schema already documents most parameters (contact fields, context.tone/notes/reason, provider enum, apiKey). The description only restates the contact/context framing and the apiKey scoping, adding little for model, provider, maxTokens, or temperature. Baseline 3 applies.

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?

States a specific verb and resource ('Draft a short, personalized cold outreach email') and names the exact inputs (contact + context) and output (subject line and body). It doesn't need sibling differentiation since no sibling generates content, but it also makes no explicit contrast with extract_contact_info or find_prospects, which would have earned 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 Guidelines3/5

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

The description implies the use case (cold outreach with a personalized angle) but gives no explicit when-to-use/when-not guidance, no prerequisites beyond BYOK, and no pointer to any alternative tool. An agent must infer that it should gather contact/context data from the sibling tools first.

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.

  1. 7 tool updates
    • First observedcheck_page_history
    • First observedextract_contact_info
    • First observedfind_competitor_link_sources
    • First observedfind_mentions
    • First observedfind_prospects
    • First observedgenerate_outreach_email
    • First observedverify_page_links

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables AI assistants to read stored backlink records, link check histories, lost-link alerts and per-domain summaries from a monitoring account. It is read-only: it reports stored check results without starting new crawls or modifying records.
    -
  • A
    license
    A
    quality
    B
    maintenance
    Read-only access to your Citlyze AI search visibility workspace: visibility scores, tracked prompts, citations, competitor comparison, recommendations, and AI crawler analytics.
    9
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables agents to perform evidence-backed Google Search Console investigations, including traffic change diagnosis, opportunity discovery, cannibalization detection, and indexing audits, all through read-only access.
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Find out how AI assistants and search engines talk about your brand. Ask how often ChatGPT, Perplexity and Google's AI answers mention you, where you rank, how positive those mentions are, which sites they cite, and how you compare with competitors. Your assistant can also set up and adjust the monitoring for you, showing a preview and asking before anything that deletes data or uses up your plan.
    68
    103 npm
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.