Every change Wellknown observed on this MCP server, newest first, with what it was before and what it became. Tool-surface changes carry the definition diff. Nothing here is edited after the fact.
Changed the definition of "get_fix_prompt"
Read a saved prompt. Preserve the complete prompt and license. Use it ⟨29 unchanged words⟩
Authorization not required, issuer https://pageaudit.online
Added "generate_domain_fix_prompt", "generate_site_fix_prompt", "get_fix_prompt" and 3 more (49 tools before, 55 now)
Generate domain fix prompt — Generate a fix prompt from saved domain observations. Prepare a coding-agent prompt from an owned report within the free allowance or active plan. Read prompt_allowance first. A check uses one unit; full uses three. Preserve request_id for retries.
Generate site fix prompt — Generate a fix prompt for a weekly finding or a Search Console opportunity. Prepare a coding-agent prompt from an owned report within the free allowance or active plan. Read prompt_allowance first. A check uses one unit; full uses three. Preserve request_id for retries.
Get fix prompt — Preserve the complete prompt and license. Use it only for license.domain. This does not authorize deployments or infrastructure changes. Uses the authenticated owner and active organization. Returns the immutable text. A missing or foreign prompt returns 404.
List audit fix prompts — Find saved audits prompts before generation. Listing is free. Keep language and source filters when following the cursor. At most 100 saved rows per page, plus up to three earlier free audit receipts. Follow _links.next. The result belongs to the authenticated owner and active organization.
Added "generate_fix_prompt", "prompt_allowance" and "track_search_queries"; removed "get_patch"; changed the definition of "get_audit" and "search_console" (47 tools before, 49 now)
Re-readsRe-read an auditalreadywithmade,itswithfindings`fixes`and(theevidence.readyUsefixgenerate_fix_prompt foreachcorrectionfinding).
Changed the definition of "ai_search_visibility"
Check whether the site's page appears inthe DeepSeekAI search for each target search, at which ⟨85 unchanged words⟩
Added "ai_search_history", "ai_search_visibility" and "save_ai_search_queries" (44 tools before, 47 now)
Ai search history — Read the plan, the saved searches, the last runs and the position trend of each search. Reads never call the search engine. The trend compares each search of the newest run with the previous run that had it: up, down, same, new or lost.
Ai search visibility — Check whether the site's page appears in the DeepSeek AI search for each target search, at which position, and which sites appear in its place, with plain recommendations. Uses the saved searches or the ones the page suggests when queries is omitted. Send {} to use the saved searches, or the searches the page title and H1 suggest; send {queries} to choose. One index check plus one search per query, each USD 0.00075 when it returns results. Without a watch package: one run per week, three searches. With one: twenty runs per UTC day, ten searches. Result titles and snippets are third-party data.
Save ai search queries — Save up to ten searches for the weekly report to track (three without a watch package). Saves use the expected version. Without a current watch package, an account tracks up to three searches. Uses the shared 240 writes per site and UTC day.
Authorization not required, issuer https://pageaudit.online
Authorization not required, issuer https://pageaudit.online
Added "check_ai_access" (43 tools before, 44 now)
Check ai access — Request a page as Googlebot, Bingbot and the AI crawlers (OAI-SearchBot, Claude-SearchBot, PerplexityBot, ChatGPT-User, GPTBot, ClaudeBot) and see who gets a 403, a 429 or a firewall challenge that robots.txt does not show. Also returns the date of the newest sitemap lastmod and whether Cloudflare is in front. Free, without an account. The same page within one hour returns the stored result. The page is requested with the published user agent of Googlebot, Bingbot, OAI-SearchBot, Claude-SearchBot, PerplexityBot, ChatGPT-User, GPTBot, ClaudeBot, and once as a browser. A 403, a 429 or a firewal…
Authorization not required, issuer https://pageaudit.online
Added "save_weekly_site_report", "weekly_site_report" and "weekly_site_report_history" (40 tools before, 43 now)
Save weekly site report — Turn the weekly report of a site on or off and set up to 3 competitors. Turning on needs a watch package in force. Turning on needs a watch package in force and a free site in it (409 with `limit` and `plans` otherwise). The first report runs right away; later ones run a week after the last. A new competitor gets its base this week and its new pages from the next. Saves use the expected version.
Weekly site report — Read the weekly report of a site: what changed since last week, the new pages of up to 3 competitors and every finding. Reading never runs the report. Once a week the report checks the first 500 URLs of the site's sitemap, says what changed since the week before (new and fixed problems, new pages) and lists the new pages of up to 3 competitor sitemaps. Reading never runs the report.
Weekly site report history — Read one weekly report of a site's history by its id.
Added "acknowledge_domain_event", "add_site", "apply_domain_alerts" and 16 more (21 tools before, 40 now)
Acknowledge domain event — Requires the account session, current X-Organization-Id and CSRF for writes. Acknowledge an expected event. Suppress its notice only if sending has not started. Preserve the event and its evidence. Preserve the event and observation. Acknowledgement does not erase a confirmed risk or retract a sent notice. Repetition is idempotent.
Add site — Add a site to the account. No site count limit. An account holds up to 1,000 sites (409 site_limit). The existing guest audit workspace stays separate.
Apply domain alerts — Requires the account session, current X-Organization-Id and CSRF for writes. Apply the reviewed selection. Requires the preview from preview_domain_alerts. A stale preview changes nothing. Select up to 25 saved pages. Repeated registrable domains count once. The server checks the account, organization and current revisions again. A stale preview changes nothing.
Cancel connection review — Requires the account session, current X-Organization-Id and CSRF for writes. Cancel the current TLS review and preserve completed evidence. One review per account, organization, origin and UTC day. Starting requires current domain monitoring rights. The account has three starts per UTC day. Retries return the same review. The scanner samples one public IP, with three stages and a 170-second deadline. Partial results do not establish safety. GET never starts a scan. The shared realtime channel reports stage changes. Reports expire after 26 hours.
Added "audit_site"; changed the definition of "contact" (20 tools before, 21 now)
⟨60 unchanged words⟩ by e-mail, with `email` as the reply address. For voice, send multipart/form-data: `dados` is this JSON (up to 32 KiB), and `audio` is one WebM, Ogg or M4A audio file (up to 2 MB). Audio can replace message. The browser records up to two minutes. Audio is attached to the owner's e-mail.
⟨186 unchanged words⟩ ,"explorando"],"type":"string"},"prefer_whatsapp":{"description":"Request a WhatsApp reply. Requires whatsapp.","type":"boolean"},"projeto":{"description":"Consulting: the kind ⟨42 unchanged words⟩ "patrocinio","parceria","anuncio","consultoria"],"type":"string"},"whatsapp":{"description":"Optional reply number with country code, such as +5561999999999.","type":"string"}},"required":[ ⟨5 unchanged words⟩
Changed the definition of "contact"
⟨48 unchanged words⟩ ,"type":"array"},"formato":{"description":"Consulting: `projeto` (per scope), `mensal` (monthly) or `assessoria` (advisory).","enum":["projeto","mensal","assessoria"],"type":"string"},"fuso":{"description":"Consulting: the IANA time zone, such as `America/New_York`.","type":"string"},"horarios":{"description":"Consulting: up to 3 times for the call, `YYYY-MM-DDTHH:MM` in that time zone.","items":{"type":"string"},"type" ⟨19 unchanged words⟩ :"string"},"orcamento":{"description":"Advertising: `ate_100`, `100_500`, `500_2000`, `2000_mais` or `a_combinar`. Consulting, in US dollars: `ate_2000`, `2000_5000`, `5000_10000`, `10000_mais` or `nao_sei`.","enum":["ate_100","100_500"," ⟨15 unchanged words⟩ ,"type":"string"},"pais":{"description":"Consulting: the country of the person asking.","type":"string"},"prazo":{"description":"Consulting: when to start (`agora`, `1_mes`, `1_3_meses` or `explorando`).","enum":["agora","1_mes","1_3_meses","explorando"],"type":"string"},"projeto":{"description":"Consulting: the kind of project (`llm_privado`, `voz`, `dados_sensiveis`, `gpu`, `integracao` or `outro`).","
Removed "acknowledge_domain_event", "add_site", "billing" and 15 more; changed the definition of "api_index", "audit_url", "check_domain" and 17 more (38 tools before, 20 now)
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true,"title":"API index"}
⟨39 unchanged words⟩ or accessibility. This is the product for agents.Past the account or anonymous network's daily allowance the response is **402 with `accepts[]`** and `code: allowance_spent` — pay and repeat the same call. There is no captcha: people and agents pay the same way.The free alternative: a person signs in with ⟨6 unchanged words⟩
Added "acknowledge_domain_event", "check_domain", "configure_domain_monitor" and 3 more; changed the definition of "contact" (32 tools before, 38 now)
⟨47 unchanged words⟩ :"string"},"type":"array"},"formato":{"enum":["projeto","mensal","assessoria"],"type":"string"},"fuso":{"type":"string"},"horarios":{"items":{"type":"string"},"type":"array"},"message":{"description":"What you want to ⟨23 unchanged words⟩ ,"100_500","500_2000","2000_mais","a_combinar","ate_2000","2000_5000","5000_10000","10000_mais","nao_sei"],"type":"string"},"pagamento":{ ⟨8 unchanged words⟩ ,"a_combinar"],"type":"string"},"pais":{"type":"string"},"prazo":{"enum":["agora","1_mes","1_3_meses","explorando"],"type":"string"},"projeto":{"enum":["llm_privado","voz","dados_sensiveis","gpu","integracao","outro"],"type":"string"},"site":{"description":"Website of who is ⟨15 unchanged words⟩ ,"enum":["patrocinio","parceria","anuncio","consultoria"],"type":"string"}},"required" ⟨5 unchanged words⟩
Added "buy_plan" and "cancel_plan"; changed the definition of "list_plans" (30 tools before, 32 now)
Read theThe plansthat add pages to the daily monitor: price in USD,forpagessale,30withdaysprice andno automatic renewal. With a signed-in accountterm,alsoandreadtheitsaccount's activeplan and how many
Added "list_plans"; changed the definition of "audit_url" (29 tools before, 30 now)
⟨41 unchanged words⟩ This is the product for agents. Past theIP'saccount or anonymous network's daily allowance the response is **402 with `accepts ⟨36 unchanged words⟩
List plans — Read the plans that add pages to the daily monitor: price in USD, pages, 30 days and no automatic renewal. With a signed-in account, also read its active plan and how many monitored pages are free, paid, used and available. A person buys a plan on the pricing page. Each plan adds pages to the daily monitor of the account for 30 days. Purchases add up while they are valid. There is no automatic renewal. Without a session, `account` is `null`.
Added "add_site", "configure_journeys", "connect_search_console" and 6 more; changed the definition of "audit_url" (20 tools before, 29 now)
{"properties":{"compare_with":{"description":"optional ID of an earlier audit of the same owner; returns what appeared and disappeared","type":"string"},"guest_token":{"description":"optional pa_…","type ⟨13 unchanged words⟩
Add site — Add a site to the account. No site count limit. This creates no subscription or payment. An account holds up to 1,000 sites (409 site_limit). Adding a site creates no subscription or payment. The existing guest audit workspace stays separate.
Configure journeys — Enable or pause an owned site's collection, or set up to eight ordered project_action steps. Activation requires an existing paid site package; this call never buys one. Configure optional Google credentials in the UI. Activation requires the existing site package or an operator-authorised internal benefit. A 402 opens the package offer when available. It never buys automatically. Keep Google secrets out of URLs and browser scripts.
Changed the definition of "billing"
⟨5 unchanged words⟩ billing off, reference prices and the account's90-day7-dayperiod.trial. Audits remain free beyond the daily baseline while ⟨8 unchanged words⟩
Changed the definition of "list_tabs"
⟨48 unchanged words⟩ a work tab. The introduction stays in Welcome. A signed-in account sends `X-Organization-Id`; a guest has one temporary workspace.
Changed the definition of "get_tool" and "list_tools"
{"properties":{"language":{"description":"Content language: pt (also pt-BR) for Portuguese; any other value or none returns English.","enum":["en","pt"],"type":"string"},"slug":{"description":"tool slug","type ⟨5 unchanged words⟩
{"properties":{"language":{"description":"Content language: pt (also pt-BR) for Portuguese; any other value or none returns English.","enum":["en","pt"],"type":"string"}},"type":"object"}
Changed the definition of "list_tabs"
Lists the owner'stabssaved pages (guest or session)., with the active page's last report. Group pages by site to match the Projects table. One calldrawsloads thewholesavedscreen:pagestabs,and thefocused tab,activeitspage's lastreport,
Changed the definition of "audit_url" and "billing"
AuditsCheck aURL: SEO (meta and X-Robots-Tag, HTML and Linkwebcanonical),page'sJSON-LDsearchparsingmetadata,robots.txt decided per crawler for this path (Googlebot,crawlBingbotaccess,AIstructuredsearchdata andtraining crawlers), real-user Core Web Vitals from the Chrome UX Report, llms.txt, security.txt, API
Changed the definition of "api_index", "audit_url", "billing" and 17 more
before
—after
API indexbefore
—after
{"destructiveHint":false,"idempotentHint":true,"readOnlyHint":true,"title":"API index"}before
—Audit URL
Changed the definition of "audit_url" and "contact"
⟨90 unchanged words⟩ the response is **402 with `accepts[]`** and `code: allowance_spent` — pay and repeat the same call.ItTherealsoiscarriesno`sitekey`captcha:andpeople`code`,andwhichagentsarepay thepath for a human with a browser; an agent ignores those
Certificate changed, valid to 2026-12-22
Added "lab_result" and "lab_test"; changed the definition of "audit_url", "contact", "create_guest" and 9 more (18 tools before, 20 now)
Audits a URL: SEO (meta and X-Robots-Tag, HTML and Link canonical), JSON-LD parsing, robots.txt decided per crawler for this path (Googlebot, Bingbot, AI search and training crawlers), real-user Core Web Vitals from the Chrome UX Report, llms.txt, security.txt, API catalog, function-matched well-known files, favicon response and missing-page probe. A firewall or rate limit answering instead of the page comes back as 502 `target_blocked`, never as a score. Returns evidence, limits and fixes without a tab; not a security/accessibility certification. This is the product for agents. Past the IP's daily allowance the response is **402 with `accepts[]`** — pay and repeat the same call. It also carries `sitekey` and `code`, which are the path for a human with a browser; an agent ignores those two. The free alternative: a person signs in with an account to get the trial.
Changed the definition of "billing" and "watch_tab"
Free plan, prices, x402 parameters and the trial offer:sign-up with a confirmedan=gets 90 days without paywall from its first use (`trial` field; with a session it shows the state).
⟨21 unchanged words⟩ score drops or a new error/warning appears. Needsathe
Changed the definition of "audit_url"
⟨4 unchanged words⟩ JSON-LD parsing, llms.txt, security.txt, API catalog, function-matched well-known files, favicon response and missing-page probe. Returns evidence, limits ⟨9 unchanged words⟩
Changed the definition of "audit_url"
Audits a URL:andSEO,returnsJSON-LDtheparsing,fullllms.txt,reportsecurity.txt,withAPIthecatalog,readyfaviconfixresponsefor
Certificate recorded, valid to 2026-11-08
Authorization not required
Added "pricing" (17 tools before, 18 now)
Current public prices and free allowances; no charge.
First tool surface recorded: 17 tools (server version 1d82a4fa)
Showing the latest 35 events. The API returns up to 500 and filters by kind: ?kind=tool_surface_changed
List domain fix prompts — Find saved tabs prompts before generation. Listing is free. Keep language and source filters when following the cursor. At most 100 saved rows per page, plus up to three earlier free audit receipts. Follow _links.next. The result belongs to the authenticated owner and active organization.
List site fix prompts — Find saved sites prompts before generation. Listing is free. Keep language and source filters when following the cursor. At most 100 saved rows per page, plus up to three earlier free audit receipts. Follow _links.next. The result belongs to the authenticated owner and active organization.
Readtheown-sitesite'skeywords,lastopportunitiesgoodat28-dayaveragesamplepositions 4–20,partialupcoverage,to 20 tracked queries and daily history. Check dates, partial coverage and collectionfailure.failure before proposing edits. These are not market search volumes. The sample covers 28 days, at most 50 queries and 50 pages. Use queries for keyword research and opportunities for average positions 4–20. The terms array adds daily history and 7-day comparisons for up to 20 selected queries. Coverage ispartial.partial:Itimpressionsisare for this property, notamarkettrafficsearchtotalvolume.orPositionsaarerankingimpression-weightedpromise.averages, not fixed SERP ranks. Credentials and raw provider responses are not returned.
Generate fix prompt — Prepare a coding-agent prompt from an owned report within the free allowance or active plan. Read prompt_allowance first. A check uses one unit; full uses three. Preserve request_id for retries.
Prompt allowance — Read remaining prompt units before generating.
Track search queries — Replace the site's tracked query selection (up to 20). Read search_console first to preserve existing selections. Removed queries keep their stored history. E-mail alerts require an active site package. Accepts up to 20 exact queries. Removed queries become inactive; their stored history is retained. Saving schedules the Search Console connection for collection. E-mail delivery requires an active site package.
Get patch — The consolidated patch of an audit: <head> block to paste, files to create and templates with placeholders. No model — only facts from the page. Each finding becomes a fix in one of three classes: `deterministico` (comes whole from what the page declares: final URL, title, description, OG), `molde` (a tag with a marked placeholder, like `{{TITULO}}`, and the suggested source) or `sem_patch` (a decision or infrastructure, with the instruction). Nothing is invented by a model.
Configure domain DNS — Requires the account session, current X-Organization-Id and CSRF for writes. Set up to three known DKIM selectors and choose whether IP rotation is expected. Expected rotation keeps history without notices; alias changes still notify. Does not discover selectors, enable monitoring or authenticate sent messages. Send manual_expires_on, dns, or both. Omitted settings are preserved. DNS requires both selectors and rotating_addresses. An identical retry is idempotent. A conflicting revision returns 409.
Configure domain monitor — Requires the account session, current X-Organization-Id and CSRF for writes. Enable or stop domain monitoring, or pause notices for maintenance. Count a registry domain once per account, including its organization copies. Add only the tab's origin. HTTP receives DNS checks only. Maintenance pauses notices while collection continues. Confirm enabled, no suspension and next_check_at after saving.
Connect search console — Start read-only Google consent. The account owner must follow redirect in their browser. Follow redirect in the account's browser. Consent expires after five minutes. The callback is single-use and bound to the account and site. The property must match the site and Google must authorize it before the connection is saved.
Connection review — Requires the account session, current X-Organization-Id and CSRF for writes. Read today's private TLS review without starting a scan. One review per account, organization, origin and UTC day. Starting requires current domain monitoring rights. The account has three starts per UTC day. Retries return the same review. The scanner samples one public IP, with three stages and a 170-second deadline. Partial results do not establish safety. GET never starts a scan. The shared realtime channel reports stage changes. Reports expire after 26 hours.
Disconnect search console — Remove the local Google credential and stop collection. Keep the last good sample. The last good sample stays available. An in-flight callback or collection cannot reconnect the site.
Domain history — Requires the account session, current X-Organization-Id and CSRF for writes. Read up to 50 private incidents with notice delivery. Send the last event number as before for the next page. A first observed risk is an initial incident, not evidence of an external change. The first DNS and certificate-issuance snapshots are silent baselines. DNS changes, incompatible server samples and connection failures need two distinct observations. Expected IP rotation is silent. Repeated observations do not duplicate a notice. Contact changes expose field states only. Issuance does not prove installation. D…
Domain portfolio — Requires the account session, current X-Organization-Id and CSRF for writes. Read cached domain monitoring and deadlines for selected saved pages. Does not start external collection or activate monitoring. Every tab must belong to the current account and organization. Repeat with the next group of IDs for a larger workspace.
Get site — Read one site owned by the signed-in account.
Journeys — Read the owned site's installation, actions, paths and ordered conversion funnel for the last seven days. Requires the account's browser session. Only this site's owner can read it. Data updates through the shared realtime transport. No user identity, typed text or screen recording.
List sites — Read up to 50 sites owned by the signed-in account. Follow next_cursor.
Preview domain alerts — Requires the account session, current X-Organization-Id and CSRF for writes. Review the exact selected domains before changing renewal notices. Select up to 25 saved pages. Repeated registrable domains count once. The server checks the account, organization and current revisions again. A stale preview changes nothing.
Review connection — Requires the account session, current X-Organization-Id and CSRF for writes. Start a TLS review of the saved HTTPS origin using current domain monitoring rights. At most three starts per account and UTC day, one per site. A repeated request reuses today's review. Do not claim complete safety from a partial result. One review per account, organization, origin and UTC day. Starting requires current domain monitoring rights. The account has three starts per UTC day. Retries return the same review. The scanner samples one public IP, with three stages and a 170-second deadline. Partial results do …
Search console — Read the site's last good 28-day sample, partial coverage, dates and collection failure. The sample covers 28 days, at most 50 queries and 50 pages. Coverage is partial. It is not a traffic total or a ranking promise. Credentials and raw provider responses are not returned.
Set domain expiry — Requires the account session, current X-Organization-Id and CSRF for writes. Set or remove the private manual expiry. Send manual_expires_on, dns, or both. Omitted settings are preserved. DNS requires both selectors and rotating_addresses. An identical retry is idempotent. A conflicting revision returns 409.
Sync search console — Collect a due sample. Repeated calls cannot bypass the daily reservation. The hourly schedule uses the same durable reservation. A failure preserves the last good sample and schedules the next attempt 24 hours later. This route cannot force an extra collection.
Audit site — Check the first 20 URLs of a site's sitemap: status, redirects, robots.txt, noindex, canonical, titles and descriptions. Free, without an account. The same site within one hour returns the stored sample. URLs of another host are counted, never requested. The free sample of the SEO audit. URLs of another host are counted, never requested. The same site within one hour returns the stored sample (`cached_at`) without requesting the site again and without spending the allowance.
{"destructiveHint":false,"idempotentHint":false,"openWorldHint":true,"readOnlyHint":false,"title":"Audit URL"}
CollectRefresh due registration,andcontacts, TLS, DNS, mail policies, certificatesourcesissuanceforandanaownedlimitedsavedDNS/TLSpage.sample. Reuses fresh public data.Does not enable monitoring or make a purchase.Reuse fresh observations. A failed or partial query ⟨11 unchanged words⟩ cold page reads per owner and UTC day.This call does not enable a monitor or buy access.
{"destructiveHint":false,"idempotentHint":false,"openWorldHint":true,"readOnlyHint":false,"title":"Check domain"}
⟨6 unchanged words⟩ product: a question, or a sponsorship/partnership/advertising proposal.Free, no captcha and no payment; one message every 10 s per network (one that arrives sooner waits its turn).One route for a question and for a ⟨5 unchanged words⟩ `tipo`, with the placements of `GET /api/partners`).No captcha, no account, no payment.One message every 10 seconds per network: ⟨27 unchanged words⟩
⟨104 unchanged words⟩ ,"type":"string"},"pagamento":{"description":"`usdc`, `deposito` or `a_combinar`.","enum":["usdc","deposito","a_combinar"] ⟨57 unchanged words⟩
{"destructiveHint":false,"idempotentHint":false,"openWorldHint":false,"readOnlyHint":false,"title":"Contact"}
{"destructiveHint":false,"idempotentHint":false,"openWorldHint":false,"readOnlyHint":false,"title":"Create guest"}
Opens atab for a URL in the workspace. PastsavedtheURL.freeSettabqueue_audit=falseallowancetoitmonitoranswersa402discoveredwithorigin`accepts[]`:withoutpayaandpagerepeat.audit.
⟨13 unchanged words⟩ ,"guest_token":{"type":"string"},"queue_audit":{"default":true,"description":"Defaults to true. Use false to save an idle page for domain monitoring without queuing a page audit. Existing pages keep their current state.","type":"boolean"},"url":{"description":"The URL the tab ⟨9 unchanged words⟩
{"destructiveHint":false,"idempotentHint":false,"openWorldHint":true,"readOnlyHint":false,"title":"Create tab"}
Readtheregistration,savedcontactpage'svisibility,registrationTLS,certificateDNS,manualCAA,expirymail policies, certificate issuance andmonitor.aFailedlimitedsourcesserverpreservecomparison.theReaddatedsourcelastdatessuccess.andAcceptscollectionagaps.guestPrivatetokenoptionsorrequire the account session. A discovered name never starts monitoring automatically. Pages share public observations by registry domain and ⟨19 unchanged words⟩
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true,"title":"Domain status"}
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true,"title":"Embed snippet"}
⟨6 unchanged words⟩ `fixes` (the ready fix for each finding).Re-reading costs nothing and does not count against the allowance — the page's HTML is not kept, but the report is.
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true,"title":"Get audit"}
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true,"title":"Get badge"}
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true,"title":"Get patch"}
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true,"title":"Get tool"}
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true,"title":"Health"}
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true,"title":"Lab result"}
⟨118 unchanged words⟩ and 500 per day for the whole product.Free: no x402 charge.
{"destructiveHint":false,"idempotentHint":false,"openWorldHint":true,"readOnlyHint":false,"title":"Lab test"}
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true,"title":"List tabs"}
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true,"title":"List tools"}
Re-audits the tab's URL.Consumes the same daily allowance as `POST /api/audit` — past it, 402 with `accepts[]`.
{"destructiveHint":false,"idempotentHint":false,"openWorldHint":true,"readOnlyHint":false,"title":"Run tab"}
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true,"title":"Tab history"}
{"destructiveHint":true,"idempotentHint":false,"openWorldHint":true,"readOnlyHint":false,"title":"Watch tab"}
Acknowledge domain event — Requires the account session, current X-Organization-Id and CSRF for writes. Acknowledge an expected event. Suppress its notice only if sending has not started. Preserve the event and its evidence. Preserve the event and observation. Acknowledgement does not erase a confirmed risk or retract a sent notice. Repetition is idempotent.
Add site — Add a site to the account. No site count limit. This creates no subscription or payment. An account holds up to 1,000 sites (409 site_limit). Adding a site creates no subscription or payment. The existing guest audit workspace stays separate.
Billing — Read free allowances, options with billing off, reference prices and the account's 7-day trial. Audits remain free beyond the daily baseline while their billing is off. Hourly limits still apply.
Buy plan — Buy a plan: starter (25 more pages), pro (100 more pages), agency (300 more pages). Each purchase lasts 30 days, with no automatic renewal. Answers 402 with the price; pay with x402 or prepaid credit and repeat. Each purchase lasts 30 days, with no automatic renewal. Without payment, the answer is 402 with the price. Pay with prepaid credit (`X-Credito`) or x402 (`PAYMENT-SIGNATURE` v2 or `X-PAYMENT` v1). Without an account, the verified paying wallet owns the purchase. Use wallet agent authentication to read its plan, or claim it after account sign-in. The `compra` mark prevents repeat credi…
Cancel plan — Cancel the active plan now. What it added ends, including a paid period that has not started; that period and a purchase under 7 days are refunded. Requires accept_data_removal: true. Send `{ "accept_data_removal": true }`: what the plan added ends now (`account.cancel.losses` in `GET /api/plans` says what), including a period already paid that has not started yet, such as a renewal. A purchase made less than 7 days ago and a paid period that has not started go back the same way they were paid (card or Pix); USDC is refunded by the team.
Configure domain monitor — Requires the account session, current X-Organization-Id and CSRF for writes. Enable or stop domain monitoring, or pause notices for maintenance. Uses existing rights; 402 supplies checkout instructions and never buys automatically. Stopping a monitor does not cancel a subscription. Activation requires a current domain benefit, a preserved prepaid watch benefit or the account trial. Count a registry domain once per account, including its organization copies. Add only the tab's HTTPS origin. Stopping monitoring keeps history and does not cancel a subscription. Maintenance pauses notices while c…
Configure journeys — Enable or pause an owned site's collection, or set up to eight ordered project_action steps. Activation requires an existing paid site package; this call never buys one. Configure optional Google credentials in the UI. Activation requires the existing site package or an operator-authorised internal benefit. A 402 opens the package offer when available. It never buys automatically. Keep Google secrets out of URLs and browser scripts.
Connect search console — Start read-only Google consent. The account owner must follow redirect in their browser. Follow redirect in the account's browser. Consent expires after five minutes. The callback is single-use and bound to the account and site. The property must match the site and Google must authorize it before the connection is saved.
Disconnect search console — Remove the local Google credential and stop collection. Keep the last good sample. The last good sample stays available. An in-flight callback or collection cannot reconnect the site.
Domain history — Requires the account session, current X-Organization-Id and CSRF for writes. Read up to 50 private incidents with notice delivery. Send the last event number as before for the next page. A first observed risk is an initial incident, not evidence of an external change. Repeated source observations do not duplicate a notice.
Get site — Read one site owned by the signed-in account.
Journeys — Read the owned site's installation, actions, paths and ordered conversion funnel for the last seven days. Requires the account's browser session. Only this site's owner can read it. Data updates through the shared realtime transport. No user identity, typed text or screen recording.
List plans — The plans for sale, with price and term, and the account's active plan. Each purchase lasts 30 days, with no automatic renewal. Each purchase lasts 30 days, with no automatic renewal. Without an account or wallet credential, `account` is `null`. Daily monitoring requires an account and its e-mail. Claim a wallet purchase after sign-in to use it there.
List sites — Read up to 50 sites owned by the signed-in account. Follow next_cursor.
Pricing — Current public prices and free allowances; no charge.
Search console — Read the site's last good 28-day sample, partial coverage, dates and collection failure. The sample covers 28 days, at most 50 queries and 50 pages. Coverage is partial. It is not a traffic total or a ranking promise. Credentials and raw provider responses are not returned.
Set domain expiry — Requires the account session, current X-Organization-Id and CSRF for writes. Set or remove the private manual expiry. It does not change the registry data or confirm renewal payment. A manual date does not change the public registry data or confirm renewal payment. An identical retry is idempotent. A conflicting revision returns 409.
Sync search console — Collect a due sample. Repeated calls cannot bypass the daily reservation. The hourly schedule uses the same durable reservation. A failure preserves the last good sample and schedules the next attempt 24 hours later. This route cannot force an extra collection.
Acknowledge domain event — Requires the account session, current X-Organization-Id and CSRF for writes. Acknowledge an expected event. Suppress its notice only if sending has not started. Preserve the event and its evidence. Preserve the event and observation. Acknowledgement does not erase a confirmed risk or retract a sent notice. Repetition is idempotent.
Check domain — Collect due registration and certificate sources for an owned saved page. Reuses fresh public data. Does not enable monitoring or make a purchase. Reuse fresh observations. A failed or partial query preserves the last complete observation and its date. Up to 100 cold page reads per owner and UTC day. This call does not enable a monitor or buy access.
Configure domain monitor — Requires the account session, current X-Organization-Id and CSRF for writes. Enable or stop domain monitoring, or pause notices for maintenance. Uses existing rights; 402 supplies checkout instructions and never buys automatically. Stopping a monitor does not cancel a subscription. Activation requires a current domain benefit, a preserved prepaid watch benefit or the account trial. Count a registry domain once per account, including its organization copies. Add only the tab's HTTPS origin. Stopping monitoring keeps history and does not cancel a subscription. Maintenance pauses notices while c…
Domain history — Requires the account session, current X-Organization-Id and CSRF for writes. Read up to 50 private incidents with notice delivery. Send the last event number as before for the next page. A first observed risk is an initial incident, not evidence of an external change. Repeated source observations do not duplicate a notice.
Domain status — Read the saved page's registration, certificate, manual expiry and monitor. Failed sources preserve the dated last success. Accepts a guest token or the account session. Pages share public observations by registry domain and HTTPS origin. Private settings and history stay with the account and organization. Missing data is not a healthy result.
Set domain expiry — Requires the account session, current X-Organization-Id and CSRF for writes. Set or remove the private manual expiry. It does not change the registry data or confirm renewal payment. A manual date does not change the public registry data or confirm renewal payment. An identical retry is idempotent. A conflicting revision returns 409.
Buy plan — Buy a plan: starter (25 more pages), pro (100 more pages), agency (300 more pages). Each purchase lasts 30 days, with no automatic renewal. Answers 402 with the price; pay with x402 or prepaid credit and repeat. Each purchase lasts 30 days, with no automatic renewal. Without payment, the answer is 402 with the price. Pay with prepaid credit (`X-Credito`) or x402 (`PAYMENT-SIGNATURE` v2 or `X-PAYMENT` v1). Without an account, the verified paying wallet owns the purchase. Use wallet agent authentication to read its plan, or claim it after account sign-in. The `compra` mark prevents repeat credi…
Cancel plan — Cancel the active plan now. What it added ends, including a paid period that has not started; that period and a purchase under 7 days are refunded. Requires accept_data_removal: true. Send `{ "accept_data_removal": true }`: what the plan added ends now (`account.cancel.losses` in `GET /api/plans` says what), including a period already paid that has not started yet, such as a renewal. A purchase made less than 7 days ago and a paid period that has not started go back the same way they were paid (card or Pix); USDC is refunded by the team.
Connect search console — Start read-only Google consent. The account owner must follow redirect in their browser. Follow redirect in the account's browser. Consent expires after five minutes. The callback is single-use and bound to the account and site. The property must match the site and Google must authorize it before the connection is saved.
Disconnect search console — Remove the local Google credential and stop collection. Keep the last good sample. The last good sample stays available. An in-flight callback or collection cannot reconnect the site.
Get site — Read one site owned by the signed-in account.
Journeys — Read the owned site's installation, actions, paths and ordered conversion funnel for the last seven days. Requires the account's browser session. Only this site's owner can read it. Data updates through the shared realtime transport. No user identity, typed text or screen recording.
List sites — Read up to 50 sites owned by the signed-in account. Follow next_cursor.
Search console — Read the site's last good 28-day sample, partial coverage, dates and collection failure. The sample covers 28 days, at most 50 queries and 50 pages. Coverage is partial. It is not a traffic total or a ranking promise. Credentials and raw provider responses are not returned.
Sync search console — Collect a due sample. Repeated calls cannot bypass the daily reservation. The hourly schedule uses the same durable reservation. A failure preserves the last good sample and schedules the next attempt 24 hours later. This route cannot force an extra collection.
FreeReadplan,freepricesallowances,x402optionsparameterswithandbillingtheoff,trialreferenceoffer:pricesanandaccountthegetsaccount's9090-daydaysperiod.withoutAuditspaywallremainfromfreeitsbeyondfirsttheusedaily(`trial`baselinefield;whilewiththeirabillingsessionisitoff.showsHourlythelimitsstate).still apply.
before
—after
{"destructiveHint":false,"idempotentHint":false,"readOnlyHint":false,"title":"Audit URL"}before
—after
Billingbefore
—after
{"destructiveHint":false,"idempotentHint":true,"readOnlyHint":true,"title":"Billing"}before
—after
Contactbefore
—after
{"destructiveHint":false,"idempotentHint":false,"readOnlyHint":false,"title":"Contact"}before
—after
Create guestbefore
—after
{"destructiveHint":false,"idempotentHint":false,"readOnlyHint":false,"title":"Create guest"}before
—after
Create tabbefore
—after
{"destructiveHint":false,"idempotentHint":false,"readOnlyHint":false,"title":"Create tab"}before
—after
Embed snippetbefore
—after
{"destructiveHint":false,"idempotentHint":true,"readOnlyHint":true,"title":"Embed snippet"}before
—after
Get auditbefore
—after
{"destructiveHint":false,"idempotentHint":true,"readOnlyHint":true,"title":"Get audit"}before
—after
Get badgebefore
—after
{"destructiveHint":false,"idempotentHint":true,"readOnlyHint":true,"title":"Get badge"}before
—after
Get patchbefore
—after
{"destructiveHint":false,"idempotentHint":true,"readOnlyHint":true,"title":"Get patch"}before
—after
Get toolbefore
—after
{"destructiveHint":false,"idempotentHint":true,"readOnlyHint":true,"title":"Get tool"}before
—after
Healthbefore
—after
{"destructiveHint":false,"idempotentHint":true,"readOnlyHint":true,"title":"Health"}before
—after
Lab resultbefore
—after
{"destructiveHint":false,"idempotentHint":true,"readOnlyHint":true,"title":"Lab result"}before
—after
Lab testbefore
—after
{"destructiveHint":false,"idempotentHint":false,"readOnlyHint":false,"title":"Lab test"}before
—after
List tabsbefore
—after
{"destructiveHint":false,"idempotentHint":true,"readOnlyHint":true,"title":"List tabs"}before
—after
List toolsbefore
—after
{"destructiveHint":false,"idempotentHint":true,"readOnlyHint":true,"title":"List tools"}before
—after
Pricingbefore
—after
{"destructiveHint":false,"idempotentHint":true,"readOnlyHint":true,"title":"Pricing"}before
—after
Run tabbefore
—after
{"destructiveHint":false,"idempotentHint":false,"readOnlyHint":false,"title":"Run tab"}before
—after
Tab historybefore
—after
{"destructiveHint":false,"idempotentHint":true,"readOnlyHint":true,"title":"Tab history"}before
—after
Watch tabbefore
—after
{"destructiveHint":true,"idempotentHint":false,"readOnlyHint":false,"title":"Watch tab"}SendsWriteatosupportthemessagepeople behind the product: a question, or a sponsorship/partnership/advertising proposal.Agent:Free, no captcha→and402no payment; one message every 10 s per network ($0.10onex402that arrives sooner waits its turn).Human:OneTurnstile.routeAfterforthea1stquestionagentandmessageforthereaissponsorship,backoff:partnership429or+adRetry-Afterproposal (60s → 2×`tipo`,1hwithcap;theresetsplacementsinof24h`GET /api/partners`).Without aNo captcha,innotheaccount,bodynothepayment.requestOneismessagetreatedeveryas10ansecondsagentper network:402oneuntilthatpaid.arrivesThesoonerfirstwaitsagentitsmessageturnisandfree;thenaftergoesthatoutthe—backoffnoiserror.60sThedoublingmessageupreachestotheateam1-hourbycape-mail,announcedwithin`email``Retry-After`.as the reply address.
⟨30 unchanged words⟩ → 2×, 1h cap; resets in 24h). Without a captcha in the body the request is treated as an agent: 402 until paid. The first agent message is free; after that the backoff is 60s doubling up to a 1-hour cap, announced in `Retry-After`.
Creates a guest token pa_… for the tab workspace. Keep the token: it is the identity of the tabs and of the audits tied to them.Opens a tab for a URL in the workspace. Past the free tab allowance it answers 402 with `accepts[]`: pay and repeat.⟨14 unchanged words⟩ script tag, no account, no lead capture. One script tag puts the audit form on your own site, with your name and colour, and no account or key. Send the same query you would send to `/embed` and the answer comes back with `snippet` already assembled. The widget never asks the visitor for an e-mail.
⟨6 unchanged words⟩ `fixes` (the ready fix for each finding). Re-reading costs nothing and does not count against the allowance — the page's HTML is not kept, but the report is.
⟨17 unchanged words⟩ No model — only facts from the page. Each finding becomes a fix in one of three classes: `deterministico` (comes whole from what the page declares: final URL, title, description, OG), `molde` (a tag with a marked placeholder, like `{{TITULO}}`, and the suggested source) or `sem_patch` (a decision or infrastructure, with the instruction). Nothing is invented by a model.
Liveness and the commit deployedbuild.right now — it is how the smoke waits for its own deploy.
Lists the owner's tabs (guest or session). One call draws the whole screen: tabs, the focused tab, its last report, remaining allowance and prices.Re-audits the tab's URL. Consumes the same daily allowance as `POST /api/audit` — past it, 402 with `accepts[]`.⟨16 unchanged words⟩ delta, findings that appeared and that disappeared). Every run has always been kept; this is where you read the series. Each entry carries the score, the counts and a `change` with the point delta and the findings that appeared (`broke`) or disappeared (`fixed`) since the previous run — compared by finding code, never by message. Runs older than the watch feature are matched by URL.
⟨35 unchanged words⟩ cookie); a guest token gets 403 `account_required`. With `monitor: true` the page is re-audited once a day and an e-mail goes out when the score drops or a new error/warning appears — never on an improvement. Watching needs an account (the alert has to reach someone) and each account watches a limited number of pages.
The lab tests of an audit (mobile and desktop): running, finished with scores, metrics and biggest savings, or failed. With wait (up to 25) it answers as soon as a running test finishes. Long-poll: with `wait` the answer comes as soon as a running test finishes, or after `wait` seconds with `status: running`. Repeat until it is not running.
Starts a lab test of an audit's page: Lighthouse run by Google PageSpeed Insights (performance, accessibility, best practices, SEO). Answers 202 at once; the test takes ~25 s to 2+ minutes — then read it with lab_result. Does not change the audit score. Answers **202** at once; the test runs for ~25 s to over 2 minutes and its summary is stored in the audit (`summary.lab.<strategy>`), so it comes back in `GET /api/audits/:id`, in the tab and in the shared report. It does not change the audit score. Calling again while the same strategy is running does not start a second test. Limits: 4 tests …
{"properties":{"guest_token":{"description":"sessionguestsess_…pa_…(— refused: a guestcannothasbenowarned)e-mail to warn","type":"string"},"id":{ ⟨36 unchanged words⟩