momentic
Free SEO, GEO, and AEO audits: analyze any page or domain, AI-crawler access, agent readiness.
¿Debería usar esto?
Calidad y seguridad
Hallazgos (3)
- HIGH
- MEDIUMen analyze_site
- MEDIUMen lookup_entity
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"momentic": {
"url": "https://momenticmarketing.com/mcp"
}
}
}Puntos de conexión remotos
https://momenticmarketing.com/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (11)
🟢get_brand_overview
Returns the canonical AI-readable description of Momentic from /llms.txt. Use for authoritative brand info, positioning, services, and contact.
Esquema de entrada
{
"type": "object",
"properties": {},
"additionalProperties": false
}🟢list_pages(section)
Lists pages on momenticmarketing.com from sitemap.xml. Optional `section` filter: team, case-studies, capabilities, services, blog, seo-news, content-academy, google-updates, blog-categories, careers, about, contact, pricing.
Esquema de entrada
{
"type": "object",
"properties": {
"section": {
"type": "string",
"description": "Section slug (e.g. \"team\", \"case-studies\"). Omit to list all."
}
},
"additionalProperties": false
}🟢get_page(path)
Fetches a Momentic page as Markdown (uses Cloudflare's Markdown for Agents). Pass an absolute path like "/team/jane-doe" or a full momenticmarketing.com URL.
Esquema de entrada
{
"type": "object",
"properties": {
"path": {
"type": "string",
"description": "Absolute path or full URL on momenticmarketing.com"
}
},
"required": [
"path"
],
"additionalProperties": false
}🟢search(query)
Searches across Momentic page URLs from sitemap.xml (case-insensitive substring match on URL). For deeper search, fetch matching pages with get_page.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Search term"
}
},
"required": [
"query"
],
"additionalProperties": false
}🟢analyze_page(url)
Fetches any public URL and returns structured on-page SEO signals: title, meta description, canonical, lang, heading counts, JSON-LD schema types, OpenGraph/Twitter cards, internal/external link counts, word count, and whether Cloudflare Markdown for Agents (Accept: text/markdown) returns markdown for this URL. Designed to power the page-seo-score and geo-aeo-readiness skills.
Esquema de entrada
{
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "Absolute http(s) URL"
}
},
"required": [
"url"
],
"additionalProperties": false
}🟢analyze_site(domain)
Probes a domain root for site-wide AI-discovery signals: /llms.txt, /robots.txt (parsed AI-bot rules for GPTBot/ClaudeBot/PerplexityBot/GoogleOther/CCBot/Google-Extended/Applebot-Extended), /sitemap.xml (URL count + sections), /.well-known/agent-skills/index.json, /.well-known/api-catalog, /.well-known/mcp/server-card.json, and homepage Link header.
Esquema de entrada
{
"type": "object",
"properties": {
"domain": {
"type": "string",
"description": "Root domain or full URL (e.g. \"example.com\" or \"https://example.com\")"
}
},
"required": [
"domain"
],
"additionalProperties": false
}🟢check_bots(url, userAgents, timeoutMs)
Probes a URL with multiple AI bot user-agents in parallel and returns per-bot reachability (status, key WAF/CDN headers, and a verdict). Reveals WAF/CDN-layer blocks that robots.txt audits miss — e.g. a site that allows GPTBot in robots.txt but returns 403 to it at Cloudflare. Verdicts: reachable, blocked-403, challenged-by-cdn, rate-limited-429, server-error-5xx, redirected-to-block-page, timeout, fetch-error. The summary.blockingPattern field names exactly which bots got blocked when others got through.
Esquema de entrada
{
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "Absolute http(s) URL to probe"
},
"userAgents": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional UA strings to test. Defaults to GPTBot, ClaudeBot, Claude-Web, PerplexityBot, GoogleOther, Google-Extended, CCBot, Applebot-Extended, ChatGPT-User, meta-externalagent."
},
"timeoutMs": {
"type": "number",
"description": "Per-fetch timeout in ms (default 5000)"
}
},
"required": [
"url"
],
"additionalProperties": false
}🟢parse_freshness_signals(html, headers, sitemapEntry, url)
Pure parser (no fetching). Given HTML plus optional response headers and a sitemap entry for the same URL, extracts every freshness marker on the page — HTTP Last-Modified, sitemap lastmod, JSON-LD dateModified/datePublished (including @graph), OpenGraph article:modified_time/published_time, meta updated/dc.date.modified/dcterms.modified/itemprop dateModified, and the first labelled visible date (Last updated / Updated / Published). Returns per-source ISO dates, the freshest source, cross-source agreement spread, and heuristic flags (stale year in title, suspicious future date, only-published-not-modified, none-at-all). Powers the geo-aeo-readiness skill's freshness check — `Last-Modified` headers and `dateModified` JSON-LD are weighted heavily for AI grounding eligibility.
Esquema de entrada
{
"type": "object",
"properties": {
"html": {
"type": "string",
"description": "Full HTML of the page"
},
"headers": {
"type": "object",
"description": "Response headers as a plain object with lowercased keys (e.g. {\"last-modified\": \"...\"})",
"additionalProperties": {
"type": "string"
}
},
"sitemapEntry": {
"type": "object",
"description": "Parsed sitemap entry for this URL, e.g. {\"lastmod\": \"2026-04-15\"}",
"properties": {
"lastmod": {
"type": "string"
}
},
"additionalProperties": true
},
"url": {
"type": "string",
"description": "URL the HTML was fetched from (for context)"
}
},
"required": [
"html"
],
"additionalProperties": false
}🟢extract_links(html, baseUrl)
Pure HTML parser. Given a single page's HTML and its baseUrl, returns every <a href> resolved to absolute, separated into internal vs external by host, with cleaned anchor text, rel attribute, and nofollow flag. Skips fragments, mailto:, tel:, javascript:, and empty hrefs. Designed to feed compute_link_graph: the agent crawls pages on the user's machine (their IP, no Cloudflare subrequest cap) and calls extract_links per page, then ships the structured page data into compute_link_graph.
Esquema de entrada
{
"type": "object",
"properties": {
"html": {
"type": "string",
"description": "Raw HTML of the page"
},
"baseUrl": {
"type": "string",
"description": "Absolute URL of the page (used to resolve relative links and identify internal vs external)"
}
},
"required": [
"html",
"baseUrl"
],
"additionalProperties": false
}🟢compute_link_graph(pages, options)
Pure graph computation over a crawled page set. Input: an array of {url, internalLinks: [{href, anchor}, ...], title?, bodyText?}. Returns orphan pages (in-degree 0, excluding the homepage), hubs (top-N by in-degree), authorities (top-N by out-edges to hubs), PageRank-lite ranking, anchor-diversity issues (all-anchors-same, no-descriptive-anchors), connected components, and isolated clusters. With options.findMentions=true and title+bodyText supplied, also returns mention-not-linked suggestions. URL normalization (trailing slash, lowercased host, dropped utm_*/fbclid/gclid/etc.) is on by default.
Esquema de entrada
{
"type": "object",
"properties": {
"pages": {
"type": "array",
"description": "Array of crawled pages",
"items": {
"type": "object",
"properties": {
"url": {
"type": "string"
},
"internalLinks": {
"type": "array",
"items": {
"type": "object",
"properties": {
"href": {
"type": "string"
},
"anchor": {
"type": [
"string",
"null"
]
}
},
"required": [
"href"
]
}
},
"title": {
"type": "string"
},
"bodyText": {
"type": "string"
}
},
"required": [
"url",
"internalLinks"
]
}
},
"options": {
"type": "object",
"properties": {
"normalizeUrls": {
"type": "boolean",
"description": "Default true. Strip trailing slashes, lowercase host, drop tracking params."
},
"hubCount": {
"type": "number",
"description": "Number of top hubs to return. Default 10."
},
"authorityCount": {
"type": "number",
"description": "Number of top authorities to return. Default 10."
},
"findMentions": {
"type": "boolean",
"description": "Default false. If true (and pages include title+bodyText), include mentioned-not-linked suggestions. O(N^2) — slow on large inputs."
},
"rankingLimit": {
"type": "number",
"description": "Max ranking entries to return. Default 50."
}
},
"additionalProperties": false
}
},
"required": [
"pages"
],
"additionalProperties": false
}🟢lookup_entity(name, qid, wikipediaTitle, skipWikipedia)
Resolves a brand/topic/person to a structured entity record built from Wikidata + Wikipedia (free APIs, no auth). Pass exactly one of: `name` (search by string), `qid` (Wikidata Q-number to skip search), or `wikipediaTitle` (resolves to QID via the article's wikibase_item). Returns: qid, label, description, instanceOf (P31 with resolved labels), sameAs (Wikipedia + claim-derived URLs for Twitter/Instagram/Facebook/GitHub/LinkedIn/YouTube/Crunchbase/official site), sitelinks (top 10 language wikis) and sitelinkCount, Wikipedia summary + thumbnail, Wikipedia section outline (canonical sub-topic structure for content briefs), and alternativeMatches when a name search returned multiple candidates. Powers entity-graph alignment checks (Stage 4 trustworthiness, Stage 10B verification) and feeds the content-brief skill's outline.
Esquema de entrada
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Brand/topic/person name to search Wikidata for. The top match is resolved; runners-up are returned in alternativeMatches."
},
"qid": {
"type": "string",
"description": "Wikidata Q-number (e.g. \"Q12345\") to fetch directly, skipping search.",
"pattern": "^[Qq][0-9]+$"
},
"wikipediaTitle": {
"type": "string",
"description": "English Wikipedia article title (e.g. \"Acme_Corporation\"). Resolves to QID via pageprops, then proceeds."
},
"skipWikipedia": {
"type": "boolean",
"description": "If true, return Wikidata-only (no Wikipedia summary/sections). Default false."
}
},
"additionalProperties": false,
"oneOf": [
{
"required": [
"name"
]
},
{
"required": [
"qid"
]
},
{
"required": [
"wikipediaTitle"
]
}
]
}Comunidad
Evidencia