このMCPでできること
Audits websites for SEO, performance, security, accessibility, content, and structured-data issues, with reports and issue tracking.
ツール
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['url'], 'properties': {'url': {'type': 'string', 'description': 'Website URL to register, e.g. https://example.com (scheme optional).'}, 'kind': {'enum': ['owned', 'prospect'], 'type': 'string', 'description': "Classify the site: 'owned' for something the user runs and monitors, 'prospect' for a lead or competitor. Filterable in list_websites. Unclassified sites read as 'owned', so only an explicit 'prospect' makes a site show up in a prospect cleanup. Re-calling with a different value reclassifies it."}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['website_id', 'issue_number', 'body'], 'properties': {'body': {'type': 'string', 'maxLength': 10000, 'minLength': 1, 'description': 'Comment body (markdown supported).'}, 'website_id': {'type': 'string', 'description': 'Website id the issue belongs to.'}, 'issue_number': {'type': 'integer', 'minimum': 1, 'description': 'Issue number from list_issues.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['website_id'], 'properties': {'base': {'type': 'string', 'description': 'Older run id. Default: the completed run before head.'}, 'head': {'type': 'string', 'description': "Newer run id. Default: the website's latest completed run."}, 'limit': {'type': 'integer', 'maximum': 500, 'minimum': 1, 'description': 'Max findings returned (default 100). Totals are never capped.'}, 'website_id': {'type': 'string', 'description': 'Website id from list_websites or run_audit.'}, 'include_unchanged': {'type': 'boolean', 'description': 'Include unchanged findings.'}, 'include_still_open': {'type': 'boolean', 'description': 'Include still-open findings (present per the evidence store, not republished).'}, 'include_not_crawled': {'type': 'boolean', 'description': 'Include not-crawled findings.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'to_run_id': {'type': 'string', 'maxLength': 2048, 'description': 'The newer audit. Defaults to the latest audit that stored at least one entity. When both runs are named they are ordered chronologically whichever field named them.'}, 'website_id': {'type': 'string', 'maxLength': 2048, 'description': 'The registered website to read, on the hosted server. Ignored by the local server, which reads the project store. When both this and run_id are given, run_id wins and this is ignored; naming a run of a different website is answered about the run.'}, 'from_run_id': {'type': 'string', 'maxLength': 2048, 'description': 'The older audit. Defaults to the one before the newer audit, for the same site. When both runs are named they are ordered chronologically whichever field named them, so a diff always reads forward in time; read fromRunId and toRunId on the result for the direction actually used.'}, 'occurrence_threshold': {'type': 'integer', 'minimum': 1, 'description': 'Smallest occurrence change worth reporting. Default 1, meaning every change. Raise it on a site that publishes constantly, where a site-wide entity moves by one on every audit and would otherwise fill the change set with noise. Affects occurrenceDeltas only: entities added, removed, or changing their @id are reported whatever this is set to.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['name'], 'properties': {'name': {'type': 'string', 'maxLength': 100, 'minLength': 1, 'description': 'Human-readable label shown in the dashboard, e.g. "ci" or "claude-code".'}, 'scopes': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Scopes to grant (default: audits:write, audits:read, credits:read, org:read). Grantable: audits:write, audits:read, credits:read, org:read, org:write.'}, 'expires_in_days': {'type': 'integer', 'maximum': 365, 'minimum': 1, 'description': 'Expire the key after this many days (default: never expires).'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['website_id'], 'properties': {'confirm': {'type': 'boolean', 'description': 'Approve the deletion. Omit on the first call to see the effect; set true to delete after the user approves.'}, 'website_id': {'type': 'string', 'description': 'Website id from list_websites, run_audit, or add_website.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['website_ids'], 'properties': {'confirm': {'type': 'boolean', 'description': 'Approve the deletions. Omit on the first call to see which domain each id resolves to; set true to delete after the user approves.'}, 'website_ids': {'type': 'array', 'items': {'type': 'string'}, 'maxItems': 50, 'minItems': 1, 'description': 'Website ids from list_websites (1 to 50). Duplicates are collapsed.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['run_id'], 'properties': {'run_id': {'type': 'string', 'description': 'Run id returned by run_audit or listed by list_audits.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['key'], 'properties': {'key': {'type': 'string', 'maxLength': 2048, 'minLength': 1, 'description': 'The entity key, its @id, or its name. Resolved in that order of certainty: an exact @id match, then an exact key match, then the key formed by prefixing the value with "id:", then an exact case-insensitive name, and only then a case-insensitive substring of a name. The first match wins.'}, 'run_id': {'type': 'string', 'description': 'A specific audit run to read. Defaults to the latest audit that stored at least one entity, which is NOT always the latest audit: an audit that stored none is passed over, because the store cannot tell a site that declares nothing from an audit that predates the entity map. When one is passed over, warnings names it. If you are checking whether a change landed, name the run.'}, 'website_id': {'type': 'string', 'description': 'The registered website to read, on the hosted server. Ignored by the local server, which reads the project store. When both this and run_id are given, run_id wins and this is ignored; naming a run of a different website is answered about the run.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'run_id': {'type': 'string', 'maxLength': 2048, 'description': 'A specific audit run to read. Defaults to the latest audit that stored at least one entity, which is NOT always the latest audit: an audit that stored none is passed over, because the store cannot tell a site that declares nothing from an audit that predates the entity map. When one is passed over, warnings names it. If you are checking whether a change landed, name the run.'}, 'website_id': {'type': 'string', 'maxLength': 2048, 'description': 'The registered website to read, on the hosted server. Ignored by the local server, which reads the project store. When both this and run_id are given, run_id wins and this is ignored; naming a run of a different website is answered about the run.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'q': {'type': 'string', 'maxLength': 2048, 'description': 'Only entities whose name or @id contains this text. Case-insensitive substring, not a pattern.'}, 'page': {'anyOf': [{'type': 'string', 'maxLength': 2048}, {'type': 'array', 'items': {'$ref': '#/properties/page/anyOf/0'}}], 'description': 'Only entities declared on a page whose URL CONTAINS one of these strings. Not a prefix test and not a glob, so "/blog" matches https://example.com/blog/post and https://example.com/tag/blog alike. Several values are an OR.'}, 'type': {'anyOf': [{'type': 'string', 'maxLength': 2048}, {'type': 'array', 'items': {'$ref': '#/properties/type/anyOf/0'}}], 'description': 'Only entities carrying one of these @type values. Case-insensitive. Several values are an OR: an entity matching any one of them is kept.'}, 'format': {'enum': ['json', 'jsonld', 'mermaid', 'dot', 'graphml', 'markdown'], 'type': 'string', 'description': 'How to render the graph: json, jsonld, mermaid, dot, graphml, markdown. Defaults to json.'}, 'run_id': {'type': 'string', 'maxLength': 2048, 'description': 'A specific audit run to read. Defaults to the latest audit that stored at least one entity, which is NOT always the latest audit: an audit that stored none is passed over, because the store cannot tell a site that declares nothing from an audit that predates the entity map. When one is passed over, warnings names it. If you are checking whether a change landed, name the run.'}, 'problem': {'anyOf': [{'enum': ['no-id', 'conflict', 'dangling', 'single-page', 'split-identity'], 'type': 'string'}, {'type': 'array', 'items': {'$ref': '#/properties/problem/anyOf/0'}}], 'description': 'Only entities with one of these problems: no-id, conflict, dangling, single-page, split-identity. Several values are an OR.'}, 'website_id': {'type': 'string', 'maxLength': 2048, 'description': 'The registered website to read, on the hosted server. Ignored by the local server, which reads the project store. When both this and run_id are given, run_id wins and this is ignored; naming a run of a different website is answered about the run.'}, 'include_page_local': {'type': 'boolean', 'description': "Include entities that describe one page rather than the site's subject matter, such as a page's own WebPage or BreadcrumbList. False by default because they usually outnumber everything else."}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['website_id', 'issue_number'], 'properties': {'website_id': {'type': 'string', 'description': 'Website id the issue belongs to.'}, 'issue_number': {'type': 'integer', 'minimum': 1, 'description': 'Issue number from list_issues.'}, 'occurrence_limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Max occurrences to include (default 20); see occurrence_count/truncated.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['run_id'], 'properties': {'format': {'enum': ['summary', 'llm', 'markdown'], 'type': 'string', 'description': 'summary (default): JSON scores + top issues. llm: compact text for LLM context. markdown: full report.'}, 'run_id': {'type': 'string', 'description': 'Run id returned by run_audit or listed by list_audits.'}, 'top_issue_limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'summary format only: max top issues to include (default 25).'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['rule_id'], 'properties': {'rule_id': {'type': 'string', 'description': 'Rule id like "crawl/canonical-chain" (category/slug).'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Max recent runs to return (default 20, max 100).'}, 'offset': {'type': 'integer', 'minimum': 0, 'description': 'Pagination offset into the recent runs (default 0). Use with total/has_more.'}, 'website_id': {'type': 'string', 'description': 'Only return runs of this website (id from list_websites, run_audit, or add_website). Works for soft-deleted websites too.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Max transactions to return (default 25, max 100).'}, 'cursor': {'type': 'string', 'description': "Opaque pagination cursor from a previous page's `next_cursor`."}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'q': {'type': 'string', 'maxLength': 2048, 'description': 'Only entities whose name or @id contains this text. Case-insensitive substring, not a pattern.'}, 'page': {'anyOf': [{'type': 'string', 'maxLength': 2048}, {'type': 'array', 'items': {'$ref': '#/properties/page/anyOf/0'}}], 'description': 'Only entities declared on a page whose URL CONTAINS one of these strings. Not a prefix test and not a glob, so "/blog" matches https://example.com/blog/post and https://example.com/tag/blog alike. Several values are an OR.'}, 'type': {'anyOf': [{'type': 'string', 'maxLength': 2048}, {'type': 'array', 'items': {'$ref': '#/properties/type/anyOf/0'}}], 'description': 'Only entities carrying one of these @type values. Case-insensitive. Several values are an OR: an entity matching any one of them is kept.'}, 'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Entities to return. Default 25, maximum 100.'}, 'offset': {'type': 'integer', 'minimum': 0, 'description': 'Entities to skip, for paging through a result larger than limit. Default 0. Ordering is by page count descending, then by key, and is stable across calls on one audit, so paging does not repeat or skip a row.'}, 'run_id': {'type': 'string', 'maxLength': 2048, 'description': 'A specific audit run to read. Defaults to the latest audit that stored at least one entity, which is NOT always the latest audit: an audit that stored none is passed over, because the store cannot tell a site that declares nothing from an audit that predates the entity map. When one is passed over, warnings names it. If you are checking whether a change landed, name the run.'}, 'problem': {'anyOf': [{'enum': ['no-id', 'conflict', 'dangling', 'single-page', 'split-identity'], 'type': 'string'}, {'type': 'array', 'items': {'$ref': '#/properties/problem/anyOf/0'}}], 'description': 'Only entities with one of these problems: no-id, conflict, dangling, single-page, split-identity. Several values are an OR.'}, 'website_id': {'type': 'string', 'maxLength': 2048, 'description': 'The registered website to read, on the hosted server. Ignored by the local server, which reads the project store. When both this and run_id are given, run_id wins and this is ignored; naming a run of a different website is answered about the run.'}, 'include_page_local': {'type': 'boolean', 'description': "Include entities that describe one page rather than the site's subject matter, such as a page's own WebPage or BreadcrumbList. False by default because they usually outnumber everything else."}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['website_id'], 'properties': {'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Page size (default 50).'}, 'offset': {'type': 'integer', 'minimum': 0, 'description': 'Pagination offset (default 0).'}, 'status': {'enum': ['open', 'in_progress', 'resolved', 'dismissed', 'wontfix'], 'type': 'string', 'description': 'Filter by issue status (omit for all statuses).'}, 'category': {'type': 'string', 'description': 'Filter by rule category code (e.g. seo, performance, security).'}, 'severity': {'enum': ['critical', 'high', 'medium', 'low'], 'type': 'string', 'description': 'Filter by severity.'}, 'website_id': {'type': 'string', 'description': 'Website id from list_websites, run_audit, or list_audits.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Max notifications to return (default 20, max 100).'}, 'offset': {'type': 'integer', 'minimum': 0, 'description': 'Rows to skip (default 0).'}, 'category': {'type': 'array', 'items': {'type': 'string', 'maxLength': 64, 'minLength': 1}, 'maxItems': 20, 'minItems': 1, 'description': 'Restrict to these categories, e.g. ["audit_failed"]. Omit for every category.'}, 'unread_only': {'type': 'boolean', 'description': 'Only notifications no one has read in the dashboard yet.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'search': {'type': 'string', 'description': 'Case-insensitive keyword match on rule id, name, and description.'}, 'category': {'type': 'string', 'description': 'Filter to one category code (see the categories list in the response).'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'kind': {'enum': ['owned', 'prospect'], 'type': 'string', 'description': "Filter by classification. Unclassified sites count as 'owned', so 'prospect' never returns a site nobody explicitly marked disposable. Omit for all websites."}, 'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Page size (default 50).'}, 'offset': {'type': 'integer', 'minimum': 0, 'description': 'Pagination offset (default 0).'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['url'], 'properties': {'url': {'type': 'string', 'description': 'Website URL to audit, e.g. https://example.com (scheme optional).'}, 'kind': {'enum': ['owned', 'prospect'], 'type': 'string', 'description': "Classify the site: 'owned' for something the user runs and monitors, 'prospect' for a lead or competitor audited once. Filterable in list_websites so a prospect cleanup can never sweep up a live site. Unclassified sites read as 'owned'. Ignored when ephemeral is true (an ephemeral site never joins the list)."}, 'scope': {'enum': ['discover', 'sitemap'], 'type': 'string', 'description': "Which URLs to audit. 'discover' (the default) follows links from the pages it finds. 'sitemap' audits only the URLs the site's sitemap publishes, which is what you want when the sitemap is the list the user cares about and link discovery would spend the budget elsewhere. Overrides the website's stored setting for this run only."}, 'render': {'type': 'boolean', 'description': 'Render pages in a headless browser (default true). Catches JavaScript-dependent issues; costs extra credits per page.'}, 'confirm': {'type': 'boolean', 'description': 'Approve the credit spend. Set true to start immediately. Omitting it returns an estimate first for anything over the auto-run threshold, and starts the audit anyway for anything at or under it.'}, 'coverage': {'enum': ['fast', 'surface', 'deep', 'full'], 'type': 'string', 'description': 'Crawl coverage profile (default fast, 10 pages). Deeper coverage crawls more pages and costs more credits.'}, 'ephemeral': {'type': 'boolean', 'description': "One-shot check: run the audit and return the report without adding the site to the organization's website list, and without consuming a slot against the plan's website limit. Use for any 'just check this URL' audit the user is not going to monitor. The site is removed automatically once the audit finishes; get_audit_status and get_report keep working on the run_id. Ignored if the domain is already registered, in which case the audit runs against the existing tracked site (nothing is ever deleted) and the response reports ephemeral: false."}, 'max_pages': {'type': 'integer', 'minimum': 1, 'description': "Cap the crawl at this many pages for this run. Overrides the coverage profile's page count, so max_pages: 1 audits just the entry URL for the cheapest possible run. A value above the plan's per-audit page ceiling is clamped to the ceiling and reported back in a notice, not rejected."}, 'max_credits': {'type': 'integer', 'description': 'Spend guard: refuse to start if the upper-bound estimate exceeds this many credits.', 'exclusiveMinimum': 0}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['category', 'message'], 'properties': {'run_id': {'type': 'string', 'maxLength': 128, 'minLength': 1, 'description': "Audit run id this feedback relates to, if any (from run_audit/get_report). Verified against your credentials' runs before being attached."}, 'message': {'type': 'string', 'minLength': 1, 'description': 'Free-text feedback (truncated at 2000 chars).'}, 'category': {'enum': ['bug_report', 'feature_request', 'what_worked', 'confusing', 'missing_data', 'tool_ergonomics', 'other'], 'type': 'string', 'description': "bug_report (a defect in squirrelscan itself — wrong or missing rule result, crash, broken tool), feature_request (something squirrelscan should do but doesn't), what_worked (something worked well), confusing (unclear response/behavior), missing_data (a report or tool response was missing something you needed), tool_ergonomics (awkward tool shape/args/naming), or other."}, 'website_id': {'type': 'string', 'maxLength': 128, 'minLength': 1, 'description': "Website id this feedback relates to, if any (from list_websites). Verified against your org's websites before being attached."}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
最近のツール変更
類似のMCPサーバー
hyperion
Acts as a paid MCP tool marketplace and utility gateway with server discovery, HTTP and JavaScript tools, research, data conversi…
Vee3
Manages Clerk authentication infrastructure, including users, organizations, domains, sessions, tokens, OAuth, SSO, machines, per…
IA-QA — 130+ QA & Dev Tools for AI Agents
Provides deterministic QA, evaluation, testing, code analysis, prompt and RAG checks, model comparison, and web security diagnost…
validoria-mcp
Runs continuous website, API, and webshop tests covering security, SEO, performance, accessibility, browser journeys, and inciden…
HubVibe: Pay-per-Call Tools for AI Agents: Web Search, Email Verify, KYC, Stocks, Crypto, News, Data
Offers paid utilities for web audits, HTTP fetching and extraction, BigQuery analysis, LLM processing, code execution, blockchain…
developer-tools
Provides general-purpose developer utilities for encoding, hashing, encryption, JSON, HTML, CSS, networking, and related data tra…
Qiniso
Provides deterministic formatting, parsing, holiday and tax lookups, address handling, and checksum or structure validation for i…
ContrastAPI
Provides security research and assessment tools covering CVEs, IOCs, dependencies, secrets, injection risks, HTTP headers, domain…