← Registry

Security & Testing

squirrelscan.com

Audits websites for compliance and security issues.

1 endpoint25 known toolsFirst detected July 25, 2026Last detected September 20, 2026

ENDPOINT 1

https://mcp.squirrelscan.com/mcp

No auth detected

MCP server metadata

Name
squirrelscan
Version
0.0.1
Capabilities
tools.listChanged
Server instructions

squirrelscan audits websites: crawl + 260+ rules across SEO, performance, security, accessibility, and content, scored into a report. Pricing is flat and predictable: 50 credits per audit plus 2 credits per rendered page (the base is charged when the audit starts, pages as they render). Failed audits are refunded automatically. Start with whoami to see which organization you act for and the credit balance. Running an audit: call run_audit with the URL. The estimate round-trip is optional, not a required first step: if the user has already approved the spend, pass confirm: true on the first call and the audit starts immediately. Without confirm, a run over the auto-run threshold comes back as status "confirmation_required" with the estimate to show the user; a cheap enough run just starts. Read "sufficient" on that response before you retry: sufficient: true means the organization can cover the run, so show the estimate and call run_audit again with confirm: true. sufficient: false means it cannot: the response then carries what the run needs, the balance, the date the monthly credits reset and an upgrade_url for that organization. Relay those instead. Confirming anyway is refused, so do not retry until the balance covers the base or the user upgrades. Size the crawl with max_pages (max_pages: 1 audits just the entry URL, the cheapest run); a value over the plan's page ceiling is clamped and reported in a notice rather than rejected. Audits are asynchronous (minutes): poll get_audit_status with the returned run_id until completed, then call get_report (format "summary" first; "llm" or "markdown" for full detail). The website is registered automatically on first audit. IDs: run_id identifies one audit run (status + report). website_id identifies a registered website (issues live under it). audit_id ties a run to the website's audit history. To go from a website_id back to its reports: list_websites rows carry last_report_run_id for the newest one, and list_audits with website_id pages through every run of that site (limit/offset, total/has_more). What changed since last time: compare_audits diffs two completed audits of a website (latest vs previous by default) into seven kinds (new, resolved, worsened, improved, unchanged, still_open, not_crawled) plus per-category score movement. A page not visited in the newer audit comes back as not_crawled, never as resolved, and a finding the newer audit did not republish is still_open rather than unchanged. Issues: each website keeps a tracker of open issues found by audits. list_issues -> get_issue -> comment_on_issue to record analysis or fixes for the team. One-off checks: pass ephemeral: true to run_audit for any "just check this URL" audit the user is not going to monitor. The audit runs and the report is returned as normal, but the site never joins the website list and never consumes a slot under the plan's website limit. Without it, every throwaway check becomes a tracked site forever. Auditing that same domain again WITHOUT ephemeral promotes it to a tracked site: that is how a user keeps one they decided they want, and the response says adopted: true when it happens. Owned vs prospect: websites carry a kind, either owned (something the user runs and monitors) or prospect (a lead or competitor audited once). Set it on add_website or run_audit, and filter list_websites by it. An unclassified site reads as owned, so kind: "prospect" returns ONLY sites explicitly marked disposable: that is what makes it safe to build a delete list from. Deleting a website (delete_website, two-step confirm) is a soft delete: past audits, reports, and issues are preserved and published report links keep working, but the site leaves listings and frees a slot under the plan's website limit. Re-adding the same domain later registers a fresh website with a new website_id. A deleted site's runs and reports stay reachable through list_audits with its old website_id, so keep that id if you may want its reports later. To clear out many sites at once use delete_websites, which takes up to 50 ids per call and echoes the domain behind every one: show the user those domains, not the ids, before and after. Feedback: call send_feedback any time something surprises you mid-session (a squirrelscan bug, a feature it should have, what worked, what confused you, missing report data, tool ergonomics): it works with any authenticated credentials, including read-only API keys. Accounting: get_report's "summary" includes a per-audit "cost" breakdown (base + rendered pages + services + any refunds). list_credit_transactions is the full org accounting log (grants, debits, refunds) with a run_id on each so an audit's spend can be grouped. Catching up: list_notifications is the feed of what happened while you were away (audits completed, audits failed, new issues) across every website in the org, so you do not have to poll each site. Entities: list_entities is what a site declares about itself in JSON-LD, such as Organization, Person and Product, collapsed across every crawled page, so the same Organization on 60 pages is one entity with 60 occurrences rather than sixty findings. get_entity opens one of them, get_entity_graph exports the graph, get_entity_findings gives the rules' verdicts with the entity keys they affect, and compare_entities diffs two audits. The loop an agent runs: list_entities with problem "no-id" to find entities nothing ties together, fix the site's JSON-LD, run_audit, then compare_entities to see them under gainedId. Read-only tools: whoami, get_audit_status, get_report, compare_audits, list_audits, list_websites, list_issues, get_issue, list_rules, get_rule, get_credit_balance, list_credit_transactions, list_notifications, list_entities, get_entity, get_entity_graph, get_entity_findings, compare_entities. Write tools: run_audit (spends credits), add_website, delete_website and delete_websites (both two-step confirm), comment_on_issue, create_api_key (requires the keys:write scope), send_feedback (no scope required).

Known tools 25

run_audit

Run a cloud audit of a website (crawl + 260+ rule analysis + report).

Inferred read-only
get_audit_status

Poll a running audit by run_id (from run_audit or list_audits).

Inferred read-only
list_audits

List the organization's audit runs: currently active (pending/running) plus recent runs of any status.

Inferred read-only
list_websites

List websites the organization has audited, with their latest run status, health score, and owned/prospect kind.

Inferred read-only
add_website

Register a website with the organization without running an audit (run_audit registers automatically, so this is only needed to set a site up ahead of time).

Inferred read-only
delete_website

Delete a website from the organization (soft delete: past audits, reports, and issues are preserved, and published report links keep working).

Potential side effects
delete_websites

Delete up to 50 websites in one call, for cleaning up a dashboard that has filled with one-off or prospect audits.

Potential side effects
get_report

Fetch the finished report for an audit run (use the run_id from run_audit once get_audit_status shows completed).

Inferred read-only
compare_audits

Compare two completed audits of one website and get what changed.

Inferred read-only
list_issues

List a website's open audit issues (like a bug tracker: each issue is one failing rule with occurrences across pages, numbered per website).

Inferred read-only
get_issue

Fetch one issue by website_id + issue number, including its full description, recommendation, affected pages, occurrence detail from the latest report (which page/image/URL, snippets), and comment thread.

Inferred read-only
comment_on_issue

Post a comment on a website issue — use it to record analysis, a proposed fix, or what you changed, so the team sees it in the dashboard issue thread.

Potential side effects
list_entities

List the entities a site declares in its JSON-LD, collapsed across every crawled page into one graph, so an Organization declared identically on 60 pages is one row rather than 60.

Inferred read-only
get_entity

Get one entity as the map recorded it: the properties the map keeps (name, url, logo, image, sameAs, telephone, email, address, description), the pages that declare it, the properties whose values disagree between those pages, and the references in and out of it.

Potential side effects
get_entity_graph

Get the whole entity graph, or a filtered part of it, in a chosen format: json for the canonical document, jsonld for a validator, mermaid or markdown to read in a conversation, dot or graphml for a graph tool.

Inferred read-only
compare_entities

Compare two audits of a site and get the change set: entities added and removed, entities that gained or lost an @id, occurrence changes, new and resolved conflicts and dangling references, summary deltas, and the pages each audit saw that the other did not.

Inferred read-only
get_entity_findings

Get the schema/entity-* rule verdicts for an audit: what is wrong with the site's entity graph, which entity keys and pages each finding affects, and the fix text for each.

Inferred read-only
list_rules

Browse the catalog of 260+ audit rules that run during an audit, grouped into categories (crawlability, meta tags, performance, security, accessibility, content, and more).

Inferred read-only
get_rule

Fetch one audit rule by id (e.g.

Inferred read-only
whoami

Identify the current credentials: how you are authenticated, which organization you act for, the plan, and the current credit balance.

Inferred read-only
get_credit_balance

Get the organization's credit balance: monthly credits (reset each billing period) and pack credits (purchased, never expire).

Inferred read-only
list_credit_transactions

Audit the organization's credit accounting log: grants (signup/monthly/pack/promo), debits (audit_base 50cr + render 2cr/page + folded 0-cost services), refunds, and adjustments — newest first, paginated.

Inferred read-only
create_api_key

Mint a new squirrelscan API key for this organization (requires credentials carrying the keys:write scope, which OAuth sign-in grants).

Potential side effects
send_feedback

Report your experience using squirrelscan mid-session: a bug, a missing feature, what worked, what confused you, missing report data, or tool ergonomics.

Inferred read-only
list_notifications

Read the organization's notification feed, newest first: what finished, what broke, and what changed since you last looked.

Inferred read-only

CONNECT WITH APPROVAL

Client installation

Review this server and its permissions before adding it. Secret placeholders must be set locally.

Codex

~/.codex/config.toml

[mcp_servers.squirrelscan]
url = "https://mcp.squirrelscan.com/mcp"
enabled = true
Claude Code

.mcp.json

{
  "mcpServers": {
    "squirrelscan": {
      "type": "http",
      "url": "https://mcp.squirrelscan.com/mcp"
    }
  }
}
Claude Desktop

Settings → Connectors → Add custom connector

Name: squirrelscan
Remote MCP URL: https://mcp.squirrelscan.com/mcp

Add this remote URL as a custom connector in Claude Desktop. Availability depends on the user plan and workspace policy.

Cursor

.cursor/mcp.json

{
  "mcpServers": {
    "squirrelscan": {
      "url": "https://mcp.squirrelscan.com/mcp"
    }
  }
}
Visual Studio Code

.vscode/mcp.json

Add to Visual Studio Code
{
  "servers": {
    "squirrelscan": {
      "type": "http",
      "url": "https://mcp.squirrelscan.com/mcp"
    }
  }
}
Generic MCP

Client-specific MCP configuration

{
  "name": "squirrelscan",
  "transport": "streamable-http",
  "url": "https://mcp.squirrelscan.com/mcp"
}
MCP Inspector

Run the official MCP Inspector locally and enter the indexed Streamable HTTP endpoint.

TRUST AND VERIFICATION EVIDENCE

Trust Data Available

BuiltWith Trust API v2 evidence for squirrelscan.com was fetched 2026-08-21T15:45:06.888Z and is being refreshed.

Trust status Trusted

squirrelscan.com is assessed as Trusted: Domain runs a meaningful technology spend, consistent with a real business.

Indexed

Evidence is source-attributed and does not guarantee that a third-party server is safe. Risk labels are conservative metadata heuristics.