Audit and fix a site for AI citation + SEO, verify it, then publish a v=AEO1 record.
Inferred from the transports this listing declares (streamable-http). A client not listed here hasn’t been ruled out — it just isn’t something Forge can confirm.
Verification confirms publisher identity (repo ownership), not code safety. The security scan covers known CVEs and suspicious install scripts.
Read from a real MCP initialize → tools/list handshake against the declared endpoint. No tool was ever invoked — tools/list is the read-only introspection call the protocol defines for this. It reflects what the server advertised at that moment; a hosted endpoint is not pinned to any version and can change without notice.
https://groundedaeo.com/api/mcp15 tools · 863msget_company_factsGet the verified fact record for a company by domain from the Grounded AEO catalog. Returns the published (approved) facts with verification state and confidence: the data an AI agent should ground answers about this business on.Get the verified fact record for a company by domain from the Grounded AEO catalog. Returns the published (approved) facts with verification state and confidence: the data an AI agent should ground answers about this business on.
| Parameter | Type | Description |
|---|---|---|
| domain* | string | Company domain, e.g. acme.com |
get_factGet a single verified fact for a company by domain and fact key (e.g. "tagline", "description").Get a single verified fact for a company by domain and fact key (e.g. "tagline", "description").
| Parameter | Type | Description |
|---|---|---|
| domain* | string | — |
| key* | string | Fact key, e.g. "tagline" |
get_llms_txtGet the auto-generated llms.txt for a cataloged company: a curated, AI-readable guide to the business.Get the auto-generated llms.txt for a cataloged company: a curated, AI-readable guide to the business.
| Parameter | Type | Description |
|---|---|---|
| domain* | string | — |
check_aeo_recordCheck any domain (cataloged or not) for a v=AEO1 DNS record at _aeo.<domain>, the open standard (aeorecord.org) declaring whether a verified fact record exists and at what trust tier. Verifies the Ed25519 sig= against the live catalog content when present.Check any domain (cataloged or not) for a v=AEO1 DNS record at _aeo.<domain>, the open standard (aeorecord.org) declaring whether a verified fact record exists and at what trust tier. Verifies the Ed25519 sig= against the live catalog content when present.
| Parameter | Type | Description |
|---|---|---|
| domain* | string | — |
check_serpCheck the live Google search results for any keyword: the top 10 organic results (rank, domain, title), the People Also Ask questions, related searches, and which non-organic blocks occupy the page, so you can tell whether a query has an AI Overview or local pack slot at all. Public data, no catalo…Check the live Google search results for any keyword: the top 10 organic results (rank, domain, title), the People Also Ask questions, related searches, and which non-organic blocks occupy the page, so you can tell whether a query has an AI Overview or local pack slot at all. Public data, no catalo…
| Parameter | Type | Description |
|---|---|---|
| keyword* | string | Search query, e.g. "roof repair denver" |
search_catalogSearch the Grounded AEO catalog by company name or domain. Returns up to 10 matches with tier and verification state.Search the Grounded AEO catalog by company name or domain. Returns up to 10 matches with tier and verification state.
| Parameter | Type | Description |
|---|---|---|
| query* | string | Name or domain fragment |
get_competitive_snapshotGet the latest competitive intelligence for a cataloged domain: the owner's most recent ranking-footprint snapshot, the AI-prompt vs Google demand table for its watched keywords, and each tracked competitor with their own latest snapshot. Read-only. Only domains whose owner has claimed them are exp…Get the latest competitive intelligence for a cataloged domain: the owner's most recent ranking-footprint snapshot, the AI-prompt vs Google demand table for its watched keywords, and each tracked competitor with their own latest snapshot. Read-only. Only domains whose owner has claimed them are exp…
| Parameter | Type | Description |
|---|---|---|
| domain* | string | Company domain, e.g. acme.com |
propose_briefsPropose ranked content briefs for a cataloged domain, built from data already collected for it: tracked questions where the answer did not cite them, keywords with AI-prompt demand no tracked question covers, People Also Ask questions nothing answers, and terms asked far more of AI assistants than…Propose ranked content briefs for a cataloged domain, built from data already collected for it: tracked questions where the answer did not cite them, keywords with AI-prompt demand no tracked question covers, People Also Ask questions nothing answers, and terms asked far more of AI assistants than…
| Parameter | Type | Description |
|---|---|---|
| domain* | string | Company domain, e.g. acme.com |
generate_fixesGet the paste-ready patches Grounded AEO generated from its own measurements of a cataloged domain: per-page <title>/<meta description> blocks for pages the crawl flagged, robots.txt Allow lines for AI crawlers measured as blocked, FAQPage/Organization JSON-LD built from published verified facts, a…Get the paste-ready patches Grounded AEO generated from its own measurements of a cataloged domain: per-page <title>/<meta description> blocks for pages the crawl flagged, robots.txt Allow lines for AI crawlers measured as blocked, FAQPage/Organization JSON-LD built from published verified facts, a…
| Parameter | Type | Description |
|---|---|---|
| domain* | string | Company domain, e.g. acme.com |
get_engine_visibilityGet the per-engine picture for a cataloged domain: whether each AI engine's crawler is allowed by robots.txt to read the site at all, and how many of the tracked questions that engine cited it on. Claimed domains only. Nothing is assumed: an engine with no crawl measurement reports can_read:null ("…Get the per-engine picture for a cataloged domain: whether each AI engine's crawler is allowed by robots.txt to read the site at all, and how many of the tracked questions that engine cited it on. Claimed domains only. Nothing is assumed: an engine with no crawl measurement reports can_read:null ("…
| Parameter | Type | Description |
|---|---|---|
| domain* | string | Company domain, e.g. acme.com |
get_citationsGet the latest citation check per (question, engine) for a cataloged domain: the question asked, the engine, whether the answer cited this domain, the URL of theirs it cited, and the day checked. Claimed domains only, read-only, one row per cell so re-running the checker cannot inflate anything. Th…Get the latest citation check per (question, engine) for a cataloged domain: the question asked, the engine, whether the answer cited this domain, the URL of theirs it cited, and the day checked. Claimed domains only, read-only, one row per cell so re-running the checker cannot inflate anything. Th…
| Parameter | Type | Description |
|---|---|---|
| domain* | string | Company domain, e.g. acme.com |
get_cited_domainsGet who the answers cited instead: the domains that appeared in the stored answers for a cataloged domain's tracked questions, ranked by how many answers cited them, with the engines that did. Claimed domains only. An appearance means a domain was cited by an answer we asked for: not an endorsement…Get who the answers cited instead: the domains that appeared in the stored answers for a cataloged domain's tracked questions, ranked by how many answers cited them, with the engines that did. Claimed domains only. An appearance means a domain was cited by an answer we asked for: not an endorsement…
| Parameter | Type | Description |
|---|---|---|
| domain* | string | Company domain, e.g. acme.com |
get_keyword_gapGet the keyword gap for a cataloged domain: phrases a tracked competitor holds a position for in our stored captures where this domain holds none ("absent"), or holds one at least 20 places further back ("behind"). Claimed domains only, computed from captures already on disk. Nothing is fetched and…Get the keyword gap for a cataloged domain: phrases a tracked competitor holds a position for in our stored captures where this domain holds none ("absent"), or holds one at least 20 places further back ("behind"). Claimed domains only, computed from captures already on disk. Nothing is fetched and…
| Parameter | Type | Description |
|---|---|---|
| domain* | string | Company domain, e.g. acme.com |
run_auditAudit AND FIX a site for AI citation + SEO. Crawls the domain, scores AI-readability 0-10, checks for a v=AEO1 record, and returns the material needed to FIX it: `seoReport.headSnippet` is ready-to-paste <head> markup (title, meta description, Organization JSON-LD) and `setup_prompt` is a step-by-s…Audit AND FIX a site for AI citation + SEO. Crawls the domain, scores AI-readability 0-10, checks for a v=AEO1 record, and returns the material needed to FIX it: `seoReport.headSnippet` is ready-to-paste <head> markup (title, meta description, Organization JSON-LD) and `setup_prompt` is a step-by-s…
| Parameter | Type | Description |
|---|---|---|
| domain* | string | Domain to audit, e.g. acme.com |
generate_free_recordFINAL STEP of making a site AI-citable: generate a free, self-declared v=AEO1 DNS record and .well-known/aeo.json the user publishes on their own domain, so AI engines can verify the facts came from the owner rather than a scrape. Returns the exact TXT record and JSON file with publishing instructi…FINAL STEP of making a site AI-citable: generate a free, self-declared v=AEO1 DNS record and .well-known/aeo.json the user publishes on their own domain, so AI engines can verify the facts came from the owner rather than a scrape. Returns the exact TXT record and JSON file with publishing instructi…
| Parameter | Type | Description |
|---|---|---|
| domain* | string | — |
| name* | string | Business name |
| category | string | — |
| address | string | — |
| hours | string | — |
| services | array | — |
15 of 15 tools published a description.
Tool names and descriptions are written by the publisher and shown verbatim as inert text. They are the strings an MCP client passes to a model, so Forge scans them for prompt-injection patterns — any finding appears with the security scan above. “Privileged” is a keyword match on the tool name, not an audit of what the tool does: a benign-sounding name can still do anything.
Audit and fix a site for AI citation + SEO, verify it, then publish a v=AEO1 record.
Linked names open Forge’s index of every entry observed exposing that tool. Browse all indexed tools.
This entry publishes no npm package, so Forge has no dependency tree for it. That is a gap in coverage — not a statement that it has no dependencies.