analyze_website
Scan a page for AI readiness
Scan one URL for readiness to be cited by AI search engines (ChatGPT, Perplexity, Google AI Overviews) and used by AI agents. Returns scores and the fix checklist: prioritized problems with concrete fixes. Uses one API credit per call, so re-scan only after deploying a change. scope='content' or 'crawlability' runs a narrower, faster scan.
Parametersurlrequiredwaitscope
get_report
Read a page report
Read a stored page report by report ID: the scores and the prioritized fix checklist, with a note on any fixes locked on the account's plan. Use it when you already have a report ID (from analyze_website, check_status or list_reports). It reads saved data and never rescans, so it shows the page as it was when scanned; call analyze_website to see changes. Returns an error if the ID is unknown or belongs to another account. Free: does not use a credit.
Parametersreport_idrequired
get_findings
List findings for a page or site
Findings are the fix list keyed by rule: each carries a stable id that survives re-scans, a policy saying whether an agent may apply the fix unattended ('apply') or should only propose it, and whether a fix can be confirmed by one cheap fetch. Pass exactly one of report_id (the findings of one page) or domain_id (the findings of the latest site analysis), otherwise it returns an error. Use get_report instead if you only need scores. Pass the ids it returns to verify_findings, update_finding and get_artifact. Read-only. Free: does not use a credit.
Parametersdomain_idreport_id
verify_findings
Check whether fixes landed
Re-check findings after deploying a fix. Fetches the live page once per check, with no analysis and no credit, and answers verified, still_failing or unverifiable per finding. Use this instead of re-running analyze_website. Pass exactly one of report_id, domain_id or site_analysis_id, and optionally the finding ids to check. Included with Pro and Agency.
Parametersdomain_idreport_idfinding_idssite_analysis_id
get_artifact
Get a file to commit
Generate a file that fixes a deterministic finding: 'robots_txt' (unblocks AI crawlers while leaving other rules alone), 'llms_txt' (lists the site's real pages) or 'jsonld' (a script block for one page). Anything we did not measure comes back as TODO rather than a guess, so check needsHumanInput before committing. Pass exactly one of report_id or domain_id. Free: does not use a credit.
Parameterskindrequireddomain_idreport_id
update_finding
Record what you did about a finding
Remember a decision so a later session does not redo it. 'fixed_pending' means you changed something and it is not deployed or confirmed yet; 'ignored' silences a finding and requires a reason; 'open' undoes either. You cannot set 'verified': that is earned by calling verify_findings against the live site. Free: does not use a credit.
Parametersreasonstatusrequiredfinding_idrequiredignored_until
start_site_analysis
Scan a whole site
Start a site-wide analysis and let it pick its own pages: the homepage first, then the sections covering the most pages, since a template problem there repeats across the site. Spends one credit per page scanned, so it can cost a lot at once; the plan cap and the credits left both apply and the smaller wins. When connected through OAuth (for example from Claude), a run scans at most 25 pages unless you pass max_pages. Returns immediately. Over an API key it requires the Start site analyses (site:analyze) scope.
Parametersexcludeincludedomain_idrequiredmax_pages
check_status
Check scan progress
Check the progress of one page scan by report ID. Returns its status (queued, processing, complete or failed), a progress percentage when known, and which tool to call next. Use it when analyze_website returned a report ID before the scan finished, or after you started a scan with wait=false. Poll every few seconds, not in a tight loop. For a whole-site run started with start_site_analysis, call get_fix_plan instead. Returns an error if the report ID is unknown. Read-only. Free: does not use a credit.
Parametersreport_idrequired
List the page reports this account has generated, newest first. Each entry has the report ID, URL, overall score, status and creation time. Use it to find a report ID for get_report or get_findings, or to see which pages were already scanned before spending a credit on analyze_website. Filter by URL or status; results come in pages of up to 100, so check the page count at the top of the output and request the next page for more. Read-only. Free: does not use a credit. Returns 'No reports found.' when nothing matches.
Parametersurlpagelimitstatus
get_usage
Check plan usage
Check the plan, API credits used and remaining, and the billing period. Call before a batch of scans.
Takes no parameters.
list_domains
List monitored domains
List the account's monitored domains and their IDs, for use with get_fix_plan. Requires an API key with the domain:read scope.
Takes no parameters.
get_fix_plan
Read a site-wide fix plan
Read the ranked, site-wide fix plan from a domain's latest site analysis: each action says how many pages it affects, how to fix it, and which URLs to verify on. Pass exactly one of domain_id (latest run) or site_analysis_id (a specific run). Free: does not use a credit. Requires the domain:read scope.
Parametersdomain_idsite_analysis_id