Website Auditor

io.github.SpikeyCoder由 GitHub 账号 SpikeyCoder 发布v1.0.29更新于 Nov 5, 2026

AI visibility in ChatGPT, Gemini, Claude, Perplexity, Copilot & AI Overviews, plus site audits.

概览

AI 生成的概览

检查 AI 助手是否会推荐某个企业,跨六个引擎给出 AI 可见度评分,并提供站点审计、竞品对比与持续监控。

可以做什么
  • 查询域名的 AI 可见度,给出分引擎评分与实际提问
  • 执行完整站点审计,涵盖安全响应头、死链、性能与可抓取性
  • 与指定竞品对比、按行业基准比较,并查看评分随时间的变化
  • 按周计划监控站点,并汇总所有被监控站点的状态
  • 获取按优先级排序的修复建议、生成 JSON-LD 结构化数据草稿、确认业务事实并检查修复是否上线
  • 生成可分享的报告链接,并根据最新审计产出市场推广计划
适用场景
适合用户正在经营自己的网站、想知道 ChatGPT、Claude、Gemini、Perplexity、Copilot 或 AI 概览是否会提到该企业,或需要一次性审计、竞品对比和长期监控的场景。无需密钥的示例报告可先看输出格式再决定是否订阅。
运行要求
通过 npx 以 stdio 在本地运行(需 Node.js)。审计真实域名需要 Website Auditor 付费订阅,并在 WA_API_KEY 中配置 API 密钥;只有示例报告无需密钥。可用 WA_API_BASE_URL 覆盖 API 地址。设置密钥后需重启客户端。
安装前请注意
审计真实域名需每月 49 美元的订阅;7 天试用需绑定支付方式,近 12 个月内用过试用的用户会立即计费。WA_API_KEY 是个人密钥,应只放在客户端环境变量中。工具会把目标域名和密钥发送给 Website Auditor API,匿名使用遥测默认开启,可用 WA_METRICS_DISABLED 关闭。confirm_facts 会记录业主确认的业务事实,get_fix 会记录一次请求。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Website Auditor,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

Website Auditor MCP

An MCP server for website-auditor.io — AI-visibility (GEO) and site-audit tools you can call from any MCP client (Claude Desktop, Claude Code, Cursor, Codex, and other agents).

Ask an agent "does ChatGPT recommend my business?", "what's my AI-visibility score?", "audit example.com", or "how do I stack up against my competitors?" and it answers with real data — an overall AI-visibility score (0–100), a per-engine breakdown across ChatGPT, Perplexity, Claude, Gemini, Microsoft Copilot and Google AI Overviews, a full site audit (security, performance, crawlability and markup), competitor comparisons, and ongoing monitoring.

The server is a thin, authenticated wrapper over the Website Auditor API — the audit engine, AI-visibility scoring and monitoring live in that service; this server just makes them available to agents.


Tools

ToolTierWhat it does
get_sample_auditFree — no keyA complete sample report for example.com in the exact shape a real audit returns. Needs no API key, no subscription and no network. Try this first to see what you'd be buying.
get_ai_visibilityProCurrent AI-visibility score (0–100) + per-engine breakdown (ChatGPT, Perplexity, Claude, Gemini, Microsoft Copilot, Google AI Overviews) + the top competitor appearing in your place. Pro subscribers also get trend: 7- and 30-day score movement from stored snapshot history for the question this audit asked, ending at its snapshot and compared only between measured snapshots that asked it, the overall further only between endpoints the same engines answered (a window engines differed over carries its engine deltas and an overall_note saying which answered each; null, with a note, when the audit stored no measured snapshot). Also recommendation_gap (points behind the top beatable rival in the answers that recommend you, overall and per engine, with one sentence to read back; marketplaces, delivery apps, directories and national chains are not beatable rivals) and stance_counts (answers that recommended, mentioned or cautioned against you), each present only when measured. Also questions_asked: the questions put to the assistants for the score, when the report recorded them.
run_auditPro, rate-limitedFull one-time audit → category scores (AI visibility, crawlability and markup as seo, security, performance) + top issues + a shareable report URL. Also recommendation_gap and stance_counts (see get_ai_visibility), each present only when measured.
get_changesProWhat changed in the AI-visibility score — the change in the overall score and the per-engine score changes, for engines measured both times, the overall only when the same engines answered both snapshots (else it is null with an overall_note naming which answered each, and the per-engine changes stand alone); summary says the change in plain sentences; competitor_changes, new_issues and resolved_issues are always empty. Only between two snapshots that asked the same question (the same business name, market and queries), read from the domain's series: its measured weekly re-audits and any audit that asked the same question as the newest recorded one, while it has no gap longer than four weeks and a day from the newest weekly re-audit that recorded its question, through each later snapshot of the series (weekly re-audits included, recorded or not), to the newest measured snapshot. When there is no such pair it says why instead of a number, with the date the series re-baselined when it did. The domain need not be tracked: history accrues from any audit of it, tracked or not — track_site adds the weekly re-audits to the series, it is not a precondition.
compare_competitorsProHead-to-head AI-visibility ranking against named competitor domains + where each appears that you don't. Quota-aware: caps the audit fan-out to your remaining daily quota, reuses recent cached audits, and reports any competitors it had to skip rather than dropping them silently. Also recommendation_gap: how far behind the competitor you trail most you are (ties on identical counts are all named), each side as a share of its own answers, over the assistants that answered for BOTH sites; same_questions says whether both audits asked the same set of questions (null when either did not record them) and assistants which assistants the figures are over. Present only when both audits recorded stances.
track_siteProStart (or stop) weekly monitoring of a site's AI visibility. Its weekly re-audits join the history get_changes reads from, which audits accrue tracked or not — monitoring watches a site, it does not enable get_changes.
untrack_siteProStop monitoring a site and free up a monitoring slot. Deletes the site's monitoring enrollment; past audits are kept.
list_tracked_sitesProList the sites you're monitoring, with cadence, active state, and slots used/remaining.
get_monitoring_statusProA glanceable dashboard across all tracked sites — latest score of each site's series (the series get_changes reads), the date of each one's last scheduled run and when the next runs, and the most recent like-for-like change (or a note, or the summary, saying why there is none), shown as its per-engine changes with a note naming the engines when different ones answered the two snapshots; like get_changes, its change carries competitor_changes, new_issues and resolved_issues, always empty.
list_fixesProA tracked site's ready-made fixes ("Get this fix"), top first: whether each is needed and why, whether the site's platform can take it, and its newest request and status (live / missing). Records nothing.
get_fix_factsProThe business facts the fixes are written from, to show the owner: what the site says, what they confirmed, the business name the audits found, and seen (exactly what was shown, sent back unchanged to confirm).
get_fixPro"Get this fix": the fix served finished (structured data plus About/FAQ text, an llms.txt, or robots.txt lines that let blocked AI assistants in), the first two written only from the owner's confirmed facts, each block ready to copy, with paste steps for the site's platform and copy_all where an agent edits the site. Each call is recorded as a request. Before the facts are confirmed it answers status: "confirm_first" with the facts to show the owner; when the newest audit found nothing to change, status: "nothing_to_fix".
confirm_factsProConfirms the facts the owner confirmed or corrected, sending back exactly the seen they were shown — never on the owner's behalf. status: "facts_changed" when the site changed since.
check_fixPro"I've added it": reads the live site for a fix request and says it's live or names what's missing. Once a minute per request (CHECKED_RECENTLY with retry_after).
check_upgrade_statusAny valid keyYour own subscription standing — tier, status, period end, and what upgrading unlocks (starting Pro requires a payment method and accepting the Terms). Consumes no audit quota.

Prompts

Clients that support MCP prompts (Claude Desktop, claude.ai) render these as something you can pick from a menu, so you don't have to phrase the request yourself or know which tool to ask for. In clients that don't surface prompts (Codex, currently), nothing is lost but the menu — ask in words and the same tools run.

PromptNeeds a key?What it does
See a sample reportNoWalks through a complete report for example.com. No arguments, no setup — one click from any install.
Check my AI visibilityProRuns get_ai_visibility for a domain you name, then explains the score, which assistants name the business, and who is named instead.
Run a full site auditProRuns run_audit for a domain and summarises it by category, with the three fixes that matter most.
Compare me to a competitorProRuns compare_competitors for your domain against a named rival, and explains where they get named and you don't.

Each Pro prompt falls back to get_sample_audit when no API key is configured, so you always get output rather than an error.

Naming the business (optional)

get_ai_visibility and run_audit both accept two optional arguments that decide what question the AI-visibility check actually asks. compare_competitors accepts business_location only — see below for why it takes no name:

ArgumentOmittedSupplied
business_nameDetected from the site, and flagged with name_warning when it could not be verifiedTaken as fact and recorded as caller-supplied — which suppresses the warning
business_locationDetected from the site; if nothing is found the questions widen to the country, or drop the place entirelyScopes the questions to that place

Supply a name only when you actually know it. A supplied name overrides detection and is treated as confirmed, so a guess is scored exactly as if a human had verified it — and silences the warning that would have told you otherwise. Leaving it out is the safer default: detection is transparent about its own uncertainty.

The same applies to location, in the other direction. Omitting it is correct for a national or global business and wrong for a local one, since a local business measured without a place is measured against the wrong queries.

On compare_competitors: it takes business_location and applies it to your site and every competitor, because a comparison asks about one market — scoring you locally while scoring your rivals globally would rank the answers to two different questions. It deliberately takes no business_name: a name identifies one business, and forwarding yours to your competitors would score every one of them as you. The result names the market it used, so a scoped comparison is never mistaken for a global one.

text
"Check AI visibility for hawaiibackroad.com, the business is Big Island Backroad Adventures in Hilo, HI"

Install & configure

The server runs directly via npx — no clone or build required.

Try it before you buy it. Install with no API key at all and ask your agent for a sample audit — get_sample_audit returns a full report for example.com in the exact format a real run produces, so you can check the shape fits your needs first.

Pricing. Auditing real domains needs a Website Auditor subscription at $49/month — eligible new customers get a 7-day free trial (payment method required to start; no charge until the trial ends; customers who used a trial in the last 12 months are billed immediately). Sign up and create an API key at api.website-auditor.io/admin_portal, then set it as WA_API_KEY below. There is no free API tier — a key only functions with an active subscription.

Claude Desktop (claude_desktop_config.json), Cursor (~/.cursor/mcp.json), and most other clients use the same mcpServers shape:

jsonc
{  "mcpServers": {    "website-auditor": {      "command": "npx",      "args": ["-y", "website-auditor-mcp"],      "env": {        "WA_API_KEY": "wa_your_key_here"      }    }  }}

Claude Code — add it from the CLI:

bash
claude mcp add website-auditor -e WA_API_KEY=wa_your_key_here -- npx -y website-auditor-mcp

Codex — the CLI, IDE extension and ChatGPT desktop app all read the same ~/.codex/config.toml, so one of these covers all three:

bash
codex mcp add website-auditor --env WA_API_KEY=wa_your_key_here -- npx -y website-auditor-mcp
toml
[mcp_servers.website-auditor]command = "npx"args = ["-y", "website-auditor-mcp"]
[mcp_servers.website-auditor.env]WA_API_KEY = "wa_your_key_here"

Codex doesn't render MCP prompts, so the Prompts above won't appear as menu entries there — ask in words instead ("show me a sample audit").

Or install the packaged Codex plugin, which bundles the same server and restores the prompts as skills (which Codex does render):

bash
codex plugin marketplace add SpikeyCoder/website-auditor-mcpcodex plugin add website-auditor@spikeycoder

Cursor — one-click install, or put the same mcpServers JSON as above in ~/.cursor/mcp.json:

[Install in Cursor]

The one-click config arrives with an empty WA_API_KEY — the sample report works as-is; fill the key in under Settings → MCP to audit real domains. There is also a packaged Cursor plugin (this server plus the prompts as skills) in cursor-plugin/; its Cursor Marketplace listing is pending — status in docs/CURSOR-PLUGIN.md.

Restart the client and the tools appear.

Getting an API key

WA_API_KEY is a per-user key (it starts with wa_) minted from a Website Auditor account at api.website-auditor.io/admin_portal — the admin portal, where you subscribe and manage keys.

Minting a key requires an active subscription ($49/month; eligible new customers get a 7-day free trial — payment method required, no charge until the trial ends): there is no free API tier, so every tool except get_sample_audit, check_upgrade_status and get_recommendations needs one. get_sample_audit needs no key at all. get_recommendations answers any valid key with the next steps from an audit already on record; with Pro it also says where to get listed, what AI assistants get wrong about the business, and which fix file fixes each finding.

Treat the key like a password — set it only in your MCP client's env and never commit it.

Restart after setting or changing the key. WA_API_KEY is read once, when the server starts, so a key added while the client is running is invisible to it — in Claude Desktop, quit and reopen the app. Without the restart the tools keep returning the same AUTH_REQUIRED you just acted on, which looks identical to the key not working.

Configuration (environment variables)

VarDefaultPurpose
WA_API_KEY(required)Per-user API key (starts with wa_).
WA_API_BASE_URLhttps://api.website-auditor.ioThe Website Auditor API this server wraps.
WA_SITE_URLhttps://website-auditor.ioUsed to build shareable report links.
WA_UPGRADE_URLhttps://api.website-auditor.io/admin_portal/Where auth and subscription errors point you. ?source=mcp is appended so a signup that started here is attributable; set your own source to override. For tools that take a domain, site=<hostname> (the hostname only — no path or query) is added too, so the portal can name the site — but only when the link points at the portal (the host of WA_API_BASE_URL), never at another host. Not surfaced on quota errors — the daily cap is not an upsell.
WA_UPSELL_STYLE / WA_UPSELL_INFO_URLlink / WA_SITE_URLinfo style (the hosted ChatGPT server) links every auth and plan error to WA_UPSELL_INFO_URL, an informational plans page, instead of WA_UPGRADE_URL, with no price or trial in the text. ?source=mcp is appended unless a source is set; site=<hostname> is added for tools that take a domain only when this URL points at the portal (the host of WA_API_BASE_URL) — not at the homepage default or any other host.
WA_TOOL_COPYfullneutral (the hosted Claude connector) drops the price, the trial and the "call get_sample_audit first" pointer from tool descriptions, takes the terms out of the server instructions' billing paragraph, and turns the instructions' unasked-offer and "call it instead" blocks into descriptions. Anthropic's directory review rejects all of these as promotion or as telling Claude to call tools. Paywall answers still state the terms (see WA_UPSELL_STYLE).
WA_LINK_CHANNELmcpWhich surface this server is: chatgpt (the hosted ChatGPT service), claude (the hosted Claude service) or mcp. Pro members' replies from run_audit, get_ai_visibility, get_monitoring_status, compare_competitors, get_recommendations, get_gtm_plan and track_site carry a dashboard link to their own dashboard, tagged src=<channel>-<tool> so the dashboard can tell where an arrival came from. Any other value reads as mcp; the domain is never part of the tag.
WA_AUTH_CHALLENGEresultHosted with Mixed Auth only. http (the hosted Claude connector) answers with an HTTP 401 + WWW-Authenticate, before the tool runs, both a call to an account-only tool with nothing presented and any tool call with a token the authorization server rejects. It is the only signal Claude starts sign-in from. A token that could not be checked (introspection down) is not refused. result puts the challenge in the tool result's _meta, which is what ChatGPT reads.
WA_REQUEST_TIMEOUT_MS120000Timeout for API calls.
WA_AUDIT_CACHE_TTL_MS86400000Reuse a domain's audit within this window instead of spending quota (used by compare_competitors). Defaults to 24h.
WA_SUBSCRIPTION_CACHE_TTL_MS60000How long a resolved Pro/free tier is cached per key before re-checking the subscription.
WA_METRICS_DISABLED(unset → metrics on)Set to 1/true to disable anonymous usage telemetry.

Only WA_API_KEY is normally needed; the rest have sensible defaults. See .env.example for the full list.


Auth & tiers

Your key is validated on every call. The Pro/free tier is resolved live from the API and cached briefly, so upgrades and downgrades take effect within about a minute:

  • No key → get_sample_audit still works (that's the point of it); every other tool returns AUTH_REQUIRED with the price and a sign-up link.
  • Revoked or unrecognized key → INVALID_KEY, carrying the API's own remediation ("generate a new key"). Distinct from PRO_REQUIRED: the fix is a new key, not a purchase.
  • No active subscription (valid key, lapsed/canceled/never subscribed) → PRO_REQUIRED with the price and an upgrade link — there is no free API tier; check_upgrade_status still answers so the caller can learn why, and get_recommendations still answers with the free list ("tier": "free").
  • Subscribed (status active or a trial in progress) → all tools.

Errors are normalized to stable codes agents can branch on — e.g. AUTH_REQUIRED, INVALID_KEY, PRO_REQUIRED, OVER_QUOTA, UNREACHABLE_DOMAIN, INVALID_INPUT, TIMEOUT. A domain that resolves but whose pages never load (down, refusing, timing out, or answering 404/5xx on every page) returns UNREACHABLE_DOMAIN; one that does not resolve is refused before any audit runs, as INVALID_INPUT. Neither gets a fabricated score.


Develop

bash
npm installnpm run build      # compile TypeScript → dist/npm start          # serve over stdionpm run dev        # run from source without buildingnpm test           # vitestnpm run typecheck

The suite is hermetic — the API client, subscription provider and meter are injected, and HTTP is mocked at the fetch boundary, so no network is touched.


Privacy Policy

Anonymous install id. When telemetry is enabled, the server generates a random UUID on first run and stores it at ~/.config/website-auditor-mcp/install-id (or $XDG_CONFIG_HOME), sending it with each event. It exists solely to tell one install restarting many times apart from many separate installs — without it, install counts are just restart counts. It is randomly generated, never derived from your machine, username or network, and is not a fingerprint. Setting WA_METRICS_DISABLED stops telemetry entirely: no id is generated and nothing is written to disk.

This connector talks to a single external service: the Website Auditor API at website-auditor.io. When you invoke a tool it sends only two things to that API:

  • the target domain you asked to audit or monitor, and
  • your API key (WA_API_KEY), used to authenticate the request and resolve your plan tier.

At startup, and at most hourly while tools are in use, the server also asks the same API for Pro's current price (GET /pricing.json), so the price it states is never out of date. That request carries no key, no install id and no data about you or your sites.

That's the full extent of what leaves your machine. The connector does not collect, store, or transmit your files, prompts, conversation content, or any other personal data, and it does not send data to any third party beyond the Website Auditor API. Your API key is held only in your MCP client's configuration (in Claude Desktop it is stored in the OS keychain and injected as an environment variable); it is never written to the bundle or logged.

Anonymous, aggregate usage telemetry (which tool ran, success/failure, latency — no domains, no keys, no personal data) may be emitted to improve the service, and can be disabled entirely by setting WA_METRICS_DISABLED=1. Installed as a desktop extension, the same opt-out is a "Disable anonymous usage telemetry" checkbox in the extension's settings.

Full privacy policy: https://website-auditor.io/privacy


License

MIT — © 2026 Kevin Armstrong / SpikeyCoder.

This covers the MCP server in this repo: the client that talks to the Website Auditor API. The audit engine and the API behind it are separate products, not covered here, and running real audits still needs a Website Auditor account.

Learn more at website-auditor.io.

来源:README.md,提交 7237084

工具

20

get_ai_visibility

Check AI visibility

Check how visible a website is to AI assistants right now. Use this whenever someone asks "does ChatGPT/Perplexity/Claude/Gemini/Copilot recommend this business," "is my site showing up in AI answers," "what's my AI visibility / GEO score," or wants a quick read on whether an AI assistant would surface a given domain. Returns an overall AI-visibility score (0–100), a per-engine breakdown (ChatGPT, Perplexity, Claude, Gemini, Microsoft Copilot, Google AI Overviews), and the top competitor appearing in place of the site. When the audit recorded citations, `sources` lists the documents the assistants actually read, ranked by cross-engine agreement, each marked `yours`, `competitor` or `third_party` — treat `competitor` rows as context, not as placement targets; `sources: null` means the recorded answers cited nothing attributable, and an absent key means citations were not recorded for this audit. The result also includes trend data: 7- and 30-day score movement computed from the domain's stored snapshot history, for the question this audit asked, ending at the snapshot this audit stored; when it stored no measured snapshot, `trend` is null and `trend_note` says why. If `name_warning` is present, the business name behind the score could not be verified — relay that caveat rather than presenting the score as settled fact, and offer to re-run with an explicit business name. Requires a Website Auditor subscription ($49/month; eligible new customers get a 7-day free trial — payment method required, no charge until the trial ends) — if the user doesn't have one, call get_sample_audit first to show them the exact output format, free and with no API key.

输入参数domain必填business_namebusiness_location

run_audit

Run a full audit

Run a full one-time audit of a website — AI visibility, plus security headers, broken links, performance, and a crawlability-and-markup score (`scores.seo`: robots.txt, AI crawler access, sitemap, structured data, meta description and Open Graph tags). Use this when someone asks to "audit," "scan," "check," or "review" a website's health, or wants a complete report rather than just the AI-visibility number. Returns a scored summary across categories and a link to the full report. The ranked cited-`sources` evidence behind the AI-visibility number is returned by get_ai_visibility, not by this tool. If `name_warning` is present, the business name the AI-visibility score was measured against could not be verified — relay that caveat rather than presenting the score as settled fact. Requires a Website Auditor subscription ($49/month; eligible new customers get a 7-day free trial — payment method required, no charge until the trial ends) — if the user doesn't have one, call get_sample_audit first to show them the exact output format, free and with no API key.

输入参数domain必填business_namebusiness_location

get_changes

What changed in AI visibility

Report what changed in a website's AI-visibility score, only between two snapshots that asked the same question. Use this when someone asks "did anything change," "what's different this week/month," or "did my AI visibility drop." The domain need not be tracked: history accrues from any audit of it, tracked or not — track_site adds the weekly re-audits to the series, it is not a precondition, so do not track a site just to answer a change question. Returns the change in the overall score and the per-engine score changes, for engines measured both times — the overall only when the same engines answered both snapshots, otherwise it is null with an overall_note naming which answered each, and the per-engine changes stand alone; a summary says the change in plain sentences; competitor_changes, new_issues and resolved_issues are always empty, since snapshots record neither competitors nor audit issues. A change is only ever measured between two snapshots that asked the same question (the same business name, market and queries); when there is no such pair it says why instead of giving a number, with the date the series re-baselined when it did. The series is the measured weekly re-audits and any audit that asked the same question as the newest recorded one, while it has no gap longer than four weeks and a day from the newest weekly re-audit that recorded its question, through each later snapshot of the series (weekly re-audits included, recorded or not), to the newest measured snapshot; otherwise every measured snapshot. Requires a Website Auditor subscription ($49/month; eligible new customers get a 7-day free trial — payment method required, no charge until the trial ends) — if the user doesn't have one, call get_sample_audit first to show them the exact output format, free and with no API key.

输入参数sincedomain必填

compare_competitors

Compare against competitors

Compare a website's AI visibility head-to-head against named competitors. Use this when someone asks "how do I stack up against X and Y," "who does ChatGPT recommend instead of me," or wants a competitive AI-visibility view. Returns each competitor's score and where they appear that the site does not. Each competitor not already cached costs one audit against your daily quota; if the quota can't cover every competitor, it ranks the ones it could audit and returns a `quota` summary plus a `skipped` list naming the rest — it never drops competitors silently or invents scores. If the quota is already exhausted it returns an over-quota error with the reset time. Requires a Website Auditor subscription ($49/month; eligible new customers get a 7-day free trial — payment method required, no charge until the trial ends) — if the user doesn't have one, call get_sample_audit first to show them the exact output format, free and with no API key.

输入参数domain必填competitors必填business_location

track_site

Start/stop monitoring

Start (or stop) ongoing monitoring of a website's AI visibility on a schedule. Use this when someone wants to "monitor," "track," "watch," or "get alerted about" a site's AI visibility over time, rather than a one-off check. Adds weekly re-audits to the history that get_changes reads from — a history every audit already accrues, tracked or not — so use this to be watched on a schedule, not to make get_changes work. Passing enabled: false stops monitoring by deleting the enrollment, as untrack_site does. Requires a Website Auditor subscription ($49/month; eligible new customers get a 7-day free trial — payment method required, no charge until the trial ends) — if the user doesn't have one, call get_sample_audit first to show them the exact output format, free and with no API key.

输入参数domain必填cadenceenabled

get_benchmark

Benchmark vs industry/geo

Benchmark a website's AI visibility against its industry and location. Use this when someone asks "how do I compare to others in my space," "is this a good score for my industry," or wants percentile/peer context rather than an absolute number. Backed by aggregated audit data. Requires a Website Auditor subscription ($49/month; eligible new customers get a 7-day free trial — payment method required, no charge until the trial ends) — if the user doesn't have one, call get_sample_audit first to show them the exact output format, free and with no API key.

输入参数geodomain必填industry

get_recommendations

Prioritized fixes

Get specific, prioritized fixes to raise a website's AI visibility and audit scores. Use this when someone asks "how do I fix this," "what should I change," "how do I improve my AI visibility," or after an audit surfaces issues. Returns ranked actions with expected impact, each built from the domain's latest audit and citing its evidence (blocked AI crawlers, missing structured data, the competitor sites the assistants cited). Works with any Website Auditor API key and needs an audit on record for the domain; with Pro it also says where to get listed, what the assistants get wrong about the business, and which file in the fix package fixes each finding — without Pro the listing places are only counted.

输入参数domain必填

generate_schema

Generate JSON-LD schema

Generate structured data (JSON-LD schema) tailored to a website, to improve how AI assistants and search engines understand it. Use this when someone asks for "schema," "structured data," "JSON-LD," or wants the actual markup to implement a recommendation. Returns a DRAFT, not finished markup: every name field arrives as a placeholder — "Your Business Name" on the business types, and on a Product the product's own name and brand as "Your Product Name" and "Brand Name" — that the owner must replace with real names confirmed with them, never guessed from the domain or copied from an audit. `placement_notes` says what to replace first, then where to embed the finished snippet, so relay the whole ask and do not tell the user to paste the draft as returned. For a finished fix written from the owner's confirmed facts, with paste steps for their site's platform, use get_fix ("Get this fix") instead: its requests are recorded. Requires a Website Auditor subscription ($49/month; eligible new customers get a 7-day free trial — payment method required, no charge until the trial ends) — if the user doesn't have one, call get_sample_audit first to show them the exact output format, free and with no API key.

输入参数typedomain必填

get_report

Shareable report + badge

Get a shareable report URL and the embeddable "Audited by Website Auditor" badge snippet for a website. Use this when someone wants to "share," "export," "send a client," or "embed" the audit result. Returns a link and an HTML badge snippet. Requires a Website Auditor subscription ($49/month; eligible new customers get a 7-day free trial — payment method required, no charge until the trial ends) — if the user doesn't have one, call get_sample_audit first to show them the exact output format, free and with no API key.

输入参数domain必填

untrack_site

Stop monitoring

Stop ongoing monitoring of a website's AI visibility. Use this when someone wants to "stop tracking," "unmonitor," "stop watching," or "remove" a site from scheduled monitoring, or to free up a monitoring slot. Removing a tracked site deletes its monitoring enrollment (its past audits are kept); calling it for a site that isn't tracked changes nothing. Returns how many monitoring slots are now free. Requires a Website Auditor subscription ($49/month; eligible new customers get a 7-day free trial — payment method required, no charge until the trial ends) — if the user doesn't have one, call get_sample_audit first to show them the exact output format, free and with no API key.

输入参数domain必填

list_tracked_sites

List monitored sites

List the websites currently being monitored for AI visibility on a schedule. Use this when someone asks "what am I tracking," "which sites am I monitoring," "how many monitoring slots am I using," or wants to see their tracked domains. Returns each tracked domain with its cadence and active state, plus slots used and remaining out of the account's limit (3 sites, or 5 for a subscription started before 18 October 2026). Requires a Website Auditor subscription ($49/month; eligible new customers get a 7-day free trial — payment method required, no charge until the trial ends) — if the user doesn't have one, call get_sample_audit first to show them the exact output format, free and with no API key.

无需输入参数。

get_monitoring_status

Monitoring status summary

Get a glanceable summary of monitoring status across all tracked websites. Use this when someone asks "how are my tracked sites doing," "what's my current AI visibility across everything I monitor," "when were my sites last checked or when do they run next," or wants a dashboard of their monitored domains. Returns, per domain, the latest AI-visibility score of its series (the measured weekly re-audits and any audit that asked the same question as the newest recorded one, while it has no gap longer than four weeks and a day from the newest weekly re-audit that recorded its question, through each later snapshot of the series (weekly re-audits included, recorded or not), to the newest measured snapshot; otherwise every measured snapshot; a newer measured snapshot outside the series is not shown, and get_changes names it), the date of its last scheduled run and when the next one runs, and the most recent change against the last snapshot that asked the same question, or a note or the summary saying why there is none — when different engines answered the two snapshots, the change shows the per-engine changes only, with a note naming which answered each, and its score_delta is null; like get_changes, a change carries competitor_changes, new_issues and resolved_issues, always empty. Requires a Website Auditor subscription ($49/month; eligible new customers get a 7-day free trial — payment method required, no charge until the trial ends) — if the user doesn't have one, call get_sample_audit first to show them the exact output format, free and with no API key.

无需输入参数。

get_gtm_plan

Build a GTM plan from the audit

Build a written go-to-market plan from a website's latest audit, grounded in its citation evidence. Use this when someone asks "what should I do about my AI visibility," "turn this audit into a plan," or wants a GTM or marketing plan for their site. The plan is built from the `sources` the assistants actually read — each marked `yours`, `competitor` or `third_party`; competitor sources shape the analysis but are never placement targets. When the audit recorded no citation evidence the plan grounds itself in the report's issues and stats instead. Pass `focus` or `constraints` to steer it, and `prior_plan` (the markdown from an earlier call) to refine rather than start over. Requires a Website Auditor subscription ($49/month; eligible new customers get a 7-day free trial — payment method required, no charge until the trial ends) — if the user doesn't have one, call get_sample_audit first to show them the exact output format, free and with no API key.

输入参数focusdomain必填prior_planconstraints

list_fixes

List ready-made fixes

List the ready-made fixes Website Auditor can serve finished for a tracked site, top first: whether each is needed and why, whether the platform the site runs on can take it, and its newest request with that request's status (live, missing, or not checked yet). Use this when someone asks which fixes their site needs, which to do first, or whether a fix they added has gone live. Also returns the site's detected `platform`, the `platforms` a fix's steps can be written for, and each newest request's `id`, which check_fix takes, without recording a new request. Reads only: nothing is recorded and the site is not fetched. It answers only for a site the account tracks. Requires a Website Auditor subscription ($49/month; eligible new customers get a 7-day free trial — payment method required, no charge until the trial ends) — if the user doesn't have one, call get_sample_audit first to show them the exact output format, free and with no API key.

输入参数domain必填

get_fix_facts

Facts to confirm

Read the business facts a site's fixes are written from, as they stand to be confirmed. Use this before confirming facts, to correct facts already confirmed, or after a confirmation answered facts_changed. Returns `confirm` (each fact with what the site says and what the owner confirmed, `confirmed_at`, and any facts gone stale), `name` (the business name the audits found, for the name fact where the site states none), and `seen`, exactly what the block shows, which confirm_facts sends back unchanged. `seen` is absent when the facts cannot be confirmed yet (`can_confirm` false: the site has not been read). The facts are the owner's to confirm: show them to the owner. Reads only. Requires a Website Auditor subscription ($49/month; eligible new customers get a 7-day free trial — payment method required, no charge until the trial ends) — if the user doesn't have one, call get_sample_audit first to show them the exact output format, free and with no API key.

输入参数domain必填

get_fix

Get this fix

"Get this fix": a site fix served finished, with paste steps for the platform the site runs on: the business-facts structured data and the llms.txt are written from the facts its owner confirmed; the robots.txt lines from what the newest audit found blocked. Use this when someone asks to "get this fix," "do it for me," "give me the structured data / llms.txt / robots.txt lines to paste," or wants a fix done rather than described. Returns status "served" with the request (its `id` is what check_fix checks) and the fix: each block ready to copy, the steps for the site's platform (or the `platform` given), and `copy_all`, the prompt and every block in one paste, where the steps carry a prompt for the agent that edits the site. Each call is recorded as a request for the fix. When the newest audit found nothing for the fix to change (for robots_txt, no AI assistant blocked), it returns status "nothing_to_fix" and records nothing. Nothing that states the owner's facts is served before the owner has confirmed them: then it returns status "confirm_first" with the `reason`, the confirm block and `seen` — show the owner those facts, and once they confirm or correct them, call confirm_facts with `seen` unchanged and ask again. With reason "facts_not_read" the site has not been read yet, so there is nothing to confirm until its next weekly check. It answers only for a site the account tracks. Requires a Website Auditor subscription ($49/month; eligible new customers get a 7-day free trial — payment method required, no charge until the trial ends) — if the user doesn't have one, call get_sample_audit first to show them the exact output format, free and with no API key.

输入参数kinddomain必填platform

confirm_facts

Confirm business facts

Confirm the business facts a site's fixes are written from, as the site's owner confirms them. Use this only after showing the owner the facts get_fix_facts or get_fix returned (the confirm block, with the business `name`) and getting their own confirmation or corrections: never confirm facts on the owner's behalf, and never without asking them. `facts` is the owner's answers, keyed by each fact's `fact` in the confirm block (the business name under "name"); `seen` is sent back exactly as it was handed out, unchanged, and the confirmation is refused without it. Returns status "confirmed" with the confirmed block and its new `seen`. When the site's facts changed since they were shown, nothing is confirmed (status "facts_changed", with the facts as they are now): read them again with get_fix_facts and show the owner before confirming. With status "facts_not_read" the site has not been read yet and there is nothing to confirm. Confirmations are capped over any 24 hours (TOO_MANY_CONFIRMATIONS, with retry_after). Requires a Website Auditor subscription ($49/month; eligible new customers get a 7-day free trial — payment method required, no charge until the trial ends) — if the user doesn't have one, call get_sample_audit first to show them the exact output format, free and with no API key.

输入参数seen必填facts必填domain必填

check_fix

Check a fix is live

"I've added it": check whether a fix is live on the site. Use this when the owner says they have added, pasted or published a fix, or asks "is it live" or "did it work." Reads the live site for the fix request `id` (from get_fix, or a fix's newest request in list_fixes) and records what it found: `live`, or what is missing, each named. For the business-facts fix the home page's structured data has to state every fact the fix stated; for llms.txt, /llms.txt has to answer with a valid file; for the robots.txt lines, /robots.txt has to let in every assistant the fix named. A site that did not answer is not called missing the fix (`reached` false). One check a minute per request: asked again sooner it answers CHECKED_RECENTLY with retry_after. It does not predict any change in AI visibility; the weekly check observes that. Requires a Website Auditor subscription ($49/month; eligible new customers get a 7-day free trial — payment method required, no charge until the trial ends) — if the user doesn't have one, call get_sample_audit first to show them the exact output format, free and with no API key.

输入参数id必填domain必填

check_upgrade_status

Check upgrade status

Check the caller's own Website Auditor subscription standing. Use this when someone asks "am I on Pro," "is my trial still active," "when does my subscription renew/end," "why is this tool locked," or before suggesting an upgrade. Works with any valid API key and consumes no audit quota. Returns the tier (none/free/pro), raw subscription status, period end, whether the subscription is set to cancel, the upgrade URL, and a plain-language summary — including what starting Pro requires (a payment method and accepting the Terms).

无需输入参数。

get_sample_audit

See a sample audit (no key needed)

Show a complete sample Website Auditor report — no API key required, nothing to set up. Use this whenever someone wants to "try it," "see a demo," "show me what this does," "what does the output look like," or is deciding whether Website Auditor is worth subscribing to — and use it INSTEAD of refusing when no API key is configured. Returns fixed sample data for example.com in the exact shape a real audit returns: scored summary, per-test results, and the AI-visibility breakdown by engine. It is clearly marked as a sample and always describes example.com, never the user's own site — auditing a real domain needs a subscription.

无需输入参数。

版本历史

5
  1. v1.0.29最新Nov 5, 2026
  2. v1.0.26Oct 4, 2026
  3. v1.0.25Sep 27, 2026
  4. v1.0.24Sep 17, 2026
  5. v1.0.23Sep 16, 2026

评分

已满足适用检查项的 90%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分
  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分