AI SEO
AI SEO is a free, open-source MCP server by AutomateLab that audits web pages across 13 dimensions for AI citation eligibility. It evaluates schema validation, robots.txt compliance, llms.txt standards, entity density, and technical metadata to score how likely AI assistants such as ChatGPT, Perplexity, and Claude are to cite a given page. The server requires no API keys or registration and runs fully locally.
真实 I/O · 已连通 ✓
启动 server · tools/list · 20 个工具 · @automatelab/ai-seo-mcp下面每个工具的字段、类型、必填项,都是我们真的把 server 启动、tools/list 拉回来的原始 JSON Schema —— 真实的工具契约。注意:下方「示例调用」是按 schema 自动生成的演示,不是真实调用的返回。
audit_pageFull AI-SEO audit of a single URL: returns categorized findings (info/warning/error) with severity, fix instructions, and a 0-100 composite score plus per-dimension subscores. Read-only. Fetches the URL once and runs every sub-audit (schema, robots, technical, sitemap, AI-Overview eligibility) against the response. No writes, no third-party APIs, no auth required, no rate limits beyond polite per
urlstringrequiredinclude_raw_htmlbooleanrespect_robotsbooleangenerate_reportbooleanrenderstring{
"tool": "audit_page",
"arguments": {
"url": "…"
}
}audit_schemaValidate JSON-LD structured data against Schema.org rules and AI-citation best practices. Accepts either a URL (fetched) or a raw JSON string (parsed directly). Read-only when given `url` (one HTTP GET). Zero network when given `schema_json`. No writes. Deterministic, rule-based; no LLM. Validates required/recommended properties, @context correctness, sameAs links, and AI-search-friendly pattern
urlstringschema_jsonstringrespect_robotsboolean{
"tool": "audit_schema",
"arguments": {
"url": "…",
"schema_json": "…",
"respect_robots": true
}
}audit_canonicalAudit a page's canonical link integrity: presence, self-reference, cross-domain mismatches, trailing-slash hygiene, and og:url consistency. Read-only. One HTTP GET to fetch the HEAD section. Deterministic, rule-based; no LLM. When to use: a focused canonical-only audit (e.g. debugging a duplicate-content issue). For a full HEAD audit including OpenGraph, hreflang, noindex, title, use `check_tec
urlstringrequiredrespect_robotsboolean{
"tool": "audit_canonical",
"arguments": {
"url": "…"
}
}check_robotsFetch and parse a domain's robots.txt; report per-crawler allow/disallow posture for every known AI training crawler (GPTBot, CCBot, Anthropic-AI, Google-Extended, etc.), AI search crawlers (ChatGPT-User, PerplexityBot, OAI-SearchBot), and user-triggered fetchers. Read-only. One HTTP GET to /robots.txt. No auth, no rate limits applied. Deterministic, rule-based; no LLM. Returns structured findin
domainstringrequired{
"tool": "check_robots",
"arguments": {
"domain": "…"
}
}check_sitemapValidate a domain's XML sitemap: presence, accessibility, URL count, lastmod freshness, sitemap-index handling, and image/video sitemap extensions. Read-only. Issues N+1 HTTP GETs: one for robots.txt + sitemap, then up to `max_urls_to_check` HEADs against sampled URLs. Deterministic, rule-based; no LLM. When to use: site-wide indexing audits. Pair with `check_robots` for a full pre-crawl pictur
domainstringrequiredmax_urls_to_checkinteger{
"tool": "check_sitemap",
"arguments": {
"domain": "…"
}
}check_technicalAudit a page's HEAD section for technical signals relevant to AI crawlers: HTTPS, canonical, OpenGraph, Twitter Card, hreflang, noindex, and title-vs-H1 hygiene. Read-only. One HTTP GET, inspects HEAD only (body is not parsed). Deterministic, rule-based; no LLM. When to use: when you specifically need HEAD-tag audit findings. For the full page including schema and AI-Overview scoring, use `audi
urlstringrequiredrespect_robotsboolean{
"tool": "check_technical",
"arguments": {
"url": "…"
}
}score_ai_overview_eligibilityScore a page's probability of appearing in Google AI Overviews. Returns an overall 0-100 score plus six factor subscores: semantic completeness, structured data, E-E-A-T signals, entity density, freshness, and technical hygiene. Read-only. One HTTP GET. Deterministic, rule-based scoring derived from published 2025-2026 AI-Overview correlation studies. No LLM calls. Same URL returns the same scor
urlstringrequiredrespect_robotsboolean{
"tool": "score_ai_overview_eligibility",
"arguments": {
"url": "…"
}
}score_agentic_browsingScore a page against the four signals Google added to the Lighthouse "Agentic Browsing" category in May 2026: presence of an llms.txt, WebMCP integration, accessibility-tree integrity, and layout stability. Returns an overall 0-100 score, a letter grade, and a per-factor breakdown. Read-only. One HTTP GET for the page plus one for /llms.txt (skip with check_llms_txt=false). Pass `html` instead of
urlstringhtmlstringrespect_robotsbooleanrenderstringcheck_llms_txtboolean{
"tool": "score_agentic_browsing",
"arguments": {
"url": "…",
"html": "…",
"respect_robots": true
}
}llms_txt_generateGenerate a spec-compliant llms.txt (and optionally llms-full.txt) for a domain by reading its sitemap, sampling up to `max_pages` pages, and synthesizing a grouped, sectioned summary. Read-only. Issues one HTTP GET for the sitemap then one per sampled page. Deterministic; no LLM. Output is the file content as a string - this tool does NOT write to disk or upload anywhere. The caller is responsib
domainstringrequiredmax_pagesintegerinclude_fullbooleansite_namestringsite_descriptionstring{
"tool": "llms_txt_generate",
"arguments": {
"domain": "…"
}
}pricing_generateGenerate a machine-readable /pricing.md for AI shopping/agent flows. Finds the site's pricing page (or uses `pricing_url`), extracts named tiers and price lines, and returns the file content as a string. Read-only. Issues a few HTTP GETs probing common pricing paths. Deterministic; no LLM. Does NOT write or upload — the caller hosts the file at `https://<domain>/pricing.md`. When to use: a SaaS/
domainstringrequiredpricing_urlstring{
"tool": "pricing_generate",
"arguments": {
"domain": "…"
}
}llms_txt_validateValidate an existing llms.txt or llms-full.txt against the spec: structure, section ordering, link format, and (optionally) broken-link detection. Read-only. One HTTP GET when given `url`; zero network when given `content`. Optional link-check issues HEAD requests against each link if `check_links` is true. Deterministic; no LLM. When to use: auditing an llms.txt you already have. To generate o
urlstringcontentstringcheck_linksboolean{
"tool": "llms_txt_validate",
"arguments": {
"url": "…",
"content": "…",
"check_links": true
}
}score_citation_worthinessScore how citable a page or text block is for AI engines (ChatGPT, Claude, Perplexity, Google AI Overviews). Evaluates BLUF (bottom-line-up-front) opening, FAQ patterns, statistic density, entity clarity, and answer-shape fit for the optional `target_query`. Also returns `extractability_score` plus per-section `chunk_analysis`: how cleanly an LLM can lift a self-contained answer from each heading
urlstringtextstringtarget_querystringrespect_robotsboolean{
"tool": "score_citation_worthiness",
"arguments": {
"url": "…",
"text": "…",
"target_query": "…"
}
}rewrite_aeoRewrite a content block for Answer Engine Optimization. Adds a BLUF opening, FAQ structure, schema additions, and concise question-shaped headings tuned for ChatGPT / Perplexity / Google AI Overviews. Read-only when given `url` (one HTTP GET). Zero network when given `text`. The tool does NOT write back to the URL - it only returns the rewritten content as a string. No side effects on the source.
urlstringtextstringtarget_querystringrequiredformatstringmax_wordsintegerrespect_robotsboolean{
"tool": "rewrite_aeo",
"arguments": {
"target_query": "…"
}
}rewrite_geoRewrite a content block for Generative Engine Optimization: entity-rich, comparison-ready, synthesis-friendly. Tuned for surfaces that summarize across sources (Perplexity, Google AI Mode, Claude search). Read-only on input. Does NOT write back to the source URL - returns the rewritten content as a string. This tool delegates the actual rewrite to the calling LLM via MCP sampling - it does not c
urlstringtextstringtarget_querystringrequiredadd_comparison_tablebooleanmax_wordsintegerrespect_robotsboolean{
"tool": "rewrite_geo",
"arguments": {
"target_query": "…"
}
}extract_entitiesExtract named entities, linked concepts, and sameAs graph nodes from a page's content and structured data. Combines body-text NER with JSON-LD `@type` / `sameAs` walking. Read-only when given `url` (one HTTP GET). Zero network when given `text`. Primary path: MCP sampling - the host LLM does the NER and returns typed entities with sameAs URIs. Fallback path: deterministic regex-based extractor w
urlstringtextstringrespect_robotsbooleanrenderstring{
"tool": "extract_entities",
"arguments": {
"url": "…",
"text": "…",
"respect_robots": true
}
}score_test_citationSimulate `would an AI engine cite this page for this query?`. The host LLM role-plays the chosen engine (chatgpt / claude / perplexity / google_ai_overviews / any), reads the page content, and returns a cite/no-cite verdict with the verbatim excerpt it would surface plus ranked improvements. Read-only when given `url` (one HTTP GET). Zero network when given `text`. Primary path uses MCP sampling
urlstringtextstringtarget_querystringrequiredenginestringrespect_robotsboolean{
"tool": "score_test_citation",
"arguments": {
"target_query": "…"
}
}diff_pagesCompare two URLs for AI citation-worthiness and return a structured breakdown of which page is more likely to be cited and why. Typical use: your page (url_a) vs a competitor's page (url_b). Read-only. Runs audit_page on both URLs in parallel (2 HTTP fetches per URL), then diffs dimension_scores and findings. No new fetch logic beyond what audit_page already does. Deterministic, rule-based; no L
url_astringrequiredurl_bstringrequiredquerystringrespect_robotsboolean{
"tool": "diff_pages",
"arguments": {
"url_a": "…",
"url_b": "…"
}
}audit_siteSingle-call site sweep: runs audit_page (homepage), check_robots, check_sitemap, and audit_schema in parallel and returns an overall grade (A–F) plus top-5 highest-impact fixes. Read-only. Issues several HTTP GETs against the domain (homepage fetch, robots.txt, sitemap.xml, and up to 50 sitemap URL HEAD checks); no writes, no auth required, no rate limits beyond polite per-host throttling. The ho
domainstringrequiredrespect_robotsboolean{
"tool": "audit_site",
"arguments": {
"domain": "…"
}
}audit_sitemapSite-wide content audit: discovers the sitemap, samples N URLs by deterministic uniform stride, runs audit_page on each, and returns score distribution + worst pages + most-common findings. Read-only. One HTTP GET for sitemap discovery, optionally a few more for sitemap-index children, then `sample_size` × audit_page calls (each one HTTP GET + parsing). Polite throttling is enforced per host. De
domainstringrequiredsample_sizeintegerrespect_robotsbooleanconcurrencyinteger{
"tool": "audit_sitemap",
"arguments": {
"domain": "…"
}
}report_saveRender an audit_page or audit_site result as a Markdown report and write it to a file under MCP_WORKSPACE_ROOT (defaults to cwd).
audit_resultanypathstringrequiredoverwriteboolean{
"tool": "report_save",
"arguments": {
"path": "…"
}
}综合分
效果测评卡
进行中 · 待运行真实 I/O 已解决「输入输出是什么」;下一步接 agent 真跑,量化「效果好不好」。
The DataForSEO MCP server provides AI assistants with direct access to DataForSEO's SEO and marketing analytics APIs. Built with TypeScript, it exposes tools across four main modules: SERP for search engine results, Keywords Data for keyword research, OnPage for content analysis, and DataForSEO Labs for competitive research and market analysis. The server handles authentication with the DataForSEO API, implements field filtering for focused data retrieval, and follows a modular architecture that makes it easy to extend with additional tools. This implementation is particularly valuable for digital marketers and SEO professionals who need to analyze search rankings, research keywords, evaluate competitors, and optimize content without leaving their AI assistant conversation.
This MCP server integrates Google Lighthouse web performance auditing capabilities, built by Daniel Sogl to provide automated website performance, accessibility, SEO, and best practices analysis through the Lighthouse testing framework. The implementation enables programmatic execution of Lighthouse audits against web pages, returning detailed performance metrics, optimization recommendations, and compliance scores that can be used for continuous monitoring, automated testing pipelines, or bulk website analysis workflows.
AutomateLab SEO Performance unifies data from Google Search Console, GA4, Matomo, Microsoft Clarity, and AI citation tracking to assess post-publish content performance. Eight tools grouped across posts, cohort, and GSC categories emit per-URL verdicts—refresh, expand, merge, kill, double_down, or hold—with reason codes and confidence scores. The server runs locally via stdio with credentials provided as environment variables and is available as the npm package @automatelab/seo-performance-mcp.