Skip to main content
Glama

Server Details

OAuth website audits: security, SEO, AI visibility, integrations, accessibility and performance.

Ownership verified
Status
Healthy
Uptime
87.3% over 39 days
OAuth
Works in Glama
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4.7/5.0

Scored across 7 tools

Disambiguation4/5

Each audit tool targets a clearly named domain (accessibility, AI visibility, integrations, performance, security, SEO), and descriptions elaborate on distinct scopes. Overlap is minimal but exists: audit_full encompasses the others by design, and audit_seo/audit_ai_visibility both touch AI-crawler policy, which could cause minor confusion.

Naming Consistency5/5

All tools follow the exact `audit_<domain>` pattern with a consistent prefix, making the set highly predictable. The sole deviation is `audit_ai_visibility` using camelCase within the descriptor, but this does not break the overall convention.

Tool Count5/5

Seven tools is a well-scoped size for a site auditing server. Each named audit covers a distinct pillar, and the `audit_full` meta-tool adds value without bloating the surface.

Completeness5/5

The tool surface covers six major audit dimensions plus a comprehensive full-audit option, which fully addresses the stated domain of website auditing. No obvious missing operations are apparent; the built-in polling via the same tools handles long-running jobs.

Available Tools

7 tools
audit_accessibilityAccessibility (WCAG) auditAInspect

Static WCAG 2.2 accessibility audit from the DOM: image alt text, form labels, heading structure, landmarks, color-contrast signals, language attribute, duplicate ids, iframe titles. Returns violations with fixes. Provide target to start an audit, or jobId to poll a running one. Long audits may return status: running with a jobId. Wait retryAfterMs, then call the same tool using the returned pollArguments, including target and jobId, until it returns the final result. Copy pollArguments unchanged; do not add scan options. Clients that support jobId alone may also use it. Polling retrieves the same audit without starting another scan or reserving more quota. Do not present running as completed and do not start a replacement audit while it is running.

ParametersJSON Schema
NameRequiredDescriptionDefault
langNoReport language (default en): en, tr, es, de, fr, pt, it, ja, zh.
jobIdNoResume an existing audit by polling this same tool with the returned pollArguments. Keep target and jobId unchanged. If repeating scan options, supply every original argument unchanged. Never invent a jobId.
targetNoTarget website URL or domain you own / are authorized to audit (e.g. https://example.com).

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description reveals important behavioral traits beyond the annotations: audits can be asynchronous, may return status running with jobId, and polling reuses the same audit without consuming more quota. It explicitly instructs clients not to treat running as completed and not to launch a replacement audit. This is far more transparency than the sparse annotations provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The first sentence front-loads the tool's purpose and audit scope, and the following polling instructions are dense but relevant. Some of the polling guidance partially repeats the schema's jobId description, which prevents a perfect score, but no sentence is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the full async lifecycle: starting, polling, waiting on retryAfterMs, preserving quota, and avoiding duplicate audits. Since an output schema exists, the description does not need to explain return values in detail. For a three-parameter tool with a rich schema, this is complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already covers all parameters with descriptions, including detailed jobId semantics, so the baseline is 3. The description adds value by clarifying the role split: target starts an audit while jobId polls a running one, and pollArguments must be copied unchanged. This role distinction is not fully explicit in the target parameter's schema description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description identifies a specific resource and scope: a 'Static WCAG 2.2 accessibility audit from the DOM' with a concrete list of checkable areas (alt text, form labels, landmarks, duplicate ids, iframe titles). This clearly differentiates it from sibling audit tools like audit_security, audit_performance, and audit_seo. The outcome, 'returns violations with fixes,' is also explicit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives a clear operational procedure: supply a target to start, or a jobId to poll; handle a running status by waiting retryAfterMs and reusing pollArguments unchanged. It also warns against starting a replacement audit while one is running. It does not explicitly contrast with the sibling audit tools, but the accessibility scope makes the intended usage clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

audit_ai_visibilityAI visibility (GEO/AEO) auditAInspect

Assess how visible and citable a site is to AI search and LLMs (ChatGPT/Claude/Perplexity/Google AI): entity clarity, answerability, prompt coverage, source signals, llms.txt/AI-crawler policy. Returns findings with fixes. Provide target to start an audit, or jobId to poll a running one. Long audits may return status: running with a jobId. Wait retryAfterMs, then call the same tool using the returned pollArguments, including target and jobId, until it returns the final result. Copy pollArguments unchanged; do not add scan options. Clients that support jobId alone may also use it. Polling retrieves the same audit without starting another scan or reserving more quota. Do not present running as completed and do not start a replacement audit while it is running.

ParametersJSON Schema
NameRequiredDescriptionDefault
langNoReport language (default en): en, tr, es, de, fr, pt, it, ja, zh.
brandNoOptional expected brand name; otherwise inferred from the website.
jobIdNoResume an existing audit by polling this same tool with the returned pollArguments. Keep target and jobId unchanged. If repeating scan options, supply every original argument unchanged. Never invent a jobId.
targetNoTarget website URL or domain you own / are authorized to audit (e.g. https://example.com).
promptsNoOptional questions to assess against the site content. These are content-readiness checks, not live AI-provider queries.
maxPagesNoMaximum pages per crawl. Defaults to the connected plan maximum, bounded by remaining allowance.
competitorsNoOptional competitor names for comparison-content assessment.
promptLimitNoMaximum content-readiness prompts, capped by account and remaining allowance. Defaults to the account maximum.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only signal non-read-only, open-world, non-destructive behavior. The description adds crucial context: audits may be long, return 'status: running' with a jobId, require polling with pollArguments, and polling does not start another scan or consume more quota. These details go well beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is longer than average, but every sentence carries necessary operational information: purpose, findings, async behavior, polling protocol, quota implications, and client compatibility. It is front-loaded with purpose and avoids filler, though slightly verbose due to the polling instructions.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex async tool with 8 parameters and an output schema, the description covers what an agent needs: how to start, when to poll, how to poll, quota implications, and what not to do. The output schema removes the need to describe return values in detail.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and each parameter is well described, so the baseline is 3. The description adds workflow-level semantics: target starts an audit, jobId polls a running one, pollArguments must be copied unchanged, and prompts are content-readiness checks rather than live AI queries.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Assess') and resource ('how visible and citable a site is to AI search and LLMs'), explicitly naming AI platforms and GEO/AEO concepts. This clearly distinguishes it from sibling audit_* tools focused on SEO, performance, accessibility, etc.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides clear start-vs-poll instructions: 'Provide target to start an audit, or jobId to poll a running one,' plus explicit warnings against replacing a running audit or treating 'running' as completed. It does not explicitly contrast with sibling tools, but the operation modes are fully specified.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

audit_fullFull audit (all pillars, one score)AInspect

Run all six audit pillars with the connected account’s complete security module scope and page/prompt allowances. Optional selections can narrow the scope. Returns detailed evidence and fixes without omitting findings; measurement limits and unavailable engines are explicit. Provide target to start an audit, or jobId to poll a running one. Long audits may return status: running with a jobId. Wait retryAfterMs, then call the same tool using the returned pollArguments, including target and jobId, until it returns the final result. Copy pollArguments unchanged; do not add scan options. Clients that support jobId alone may also use it. Polling retrieves the same audit without starting another scan or reserving more quota. Do not present running as completed and do not start a replacement audit while it is running.

ParametersJSON Schema
NameRequiredDescriptionDefault
langNoReport language (default en): en, tr, es, de, fr, pt, it, ja, zh.
brandNoOptional expected brand name; otherwise inferred from the website.
jobIdNoResume an existing audit by polling this same tool with the returned pollArguments. Keep target and jobId unchanged. If repeating scan options, supply every original argument unchanged. Never invent a jobId.
portsNoOptional port selection: top, common, all, or comma-separated ports/ranges. Account limits apply; default top.
targetNoTarget website URL or domain you own / are authorized to audit (e.g. https://example.com).
modulesNoOptional explicit security module selection. Omit to use the plan scope. Protected checks require current target ownership; unavailable engines are reported as unmeasured.
profileNoOptional security profile included in the account. Omit to run all security modules included in the connected plan.
promptsNoOptional questions to assess against the site content. These are content-readiness checks, not live AI-provider queries.
maxPagesNoMaximum pages per crawl. Defaults to the connected plan maximum, bounded by remaining allowance.
strategyNoPageSpeed device strategy (default mobile); field data is included when available.
competitorsNoOptional competitor names for comparison-content assessment.
promptLimitNoMaximum content-readiness prompts, capped by account and remaining allowance. Defaults to the account maximum.
searchConsoleDaysNoSearch Console reporting window in days (default 28).
includeSearchConsoleNoInclude available Search Console evidence from the account’s existing Google connection, subject to its keyword allowance. Missing access does not stop the website audit.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations (readOnlyHint=false, destructiveHint=false), the description discloses the async running state, retryAfterMs, pollArguments, quota reuse, and instructs not to present running as completed or start a replacement audit. This is exemplary behavioral disclosure with no contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but front-loaded with purpose and every sentence carries operational importance. The polling sequence, quota caveat, and anti-duplication warning are essential behavioral details, not padding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the asynchronous polling lifecycle, 14 optional parameters, and an output schema, the description covers scope limits, authorization, unavailable engines, measurement limits, polling, and quota behavior. Nothing critical needed to invoke this tool correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The tool description adds real workflow value by explaining how target, jobId, and pollArguments work togetherhopping and warning not to add scan options. This exceeds the schema, though there is some overlap with the existing jobId parameter description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with 'Run all six audit pillars,' clearly stating the verb, resource, and scope. This distinguishes audit_full from the sibling single-pillar audit tools (audit_seo, audit_security, etc.) without any ambiguity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear starting conditions ('Provide target to start an audit, or jobId to poll a running one') and detailed polling behavior. It does not explicitly name sibling tools as alternatives, but the 'all six pillars' scope and sibling names make the intended use obvious.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

audit_integrationsAnalytics & tracking auditAInspect

Detect and audit the analytics/tag/marketing-pixel/verification/consent stack from the site HTML + headers: GA4, GTM, Meta Pixel, TikTok/LinkedIn pixels, Search Console/Bing verification, Hotjar/Clarity, consent/CMP, and PII-in-dataLayer leaks. Returns gaps + fixes. Provide target to start an audit, or jobId to poll a running one. Long audits may return status: running with a jobId. Wait retryAfterMs, then call the same tool using the returned pollArguments, including target and jobId, until it returns the final result. Copy pollArguments unchanged; do not add scan options. Clients that support jobId alone may also use it. Polling retrieves the same audit without starting another scan or reserving more quota. Do not present running as completed and do not start a replacement audit while it is running.

ParametersJSON Schema
NameRequiredDescriptionDefault
langNoReport language (default en): en, tr, es, de, fr, pt, it, ja, zh.
jobIdNoResume an existing audit by polling this same tool with the returned pollArguments. Keep target and jobId unchanged. If repeating scan options, supply every original argument unchanged. Never invent a jobId.
targetNoTarget website URL or domain you own / are authorized to audit (e.g. https://example.com).

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses important asynchronous behavior: long audits may return status running with a jobId, polling retrieves the same audit without starting a new scan or reserving more quota, and running should not be presented as completed. This goes well beyond what annotations provide and prevents common polling misuses.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the tool's purpose and then gives dense, practical usage instructions. Although it is longer than average, every sentence conveys a distinct operational warning or requirement, with no filler or redundant restating of schema fields.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers start, poll, resume, quota, authorization, and failure-prevention behaviors. Since an output schema exists, return values do not need to be described here. Nothing essential is missing for correctly invoking and polling this asynchronous audit tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already documents all three parameters at 100% coverage, so the baseline is 3. The description adds meaningful semantics: target must be an owned/authorized URL, target starts an audit while jobId polls, pollArguments must be copied unchanged, and jobId must never be invented. This extra guidance raises it above baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses specific verbs 'Detect and audit' and names a clearly bounded resource: the analytics/tag/marketing-pixel/verification/consent stack. It lists concrete item types like GA4, GTM, Meta Pixel, Hotjar, CMP, and dataLayer PII leaks, and states it returns gaps and fixes. This clearly differentiates it from sibling audit_* tools by subject matter.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives detailed operating guidance: provide target to start, jobId to poll, wait retryAfterMs, copy pollArguments unchanged, and do not start a replacement audit while running. It does not explicitly contrast with sibling audit tools, but the scope is clear enough for an agent to select this tool for analytics/tracking/consent audits.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

audit_performancePerformance & Core Web Vitals auditAInspect

Measure performance via Google PageSpeed Insights (Lighthouse lab + CrUX field data): LCP, INP, CLS, FCP, TTFB, and the top improvement opportunities. Returns findings with fixes. (Uses the operator PAGESPEED_API_KEY when set.) Provide target to start an audit, or jobId to poll a running one. Long audits may return status: running with a jobId. Wait retryAfterMs, then call the same tool using the returned pollArguments, including target and jobId, until it returns the final result. Copy pollArguments unchanged; do not add scan options. Clients that support jobId alone may also use it. Polling retrieves the same audit without starting another scan or reserving more quota. Do not present running as completed and do not start a replacement audit while it is running.

ParametersJSON Schema
NameRequiredDescriptionDefault
langNoReport language (default en): en, tr, es, de, fr, pt, it, ja, zh.
jobIdNoResume an existing audit by polling this same tool with the returned pollArguments. Keep target and jobId unchanged. If repeating scan options, supply every original argument unchanged. Never invent a jobId.
targetNoTarget website URL or domain you own / are authorized to audit (e.g. https://example.com).
strategyNoDevice strategy (default mobile).

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only say readOnlyHint=false and destructiveHint=false, so the description carries the burden of explaining actual behavior. It does this richly: long audits return 'status: running with a jobId', polling retrieves the same audit 'without starting another scan or reserving more quota', and it warns not to present running as completed. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is longer than average but every sentence serves a purpose, especially around the asynchronous polling workflow. It is front-loaded with the core purpose and metrics, then moves logically into usage and warnings. Slight redundancy with the jobId schema description keeps it from a 5.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the full lifecycle: starting, polling, waiting via retryAfterMs, preserving pollArguments, quota behavior, and the operator API key. The input schema fully documents parameters and an output schema exists, so return values do not need elaboration. For a tool with async behavior and quota implications, this is complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds meaningful parameter interplay: target starts an audit, jobId polls, and returned pollArguments must be copied unchanged including target and jobId. This clarifies how the parameters relate beyond their individual schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Measure performance via Google PageSpeed Insights' and enumerates concrete metrics (LCP, INP, CLS, FCP, TTFB) plus return value ('findings with fixes'). This clearly differentiates it from sibling audit tools focused on other domains like accessibility or security.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear, explicit usage context for both starting an audit and polling a running one: 'Provide target to start an audit, or jobId to poll a running one.' It also instructs not to start a replacement audit while running. It doesn't explicitly contrast with sibling audit tools, but the start/poll workflow is thoroughly specified.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

audit_securitySecurity auditAInspect

Audit the website with every security module included in the connected account by default. A default Free audit on an unverified site runs its public security checks and explains the additional checks unlocked by ownership verification. Explicit protected selections require verification. Explicit profile, module and port selections are supported within the account entitlement. Returns all observed findings and identifies unavailable measurements or engines. Provide target to start an audit, or jobId to poll a running one. Long audits may return status: running with a jobId. Wait retryAfterMs, then call the same tool using the returned pollArguments, including target and jobId, until it returns the final result. Copy pollArguments unchanged; do not add scan options. Clients that support jobId alone may also use it. Polling retrieves the same audit without starting another scan or reserving more quota. Do not present running as completed and do not start a replacement audit while it is running.

ParametersJSON Schema
NameRequiredDescriptionDefault
langNoReport language (default en): en, tr, es, de, fr, pt, it, ja, zh.
jobIdNoResume an existing audit by polling this same tool with the returned pollArguments. Keep target and jobId unchanged. If repeating scan options, supply every original argument unchanged. Never invent a jobId.
portsNoOptional port selection: top, common, all, or comma-separated ports/ranges. Account limits apply; default top.
targetNoTarget website URL or domain you own / are authorized to audit (e.g. https://example.com).
modulesNoOptional explicit security module selection. Omit to use the plan scope. Protected checks require current target ownership; unavailable engines are reported as unmeasured.
profileNoOptional security profile included in the account. Omit to run all security modules included in the connected plan.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses important behavioral traits beyond the annotations: audits can be asynchronous and return 'status: running' with a jobId, polling returns the same audit without consuming extra quota, pollArguments must be copied unchanged, and ownership verification gates protected checks. This prevents the agent from misinterpreting a running status as complete or starting duplicate scans.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but every sentence earns its place: it front-loads the core purpose, then covers verification, selection scope, return values, and the crucial polling protocol. There is no filler or redundant restatement of schema fields.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the output schema exists and input schema coverage is complete, the description covers the full operational lifecycle: starting an audit, handling asynchronous results, polling, quota behavior, verification requirements, and reported findings. No critical context for calling this tool correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so parameter details already exist in the schema. The description adds operational meaning beyond the schema by explaining how target and jobId interact in the polling workflow, and by clarifying that profile/module/port selections are subject to account entitlement and that protected selections require verification.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Audit'), resource ('the website'), and scope ('every security module included in the connected account by default'). It clearly distinguishes the security audit from sibling tools like audit_seo or audit_performance, and the title 'Security audit' is expanded with concrete behavior rather than repeated as a tautology.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides detailed usage guidance: start with target, poll with jobId, wait retryAfterMs, copy pollArguments unchanged, and do not start a replacement audit while one is running. It does not explicitly name sibling alternatives or say 'for accessibility use audit_accessibility', but the security-specific scope and the start/poll lifecycle are made clear enough for an agent to select and use the tool correctly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

audit_seoTechnical SEO auditAInspect

Crawl a site and audit technical SEO: crawlability, indexation, titles/meta, headings, canonical, structured data, broken internal links, redirect chains, AI-crawler policy. Returns prioritized findings with fixes. Provide target to start an audit, or jobId to poll a running one. Long audits may return status: running with a jobId. Wait retryAfterMs, then call the same tool using the returned pollArguments, including target and jobId, until it returns the final result. Copy pollArguments unchanged; do not add scan options. Clients that support jobId alone may also use it. Polling retrieves the same audit without starting another scan or reserving more quota. Do not present running as completed and do not start a replacement audit while it is running.

ParametersJSON Schema
NameRequiredDescriptionDefault
langNoReport language (default en): en, tr, es, de, fr, pt, it, ja, zh.
jobIdNoResume an existing audit by polling this same tool with the returned pollArguments. Keep target and jobId unchanged. If repeating scan options, supply every original argument unchanged. Never invent a jobId.
targetNoTarget website URL or domain you own / are authorized to audit (e.g. https://example.com).
maxPagesNoMaximum pages per crawl. Defaults to the connected plan maximum, bounded by remaining allowance.
searchConsoleDaysNoSearch Console reporting window in days (default 28).
includeSearchConsoleNoInclude available Search Console evidence from the account’s existing Google connection, subject to its keyword allowance. Missing access does not stop the website audit.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description thoroughly discloses async behavior: long audits may return status running, callers must wait retryAfterMs, pass pollArguments unchanged, and avoid starting a replacement audit. It also clarifies that polling reuses the same audit and does not consume additional quota, which aligns with the annotations and adds significant value beyond them.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is longer than average, but the length is justified by the async polling contract and quota guidance. It opens with the purpose, then moves to return behavior and invocation rules, so the structure is logical. A few repetitions around jobId and pollArguments could be tightened, keeping it from a 5.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's async behavior, optional parameters, and output schema, the description covers everything needed to call it correctly: how to start, how to poll, what not to do while running, and quota implications. The output schema handles return values, so no further description is required.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds meaningful coupling between parameters: target starts an audit, jobId polls, and pollArguments must be copied unchanged without adding scan options. It also notes that jobId-alone callers are supported, which is extra semantic guidance beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Crawl a site and audit technical SEO' and enumerates concrete checks (crawlability, indexation, titles/meta, canonical, structured data, broken links, redirect chains, AI-crawler policy). This makes the tool's purpose unambiguous and largely distinguishes it from sibling audits like accessibility, performance, or security.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context for when to invoke the tool and how to use it, including starting with a target and polling with a jobId. It does not explicitly name sibling alternatives or state when not to use this tool, so it stops short of a 5, but the scope is clear enough for an agent to select it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 7 tool updates
    • Changedaudit_accessibility1 field changed
      • removedInput schema / anyOf
        Removed value: -[
        -  {
        -    "required": [
        -      "target"
        -    ]
        -  },
        -  {
        -    "required": [
        -      "jobId"
        -    ]
        -  }
        -]
    • Changedaudit_ai_visibility1 field changed
      • removedInput schema / anyOf
        Removed value: -[
        -  {
        -    "required": [
        -      "target"
        -    ]
        -  },
        -  {
        -    "required": [
        -      "jobId"
        -    ]
        -  }
        -]
    • Changedaudit_full1 field changed
      • removedInput schema / anyOf
        Removed value: -[
        -  {
        -    "required": [
        -      "target"
        -    ]
        -  },
        -  {
        -    "required": [
        -      "jobId"
        -    ]
        -  }
        -]
    • Changedaudit_integrations1 field changed
      • removedInput schema / anyOf
        Removed value: -[
        -  {
        -    "required": [
        -      "target"
        -    ]
        -  },
        -  {
        -    "required": [
        -      "jobId"
        -    ]
        -  }
        -]
    • Changedaudit_performance1 field changed
      • removedInput schema / anyOf
        Removed value: -[
        -  {
        -    "required": [
        -      "target"
        -    ]
        -  },
        -  {
        -    "required": [
        -      "jobId"
        -    ]
        -  }
        -]
    • Changedaudit_security1 field changed
      • removedInput schema / anyOf
        Removed value: -[
        -  {
        -    "required": [
        -      "target"
        -    ]
        -  },
        -  {
        -    "required": [
        -      "jobId"
        -    ]
        -  }
        -]
    • Changedaudit_seo1 field changed
      • removedInput schema / anyOf
        Removed value: -[
        -  {
        -    "required": [
        -      "target"
        -    ]
        -  },
        -  {
        -    "required": [
        -      "jobId"
        -    ]
        -  }
        -]
  2. 7 tool updates
    • Changedaudit_accessibility3 fields changed
      • changedInput schema / anyOf
        Previous value: -[
        -  {
        -    "required": [
        -      "target"
        -    ]
        -  },
        -  {
        -    "maxProperties": 1,
        -    "required": [
        -      "jobId"
        -    ]
        -  }
        -]New value: +[
        +  {
        +    "required": [
        +      "target"
        +    ]
        +  },
        +  {
        +    "required": [
        +      "jobId"
        +    ]
        +  }
        +]
      • changedInput schema / properties / jobId / description
        Previous value: -"Resume an existing audit by polling this same tool with its returned jobId. Prefer jobId alone; if repeating other arguments, supply every original argument unchanged. Never invent a jobId."New value: +"Resume an existing audit by polling this same tool with the returned pollArguments. Keep target and jobId unchanged. If repeating scan options, supply every original argument unchanged. Never invent a jobId."
      • changedOutput schema / oneOf
        Previous value: -[
        -  {
        -    "oneOf": [
        -      {
        -        "additionalProperties": true,
        -        "properties": {
        -          "auditDetails": {
        -            "additionalProperties": true,
        -            "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        -            "type": "object"
        -          },
        -          "counts": {
        -            "additionalProperties": false,
        -            "description": "Finding totals grouped by normalized severity.",
        -            "properties": {
        -              "critical": {
        -                "description": "Number of critical findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "high": {
        -                "description": "Number of high-severity findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "info": {
        -                "description": "Number of informational findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "low": {
        -                "description": "Number of low-severity findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "medium": {
        -                "description": "Number of medium-severity findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              }
        -            },
        -            "required": [
        -              "critical",
        -              "high",
        -              "medium",
        -              "low",
        -              "info"
        -            ],
        -            "type": "object"
        -          },
        -          "coverageStatus": {
        -            "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        -            "enum": [
        -              "measured",
        -              "partial",
        -              "unavailable",
        -              "not_applicable"
        -            ],
        -            "type": "string"
        -          },
        -          "executionComplete": {
        -            "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        -            "type": "boolean"
        -          },
        -          "findings": {
        -            "description": "Prioritized findings with evidence, impact, and remediation.",
        -            "items": {
        -              "additionalProperties": false,
        -              "properties": {
        -                "category": {
        -                  "description": "Stable audit category for grouping related findings.",
        -                  "type": "string"
        -                },
        -                "evidence": {
        -                  "description": "Bounded observation that supports the finding.",
        -                  "type": "string"
        -                },
        -                "findingKey": {
        -                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -                  "maxLength": 512,
        -                  "minLength": 1,
        -                  "type": "string"
        -                },
        -                "impact": {
        -                  "description": "Why the finding matters to the audited website.",
        -                  "type": "string"
        -                },
        -                "location": {
        -                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -                  "type": "string"
        -                },
        -                "remediation": {
        -                  "description": "Concrete recommended fix or mitigation.",
        -                  "type": "string"
        -                },
        -                "severity": {
        -                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -                  "type": "string"
        -                },
        -                "title": {
        -                  "description": "Short human-readable finding title.",
        -                  "type": "string"
        -                }
        -              },
        -              "required": [
        -                "findingKey",
        -                "severity",
        -                "title",
        -                "evidence",
        -                "impact",
        -                "remediation",
        -                "category"
        -              ],
        -              "type": "object"
        -            },
        -            "type": "array"
        -          },
        -          "findingsTruncated": {
        -            "description": "True when additional findings exist outside this response.",
        -            "type": "boolean"
        -          },
        -          "grade": {
        -            "description": "Human-readable grade, or null when unavailable.",
        -            "type": [
        -              "string",
        -              "null"
        -            ]
        -          },
        -          "kind": {
        -            "description": "Audit pillar represented by this result.",
        -            "type": "string"
        -          },
        -          "passingChecks": {
        -            "description": "Number of checks that passed or reported protection.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "passingFindings": {
        -            "description": "Positive observations retained with their complete evidence.",
        -            "items": {
        -              "additionalProperties": false,
        -              "properties": {
        -                "category": {
        -                  "description": "Stable audit category for grouping related findings.",
        -                  "type": "string"
        -                },
        -                "evidence": {
        -                  "description": "Bounded observation that supports the finding.",
        -                  "type": "string"
        -                },
        -                "findingKey": {
        -                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -                  "maxLength": 512,
        -                  "minLength": 1,
        -                  "type": "string"
        -                },
        -                "impact": {
        -                  "description": "Why the finding matters to the audited website.",
        -                  "type": "string"
        -                },
        -                "location": {
        -                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -                  "type": "string"
        -                },
        -                "remediation": {
        -                  "description": "Concrete recommended fix or mitigation.",
        -                  "type": "string"
        -                },
        -                "severity": {
        -                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -                  "type": "string"
        -                },
        -                "title": {
        -                  "description": "Short human-readable finding title.",
        -                  "type": "string"
        -                }
        -              },
        -              "required": [
        -                "findingKey",
        -                "severity",
        -                "title",
        -                "evidence",
        -                "impact",
        -                "remediation",
        -                "category"
        -              ],
        -              "type": "object"
        -            },
        -            "type": "array"
        -          },
        -          "returnedFindings": {
        -            "description": "Number of findings included in this response.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "score": {
        -            "description": "Measured score from 0 to 100, or null when unavailable.",
        -            "type": [
        -              "number",
        -              "null"
        -            ]
        -          },
        -          "status": {
        -            "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        -            "enum": [
        -              "completed",
        -              "partial"
        -            ],
        -            "type": "string"
        -          },
        -          "target": {
        -            "description": "Canonical audited target.",
        -            "type": "string"
        -          },
        -          "total": {
        -            "description": "Total findings produced before response truncation.",
        -            "minimum": 0,
        -            "type": "integer"
        -          }
        -        },
        -        "required": [
        -          "target",
        -          "kind",
        -          "score",
        -          "grade",
        -          "counts",
        -          "total",
        -          "returnedFindings",
        -          "findingsTruncated",
        -          "passingChecks",
        -          "findings"
        -        ],
        -        "type": "object"
        -      },
        -      {
        -        "additionalProperties": false,
        -        "properties": {
        -          "executionComplete": {
        -            "const": false,
        -            "description": "False until the entire audit result is ready for delivery.",
        -            "type": "boolean"
        -          },
        -          "jobId": {
        -            "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        -            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -            "type": "string"
        -          },
        -          "nextAction": {
        -            "const": "poll_same_tool",
        -            "description": "Call this same tool again with pollArguments.",
        -            "type": "string"
        -          },
        -          "pollArguments": {
        -            "additionalProperties": false,
        -            "description": "Arguments for retrieving this existing audit without starting another scan.",
        -            "properties": {
        -              "jobId": {
        -                "description": "The same opaque audit job identifier.",
        -                "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -                "type": "string"
        -              }
        -            },
        -            "required": [
        -              "jobId"
        -            ],
        -            "type": "object"
        -          },
        -          "retryAfterMs": {
        -            "description": "Suggested delay in milliseconds before polling this job again.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "status": {
        -            "const": "running",
        -            "description": "The audit is still executing or completing durable delivery.",
        -            "type": "string"
        -          }
        -        },
        -        "required": [
        -          "status",
        -          "jobId",
        -          "executionComplete",
        -          "nextAction",
        -          "pollArguments",
        -          "retryAfterMs"
        -        ],
        -        "type": "object"
        -      },
        -      {
        -        "additionalProperties": false,
        -        "properties": {
        -          "auditExecuted": {
        -            "const": false,
        -            "description": "This request did not execute a new audit.",
        -            "type": "boolean"
        -          },
        -          "reason": {
        -            "description": "The recoverable job request prerequisite.",
        -            "enum": [
        -              "audit_job_busy",
        -              "audit_job_unavailable",
        -              "audit_job_argument_mismatch",
        -              "audit_job_invalid_arguments"
        -            ],
        -            "type": "string"
        -          },
        -          "status": {
        -            "const": "action_required",
        -            "description": "This request did not start a new audit.",
        -            "type": "string"
        -          },
        -          "usageConsumed": {
        -            "const": false,
        -            "description": "This request did not consume additional audit allowance.",
        -            "type": "boolean"
        -          }
        -        },
        -        "required": [
        -          "status",
        -          "reason",
        -          "auditExecuted",
        -          "usageConsumed"
        -        ],
        -        "type": "object"
        -      }
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "auditExecuted": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "reason": {
        -        "enum": [
        -          "entitlement_required",
        -          "target_verification_required",
        -          "target_reverification_required",
        -          "verification_scope_required",
        -          "usage_limit_reached",
        -          "authorization_consent_required"
        -        ],
        -        "type": "string"
        -      },
        -      "status": {
        -        "const": "action_required",
        -        "type": "string"
        -      },
        -      "usageConsumed": {
        -        "const": false,
        -        "type": "boolean"
        -      }
        -    },
        -    "required": [
        -      "status",
        -      "reason",
        -      "auditExecuted",
        -      "usageConsumed"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "oneOf": [
        +      {
        +        "additionalProperties": true,
        +        "properties": {
        +          "auditDetails": {
        +            "additionalProperties": true,
        +            "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        +            "type": "object"
        +          },
        +          "counts": {
        +            "additionalProperties": false,
        +            "description": "Finding totals grouped by normalized severity.",
        +            "properties": {
        +              "critical": {
        +                "description": "Number of critical findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "high": {
        +                "description": "Number of high-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "info": {
        +                "description": "Number of informational findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "low": {
        +                "description": "Number of low-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "medium": {
        +                "description": "Number of medium-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              }
        +            },
        +            "required": [
        +              "critical",
        +              "high",
        +              "medium",
        +              "low",
        +              "info"
        +            ],
        +            "type": "object"
        +          },
        +          "coverageStatus": {
        +            "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +            "enum": [
        +              "measured",
        +              "partial",
        +              "unavailable",
        +              "not_applicable"
        +            ],
        +            "type": "string"
        +          },
        +          "executionComplete": {
        +            "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +            "type": "boolean"
        +          },
        +          "findings": {
        +            "description": "Prioritized findings with evidence, impact, and remediation.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "findingsTruncated": {
        +            "description": "True when additional findings exist outside this response.",
        +            "type": "boolean"
        +          },
        +          "grade": {
        +            "description": "Human-readable grade, or null when unavailable.",
        +            "type": [
        +              "string",
        +              "null"
        +            ]
        +          },
        +          "kind": {
        +            "description": "Audit pillar represented by this result.",
        +            "type": "string"
        +          },
        +          "passingChecks": {
        +            "description": "Number of checks that passed or reported protection.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "passingFindings": {
        +            "description": "Positive observations retained with their complete evidence.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "returnedFindings": {
        +            "description": "Number of findings included in this response.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "score": {
        +            "description": "Measured score from 0 to 100, or null when unavailable.",
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          },
        +          "status": {
        +            "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +            "enum": [
        +              "completed",
        +              "partial"
        +            ],
        +            "type": "string"
        +          },
        +          "target": {
        +            "description": "Canonical audited target.",
        +            "type": "string"
        +          },
        +          "total": {
        +            "description": "Total findings produced before response truncation.",
        +            "minimum": 0,
        +            "type": "integer"
        +          }
        +        },
        +        "required": [
        +          "target",
        +          "kind",
        +          "score",
        +          "grade",
        +          "counts",
        +          "total",
        +          "returnedFindings",
        +          "findingsTruncated",
        +          "passingChecks",
        +          "findings"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "executionComplete": {
        +            "const": false,
        +            "description": "False until the entire audit result is ready for delivery.",
        +            "type": "boolean"
        +          },
        +          "jobId": {
        +            "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        +            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +            "type": "string"
        +          },
        +          "nextAction": {
        +            "const": "poll_same_tool",
        +            "description": "Call this same tool again with pollArguments.",
        +            "type": "string"
        +          },
        +          "pollArguments": {
        +            "additionalProperties": false,
        +            "description": "Copy these arguments unchanged to retrieve this existing audit without starting another scan. The public target supports clients that require a target on every call.",
        +            "properties": {
        +              "jobId": {
        +                "description": "The same opaque audit job identifier.",
        +                "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +                "type": "string"
        +              },
        +              "target": {
        +                "description": "Public polling target for this job, without URL credentials, query or fragment. It does not change the original scan target.",
        +                "maxLength": 2048,
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "jobId"
        +            ],
        +            "type": "object"
        +          },
        +          "retryAfterMs": {
        +            "description": "Suggested delay in milliseconds before polling this job again.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "status": {
        +            "const": "running",
        +            "description": "The audit is still executing or completing durable delivery.",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "jobId",
        +          "executionComplete",
        +          "nextAction",
        +          "pollArguments",
        +          "retryAfterMs"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "auditExecuted": {
        +            "const": false,
        +            "description": "This request did not execute a new audit.",
        +            "type": "boolean"
        +          },
        +          "reason": {
        +            "description": "The recoverable job request prerequisite.",
        +            "enum": [
        +              "audit_job_busy",
        +              "audit_job_unavailable",
        +              "audit_job_argument_mismatch",
        +              "audit_job_invalid_arguments"
        +            ],
        +            "type": "string"
        +          },
        +          "status": {
        +            "const": "action_required",
        +            "description": "This request did not start a new audit.",
        +            "type": "string"
        +          },
        +          "usageConsumed": {
        +            "const": false,
        +            "description": "This request did not consume additional audit allowance.",
        +            "type": "boolean"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "reason",
        +          "auditExecuted",
        +          "usageConsumed"
        +        ],
        +        "type": "object"
        +      }
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "auditExecuted": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "reason": {
        +        "enum": [
        +          "entitlement_required",
        +          "target_verification_required",
        +          "target_reverification_required",
        +          "verification_scope_required",
        +          "usage_limit_reached",
        +          "authorization_consent_required"
        +        ],
        +        "type": "string"
        +      },
        +      "status": {
        +        "const": "action_required",
        +        "type": "string"
        +      },
        +      "usageConsumed": {
        +        "const": false,
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "reason",
        +      "auditExecuted",
        +      "usageConsumed"
        +    ],
        +    "type": "object"
        +  }
        +]
    • Changedaudit_ai_visibility3 fields changed
      • changedInput schema / anyOf
        Previous value: -[
        -  {
        -    "required": [
        -      "target"
        -    ]
        -  },
        -  {
        -    "maxProperties": 1,
        -    "required": [
        -      "jobId"
        -    ]
        -  }
        -]New value: +[
        +  {
        +    "required": [
        +      "target"
        +    ]
        +  },
        +  {
        +    "required": [
        +      "jobId"
        +    ]
        +  }
        +]
      • changedInput schema / properties / jobId / description
        Previous value: -"Resume an existing audit by polling this same tool with its returned jobId. Prefer jobId alone; if repeating other arguments, supply every original argument unchanged. Never invent a jobId."New value: +"Resume an existing audit by polling this same tool with the returned pollArguments. Keep target and jobId unchanged. If repeating scan options, supply every original argument unchanged. Never invent a jobId."
      • changedOutput schema / oneOf
        Previous value: -[
        -  {
        -    "oneOf": [
        -      {
        -        "additionalProperties": true,
        -        "properties": {
        -          "auditDetails": {
        -            "additionalProperties": true,
        -            "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        -            "type": "object"
        -          },
        -          "counts": {
        -            "additionalProperties": false,
        -            "description": "Finding totals grouped by normalized severity.",
        -            "properties": {
        -              "critical": {
        -                "description": "Number of critical findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "high": {
        -                "description": "Number of high-severity findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "info": {
        -                "description": "Number of informational findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "low": {
        -                "description": "Number of low-severity findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "medium": {
        -                "description": "Number of medium-severity findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              }
        -            },
        -            "required": [
        -              "critical",
        -              "high",
        -              "medium",
        -              "low",
        -              "info"
        -            ],
        -            "type": "object"
        -          },
        -          "coverageStatus": {
        -            "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        -            "enum": [
        -              "measured",
        -              "partial",
        -              "unavailable",
        -              "not_applicable"
        -            ],
        -            "type": "string"
        -          },
        -          "executionComplete": {
        -            "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        -            "type": "boolean"
        -          },
        -          "findings": {
        -            "description": "Prioritized findings with evidence, impact, and remediation.",
        -            "items": {
        -              "additionalProperties": false,
        -              "properties": {
        -                "category": {
        -                  "description": "Stable audit category for grouping related findings.",
        -                  "type": "string"
        -                },
        -                "evidence": {
        -                  "description": "Bounded observation that supports the finding.",
        -                  "type": "string"
        -                },
        -                "findingKey": {
        -                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -                  "maxLength": 512,
        -                  "minLength": 1,
        -                  "type": "string"
        -                },
        -                "impact": {
        -                  "description": "Why the finding matters to the audited website.",
        -                  "type": "string"
        -                },
        -                "location": {
        -                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -                  "type": "string"
        -                },
        -                "remediation": {
        -                  "description": "Concrete recommended fix or mitigation.",
        -                  "type": "string"
        -                },
        -                "severity": {
        -                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -                  "type": "string"
        -                },
        -                "title": {
        -                  "description": "Short human-readable finding title.",
        -                  "type": "string"
        -                }
        -              },
        -              "required": [
        -                "findingKey",
        -                "severity",
        -                "title",
        -                "evidence",
        -                "impact",
        -                "remediation",
        -                "category"
        -              ],
        -              "type": "object"
        -            },
        -            "type": "array"
        -          },
        -          "findingsTruncated": {
        -            "description": "True when additional findings exist outside this response.",
        -            "type": "boolean"
        -          },
        -          "grade": {
        -            "description": "Human-readable grade, or null when unavailable.",
        -            "type": [
        -              "string",
        -              "null"
        -            ]
        -          },
        -          "kind": {
        -            "description": "Audit pillar represented by this result.",
        -            "type": "string"
        -          },
        -          "passingChecks": {
        -            "description": "Number of checks that passed or reported protection.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "passingFindings": {
        -            "description": "Positive observations retained with their complete evidence.",
        -            "items": {
        -              "additionalProperties": false,
        -              "properties": {
        -                "category": {
        -                  "description": "Stable audit category for grouping related findings.",
        -                  "type": "string"
        -                },
        -                "evidence": {
        -                  "description": "Bounded observation that supports the finding.",
        -                  "type": "string"
        -                },
        -                "findingKey": {
        -                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -                  "maxLength": 512,
        -                  "minLength": 1,
        -                  "type": "string"
        -                },
        -                "impact": {
        -                  "description": "Why the finding matters to the audited website.",
        -                  "type": "string"
        -                },
        -                "location": {
        -                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -                  "type": "string"
        -                },
        -                "remediation": {
        -                  "description": "Concrete recommended fix or mitigation.",
        -                  "type": "string"
        -                },
        -                "severity": {
        -                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -                  "type": "string"
        -                },
        -                "title": {
        -                  "description": "Short human-readable finding title.",
        -                  "type": "string"
        -                }
        -              },
        -              "required": [
        -                "findingKey",
        -                "severity",
        -                "title",
        -                "evidence",
        -                "impact",
        -                "remediation",
        -                "category"
        -              ],
        -              "type": "object"
        -            },
        -            "type": "array"
        -          },
        -          "returnedFindings": {
        -            "description": "Number of findings included in this response.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "score": {
        -            "description": "Measured score from 0 to 100, or null when unavailable.",
        -            "type": [
        -              "number",
        -              "null"
        -            ]
        -          },
        -          "status": {
        -            "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        -            "enum": [
        -              "completed",
        -              "partial"
        -            ],
        -            "type": "string"
        -          },
        -          "target": {
        -            "description": "Canonical audited target.",
        -            "type": "string"
        -          },
        -          "total": {
        -            "description": "Total findings produced before response truncation.",
        -            "minimum": 0,
        -            "type": "integer"
        -          }
        -        },
        -        "required": [
        -          "target",
        -          "kind",
        -          "score",
        -          "grade",
        -          "counts",
        -          "total",
        -          "returnedFindings",
        -          "findingsTruncated",
        -          "passingChecks",
        -          "findings"
        -        ],
        -        "type": "object"
        -      },
        -      {
        -        "additionalProperties": false,
        -        "properties": {
        -          "executionComplete": {
        -            "const": false,
        -            "description": "False until the entire audit result is ready for delivery.",
        -            "type": "boolean"
        -          },
        -          "jobId": {
        -            "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        -            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -            "type": "string"
        -          },
        -          "nextAction": {
        -            "const": "poll_same_tool",
        -            "description": "Call this same tool again with pollArguments.",
        -            "type": "string"
        -          },
        -          "pollArguments": {
        -            "additionalProperties": false,
        -            "description": "Arguments for retrieving this existing audit without starting another scan.",
        -            "properties": {
        -              "jobId": {
        -                "description": "The same opaque audit job identifier.",
        -                "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -                "type": "string"
        -              }
        -            },
        -            "required": [
        -              "jobId"
        -            ],
        -            "type": "object"
        -          },
        -          "retryAfterMs": {
        -            "description": "Suggested delay in milliseconds before polling this job again.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "status": {
        -            "const": "running",
        -            "description": "The audit is still executing or completing durable delivery.",
        -            "type": "string"
        -          }
        -        },
        -        "required": [
        -          "status",
        -          "jobId",
        -          "executionComplete",
        -          "nextAction",
        -          "pollArguments",
        -          "retryAfterMs"
        -        ],
        -        "type": "object"
        -      },
        -      {
        -        "additionalProperties": false,
        -        "properties": {
        -          "auditExecuted": {
        -            "const": false,
        -            "description": "This request did not execute a new audit.",
        -            "type": "boolean"
        -          },
        -          "reason": {
        -            "description": "The recoverable job request prerequisite.",
        -            "enum": [
        -              "audit_job_busy",
        -              "audit_job_unavailable",
        -              "audit_job_argument_mismatch",
        -              "audit_job_invalid_arguments"
        -            ],
        -            "type": "string"
        -          },
        -          "status": {
        -            "const": "action_required",
        -            "description": "This request did not start a new audit.",
        -            "type": "string"
        -          },
        -          "usageConsumed": {
        -            "const": false,
        -            "description": "This request did not consume additional audit allowance.",
        -            "type": "boolean"
        -          }
        -        },
        -        "required": [
        -          "status",
        -          "reason",
        -          "auditExecuted",
        -          "usageConsumed"
        -        ],
        -        "type": "object"
        -      }
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "auditExecuted": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "reason": {
        -        "enum": [
        -          "entitlement_required",
        -          "target_verification_required",
        -          "target_reverification_required",
        -          "verification_scope_required",
        -          "usage_limit_reached",
        -          "authorization_consent_required"
        -        ],
        -        "type": "string"
        -      },
        -      "status": {
        -        "const": "action_required",
        -        "type": "string"
        -      },
        -      "usageConsumed": {
        -        "const": false,
        -        "type": "boolean"
        -      }
        -    },
        -    "required": [
        -      "status",
        -      "reason",
        -      "auditExecuted",
        -      "usageConsumed"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "oneOf": [
        +      {
        +        "additionalProperties": true,
        +        "properties": {
        +          "auditDetails": {
        +            "additionalProperties": true,
        +            "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        +            "type": "object"
        +          },
        +          "counts": {
        +            "additionalProperties": false,
        +            "description": "Finding totals grouped by normalized severity.",
        +            "properties": {
        +              "critical": {
        +                "description": "Number of critical findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "high": {
        +                "description": "Number of high-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "info": {
        +                "description": "Number of informational findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "low": {
        +                "description": "Number of low-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "medium": {
        +                "description": "Number of medium-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              }
        +            },
        +            "required": [
        +              "critical",
        +              "high",
        +              "medium",
        +              "low",
        +              "info"
        +            ],
        +            "type": "object"
        +          },
        +          "coverageStatus": {
        +            "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +            "enum": [
        +              "measured",
        +              "partial",
        +              "unavailable",
        +              "not_applicable"
        +            ],
        +            "type": "string"
        +          },
        +          "executionComplete": {
        +            "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +            "type": "boolean"
        +          },
        +          "findings": {
        +            "description": "Prioritized findings with evidence, impact, and remediation.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "findingsTruncated": {
        +            "description": "True when additional findings exist outside this response.",
        +            "type": "boolean"
        +          },
        +          "grade": {
        +            "description": "Human-readable grade, or null when unavailable.",
        +            "type": [
        +              "string",
        +              "null"
        +            ]
        +          },
        +          "kind": {
        +            "description": "Audit pillar represented by this result.",
        +            "type": "string"
        +          },
        +          "passingChecks": {
        +            "description": "Number of checks that passed or reported protection.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "passingFindings": {
        +            "description": "Positive observations retained with their complete evidence.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "returnedFindings": {
        +            "description": "Number of findings included in this response.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "score": {
        +            "description": "Measured score from 0 to 100, or null when unavailable.",
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          },
        +          "status": {
        +            "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +            "enum": [
        +              "completed",
        +              "partial"
        +            ],
        +            "type": "string"
        +          },
        +          "target": {
        +            "description": "Canonical audited target.",
        +            "type": "string"
        +          },
        +          "total": {
        +            "description": "Total findings produced before response truncation.",
        +            "minimum": 0,
        +            "type": "integer"
        +          }
        +        },
        +        "required": [
        +          "target",
        +          "kind",
        +          "score",
        +          "grade",
        +          "counts",
        +          "total",
        +          "returnedFindings",
        +          "findingsTruncated",
        +          "passingChecks",
        +          "findings"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "executionComplete": {
        +            "const": false,
        +            "description": "False until the entire audit result is ready for delivery.",
        +            "type": "boolean"
        +          },
        +          "jobId": {
        +            "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        +            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +            "type": "string"
        +          },
        +          "nextAction": {
        +            "const": "poll_same_tool",
        +            "description": "Call this same tool again with pollArguments.",
        +            "type": "string"
        +          },
        +          "pollArguments": {
        +            "additionalProperties": false,
        +            "description": "Copy these arguments unchanged to retrieve this existing audit without starting another scan. The public target supports clients that require a target on every call.",
        +            "properties": {
        +              "jobId": {
        +                "description": "The same opaque audit job identifier.",
        +                "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +                "type": "string"
        +              },
        +              "target": {
        +                "description": "Public polling target for this job, without URL credentials, query or fragment. It does not change the original scan target.",
        +                "maxLength": 2048,
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "jobId"
        +            ],
        +            "type": "object"
        +          },
        +          "retryAfterMs": {
        +            "description": "Suggested delay in milliseconds before polling this job again.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "status": {
        +            "const": "running",
        +            "description": "The audit is still executing or completing durable delivery.",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "jobId",
        +          "executionComplete",
        +          "nextAction",
        +          "pollArguments",
        +          "retryAfterMs"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "auditExecuted": {
        +            "const": false,
        +            "description": "This request did not execute a new audit.",
        +            "type": "boolean"
        +          },
        +          "reason": {
        +            "description": "The recoverable job request prerequisite.",
        +            "enum": [
        +              "audit_job_busy",
        +              "audit_job_unavailable",
        +              "audit_job_argument_mismatch",
        +              "audit_job_invalid_arguments"
        +            ],
        +            "type": "string"
        +          },
        +          "status": {
        +            "const": "action_required",
        +            "description": "This request did not start a new audit.",
        +            "type": "string"
        +          },
        +          "usageConsumed": {
        +            "const": false,
        +            "description": "This request did not consume additional audit allowance.",
        +            "type": "boolean"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "reason",
        +          "auditExecuted",
        +          "usageConsumed"
        +        ],
        +        "type": "object"
        +      }
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "auditExecuted": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "reason": {
        +        "enum": [
        +          "entitlement_required",
        +          "target_verification_required",
        +          "target_reverification_required",
        +          "verification_scope_required",
        +          "usage_limit_reached",
        +          "authorization_consent_required"
        +        ],
        +        "type": "string"
        +      },
        +      "status": {
        +        "const": "action_required",
        +        "type": "string"
        +      },
        +      "usageConsumed": {
        +        "const": false,
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "reason",
        +      "auditExecuted",
        +      "usageConsumed"
        +    ],
        +    "type": "object"
        +  }
        +]
    • Changedaudit_full3 fields changed
      • changedInput schema / anyOf
        Previous value: -[
        -  {
        -    "required": [
        -      "target"
        -    ]
        -  },
        -  {
        -    "maxProperties": 1,
        -    "required": [
        -      "jobId"
        -    ]
        -  }
        -]New value: +[
        +  {
        +    "required": [
        +      "target"
        +    ]
        +  },
        +  {
        +    "required": [
        +      "jobId"
        +    ]
        +  }
        +]
      • changedInput schema / properties / jobId / description
        Previous value: -"Resume an existing audit by polling this same tool with its returned jobId. Prefer jobId alone; if repeating other arguments, supply every original argument unchanged. Never invent a jobId."New value: +"Resume an existing audit by polling this same tool with the returned pollArguments. Keep target and jobId unchanged. If repeating scan options, supply every original argument unchanged. Never invent a jobId."
      • changedOutput schema / oneOf
        Previous value: -[
        -  {
        -    "oneOf": [
        -      {
        -        "additionalProperties": false,
        -        "properties": {
        -          "auditDetails": {
        -            "additionalProperties": true,
        -            "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        -            "type": "object"
        -          },
        -          "blended": {
        -            "description": "Weighted score across measured pillars, or null when no pillar could be measured.",
        -            "type": [
        -              "number",
        -              "null"
        -            ]
        -          },
        -          "complete": {
        -            "description": "Compatibility field: every requested pillar runner returned. Consult coverageStatus and auditDetails for unmeasured modules and metrics.",
        -            "type": "boolean"
        -          },
        -          "counts": {
        -            "additionalProperties": false,
        -            "description": "Finding totals grouped by normalized severity.",
        -            "properties": {
        -              "critical": {
        -                "description": "Number of critical findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "high": {
        -                "description": "Number of high-severity findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "info": {
        -                "description": "Number of informational findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "low": {
        -                "description": "Number of low-severity findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "medium": {
        -                "description": "Number of medium-severity findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              }
        -            },
        -            "required": [
        -              "critical",
        -              "high",
        -              "medium",
        -              "low",
        -              "info"
        -            ],
        -            "type": "object"
        -          },
        -          "coverageStatus": {
        -            "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        -            "enum": [
        -              "measured",
        -              "partial",
        -              "unavailable",
        -              "not_applicable"
        -            ],
        -            "type": "string"
        -          },
        -          "executionComplete": {
        -            "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        -            "type": "boolean"
        -          },
        -          "failedPillars": {
        -            "description": "Pillars that could not be measured and their sanitized errors.",
        -            "items": {
        -              "additionalProperties": false,
        -              "properties": {
        -                "error": {
        -                  "description": "Sanitized failure reason.",
        -                  "type": "string"
        -                },
        -                "pillar": {
        -                  "description": "Audit pillar that failed.",
        -                  "type": "string"
        -                }
        -              },
        -              "required": [
        -                "pillar",
        -                "error"
        -              ],
        -              "type": "object"
        -            },
        -            "type": "array"
        -          },
        -          "findings": {
        -            "description": "Prioritized findings across every completed audit pillar.",
        -            "items": {
        -              "additionalProperties": false,
        -              "properties": {
        -                "category": {
        -                  "description": "Stable audit category for grouping related findings.",
        -                  "type": "string"
        -                },
        -                "evidence": {
        -                  "description": "Bounded observation that supports the finding.",
        -                  "type": "string"
        -                },
        -                "findingKey": {
        -                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -                  "maxLength": 512,
        -                  "minLength": 1,
        -                  "type": "string"
        -                },
        -                "impact": {
        -                  "description": "Why the finding matters to the audited website.",
        -                  "type": "string"
        -                },
        -                "location": {
        -                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -                  "type": "string"
        -                },
        -                "pillar": {
        -                  "description": "Audit pillar that produced the finding.",
        -                  "type": "string"
        -                },
        -                "remediation": {
        -                  "description": "Concrete recommended fix or mitigation.",
        -                  "type": "string"
        -                },
        -                "severity": {
        -                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -                  "type": "string"
        -                },
        -                "title": {
        -                  "description": "Short human-readable finding title.",
        -                  "type": "string"
        -                }
        -              },
        -              "required": [
        -                "pillar",
        -                "findingKey",
        -                "severity",
        -                "title",
        -                "evidence",
        -                "impact",
        -                "remediation",
        -                "category"
        -              ],
        -              "type": "object"
        -            },
        -            "type": "array"
        -          },
        -          "findingsTruncated": {
        -            "description": "True when additional findings exist outside this response.",
        -            "type": "boolean"
        -          },
        -          "passingFindings": {
        -            "description": "Positive observations retained with their complete evidence.",
        -            "items": {
        -              "additionalProperties": false,
        -              "properties": {
        -                "category": {
        -                  "description": "Stable audit category for grouping related findings.",
        -                  "type": "string"
        -                },
        -                "evidence": {
        -                  "description": "Bounded observation that supports the finding.",
        -                  "type": "string"
        -                },
        -                "findingKey": {
        -                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -                  "maxLength": 512,
        -                  "minLength": 1,
        -                  "type": "string"
        -                },
        -                "impact": {
        -                  "description": "Why the finding matters to the audited website.",
        -                  "type": "string"
        -                },
        -                "location": {
        -                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -                  "type": "string"
        -                },
        -                "pillar": {
        -                  "description": "Audit pillar that produced the finding.",
        -                  "type": "string"
        -                },
        -                "remediation": {
        -                  "description": "Concrete recommended fix or mitigation.",
        -                  "type": "string"
        -                },
        -                "severity": {
        -                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -                  "type": "string"
        -                },
        -                "title": {
        -                  "description": "Short human-readable finding title.",
        -                  "type": "string"
        -                }
        -              },
        -              "required": [
        -                "pillar",
        -                "findingKey",
        -                "severity",
        -                "title",
        -                "evidence",
        -                "impact",
        -                "remediation",
        -                "category"
        -              ],
        -              "type": "object"
        -            },
        -            "type": "array"
        -          },
        -          "pillars": {
        -            "additionalProperties": {
        -              "additionalProperties": false,
        -              "properties": {
        -                "findings": {
        -                  "description": "Number of findings in this pillar.",
        -                  "minimum": 0,
        -                  "type": "integer"
        -                },
        -                "score": {
        -                  "description": "Pillar score, or null when unavailable.",
        -                  "type": [
        -                    "number",
        -                    "null"
        -                  ]
        -                }
        -              },
        -              "required": [
        -                "score",
        -                "findings"
        -              ],
        -              "type": "object"
        -            },
        -            "description": "Per-pillar score and finding-count summary.",
        -            "type": "object"
        -          },
        -          "returnedFindings": {
        -            "description": "Number of cross-pillar findings included.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "status": {
        -            "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        -            "enum": [
        -              "completed",
        -              "partial"
        -            ],
        -            "type": "string"
        -          },
        -          "target": {
        -            "description": "Canonical audited target.",
        -            "type": "string"
        -          },
        -          "total": {
        -            "description": "Total cross-pillar findings before response truncation.",
        -            "minimum": 0,
        -            "type": "integer"
        -          }
        -        },
        -        "required": [
        -          "target",
        -          "blended",
        -          "pillars",
        -          "counts",
        -          "total",
        -          "returnedFindings",
        -          "findingsTruncated",
        -          "findings",
        -          "complete",
        -          "failedPillars"
        -        ],
        -        "type": "object"
        -      },
        -      {
        -        "additionalProperties": false,
        -        "properties": {
        -          "executionComplete": {
        -            "const": false,
        -            "description": "False until the entire audit result is ready for delivery.",
        -            "type": "boolean"
        -          },
        -          "jobId": {
        -            "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        -            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -            "type": "string"
        -          },
        -          "nextAction": {
        -            "const": "poll_same_tool",
        -            "description": "Call this same tool again with pollArguments.",
        -            "type": "string"
        -          },
        -          "pollArguments": {
        -            "additionalProperties": false,
        -            "description": "Arguments for retrieving this existing audit without starting another scan.",
        -            "properties": {
        -              "jobId": {
        -                "description": "The same opaque audit job identifier.",
        -                "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -                "type": "string"
        -              }
        -            },
        -            "required": [
        -              "jobId"
        -            ],
        -            "type": "object"
        -          },
        -          "retryAfterMs": {
        -            "description": "Suggested delay in milliseconds before polling this job again.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "status": {
        -            "const": "running",
        -            "description": "The audit is still executing or completing durable delivery.",
        -            "type": "string"
        -          }
        -        },
        -        "required": [
        -          "status",
        -          "jobId",
        -          "executionComplete",
        -          "nextAction",
        -          "pollArguments",
        -          "retryAfterMs"
        -        ],
        -        "type": "object"
        -      },
        -      {
        -        "additionalProperties": false,
        -        "properties": {
        -          "auditExecuted": {
        -            "const": false,
        -            "description": "This request did not execute a new audit.",
        -            "type": "boolean"
        -          },
        -          "reason": {
        -            "description": "The recoverable job request prerequisite.",
        -            "enum": [
        -              "audit_job_busy",
        -              "audit_job_unavailable",
        -              "audit_job_argument_mismatch",
        -              "audit_job_invalid_arguments"
        -            ],
        -            "type": "string"
        -          },
        -          "status": {
        -            "const": "action_required",
        -            "description": "This request did not start a new audit.",
        -            "type": "string"
        -          },
        -          "usageConsumed": {
        -            "const": false,
        -            "description": "This request did not consume additional audit allowance.",
        -            "type": "boolean"
        -          }
        -        },
        -        "required": [
        -          "status",
        -          "reason",
        -          "auditExecuted",
        -          "usageConsumed"
        -        ],
        -        "type": "object"
        -      }
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "auditExecuted": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "reason": {
        -        "enum": [
        -          "entitlement_required",
        -          "target_verification_required",
        -          "target_reverification_required",
        -          "verification_scope_required",
        -          "usage_limit_reached",
        -          "authorization_consent_required"
        -        ],
        -        "type": "string"
        -      },
        -      "status": {
        -        "const": "action_required",
        -        "type": "string"
        -      },
        -      "usageConsumed": {
        -        "const": false,
        -        "type": "boolean"
        -      }
        -    },
        -    "required": [
        -      "status",
        -      "reason",
        -      "auditExecuted",
        -      "usageConsumed"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "oneOf": [
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "auditDetails": {
        +            "additionalProperties": true,
        +            "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        +            "type": "object"
        +          },
        +          "blended": {
        +            "description": "Weighted score across measured pillars, or null when no pillar could be measured.",
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          },
        +          "complete": {
        +            "description": "Compatibility field: every requested pillar runner returned. Consult coverageStatus and auditDetails for unmeasured modules and metrics.",
        +            "type": "boolean"
        +          },
        +          "counts": {
        +            "additionalProperties": false,
        +            "description": "Finding totals grouped by normalized severity.",
        +            "properties": {
        +              "critical": {
        +                "description": "Number of critical findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "high": {
        +                "description": "Number of high-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "info": {
        +                "description": "Number of informational findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "low": {
        +                "description": "Number of low-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "medium": {
        +                "description": "Number of medium-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              }
        +            },
        +            "required": [
        +              "critical",
        +              "high",
        +              "medium",
        +              "low",
        +              "info"
        +            ],
        +            "type": "object"
        +          },
        +          "coverageStatus": {
        +            "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +            "enum": [
        +              "measured",
        +              "partial",
        +              "unavailable",
        +              "not_applicable"
        +            ],
        +            "type": "string"
        +          },
        +          "executionComplete": {
        +            "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +            "type": "boolean"
        +          },
        +          "failedPillars": {
        +            "description": "Pillars that could not be measured and their sanitized errors.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "error": {
        +                  "description": "Sanitized failure reason.",
        +                  "type": "string"
        +                },
        +                "pillar": {
        +                  "description": "Audit pillar that failed.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "pillar",
        +                "error"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "findings": {
        +            "description": "Prioritized findings across every completed audit pillar.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "pillar": {
        +                  "description": "Audit pillar that produced the finding.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "pillar",
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "findingsTruncated": {
        +            "description": "True when additional findings exist outside this response.",
        +            "type": "boolean"
        +          },
        +          "passingFindings": {
        +            "description": "Positive observations retained with their complete evidence.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "pillar": {
        +                  "description": "Audit pillar that produced the finding.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "pillar",
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "pillars": {
        +            "additionalProperties": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "findings": {
        +                  "description": "Number of findings in this pillar.",
        +                  "minimum": 0,
        +                  "type": "integer"
        +                },
        +                "score": {
        +                  "description": "Pillar score, or null when unavailable.",
        +                  "type": [
        +                    "number",
        +                    "null"
        +                  ]
        +                }
        +              },
        +              "required": [
        +                "score",
        +                "findings"
        +              ],
        +              "type": "object"
        +            },
        +            "description": "Per-pillar score and finding-count summary.",
        +            "type": "object"
        +          },
        +          "returnedFindings": {
        +            "description": "Number of cross-pillar findings included.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "status": {
        +            "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +            "enum": [
        +              "completed",
        +              "partial"
        +            ],
        +            "type": "string"
        +          },
        +          "target": {
        +            "description": "Canonical audited target.",
        +            "type": "string"
        +          },
        +          "total": {
        +            "description": "Total cross-pillar findings before response truncation.",
        +            "minimum": 0,
        +            "type": "integer"
        +          }
        +        },
        +        "required": [
        +          "target",
        +          "blended",
        +          "pillars",
        +          "counts",
        +          "total",
        +          "returnedFindings",
        +          "findingsTruncated",
        +          "findings",
        +          "complete",
        +          "failedPillars"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "executionComplete": {
        +            "const": false,
        +            "description": "False until the entire audit result is ready for delivery.",
        +            "type": "boolean"
        +          },
        +          "jobId": {
        +            "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        +            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +            "type": "string"
        +          },
        +          "nextAction": {
        +            "const": "poll_same_tool",
        +            "description": "Call this same tool again with pollArguments.",
        +            "type": "string"
        +          },
        +          "pollArguments": {
        +            "additionalProperties": false,
        +            "description": "Copy these arguments unchanged to retrieve this existing audit without starting another scan. The public target supports clients that require a target on every call.",
        +            "properties": {
        +              "jobId": {
        +                "description": "The same opaque audit job identifier.",
        +                "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +                "type": "string"
        +              },
        +              "target": {
        +                "description": "Public polling target for this job, without URL credentials, query or fragment. It does not change the original scan target.",
        +                "maxLength": 2048,
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "jobId"
        +            ],
        +            "type": "object"
        +          },
        +          "retryAfterMs": {
        +            "description": "Suggested delay in milliseconds before polling this job again.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "status": {
        +            "const": "running",
        +            "description": "The audit is still executing or completing durable delivery.",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "jobId",
        +          "executionComplete",
        +          "nextAction",
        +          "pollArguments",
        +          "retryAfterMs"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "auditExecuted": {
        +            "const": false,
        +            "description": "This request did not execute a new audit.",
        +            "type": "boolean"
        +          },
        +          "reason": {
        +            "description": "The recoverable job request prerequisite.",
        +            "enum": [
        +              "audit_job_busy",
        +              "audit_job_unavailable",
        +              "audit_job_argument_mismatch",
        +              "audit_job_invalid_arguments"
        +            ],
        +            "type": "string"
        +          },
        +          "status": {
        +            "const": "action_required",
        +            "description": "This request did not start a new audit.",
        +            "type": "string"
        +          },
        +          "usageConsumed": {
        +            "const": false,
        +            "description": "This request did not consume additional audit allowance.",
        +            "type": "boolean"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "reason",
        +          "auditExecuted",
        +          "usageConsumed"
        +        ],
        +        "type": "object"
        +      }
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "auditExecuted": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "reason": {
        +        "enum": [
        +          "entitlement_required",
        +          "target_verification_required",
        +          "target_reverification_required",
        +          "verification_scope_required",
        +          "usage_limit_reached",
        +          "authorization_consent_required"
        +        ],
        +        "type": "string"
        +      },
        +      "status": {
        +        "const": "action_required",
        +        "type": "string"
        +      },
        +      "usageConsumed": {
        +        "const": false,
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "reason",
        +      "auditExecuted",
        +      "usageConsumed"
        +    ],
        +    "type": "object"
        +  }
        +]
    • Changedaudit_integrations3 fields changed
      • changedInput schema / anyOf
        Previous value: -[
        -  {
        -    "required": [
        -      "target"
        -    ]
        -  },
        -  {
        -    "maxProperties": 1,
        -    "required": [
        -      "jobId"
        -    ]
        -  }
        -]New value: +[
        +  {
        +    "required": [
        +      "target"
        +    ]
        +  },
        +  {
        +    "required": [
        +      "jobId"
        +    ]
        +  }
        +]
      • changedInput schema / properties / jobId / description
        Previous value: -"Resume an existing audit by polling this same tool with its returned jobId. Prefer jobId alone; if repeating other arguments, supply every original argument unchanged. Never invent a jobId."New value: +"Resume an existing audit by polling this same tool with the returned pollArguments. Keep target and jobId unchanged. If repeating scan options, supply every original argument unchanged. Never invent a jobId."
      • changedOutput schema / oneOf
        Previous value: -[
        -  {
        -    "oneOf": [
        -      {
        -        "additionalProperties": true,
        -        "properties": {
        -          "auditDetails": {
        -            "additionalProperties": true,
        -            "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        -            "type": "object"
        -          },
        -          "counts": {
        -            "additionalProperties": false,
        -            "description": "Finding totals grouped by normalized severity.",
        -            "properties": {
        -              "critical": {
        -                "description": "Number of critical findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "high": {
        -                "description": "Number of high-severity findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "info": {
        -                "description": "Number of informational findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "low": {
        -                "description": "Number of low-severity findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "medium": {
        -                "description": "Number of medium-severity findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              }
        -            },
        -            "required": [
        -              "critical",
        -              "high",
        -              "medium",
        -              "low",
        -              "info"
        -            ],
        -            "type": "object"
        -          },
        -          "coverageStatus": {
        -            "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        -            "enum": [
        -              "measured",
        -              "partial",
        -              "unavailable",
        -              "not_applicable"
        -            ],
        -            "type": "string"
        -          },
        -          "executionComplete": {
        -            "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        -            "type": "boolean"
        -          },
        -          "findings": {
        -            "description": "Prioritized findings with evidence, impact, and remediation.",
        -            "items": {
        -              "additionalProperties": false,
        -              "properties": {
        -                "category": {
        -                  "description": "Stable audit category for grouping related findings.",
        -                  "type": "string"
        -                },
        -                "evidence": {
        -                  "description": "Bounded observation that supports the finding.",
        -                  "type": "string"
        -                },
        -                "findingKey": {
        -                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -                  "maxLength": 512,
        -                  "minLength": 1,
        -                  "type": "string"
        -                },
        -                "impact": {
        -                  "description": "Why the finding matters to the audited website.",
        -                  "type": "string"
        -                },
        -                "location": {
        -                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -                  "type": "string"
        -                },
        -                "remediation": {
        -                  "description": "Concrete recommended fix or mitigation.",
        -                  "type": "string"
        -                },
        -                "severity": {
        -                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -                  "type": "string"
        -                },
        -                "title": {
        -                  "description": "Short human-readable finding title.",
        -                  "type": "string"
        -                }
        -              },
        -              "required": [
        -                "findingKey",
        -                "severity",
        -                "title",
        -                "evidence",
        -                "impact",
        -                "remediation",
        -                "category"
        -              ],
        -              "type": "object"
        -            },
        -            "type": "array"
        -          },
        -          "findingsTruncated": {
        -            "description": "True when additional findings exist outside this response.",
        -            "type": "boolean"
        -          },
        -          "grade": {
        -            "description": "Human-readable grade, or null when unavailable.",
        -            "type": [
        -              "string",
        -              "null"
        -            ]
        -          },
        -          "kind": {
        -            "description": "Audit pillar represented by this result.",
        -            "type": "string"
        -          },
        -          "passingChecks": {
        -            "description": "Number of checks that passed or reported protection.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "passingFindings": {
        -            "description": "Positive observations retained with their complete evidence.",
        -            "items": {
        -              "additionalProperties": false,
        -              "properties": {
        -                "category": {
        -                  "description": "Stable audit category for grouping related findings.",
        -                  "type": "string"
        -                },
        -                "evidence": {
        -                  "description": "Bounded observation that supports the finding.",
        -                  "type": "string"
        -                },
        -                "findingKey": {
        -                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -                  "maxLength": 512,
        -                  "minLength": 1,
        -                  "type": "string"
        -                },
        -                "impact": {
        -                  "description": "Why the finding matters to the audited website.",
        -                  "type": "string"
        -                },
        -                "location": {
        -                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -                  "type": "string"
        -                },
        -                "remediation": {
        -                  "description": "Concrete recommended fix or mitigation.",
        -                  "type": "string"
        -                },
        -                "severity": {
        -                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -                  "type": "string"
        -                },
        -                "title": {
        -                  "description": "Short human-readable finding title.",
        -                  "type": "string"
        -                }
        -              },
        -              "required": [
        -                "findingKey",
        -                "severity",
        -                "title",
        -                "evidence",
        -                "impact",
        -                "remediation",
        -                "category"
        -              ],
        -              "type": "object"
        -            },
        -            "type": "array"
        -          },
        -          "returnedFindings": {
        -            "description": "Number of findings included in this response.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "score": {
        -            "description": "Measured score from 0 to 100, or null when unavailable.",
        -            "type": [
        -              "number",
        -              "null"
        -            ]
        -          },
        -          "status": {
        -            "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        -            "enum": [
        -              "completed",
        -              "partial"
        -            ],
        -            "type": "string"
        -          },
        -          "target": {
        -            "description": "Canonical audited target.",
        -            "type": "string"
        -          },
        -          "total": {
        -            "description": "Total findings produced before response truncation.",
        -            "minimum": 0,
        -            "type": "integer"
        -          }
        -        },
        -        "required": [
        -          "target",
        -          "kind",
        -          "score",
        -          "grade",
        -          "counts",
        -          "total",
        -          "returnedFindings",
        -          "findingsTruncated",
        -          "passingChecks",
        -          "findings"
        -        ],
        -        "type": "object"
        -      },
        -      {
        -        "additionalProperties": false,
        -        "properties": {
        -          "executionComplete": {
        -            "const": false,
        -            "description": "False until the entire audit result is ready for delivery.",
        -            "type": "boolean"
        -          },
        -          "jobId": {
        -            "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        -            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -            "type": "string"
        -          },
        -          "nextAction": {
        -            "const": "poll_same_tool",
        -            "description": "Call this same tool again with pollArguments.",
        -            "type": "string"
        -          },
        -          "pollArguments": {
        -            "additionalProperties": false,
        -            "description": "Arguments for retrieving this existing audit without starting another scan.",
        -            "properties": {
        -              "jobId": {
        -                "description": "The same opaque audit job identifier.",
        -                "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -                "type": "string"
        -              }
        -            },
        -            "required": [
        -              "jobId"
        -            ],
        -            "type": "object"
        -          },
        -          "retryAfterMs": {
        -            "description": "Suggested delay in milliseconds before polling this job again.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "status": {
        -            "const": "running",
        -            "description": "The audit is still executing or completing durable delivery.",
        -            "type": "string"
        -          }
        -        },
        -        "required": [
        -          "status",
        -          "jobId",
        -          "executionComplete",
        -          "nextAction",
        -          "pollArguments",
        -          "retryAfterMs"
        -        ],
        -        "type": "object"
        -      },
        -      {
        -        "additionalProperties": false,
        -        "properties": {
        -          "auditExecuted": {
        -            "const": false,
        -            "description": "This request did not execute a new audit.",
        -            "type": "boolean"
        -          },
        -          "reason": {
        -            "description": "The recoverable job request prerequisite.",
        -            "enum": [
        -              "audit_job_busy",
        -              "audit_job_unavailable",
        -              "audit_job_argument_mismatch",
        -              "audit_job_invalid_arguments"
        -            ],
        -            "type": "string"
        -          },
        -          "status": {
        -            "const": "action_required",
        -            "description": "This request did not start a new audit.",
        -            "type": "string"
        -          },
        -          "usageConsumed": {
        -            "const": false,
        -            "description": "This request did not consume additional audit allowance.",
        -            "type": "boolean"
        -          }
        -        },
        -        "required": [
        -          "status",
        -          "reason",
        -          "auditExecuted",
        -          "usageConsumed"
        -        ],
        -        "type": "object"
        -      }
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "auditExecuted": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "reason": {
        -        "enum": [
        -          "entitlement_required",
        -          "target_verification_required",
        -          "target_reverification_required",
        -          "verification_scope_required",
        -          "usage_limit_reached",
        -          "authorization_consent_required"
        -        ],
        -        "type": "string"
        -      },
        -      "status": {
        -        "const": "action_required",
        -        "type": "string"
        -      },
        -      "usageConsumed": {
        -        "const": false,
        -        "type": "boolean"
        -      }
        -    },
        -    "required": [
        -      "status",
        -      "reason",
        -      "auditExecuted",
        -      "usageConsumed"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "oneOf": [
        +      {
        +        "additionalProperties": true,
        +        "properties": {
        +          "auditDetails": {
        +            "additionalProperties": true,
        +            "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        +            "type": "object"
        +          },
        +          "counts": {
        +            "additionalProperties": false,
        +            "description": "Finding totals grouped by normalized severity.",
        +            "properties": {
        +              "critical": {
        +                "description": "Number of critical findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "high": {
        +                "description": "Number of high-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "info": {
        +                "description": "Number of informational findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "low": {
        +                "description": "Number of low-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "medium": {
        +                "description": "Number of medium-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              }
        +            },
        +            "required": [
        +              "critical",
        +              "high",
        +              "medium",
        +              "low",
        +              "info"
        +            ],
        +            "type": "object"
        +          },
        +          "coverageStatus": {
        +            "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +            "enum": [
        +              "measured",
        +              "partial",
        +              "unavailable",
        +              "not_applicable"
        +            ],
        +            "type": "string"
        +          },
        +          "executionComplete": {
        +            "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +            "type": "boolean"
        +          },
        +          "findings": {
        +            "description": "Prioritized findings with evidence, impact, and remediation.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "findingsTruncated": {
        +            "description": "True when additional findings exist outside this response.",
        +            "type": "boolean"
        +          },
        +          "grade": {
        +            "description": "Human-readable grade, or null when unavailable.",
        +            "type": [
        +              "string",
        +              "null"
        +            ]
        +          },
        +          "kind": {
        +            "description": "Audit pillar represented by this result.",
        +            "type": "string"
        +          },
        +          "passingChecks": {
        +            "description": "Number of checks that passed or reported protection.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "passingFindings": {
        +            "description": "Positive observations retained with their complete evidence.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "returnedFindings": {
        +            "description": "Number of findings included in this response.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "score": {
        +            "description": "Measured score from 0 to 100, or null when unavailable.",
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          },
        +          "status": {
        +            "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +            "enum": [
        +              "completed",
        +              "partial"
        +            ],
        +            "type": "string"
        +          },
        +          "target": {
        +            "description": "Canonical audited target.",
        +            "type": "string"
        +          },
        +          "total": {
        +            "description": "Total findings produced before response truncation.",
        +            "minimum": 0,
        +            "type": "integer"
        +          }
        +        },
        +        "required": [
        +          "target",
        +          "kind",
        +          "score",
        +          "grade",
        +          "counts",
        +          "total",
        +          "returnedFindings",
        +          "findingsTruncated",
        +          "passingChecks",
        +          "findings"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "executionComplete": {
        +            "const": false,
        +            "description": "False until the entire audit result is ready for delivery.",
        +            "type": "boolean"
        +          },
        +          "jobId": {
        +            "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        +            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +            "type": "string"
        +          },
        +          "nextAction": {
        +            "const": "poll_same_tool",
        +            "description": "Call this same tool again with pollArguments.",
        +            "type": "string"
        +          },
        +          "pollArguments": {
        +            "additionalProperties": false,
        +            "description": "Copy these arguments unchanged to retrieve this existing audit without starting another scan. The public target supports clients that require a target on every call.",
        +            "properties": {
        +              "jobId": {
        +                "description": "The same opaque audit job identifier.",
        +                "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +                "type": "string"
        +              },
        +              "target": {
        +                "description": "Public polling target for this job, without URL credentials, query or fragment. It does not change the original scan target.",
        +                "maxLength": 2048,
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "jobId"
        +            ],
        +            "type": "object"
        +          },
        +          "retryAfterMs": {
        +            "description": "Suggested delay in milliseconds before polling this job again.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "status": {
        +            "const": "running",
        +            "description": "The audit is still executing or completing durable delivery.",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "jobId",
        +          "executionComplete",
        +          "nextAction",
        +          "pollArguments",
        +          "retryAfterMs"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "auditExecuted": {
        +            "const": false,
        +            "description": "This request did not execute a new audit.",
        +            "type": "boolean"
        +          },
        +          "reason": {
        +            "description": "The recoverable job request prerequisite.",
        +            "enum": [
        +              "audit_job_busy",
        +              "audit_job_unavailable",
        +              "audit_job_argument_mismatch",
        +              "audit_job_invalid_arguments"
        +            ],
        +            "type": "string"
        +          },
        +          "status": {
        +            "const": "action_required",
        +            "description": "This request did not start a new audit.",
        +            "type": "string"
        +          },
        +          "usageConsumed": {
        +            "const": false,
        +            "description": "This request did not consume additional audit allowance.",
        +            "type": "boolean"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "reason",
        +          "auditExecuted",
        +          "usageConsumed"
        +        ],
        +        "type": "object"
        +      }
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "auditExecuted": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "reason": {
        +        "enum": [
        +          "entitlement_required",
        +          "target_verification_required",
        +          "target_reverification_required",
        +          "verification_scope_required",
        +          "usage_limit_reached",
        +          "authorization_consent_required"
        +        ],
        +        "type": "string"
        +      },
        +      "status": {
        +        "const": "action_required",
        +        "type": "string"
        +      },
        +      "usageConsumed": {
        +        "const": false,
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "reason",
        +      "auditExecuted",
        +      "usageConsumed"
        +    ],
        +    "type": "object"
        +  }
        +]
    • Changedaudit_performance3 fields changed
      • changedInput schema / anyOf
        Previous value: -[
        -  {
        -    "required": [
        -      "target"
        -    ]
        -  },
        -  {
        -    "maxProperties": 1,
        -    "required": [
        -      "jobId"
        -    ]
        -  }
        -]New value: +[
        +  {
        +    "required": [
        +      "target"
        +    ]
        +  },
        +  {
        +    "required": [
        +      "jobId"
        +    ]
        +  }
        +]
      • changedInput schema / properties / jobId / description
        Previous value: -"Resume an existing audit by polling this same tool with its returned jobId. Prefer jobId alone; if repeating other arguments, supply every original argument unchanged. Never invent a jobId."New value: +"Resume an existing audit by polling this same tool with the returned pollArguments. Keep target and jobId unchanged. If repeating scan options, supply every original argument unchanged. Never invent a jobId."
      • changedOutput schema / oneOf
        Previous value: -[
        -  {
        -    "oneOf": [
        -      {
        -        "additionalProperties": true,
        -        "properties": {
        -          "auditDetails": {
        -            "additionalProperties": true,
        -            "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        -            "type": "object"
        -          },
        -          "counts": {
        -            "additionalProperties": false,
        -            "description": "Finding totals grouped by normalized severity.",
        -            "properties": {
        -              "critical": {
        -                "description": "Number of critical findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "high": {
        -                "description": "Number of high-severity findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "info": {
        -                "description": "Number of informational findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "low": {
        -                "description": "Number of low-severity findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "medium": {
        -                "description": "Number of medium-severity findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              }
        -            },
        -            "required": [
        -              "critical",
        -              "high",
        -              "medium",
        -              "low",
        -              "info"
        -            ],
        -            "type": "object"
        -          },
        -          "coverageStatus": {
        -            "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        -            "enum": [
        -              "measured",
        -              "partial",
        -              "unavailable",
        -              "not_applicable"
        -            ],
        -            "type": "string"
        -          },
        -          "executionComplete": {
        -            "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        -            "type": "boolean"
        -          },
        -          "findings": {
        -            "description": "Prioritized findings with evidence, impact, and remediation.",
        -            "items": {
        -              "additionalProperties": false,
        -              "properties": {
        -                "category": {
        -                  "description": "Stable audit category for grouping related findings.",
        -                  "type": "string"
        -                },
        -                "evidence": {
        -                  "description": "Bounded observation that supports the finding.",
        -                  "type": "string"
        -                },
        -                "findingKey": {
        -                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -                  "maxLength": 512,
        -                  "minLength": 1,
        -                  "type": "string"
        -                },
        -                "impact": {
        -                  "description": "Why the finding matters to the audited website.",
        -                  "type": "string"
        -                },
        -                "location": {
        -                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -                  "type": "string"
        -                },
        -                "remediation": {
        -                  "description": "Concrete recommended fix or mitigation.",
        -                  "type": "string"
        -                },
        -                "severity": {
        -                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -                  "type": "string"
        -                },
        -                "title": {
        -                  "description": "Short human-readable finding title.",
        -                  "type": "string"
        -                }
        -              },
        -              "required": [
        -                "findingKey",
        -                "severity",
        -                "title",
        -                "evidence",
        -                "impact",
        -                "remediation",
        -                "category"
        -              ],
        -              "type": "object"
        -            },
        -            "type": "array"
        -          },
        -          "findingsTruncated": {
        -            "description": "True when additional findings exist outside this response.",
        -            "type": "boolean"
        -          },
        -          "grade": {
        -            "description": "Human-readable grade, or null when unavailable.",
        -            "type": [
        -              "string",
        -              "null"
        -            ]
        -          },
        -          "kind": {
        -            "description": "Audit pillar represented by this result.",
        -            "type": "string"
        -          },
        -          "passingChecks": {
        -            "description": "Number of checks that passed or reported protection.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "passingFindings": {
        -            "description": "Positive observations retained with their complete evidence.",
        -            "items": {
        -              "additionalProperties": false,
        -              "properties": {
        -                "category": {
        -                  "description": "Stable audit category for grouping related findings.",
        -                  "type": "string"
        -                },
        -                "evidence": {
        -                  "description": "Bounded observation that supports the finding.",
        -                  "type": "string"
        -                },
        -                "findingKey": {
        -                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -                  "maxLength": 512,
        -                  "minLength": 1,
        -                  "type": "string"
        -                },
        -                "impact": {
        -                  "description": "Why the finding matters to the audited website.",
        -                  "type": "string"
        -                },
        -                "location": {
        -                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -                  "type": "string"
        -                },
        -                "remediation": {
        -                  "description": "Concrete recommended fix or mitigation.",
        -                  "type": "string"
        -                },
        -                "severity": {
        -                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -                  "type": "string"
        -                },
        -                "title": {
        -                  "description": "Short human-readable finding title.",
        -                  "type": "string"
        -                }
        -              },
        -              "required": [
        -                "findingKey",
        -                "severity",
        -                "title",
        -                "evidence",
        -                "impact",
        -                "remediation",
        -                "category"
        -              ],
        -              "type": "object"
        -            },
        -            "type": "array"
        -          },
        -          "returnedFindings": {
        -            "description": "Number of findings included in this response.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "score": {
        -            "description": "Measured score from 0 to 100, or null when unavailable.",
        -            "type": [
        -              "number",
        -              "null"
        -            ]
        -          },
        -          "status": {
        -            "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        -            "enum": [
        -              "completed",
        -              "partial"
        -            ],
        -            "type": "string"
        -          },
        -          "target": {
        -            "description": "Canonical audited target.",
        -            "type": "string"
        -          },
        -          "total": {
        -            "description": "Total findings produced before response truncation.",
        -            "minimum": 0,
        -            "type": "integer"
        -          }
        -        },
        -        "required": [
        -          "target",
        -          "kind",
        -          "score",
        -          "grade",
        -          "counts",
        -          "total",
        -          "returnedFindings",
        -          "findingsTruncated",
        -          "passingChecks",
        -          "findings"
        -        ],
        -        "type": "object"
        -      },
        -      {
        -        "additionalProperties": false,
        -        "properties": {
        -          "executionComplete": {
        -            "const": false,
        -            "description": "False until the entire audit result is ready for delivery.",
        -            "type": "boolean"
        -          },
        -          "jobId": {
        -            "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        -            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -            "type": "string"
        -          },
        -          "nextAction": {
        -            "const": "poll_same_tool",
        -            "description": "Call this same tool again with pollArguments.",
        -            "type": "string"
        -          },
        -          "pollArguments": {
        -            "additionalProperties": false,
        -            "description": "Arguments for retrieving this existing audit without starting another scan.",
        -            "properties": {
        -              "jobId": {
        -                "description": "The same opaque audit job identifier.",
        -                "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -                "type": "string"
        -              }
        -            },
        -            "required": [
        -              "jobId"
        -            ],
        -            "type": "object"
        -          },
        -          "retryAfterMs": {
        -            "description": "Suggested delay in milliseconds before polling this job again.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "status": {
        -            "const": "running",
        -            "description": "The audit is still executing or completing durable delivery.",
        -            "type": "string"
        -          }
        -        },
        -        "required": [
        -          "status",
        -          "jobId",
        -          "executionComplete",
        -          "nextAction",
        -          "pollArguments",
        -          "retryAfterMs"
        -        ],
        -        "type": "object"
        -      },
        -      {
        -        "additionalProperties": false,
        -        "properties": {
        -          "auditExecuted": {
        -            "const": false,
        -            "description": "This request did not execute a new audit.",
        -            "type": "boolean"
        -          },
        -          "reason": {
        -            "description": "The recoverable job request prerequisite.",
        -            "enum": [
        -              "audit_job_busy",
        -              "audit_job_unavailable",
        -              "audit_job_argument_mismatch",
        -              "audit_job_invalid_arguments"
        -            ],
        -            "type": "string"
        -          },
        -          "status": {
        -            "const": "action_required",
        -            "description": "This request did not start a new audit.",
        -            "type": "string"
        -          },
        -          "usageConsumed": {
        -            "const": false,
        -            "description": "This request did not consume additional audit allowance.",
        -            "type": "boolean"
        -          }
        -        },
        -        "required": [
        -          "status",
        -          "reason",
        -          "auditExecuted",
        -          "usageConsumed"
        -        ],
        -        "type": "object"
        -      }
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "auditExecuted": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "reason": {
        -        "enum": [
        -          "entitlement_required",
        -          "target_verification_required",
        -          "target_reverification_required",
        -          "verification_scope_required",
        -          "usage_limit_reached",
        -          "authorization_consent_required"
        -        ],
        -        "type": "string"
        -      },
        -      "status": {
        -        "const": "action_required",
        -        "type": "string"
        -      },
        -      "usageConsumed": {
        -        "const": false,
        -        "type": "boolean"
        -      }
        -    },
        -    "required": [
        -      "status",
        -      "reason",
        -      "auditExecuted",
        -      "usageConsumed"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "oneOf": [
        +      {
        +        "additionalProperties": true,
        +        "properties": {
        +          "auditDetails": {
        +            "additionalProperties": true,
        +            "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        +            "type": "object"
        +          },
        +          "counts": {
        +            "additionalProperties": false,
        +            "description": "Finding totals grouped by normalized severity.",
        +            "properties": {
        +              "critical": {
        +                "description": "Number of critical findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "high": {
        +                "description": "Number of high-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "info": {
        +                "description": "Number of informational findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "low": {
        +                "description": "Number of low-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "medium": {
        +                "description": "Number of medium-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              }
        +            },
        +            "required": [
        +              "critical",
        +              "high",
        +              "medium",
        +              "low",
        +              "info"
        +            ],
        +            "type": "object"
        +          },
        +          "coverageStatus": {
        +            "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +            "enum": [
        +              "measured",
        +              "partial",
        +              "unavailable",
        +              "not_applicable"
        +            ],
        +            "type": "string"
        +          },
        +          "executionComplete": {
        +            "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +            "type": "boolean"
        +          },
        +          "findings": {
        +            "description": "Prioritized findings with evidence, impact, and remediation.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "findingsTruncated": {
        +            "description": "True when additional findings exist outside this response.",
        +            "type": "boolean"
        +          },
        +          "grade": {
        +            "description": "Human-readable grade, or null when unavailable.",
        +            "type": [
        +              "string",
        +              "null"
        +            ]
        +          },
        +          "kind": {
        +            "description": "Audit pillar represented by this result.",
        +            "type": "string"
        +          },
        +          "passingChecks": {
        +            "description": "Number of checks that passed or reported protection.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "passingFindings": {
        +            "description": "Positive observations retained with their complete evidence.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "returnedFindings": {
        +            "description": "Number of findings included in this response.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "score": {
        +            "description": "Measured score from 0 to 100, or null when unavailable.",
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          },
        +          "status": {
        +            "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +            "enum": [
        +              "completed",
        +              "partial"
        +            ],
        +            "type": "string"
        +          },
        +          "target": {
        +            "description": "Canonical audited target.",
        +            "type": "string"
        +          },
        +          "total": {
        +            "description": "Total findings produced before response truncation.",
        +            "minimum": 0,
        +            "type": "integer"
        +          }
        +        },
        +        "required": [
        +          "target",
        +          "kind",
        +          "score",
        +          "grade",
        +          "counts",
        +          "total",
        +          "returnedFindings",
        +          "findingsTruncated",
        +          "passingChecks",
        +          "findings"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "executionComplete": {
        +            "const": false,
        +            "description": "False until the entire audit result is ready for delivery.",
        +            "type": "boolean"
        +          },
        +          "jobId": {
        +            "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        +            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +            "type": "string"
        +          },
        +          "nextAction": {
        +            "const": "poll_same_tool",
        +            "description": "Call this same tool again with pollArguments.",
        +            "type": "string"
        +          },
        +          "pollArguments": {
        +            "additionalProperties": false,
        +            "description": "Copy these arguments unchanged to retrieve this existing audit without starting another scan. The public target supports clients that require a target on every call.",
        +            "properties": {
        +              "jobId": {
        +                "description": "The same opaque audit job identifier.",
        +                "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +                "type": "string"
        +              },
        +              "target": {
        +                "description": "Public polling target for this job, without URL credentials, query or fragment. It does not change the original scan target.",
        +                "maxLength": 2048,
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "jobId"
        +            ],
        +            "type": "object"
        +          },
        +          "retryAfterMs": {
        +            "description": "Suggested delay in milliseconds before polling this job again.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "status": {
        +            "const": "running",
        +            "description": "The audit is still executing or completing durable delivery.",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "jobId",
        +          "executionComplete",
        +          "nextAction",
        +          "pollArguments",
        +          "retryAfterMs"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "auditExecuted": {
        +            "const": false,
        +            "description": "This request did not execute a new audit.",
        +            "type": "boolean"
        +          },
        +          "reason": {
        +            "description": "The recoverable job request prerequisite.",
        +            "enum": [
        +              "audit_job_busy",
        +              "audit_job_unavailable",
        +              "audit_job_argument_mismatch",
        +              "audit_job_invalid_arguments"
        +            ],
        +            "type": "string"
        +          },
        +          "status": {
        +            "const": "action_required",
        +            "description": "This request did not start a new audit.",
        +            "type": "string"
        +          },
        +          "usageConsumed": {
        +            "const": false,
        +            "description": "This request did not consume additional audit allowance.",
        +            "type": "boolean"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "reason",
        +          "auditExecuted",
        +          "usageConsumed"
        +        ],
        +        "type": "object"
        +      }
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "auditExecuted": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "reason": {
        +        "enum": [
        +          "entitlement_required",
        +          "target_verification_required",
        +          "target_reverification_required",
        +          "verification_scope_required",
        +          "usage_limit_reached",
        +          "authorization_consent_required"
        +        ],
        +        "type": "string"
        +      },
        +      "status": {
        +        "const": "action_required",
        +        "type": "string"
        +      },
        +      "usageConsumed": {
        +        "const": false,
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "reason",
        +      "auditExecuted",
        +      "usageConsumed"
        +    ],
        +    "type": "object"
        +  }
        +]
    • Changedaudit_security3 fields changed
      • changedInput schema / anyOf
        Previous value: -[
        -  {
        -    "required": [
        -      "target"
        -    ]
        -  },
        -  {
        -    "maxProperties": 1,
        -    "required": [
        -      "jobId"
        -    ]
        -  }
        -]New value: +[
        +  {
        +    "required": [
        +      "target"
        +    ]
        +  },
        +  {
        +    "required": [
        +      "jobId"
        +    ]
        +  }
        +]
      • changedInput schema / properties / jobId / description
        Previous value: -"Resume an existing audit by polling this same tool with its returned jobId. Prefer jobId alone; if repeating other arguments, supply every original argument unchanged. Never invent a jobId."New value: +"Resume an existing audit by polling this same tool with the returned pollArguments. Keep target and jobId unchanged. If repeating scan options, supply every original argument unchanged. Never invent a jobId."
      • changedOutput schema / oneOf
        Previous value: -[
        -  {
        -    "oneOf": [
        -      {
        -        "additionalProperties": true,
        -        "properties": {
        -          "auditDetails": {
        -            "additionalProperties": true,
        -            "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        -            "type": "object"
        -          },
        -          "counts": {
        -            "additionalProperties": false,
        -            "description": "Finding totals grouped by normalized severity.",
        -            "properties": {
        -              "critical": {
        -                "description": "Number of critical findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "high": {
        -                "description": "Number of high-severity findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "info": {
        -                "description": "Number of informational findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "low": {
        -                "description": "Number of low-severity findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "medium": {
        -                "description": "Number of medium-severity findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              }
        -            },
        -            "required": [
        -              "critical",
        -              "high",
        -              "medium",
        -              "low",
        -              "info"
        -            ],
        -            "type": "object"
        -          },
        -          "coverageStatus": {
        -            "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        -            "enum": [
        -              "measured",
        -              "partial",
        -              "unavailable",
        -              "not_applicable"
        -            ],
        -            "type": "string"
        -          },
        -          "executionComplete": {
        -            "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        -            "type": "boolean"
        -          },
        -          "findings": {
        -            "description": "Prioritized findings with evidence, impact, and remediation.",
        -            "items": {
        -              "additionalProperties": false,
        -              "properties": {
        -                "category": {
        -                  "description": "Stable audit category for grouping related findings.",
        -                  "type": "string"
        -                },
        -                "evidence": {
        -                  "description": "Bounded observation that supports the finding.",
        -                  "type": "string"
        -                },
        -                "findingKey": {
        -                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -                  "maxLength": 512,
        -                  "minLength": 1,
        -                  "type": "string"
        -                },
        -                "impact": {
        -                  "description": "Why the finding matters to the audited website.",
        -                  "type": "string"
        -                },
        -                "location": {
        -                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -                  "type": "string"
        -                },
        -                "remediation": {
        -                  "description": "Concrete recommended fix or mitigation.",
        -                  "type": "string"
        -                },
        -                "severity": {
        -                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -                  "type": "string"
        -                },
        -                "title": {
        -                  "description": "Short human-readable finding title.",
        -                  "type": "string"
        -                }
        -              },
        -              "required": [
        -                "findingKey",
        -                "severity",
        -                "title",
        -                "evidence",
        -                "impact",
        -                "remediation",
        -                "category"
        -              ],
        -              "type": "object"
        -            },
        -            "type": "array"
        -          },
        -          "findingsTruncated": {
        -            "description": "True when additional findings exist outside this response.",
        -            "type": "boolean"
        -          },
        -          "grade": {
        -            "description": "Human-readable grade, or null when unavailable.",
        -            "type": [
        -              "string",
        -              "null"
        -            ]
        -          },
        -          "kind": {
        -            "description": "Audit pillar represented by this result.",
        -            "type": "string"
        -          },
        -          "passingChecks": {
        -            "description": "Number of checks that passed or reported protection.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "passingFindings": {
        -            "description": "Positive observations retained with their complete evidence.",
        -            "items": {
        -              "additionalProperties": false,
        -              "properties": {
        -                "category": {
        -                  "description": "Stable audit category for grouping related findings.",
        -                  "type": "string"
        -                },
        -                "evidence": {
        -                  "description": "Bounded observation that supports the finding.",
        -                  "type": "string"
        -                },
        -                "findingKey": {
        -                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -                  "maxLength": 512,
        -                  "minLength": 1,
        -                  "type": "string"
        -                },
        -                "impact": {
        -                  "description": "Why the finding matters to the audited website.",
        -                  "type": "string"
        -                },
        -                "location": {
        -                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -                  "type": "string"
        -                },
        -                "remediation": {
        -                  "description": "Concrete recommended fix or mitigation.",
        -                  "type": "string"
        -                },
        -                "severity": {
        -                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -                  "type": "string"
        -                },
        -                "title": {
        -                  "description": "Short human-readable finding title.",
        -                  "type": "string"
        -                }
        -              },
        -              "required": [
        -                "findingKey",
        -                "severity",
        -                "title",
        -                "evidence",
        -                "impact",
        -                "remediation",
        -                "category"
        -              ],
        -              "type": "object"
        -            },
        -            "type": "array"
        -          },
        -          "returnedFindings": {
        -            "description": "Number of findings included in this response.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "score": {
        -            "description": "Measured score from 0 to 100, or null when unavailable.",
        -            "type": [
        -              "number",
        -              "null"
        -            ]
        -          },
        -          "status": {
        -            "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        -            "enum": [
        -              "completed",
        -              "partial"
        -            ],
        -            "type": "string"
        -          },
        -          "target": {
        -            "description": "Canonical audited target.",
        -            "type": "string"
        -          },
        -          "total": {
        -            "description": "Total findings produced before response truncation.",
        -            "minimum": 0,
        -            "type": "integer"
        -          }
        -        },
        -        "required": [
        -          "target",
        -          "kind",
        -          "score",
        -          "grade",
        -          "counts",
        -          "total",
        -          "returnedFindings",
        -          "findingsTruncated",
        -          "passingChecks",
        -          "findings"
        -        ],
        -        "type": "object"
        -      },
        -      {
        -        "additionalProperties": false,
        -        "properties": {
        -          "executionComplete": {
        -            "const": false,
        -            "description": "False until the entire audit result is ready for delivery.",
        -            "type": "boolean"
        -          },
        -          "jobId": {
        -            "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        -            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -            "type": "string"
        -          },
        -          "nextAction": {
        -            "const": "poll_same_tool",
        -            "description": "Call this same tool again with pollArguments.",
        -            "type": "string"
        -          },
        -          "pollArguments": {
        -            "additionalProperties": false,
        -            "description": "Arguments for retrieving this existing audit without starting another scan.",
        -            "properties": {
        -              "jobId": {
        -                "description": "The same opaque audit job identifier.",
        -                "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -                "type": "string"
        -              }
        -            },
        -            "required": [
        -              "jobId"
        -            ],
        -            "type": "object"
        -          },
        -          "retryAfterMs": {
        -            "description": "Suggested delay in milliseconds before polling this job again.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "status": {
        -            "const": "running",
        -            "description": "The audit is still executing or completing durable delivery.",
        -            "type": "string"
        -          }
        -        },
        -        "required": [
        -          "status",
        -          "jobId",
        -          "executionComplete",
        -          "nextAction",
        -          "pollArguments",
        -          "retryAfterMs"
        -        ],
        -        "type": "object"
        -      },
        -      {
        -        "additionalProperties": false,
        -        "properties": {
        -          "auditExecuted": {
        -            "const": false,
        -            "description": "This request did not execute a new audit.",
        -            "type": "boolean"
        -          },
        -          "reason": {
        -            "description": "The recoverable job request prerequisite.",
        -            "enum": [
        -              "audit_job_busy",
        -              "audit_job_unavailable",
        -              "audit_job_argument_mismatch",
        -              "audit_job_invalid_arguments"
        -            ],
        -            "type": "string"
        -          },
        -          "status": {
        -            "const": "action_required",
        -            "description": "This request did not start a new audit.",
        -            "type": "string"
        -          },
        -          "usageConsumed": {
        -            "const": false,
        -            "description": "This request did not consume additional audit allowance.",
        -            "type": "boolean"
        -          }
        -        },
        -        "required": [
        -          "status",
        -          "reason",
        -          "auditExecuted",
        -          "usageConsumed"
        -        ],
        -        "type": "object"
        -      }
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "auditExecuted": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "reason": {
        -        "enum": [
        -          "entitlement_required",
        -          "target_verification_required",
        -          "target_reverification_required",
        -          "verification_scope_required",
        -          "usage_limit_reached",
        -          "authorization_consent_required"
        -        ],
        -        "type": "string"
        -      },
        -      "status": {
        -        "const": "action_required",
        -        "type": "string"
        -      },
        -      "usageConsumed": {
        -        "const": false,
        -        "type": "boolean"
        -      }
        -    },
        -    "required": [
        -      "status",
        -      "reason",
        -      "auditExecuted",
        -      "usageConsumed"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "oneOf": [
        +      {
        +        "additionalProperties": true,
        +        "properties": {
        +          "auditDetails": {
        +            "additionalProperties": true,
        +            "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        +            "type": "object"
        +          },
        +          "counts": {
        +            "additionalProperties": false,
        +            "description": "Finding totals grouped by normalized severity.",
        +            "properties": {
        +              "critical": {
        +                "description": "Number of critical findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "high": {
        +                "description": "Number of high-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "info": {
        +                "description": "Number of informational findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "low": {
        +                "description": "Number of low-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "medium": {
        +                "description": "Number of medium-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              }
        +            },
        +            "required": [
        +              "critical",
        +              "high",
        +              "medium",
        +              "low",
        +              "info"
        +            ],
        +            "type": "object"
        +          },
        +          "coverageStatus": {
        +            "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +            "enum": [
        +              "measured",
        +              "partial",
        +              "unavailable",
        +              "not_applicable"
        +            ],
        +            "type": "string"
        +          },
        +          "executionComplete": {
        +            "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +            "type": "boolean"
        +          },
        +          "findings": {
        +            "description": "Prioritized findings with evidence, impact, and remediation.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "findingsTruncated": {
        +            "description": "True when additional findings exist outside this response.",
        +            "type": "boolean"
        +          },
        +          "grade": {
        +            "description": "Human-readable grade, or null when unavailable.",
        +            "type": [
        +              "string",
        +              "null"
        +            ]
        +          },
        +          "kind": {
        +            "description": "Audit pillar represented by this result.",
        +            "type": "string"
        +          },
        +          "passingChecks": {
        +            "description": "Number of checks that passed or reported protection.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "passingFindings": {
        +            "description": "Positive observations retained with their complete evidence.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "returnedFindings": {
        +            "description": "Number of findings included in this response.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "score": {
        +            "description": "Measured score from 0 to 100, or null when unavailable.",
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          },
        +          "status": {
        +            "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +            "enum": [
        +              "completed",
        +              "partial"
        +            ],
        +            "type": "string"
        +          },
        +          "target": {
        +            "description": "Canonical audited target.",
        +            "type": "string"
        +          },
        +          "total": {
        +            "description": "Total findings produced before response truncation.",
        +            "minimum": 0,
        +            "type": "integer"
        +          }
        +        },
        +        "required": [
        +          "target",
        +          "kind",
        +          "score",
        +          "grade",
        +          "counts",
        +          "total",
        +          "returnedFindings",
        +          "findingsTruncated",
        +          "passingChecks",
        +          "findings"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "executionComplete": {
        +            "const": false,
        +            "description": "False until the entire audit result is ready for delivery.",
        +            "type": "boolean"
        +          },
        +          "jobId": {
        +            "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        +            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +            "type": "string"
        +          },
        +          "nextAction": {
        +            "const": "poll_same_tool",
        +            "description": "Call this same tool again with pollArguments.",
        +            "type": "string"
        +          },
        +          "pollArguments": {
        +            "additionalProperties": false,
        +            "description": "Copy these arguments unchanged to retrieve this existing audit without starting another scan. The public target supports clients that require a target on every call.",
        +            "properties": {
        +              "jobId": {
        +                "description": "The same opaque audit job identifier.",
        +                "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +                "type": "string"
        +              },
        +              "target": {
        +                "description": "Public polling target for this job, without URL credentials, query or fragment. It does not change the original scan target.",
        +                "maxLength": 2048,
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "jobId"
        +            ],
        +            "type": "object"
        +          },
        +          "retryAfterMs": {
        +            "description": "Suggested delay in milliseconds before polling this job again.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "status": {
        +            "const": "running",
        +            "description": "The audit is still executing or completing durable delivery.",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "jobId",
        +          "executionComplete",
        +          "nextAction",
        +          "pollArguments",
        +          "retryAfterMs"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "auditExecuted": {
        +            "const": false,
        +            "description": "This request did not execute a new audit.",
        +            "type": "boolean"
        +          },
        +          "reason": {
        +            "description": "The recoverable job request prerequisite.",
        +            "enum": [
        +              "audit_job_busy",
        +              "audit_job_unavailable",
        +              "audit_job_argument_mismatch",
        +              "audit_job_invalid_arguments"
        +            ],
        +            "type": "string"
        +          },
        +          "status": {
        +            "const": "action_required",
        +            "description": "This request did not start a new audit.",
        +            "type": "string"
        +          },
        +          "usageConsumed": {
        +            "const": false,
        +            "description": "This request did not consume additional audit allowance.",
        +            "type": "boolean"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "reason",
        +          "auditExecuted",
        +          "usageConsumed"
        +        ],
        +        "type": "object"
        +      }
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "auditExecuted": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "reason": {
        +        "enum": [
        +          "entitlement_required",
        +          "target_verification_required",
        +          "target_reverification_required",
        +          "verification_scope_required",
        +          "usage_limit_reached",
        +          "authorization_consent_required"
        +        ],
        +        "type": "string"
        +      },
        +      "status": {
        +        "const": "action_required",
        +        "type": "string"
        +      },
        +      "usageConsumed": {
        +        "const": false,
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "reason",
        +      "auditExecuted",
        +      "usageConsumed"
        +    ],
        +    "type": "object"
        +  }
        +]
    • Changedaudit_seo3 fields changed
      • changedInput schema / anyOf
        Previous value: -[
        -  {
        -    "required": [
        -      "target"
        -    ]
        -  },
        -  {
        -    "maxProperties": 1,
        -    "required": [
        -      "jobId"
        -    ]
        -  }
        -]New value: +[
        +  {
        +    "required": [
        +      "target"
        +    ]
        +  },
        +  {
        +    "required": [
        +      "jobId"
        +    ]
        +  }
        +]
      • changedInput schema / properties / jobId / description
        Previous value: -"Resume an existing audit by polling this same tool with its returned jobId. Prefer jobId alone; if repeating other arguments, supply every original argument unchanged. Never invent a jobId."New value: +"Resume an existing audit by polling this same tool with the returned pollArguments. Keep target and jobId unchanged. If repeating scan options, supply every original argument unchanged. Never invent a jobId."
      • changedOutput schema / oneOf
        Previous value: -[
        -  {
        -    "oneOf": [
        -      {
        -        "additionalProperties": true,
        -        "properties": {
        -          "auditDetails": {
        -            "additionalProperties": true,
        -            "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        -            "type": "object"
        -          },
        -          "counts": {
        -            "additionalProperties": false,
        -            "description": "Finding totals grouped by normalized severity.",
        -            "properties": {
        -              "critical": {
        -                "description": "Number of critical findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "high": {
        -                "description": "Number of high-severity findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "info": {
        -                "description": "Number of informational findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "low": {
        -                "description": "Number of low-severity findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              },
        -              "medium": {
        -                "description": "Number of medium-severity findings.",
        -                "minimum": 0,
        -                "type": "integer"
        -              }
        -            },
        -            "required": [
        -              "critical",
        -              "high",
        -              "medium",
        -              "low",
        -              "info"
        -            ],
        -            "type": "object"
        -          },
        -          "coverageStatus": {
        -            "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        -            "enum": [
        -              "measured",
        -              "partial",
        -              "unavailable",
        -              "not_applicable"
        -            ],
        -            "type": "string"
        -          },
        -          "executionComplete": {
        -            "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        -            "type": "boolean"
        -          },
        -          "findings": {
        -            "description": "Prioritized findings with evidence, impact, and remediation.",
        -            "items": {
        -              "additionalProperties": false,
        -              "properties": {
        -                "category": {
        -                  "description": "Stable audit category for grouping related findings.",
        -                  "type": "string"
        -                },
        -                "evidence": {
        -                  "description": "Bounded observation that supports the finding.",
        -                  "type": "string"
        -                },
        -                "findingKey": {
        -                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -                  "maxLength": 512,
        -                  "minLength": 1,
        -                  "type": "string"
        -                },
        -                "impact": {
        -                  "description": "Why the finding matters to the audited website.",
        -                  "type": "string"
        -                },
        -                "location": {
        -                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -                  "type": "string"
        -                },
        -                "remediation": {
        -                  "description": "Concrete recommended fix or mitigation.",
        -                  "type": "string"
        -                },
        -                "severity": {
        -                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -                  "type": "string"
        -                },
        -                "title": {
        -                  "description": "Short human-readable finding title.",
        -                  "type": "string"
        -                }
        -              },
        -              "required": [
        -                "findingKey",
        -                "severity",
        -                "title",
        -                "evidence",
        -                "impact",
        -                "remediation",
        -                "category"
        -              ],
        -              "type": "object"
        -            },
        -            "type": "array"
        -          },
        -          "findingsTruncated": {
        -            "description": "True when additional findings exist outside this response.",
        -            "type": "boolean"
        -          },
        -          "grade": {
        -            "description": "Human-readable grade, or null when unavailable.",
        -            "type": [
        -              "string",
        -              "null"
        -            ]
        -          },
        -          "kind": {
        -            "description": "Audit pillar represented by this result.",
        -            "type": "string"
        -          },
        -          "passingChecks": {
        -            "description": "Number of checks that passed or reported protection.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "passingFindings": {
        -            "description": "Positive observations retained with their complete evidence.",
        -            "items": {
        -              "additionalProperties": false,
        -              "properties": {
        -                "category": {
        -                  "description": "Stable audit category for grouping related findings.",
        -                  "type": "string"
        -                },
        -                "evidence": {
        -                  "description": "Bounded observation that supports the finding.",
        -                  "type": "string"
        -                },
        -                "findingKey": {
        -                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -                  "maxLength": 512,
        -                  "minLength": 1,
        -                  "type": "string"
        -                },
        -                "impact": {
        -                  "description": "Why the finding matters to the audited website.",
        -                  "type": "string"
        -                },
        -                "location": {
        -                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -                  "type": "string"
        -                },
        -                "remediation": {
        -                  "description": "Concrete recommended fix or mitigation.",
        -                  "type": "string"
        -                },
        -                "severity": {
        -                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -                  "type": "string"
        -                },
        -                "title": {
        -                  "description": "Short human-readable finding title.",
        -                  "type": "string"
        -                }
        -              },
        -              "required": [
        -                "findingKey",
        -                "severity",
        -                "title",
        -                "evidence",
        -                "impact",
        -                "remediation",
        -                "category"
        -              ],
        -              "type": "object"
        -            },
        -            "type": "array"
        -          },
        -          "returnedFindings": {
        -            "description": "Number of findings included in this response.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "score": {
        -            "description": "Measured score from 0 to 100, or null when unavailable.",
        -            "type": [
        -              "number",
        -              "null"
        -            ]
        -          },
        -          "status": {
        -            "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        -            "enum": [
        -              "completed",
        -              "partial"
        -            ],
        -            "type": "string"
        -          },
        -          "target": {
        -            "description": "Canonical audited target.",
        -            "type": "string"
        -          },
        -          "total": {
        -            "description": "Total findings produced before response truncation.",
        -            "minimum": 0,
        -            "type": "integer"
        -          }
        -        },
        -        "required": [
        -          "target",
        -          "kind",
        -          "score",
        -          "grade",
        -          "counts",
        -          "total",
        -          "returnedFindings",
        -          "findingsTruncated",
        -          "passingChecks",
        -          "findings"
        -        ],
        -        "type": "object"
        -      },
        -      {
        -        "additionalProperties": false,
        -        "properties": {
        -          "executionComplete": {
        -            "const": false,
        -            "description": "False until the entire audit result is ready for delivery.",
        -            "type": "boolean"
        -          },
        -          "jobId": {
        -            "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        -            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -            "type": "string"
        -          },
        -          "nextAction": {
        -            "const": "poll_same_tool",
        -            "description": "Call this same tool again with pollArguments.",
        -            "type": "string"
        -          },
        -          "pollArguments": {
        -            "additionalProperties": false,
        -            "description": "Arguments for retrieving this existing audit without starting another scan.",
        -            "properties": {
        -              "jobId": {
        -                "description": "The same opaque audit job identifier.",
        -                "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -                "type": "string"
        -              }
        -            },
        -            "required": [
        -              "jobId"
        -            ],
        -            "type": "object"
        -          },
        -          "retryAfterMs": {
        -            "description": "Suggested delay in milliseconds before polling this job again.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "status": {
        -            "const": "running",
        -            "description": "The audit is still executing or completing durable delivery.",
        -            "type": "string"
        -          }
        -        },
        -        "required": [
        -          "status",
        -          "jobId",
        -          "executionComplete",
        -          "nextAction",
        -          "pollArguments",
        -          "retryAfterMs"
        -        ],
        -        "type": "object"
        -      },
        -      {
        -        "additionalProperties": false,
        -        "properties": {
        -          "auditExecuted": {
        -            "const": false,
        -            "description": "This request did not execute a new audit.",
        -            "type": "boolean"
        -          },
        -          "reason": {
        -            "description": "The recoverable job request prerequisite.",
        -            "enum": [
        -              "audit_job_busy",
        -              "audit_job_unavailable",
        -              "audit_job_argument_mismatch",
        -              "audit_job_invalid_arguments"
        -            ],
        -            "type": "string"
        -          },
        -          "status": {
        -            "const": "action_required",
        -            "description": "This request did not start a new audit.",
        -            "type": "string"
        -          },
        -          "usageConsumed": {
        -            "const": false,
        -            "description": "This request did not consume additional audit allowance.",
        -            "type": "boolean"
        -          }
        -        },
        -        "required": [
        -          "status",
        -          "reason",
        -          "auditExecuted",
        -          "usageConsumed"
        -        ],
        -        "type": "object"
        -      }
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "auditExecuted": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "reason": {
        -        "enum": [
        -          "entitlement_required",
        -          "target_verification_required",
        -          "target_reverification_required",
        -          "verification_scope_required",
        -          "usage_limit_reached",
        -          "authorization_consent_required"
        -        ],
        -        "type": "string"
        -      },
        -      "status": {
        -        "const": "action_required",
        -        "type": "string"
        -      },
        -      "usageConsumed": {
        -        "const": false,
        -        "type": "boolean"
        -      }
        -    },
        -    "required": [
        -      "status",
        -      "reason",
        -      "auditExecuted",
        -      "usageConsumed"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "oneOf": [
        +      {
        +        "additionalProperties": true,
        +        "properties": {
        +          "auditDetails": {
        +            "additionalProperties": true,
        +            "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        +            "type": "object"
        +          },
        +          "counts": {
        +            "additionalProperties": false,
        +            "description": "Finding totals grouped by normalized severity.",
        +            "properties": {
        +              "critical": {
        +                "description": "Number of critical findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "high": {
        +                "description": "Number of high-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "info": {
        +                "description": "Number of informational findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "low": {
        +                "description": "Number of low-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "medium": {
        +                "description": "Number of medium-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              }
        +            },
        +            "required": [
        +              "critical",
        +              "high",
        +              "medium",
        +              "low",
        +              "info"
        +            ],
        +            "type": "object"
        +          },
        +          "coverageStatus": {
        +            "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +            "enum": [
        +              "measured",
        +              "partial",
        +              "unavailable",
        +              "not_applicable"
        +            ],
        +            "type": "string"
        +          },
        +          "executionComplete": {
        +            "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +            "type": "boolean"
        +          },
        +          "findings": {
        +            "description": "Prioritized findings with evidence, impact, and remediation.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "findingsTruncated": {
        +            "description": "True when additional findings exist outside this response.",
        +            "type": "boolean"
        +          },
        +          "grade": {
        +            "description": "Human-readable grade, or null when unavailable.",
        +            "type": [
        +              "string",
        +              "null"
        +            ]
        +          },
        +          "kind": {
        +            "description": "Audit pillar represented by this result.",
        +            "type": "string"
        +          },
        +          "passingChecks": {
        +            "description": "Number of checks that passed or reported protection.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "passingFindings": {
        +            "description": "Positive observations retained with their complete evidence.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "returnedFindings": {
        +            "description": "Number of findings included in this response.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "score": {
        +            "description": "Measured score from 0 to 100, or null when unavailable.",
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          },
        +          "status": {
        +            "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +            "enum": [
        +              "completed",
        +              "partial"
        +            ],
        +            "type": "string"
        +          },
        +          "target": {
        +            "description": "Canonical audited target.",
        +            "type": "string"
        +          },
        +          "total": {
        +            "description": "Total findings produced before response truncation.",
        +            "minimum": 0,
        +            "type": "integer"
        +          }
        +        },
        +        "required": [
        +          "target",
        +          "kind",
        +          "score",
        +          "grade",
        +          "counts",
        +          "total",
        +          "returnedFindings",
        +          "findingsTruncated",
        +          "passingChecks",
        +          "findings"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "executionComplete": {
        +            "const": false,
        +            "description": "False until the entire audit result is ready for delivery.",
        +            "type": "boolean"
        +          },
        +          "jobId": {
        +            "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        +            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +            "type": "string"
        +          },
        +          "nextAction": {
        +            "const": "poll_same_tool",
        +            "description": "Call this same tool again with pollArguments.",
        +            "type": "string"
        +          },
        +          "pollArguments": {
        +            "additionalProperties": false,
        +            "description": "Copy these arguments unchanged to retrieve this existing audit without starting another scan. The public target supports clients that require a target on every call.",
        +            "properties": {
        +              "jobId": {
        +                "description": "The same opaque audit job identifier.",
        +                "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +                "type": "string"
        +              },
        +              "target": {
        +                "description": "Public polling target for this job, without URL credentials, query or fragment. It does not change the original scan target.",
        +                "maxLength": 2048,
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "jobId"
        +            ],
        +            "type": "object"
        +          },
        +          "retryAfterMs": {
        +            "description": "Suggested delay in milliseconds before polling this job again.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "status": {
        +            "const": "running",
        +            "description": "The audit is still executing or completing durable delivery.",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "jobId",
        +          "executionComplete",
        +          "nextAction",
        +          "pollArguments",
        +          "retryAfterMs"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "auditExecuted": {
        +            "const": false,
        +            "description": "This request did not execute a new audit.",
        +            "type": "boolean"
        +          },
        +          "reason": {
        +            "description": "The recoverable job request prerequisite.",
        +            "enum": [
        +              "audit_job_busy",
        +              "audit_job_unavailable",
        +              "audit_job_argument_mismatch",
        +              "audit_job_invalid_arguments"
        +            ],
        +            "type": "string"
        +          },
        +          "status": {
        +            "const": "action_required",
        +            "description": "This request did not start a new audit.",
        +            "type": "string"
        +          },
        +          "usageConsumed": {
        +            "const": false,
        +            "description": "This request did not consume additional audit allowance.",
        +            "type": "boolean"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "reason",
        +          "auditExecuted",
        +          "usageConsumed"
        +        ],
        +        "type": "object"
        +      }
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "auditExecuted": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "reason": {
        +        "enum": [
        +          "entitlement_required",
        +          "target_verification_required",
        +          "target_reverification_required",
        +          "verification_scope_required",
        +          "usage_limit_reached",
        +          "authorization_consent_required"
        +        ],
        +        "type": "string"
        +      },
        +      "status": {
        +        "const": "action_required",
        +        "type": "string"
        +      },
        +      "usageConsumed": {
        +        "const": false,
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "reason",
        +      "auditExecuted",
        +      "usageConsumed"
        +    ],
        +    "type": "object"
        +  }
        +]
  3. 7 tool updates
    • Changedaudit_accessibility1 field changed
      • changedOutput schema / oneOf
        Previous value: -[
        -  {
        -    "additionalProperties": true,
        -    "properties": {
        -      "auditDetails": {
        -        "additionalProperties": true,
        -        "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        -        "type": "object"
        -      },
        -      "counts": {
        -        "additionalProperties": false,
        -        "description": "Finding totals grouped by normalized severity.",
        -        "properties": {
        -          "critical": {
        -            "description": "Number of critical findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "high": {
        -            "description": "Number of high-severity findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "info": {
        -            "description": "Number of informational findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "low": {
        -            "description": "Number of low-severity findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "medium": {
        -            "description": "Number of medium-severity findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          }
        -        },
        -        "required": [
        -          "critical",
        -          "high",
        -          "medium",
        -          "low",
        -          "info"
        -        ],
        -        "type": "object"
        -      },
        -      "coverageStatus": {
        -        "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        -        "enum": [
        -          "measured",
        -          "partial",
        -          "unavailable",
        -          "not_applicable"
        -        ],
        -        "type": "string"
        -      },
        -      "executionComplete": {
        -        "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        -        "type": "boolean"
        -      },
        -      "findings": {
        -        "description": "Prioritized findings with evidence, impact, and remediation.",
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "category": {
        -              "description": "Stable audit category for grouping related findings.",
        -              "type": "string"
        -            },
        -            "evidence": {
        -              "description": "Bounded observation that supports the finding.",
        -              "type": "string"
        -            },
        -            "findingKey": {
        -              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -              "maxLength": 512,
        -              "minLength": 1,
        -              "type": "string"
        -            },
        -            "impact": {
        -              "description": "Why the finding matters to the audited website.",
        -              "type": "string"
        -            },
        -            "location": {
        -              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -              "type": "string"
        -            },
        -            "remediation": {
        -              "description": "Concrete recommended fix or mitigation.",
        -              "type": "string"
        -            },
        -            "severity": {
        -              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -              "type": "string"
        -            },
        -            "title": {
        -              "description": "Short human-readable finding title.",
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "findingKey",
        -            "severity",
        -            "title",
        -            "evidence",
        -            "impact",
        -            "remediation",
        -            "category"
        -          ],
        -          "type": "object"
        -        },
        -        "type": "array"
        -      },
        -      "findingsTruncated": {
        -        "description": "True when additional findings exist outside this response.",
        -        "type": "boolean"
        -      },
        -      "grade": {
        -        "description": "Human-readable grade, or null when unavailable.",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "kind": {
        -        "description": "Audit pillar represented by this result.",
        -        "type": "string"
        -      },
        -      "passingChecks": {
        -        "description": "Number of checks that passed or reported protection.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "passingFindings": {
        -        "description": "Positive observations retained with their complete evidence.",
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "category": {
        -              "description": "Stable audit category for grouping related findings.",
        -              "type": "string"
        -            },
        -            "evidence": {
        -              "description": "Bounded observation that supports the finding.",
        -              "type": "string"
        -            },
        -            "findingKey": {
        -              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -              "maxLength": 512,
        -              "minLength": 1,
        -              "type": "string"
        -            },
        -            "impact": {
        -              "description": "Why the finding matters to the audited website.",
        -              "type": "string"
        -            },
        -            "location": {
        -              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -              "type": "string"
        -            },
        -            "remediation": {
        -              "description": "Concrete recommended fix or mitigation.",
        -              "type": "string"
        -            },
        -            "severity": {
        -              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -              "type": "string"
        -            },
        -            "title": {
        -              "description": "Short human-readable finding title.",
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "findingKey",
        -            "severity",
        -            "title",
        -            "evidence",
        -            "impact",
        -            "remediation",
        -            "category"
        -          ],
        -          "type": "object"
        -        },
        -        "type": "array"
        -      },
        -      "returnedFindings": {
        -        "description": "Number of findings included in this response.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "score": {
        -        "description": "Measured score from 0 to 100, or null when unavailable.",
        -        "type": [
        -          "number",
        -          "null"
        -        ]
        -      },
        -      "status": {
        -        "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        -        "enum": [
        -          "completed",
        -          "partial"
        -        ],
        -        "type": "string"
        -      },
        -      "target": {
        -        "description": "Canonical audited target.",
        -        "type": "string"
        -      },
        -      "total": {
        -        "description": "Total findings produced before response truncation.",
        -        "minimum": 0,
        -        "type": "integer"
        -      }
        -    },
        -    "required": [
        -      "target",
        -      "kind",
        -      "score",
        -      "grade",
        -      "counts",
        -      "total",
        -      "returnedFindings",
        -      "findingsTruncated",
        -      "passingChecks",
        -      "findings"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "executionComplete": {
        -        "const": false,
        -        "description": "False until the entire audit result is ready for delivery.",
        -        "type": "boolean"
        -      },
        -      "jobId": {
        -        "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        -        "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -        "type": "string"
        -      },
        -      "nextAction": {
        -        "const": "poll_same_tool",
        -        "description": "Call this same tool again with pollArguments.",
        -        "type": "string"
        -      },
        -      "pollArguments": {
        -        "additionalProperties": false,
        -        "description": "Arguments for retrieving this existing audit without starting another scan.",
        -        "properties": {
        -          "jobId": {
        -            "description": "The same opaque audit job identifier.",
        -            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -            "type": "string"
        -          }
        -        },
        -        "required": [
        -          "jobId"
        -        ],
        -        "type": "object"
        -      },
        -      "retryAfterMs": {
        -        "description": "Suggested delay in milliseconds before polling this job again.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "status": {
        -        "const": "running",
        -        "description": "The audit is still executing or completing durable delivery.",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "status",
        -      "jobId",
        -      "executionComplete",
        -      "nextAction",
        -      "pollArguments",
        -      "retryAfterMs"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "auditExecuted": {
        -        "const": false,
        -        "description": "This request did not execute a new audit.",
        -        "type": "boolean"
        -      },
        -      "reason": {
        -        "description": "The recoverable job request prerequisite.",
        -        "enum": [
        -          "audit_job_busy",
        -          "audit_job_unavailable",
        -          "audit_job_argument_mismatch",
        -          "audit_job_invalid_arguments"
        -        ],
        -        "type": "string"
        -      },
        -      "status": {
        -        "const": "action_required",
        -        "description": "This request did not start a new audit.",
        -        "type": "string"
        -      },
        -      "usageConsumed": {
        -        "const": false,
        -        "description": "This request did not consume additional audit allowance.",
        -        "type": "boolean"
        -      }
        -    },
        -    "required": [
        -      "status",
        -      "reason",
        -      "auditExecuted",
        -      "usageConsumed"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "oneOf": [
        +      {
        +        "additionalProperties": true,
        +        "properties": {
        +          "auditDetails": {
        +            "additionalProperties": true,
        +            "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        +            "type": "object"
        +          },
        +          "counts": {
        +            "additionalProperties": false,
        +            "description": "Finding totals grouped by normalized severity.",
        +            "properties": {
        +              "critical": {
        +                "description": "Number of critical findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "high": {
        +                "description": "Number of high-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "info": {
        +                "description": "Number of informational findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "low": {
        +                "description": "Number of low-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "medium": {
        +                "description": "Number of medium-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              }
        +            },
        +            "required": [
        +              "critical",
        +              "high",
        +              "medium",
        +              "low",
        +              "info"
        +            ],
        +            "type": "object"
        +          },
        +          "coverageStatus": {
        +            "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +            "enum": [
        +              "measured",
        +              "partial",
        +              "unavailable",
        +              "not_applicable"
        +            ],
        +            "type": "string"
        +          },
        +          "executionComplete": {
        +            "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +            "type": "boolean"
        +          },
        +          "findings": {
        +            "description": "Prioritized findings with evidence, impact, and remediation.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "findingsTruncated": {
        +            "description": "True when additional findings exist outside this response.",
        +            "type": "boolean"
        +          },
        +          "grade": {
        +            "description": "Human-readable grade, or null when unavailable.",
        +            "type": [
        +              "string",
        +              "null"
        +            ]
        +          },
        +          "kind": {
        +            "description": "Audit pillar represented by this result.",
        +            "type": "string"
        +          },
        +          "passingChecks": {
        +            "description": "Number of checks that passed or reported protection.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "passingFindings": {
        +            "description": "Positive observations retained with their complete evidence.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "returnedFindings": {
        +            "description": "Number of findings included in this response.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "score": {
        +            "description": "Measured score from 0 to 100, or null when unavailable.",
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          },
        +          "status": {
        +            "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +            "enum": [
        +              "completed",
        +              "partial"
        +            ],
        +            "type": "string"
        +          },
        +          "target": {
        +            "description": "Canonical audited target.",
        +            "type": "string"
        +          },
        +          "total": {
        +            "description": "Total findings produced before response truncation.",
        +            "minimum": 0,
        +            "type": "integer"
        +          }
        +        },
        +        "required": [
        +          "target",
        +          "kind",
        +          "score",
        +          "grade",
        +          "counts",
        +          "total",
        +          "returnedFindings",
        +          "findingsTruncated",
        +          "passingChecks",
        +          "findings"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "executionComplete": {
        +            "const": false,
        +            "description": "False until the entire audit result is ready for delivery.",
        +            "type": "boolean"
        +          },
        +          "jobId": {
        +            "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        +            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +            "type": "string"
        +          },
        +          "nextAction": {
        +            "const": "poll_same_tool",
        +            "description": "Call this same tool again with pollArguments.",
        +            "type": "string"
        +          },
        +          "pollArguments": {
        +            "additionalProperties": false,
        +            "description": "Arguments for retrieving this existing audit without starting another scan.",
        +            "properties": {
        +              "jobId": {
        +                "description": "The same opaque audit job identifier.",
        +                "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "jobId"
        +            ],
        +            "type": "object"
        +          },
        +          "retryAfterMs": {
        +            "description": "Suggested delay in milliseconds before polling this job again.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "status": {
        +            "const": "running",
        +            "description": "The audit is still executing or completing durable delivery.",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "jobId",
        +          "executionComplete",
        +          "nextAction",
        +          "pollArguments",
        +          "retryAfterMs"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "auditExecuted": {
        +            "const": false,
        +            "description": "This request did not execute a new audit.",
        +            "type": "boolean"
        +          },
        +          "reason": {
        +            "description": "The recoverable job request prerequisite.",
        +            "enum": [
        +              "audit_job_busy",
        +              "audit_job_unavailable",
        +              "audit_job_argument_mismatch",
        +              "audit_job_invalid_arguments"
        +            ],
        +            "type": "string"
        +          },
        +          "status": {
        +            "const": "action_required",
        +            "description": "This request did not start a new audit.",
        +            "type": "string"
        +          },
        +          "usageConsumed": {
        +            "const": false,
        +            "description": "This request did not consume additional audit allowance.",
        +            "type": "boolean"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "reason",
        +          "auditExecuted",
        +          "usageConsumed"
        +        ],
        +        "type": "object"
        +      }
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "auditExecuted": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "reason": {
        +        "enum": [
        +          "entitlement_required",
        +          "target_verification_required",
        +          "target_reverification_required",
        +          "verification_scope_required",
        +          "usage_limit_reached",
        +          "authorization_consent_required"
        +        ],
        +        "type": "string"
        +      },
        +      "status": {
        +        "const": "action_required",
        +        "type": "string"
        +      },
        +      "usageConsumed": {
        +        "const": false,
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "reason",
        +      "auditExecuted",
        +      "usageConsumed"
        +    ],
        +    "type": "object"
        +  }
        +]
    • Changedaudit_ai_visibility1 field changed
      • changedOutput schema / oneOf
        Previous value: -[
        -  {
        -    "additionalProperties": true,
        -    "properties": {
        -      "auditDetails": {
        -        "additionalProperties": true,
        -        "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        -        "type": "object"
        -      },
        -      "counts": {
        -        "additionalProperties": false,
        -        "description": "Finding totals grouped by normalized severity.",
        -        "properties": {
        -          "critical": {
        -            "description": "Number of critical findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "high": {
        -            "description": "Number of high-severity findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "info": {
        -            "description": "Number of informational findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "low": {
        -            "description": "Number of low-severity findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "medium": {
        -            "description": "Number of medium-severity findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          }
        -        },
        -        "required": [
        -          "critical",
        -          "high",
        -          "medium",
        -          "low",
        -          "info"
        -        ],
        -        "type": "object"
        -      },
        -      "coverageStatus": {
        -        "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        -        "enum": [
        -          "measured",
        -          "partial",
        -          "unavailable",
        -          "not_applicable"
        -        ],
        -        "type": "string"
        -      },
        -      "executionComplete": {
        -        "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        -        "type": "boolean"
        -      },
        -      "findings": {
        -        "description": "Prioritized findings with evidence, impact, and remediation.",
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "category": {
        -              "description": "Stable audit category for grouping related findings.",
        -              "type": "string"
        -            },
        -            "evidence": {
        -              "description": "Bounded observation that supports the finding.",
        -              "type": "string"
        -            },
        -            "findingKey": {
        -              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -              "maxLength": 512,
        -              "minLength": 1,
        -              "type": "string"
        -            },
        -            "impact": {
        -              "description": "Why the finding matters to the audited website.",
        -              "type": "string"
        -            },
        -            "location": {
        -              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -              "type": "string"
        -            },
        -            "remediation": {
        -              "description": "Concrete recommended fix or mitigation.",
        -              "type": "string"
        -            },
        -            "severity": {
        -              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -              "type": "string"
        -            },
        -            "title": {
        -              "description": "Short human-readable finding title.",
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "findingKey",
        -            "severity",
        -            "title",
        -            "evidence",
        -            "impact",
        -            "remediation",
        -            "category"
        -          ],
        -          "type": "object"
        -        },
        -        "type": "array"
        -      },
        -      "findingsTruncated": {
        -        "description": "True when additional findings exist outside this response.",
        -        "type": "boolean"
        -      },
        -      "grade": {
        -        "description": "Human-readable grade, or null when unavailable.",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "kind": {
        -        "description": "Audit pillar represented by this result.",
        -        "type": "string"
        -      },
        -      "passingChecks": {
        -        "description": "Number of checks that passed or reported protection.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "passingFindings": {
        -        "description": "Positive observations retained with their complete evidence.",
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "category": {
        -              "description": "Stable audit category for grouping related findings.",
        -              "type": "string"
        -            },
        -            "evidence": {
        -              "description": "Bounded observation that supports the finding.",
        -              "type": "string"
        -            },
        -            "findingKey": {
        -              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -              "maxLength": 512,
        -              "minLength": 1,
        -              "type": "string"
        -            },
        -            "impact": {
        -              "description": "Why the finding matters to the audited website.",
        -              "type": "string"
        -            },
        -            "location": {
        -              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -              "type": "string"
        -            },
        -            "remediation": {
        -              "description": "Concrete recommended fix or mitigation.",
        -              "type": "string"
        -            },
        -            "severity": {
        -              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -              "type": "string"
        -            },
        -            "title": {
        -              "description": "Short human-readable finding title.",
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "findingKey",
        -            "severity",
        -            "title",
        -            "evidence",
        -            "impact",
        -            "remediation",
        -            "category"
        -          ],
        -          "type": "object"
        -        },
        -        "type": "array"
        -      },
        -      "returnedFindings": {
        -        "description": "Number of findings included in this response.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "score": {
        -        "description": "Measured score from 0 to 100, or null when unavailable.",
        -        "type": [
        -          "number",
        -          "null"
        -        ]
        -      },
        -      "status": {
        -        "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        -        "enum": [
        -          "completed",
        -          "partial"
        -        ],
        -        "type": "string"
        -      },
        -      "target": {
        -        "description": "Canonical audited target.",
        -        "type": "string"
        -      },
        -      "total": {
        -        "description": "Total findings produced before response truncation.",
        -        "minimum": 0,
        -        "type": "integer"
        -      }
        -    },
        -    "required": [
        -      "target",
        -      "kind",
        -      "score",
        -      "grade",
        -      "counts",
        -      "total",
        -      "returnedFindings",
        -      "findingsTruncated",
        -      "passingChecks",
        -      "findings"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "executionComplete": {
        -        "const": false,
        -        "description": "False until the entire audit result is ready for delivery.",
        -        "type": "boolean"
        -      },
        -      "jobId": {
        -        "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        -        "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -        "type": "string"
        -      },
        -      "nextAction": {
        -        "const": "poll_same_tool",
        -        "description": "Call this same tool again with pollArguments.",
        -        "type": "string"
        -      },
        -      "pollArguments": {
        -        "additionalProperties": false,
        -        "description": "Arguments for retrieving this existing audit without starting another scan.",
        -        "properties": {
        -          "jobId": {
        -            "description": "The same opaque audit job identifier.",
        -            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -            "type": "string"
        -          }
        -        },
        -        "required": [
        -          "jobId"
        -        ],
        -        "type": "object"
        -      },
        -      "retryAfterMs": {
        -        "description": "Suggested delay in milliseconds before polling this job again.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "status": {
        -        "const": "running",
        -        "description": "The audit is still executing or completing durable delivery.",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "status",
        -      "jobId",
        -      "executionComplete",
        -      "nextAction",
        -      "pollArguments",
        -      "retryAfterMs"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "auditExecuted": {
        -        "const": false,
        -        "description": "This request did not execute a new audit.",
        -        "type": "boolean"
        -      },
        -      "reason": {
        -        "description": "The recoverable job request prerequisite.",
        -        "enum": [
        -          "audit_job_busy",
        -          "audit_job_unavailable",
        -          "audit_job_argument_mismatch",
        -          "audit_job_invalid_arguments"
        -        ],
        -        "type": "string"
        -      },
        -      "status": {
        -        "const": "action_required",
        -        "description": "This request did not start a new audit.",
        -        "type": "string"
        -      },
        -      "usageConsumed": {
        -        "const": false,
        -        "description": "This request did not consume additional audit allowance.",
        -        "type": "boolean"
        -      }
        -    },
        -    "required": [
        -      "status",
        -      "reason",
        -      "auditExecuted",
        -      "usageConsumed"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "oneOf": [
        +      {
        +        "additionalProperties": true,
        +        "properties": {
        +          "auditDetails": {
        +            "additionalProperties": true,
        +            "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        +            "type": "object"
        +          },
        +          "counts": {
        +            "additionalProperties": false,
        +            "description": "Finding totals grouped by normalized severity.",
        +            "properties": {
        +              "critical": {
        +                "description": "Number of critical findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "high": {
        +                "description": "Number of high-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "info": {
        +                "description": "Number of informational findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "low": {
        +                "description": "Number of low-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "medium": {
        +                "description": "Number of medium-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              }
        +            },
        +            "required": [
        +              "critical",
        +              "high",
        +              "medium",
        +              "low",
        +              "info"
        +            ],
        +            "type": "object"
        +          },
        +          "coverageStatus": {
        +            "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +            "enum": [
        +              "measured",
        +              "partial",
        +              "unavailable",
        +              "not_applicable"
        +            ],
        +            "type": "string"
        +          },
        +          "executionComplete": {
        +            "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +            "type": "boolean"
        +          },
        +          "findings": {
        +            "description": "Prioritized findings with evidence, impact, and remediation.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "findingsTruncated": {
        +            "description": "True when additional findings exist outside this response.",
        +            "type": "boolean"
        +          },
        +          "grade": {
        +            "description": "Human-readable grade, or null when unavailable.",
        +            "type": [
        +              "string",
        +              "null"
        +            ]
        +          },
        +          "kind": {
        +            "description": "Audit pillar represented by this result.",
        +            "type": "string"
        +          },
        +          "passingChecks": {
        +            "description": "Number of checks that passed or reported protection.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "passingFindings": {
        +            "description": "Positive observations retained with their complete evidence.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "returnedFindings": {
        +            "description": "Number of findings included in this response.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "score": {
        +            "description": "Measured score from 0 to 100, or null when unavailable.",
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          },
        +          "status": {
        +            "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +            "enum": [
        +              "completed",
        +              "partial"
        +            ],
        +            "type": "string"
        +          },
        +          "target": {
        +            "description": "Canonical audited target.",
        +            "type": "string"
        +          },
        +          "total": {
        +            "description": "Total findings produced before response truncation.",
        +            "minimum": 0,
        +            "type": "integer"
        +          }
        +        },
        +        "required": [
        +          "target",
        +          "kind",
        +          "score",
        +          "grade",
        +          "counts",
        +          "total",
        +          "returnedFindings",
        +          "findingsTruncated",
        +          "passingChecks",
        +          "findings"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "executionComplete": {
        +            "const": false,
        +            "description": "False until the entire audit result is ready for delivery.",
        +            "type": "boolean"
        +          },
        +          "jobId": {
        +            "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        +            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +            "type": "string"
        +          },
        +          "nextAction": {
        +            "const": "poll_same_tool",
        +            "description": "Call this same tool again with pollArguments.",
        +            "type": "string"
        +          },
        +          "pollArguments": {
        +            "additionalProperties": false,
        +            "description": "Arguments for retrieving this existing audit without starting another scan.",
        +            "properties": {
        +              "jobId": {
        +                "description": "The same opaque audit job identifier.",
        +                "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "jobId"
        +            ],
        +            "type": "object"
        +          },
        +          "retryAfterMs": {
        +            "description": "Suggested delay in milliseconds before polling this job again.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "status": {
        +            "const": "running",
        +            "description": "The audit is still executing or completing durable delivery.",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "jobId",
        +          "executionComplete",
        +          "nextAction",
        +          "pollArguments",
        +          "retryAfterMs"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "auditExecuted": {
        +            "const": false,
        +            "description": "This request did not execute a new audit.",
        +            "type": "boolean"
        +          },
        +          "reason": {
        +            "description": "The recoverable job request prerequisite.",
        +            "enum": [
        +              "audit_job_busy",
        +              "audit_job_unavailable",
        +              "audit_job_argument_mismatch",
        +              "audit_job_invalid_arguments"
        +            ],
        +            "type": "string"
        +          },
        +          "status": {
        +            "const": "action_required",
        +            "description": "This request did not start a new audit.",
        +            "type": "string"
        +          },
        +          "usageConsumed": {
        +            "const": false,
        +            "description": "This request did not consume additional audit allowance.",
        +            "type": "boolean"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "reason",
        +          "auditExecuted",
        +          "usageConsumed"
        +        ],
        +        "type": "object"
        +      }
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "auditExecuted": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "reason": {
        +        "enum": [
        +          "entitlement_required",
        +          "target_verification_required",
        +          "target_reverification_required",
        +          "verification_scope_required",
        +          "usage_limit_reached",
        +          "authorization_consent_required"
        +        ],
        +        "type": "string"
        +      },
        +      "status": {
        +        "const": "action_required",
        +        "type": "string"
        +      },
        +      "usageConsumed": {
        +        "const": false,
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "reason",
        +      "auditExecuted",
        +      "usageConsumed"
        +    ],
        +    "type": "object"
        +  }
        +]
    • Changedaudit_full1 field changed
      • changedOutput schema / oneOf
        Previous value: -[
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "auditDetails": {
        -        "additionalProperties": true,
        -        "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        -        "type": "object"
        -      },
        -      "blended": {
        -        "description": "Weighted score across measured pillars, or null when no pillar could be measured.",
        -        "type": [
        -          "number",
        -          "null"
        -        ]
        -      },
        -      "complete": {
        -        "description": "Compatibility field: every requested pillar runner returned. Consult coverageStatus and auditDetails for unmeasured modules and metrics.",
        -        "type": "boolean"
        -      },
        -      "counts": {
        -        "additionalProperties": false,
        -        "description": "Finding totals grouped by normalized severity.",
        -        "properties": {
        -          "critical": {
        -            "description": "Number of critical findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "high": {
        -            "description": "Number of high-severity findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "info": {
        -            "description": "Number of informational findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "low": {
        -            "description": "Number of low-severity findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "medium": {
        -            "description": "Number of medium-severity findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          }
        -        },
        -        "required": [
        -          "critical",
        -          "high",
        -          "medium",
        -          "low",
        -          "info"
        -        ],
        -        "type": "object"
        -      },
        -      "coverageStatus": {
        -        "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        -        "enum": [
        -          "measured",
        -          "partial",
        -          "unavailable",
        -          "not_applicable"
        -        ],
        -        "type": "string"
        -      },
        -      "executionComplete": {
        -        "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        -        "type": "boolean"
        -      },
        -      "failedPillars": {
        -        "description": "Pillars that could not be measured and their sanitized errors.",
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "error": {
        -              "description": "Sanitized failure reason.",
        -              "type": "string"
        -            },
        -            "pillar": {
        -              "description": "Audit pillar that failed.",
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "pillar",
        -            "error"
        -          ],
        -          "type": "object"
        -        },
        -        "type": "array"
        -      },
        -      "findings": {
        -        "description": "Prioritized findings across every completed audit pillar.",
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "category": {
        -              "description": "Stable audit category for grouping related findings.",
        -              "type": "string"
        -            },
        -            "evidence": {
        -              "description": "Bounded observation that supports the finding.",
        -              "type": "string"
        -            },
        -            "findingKey": {
        -              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -              "maxLength": 512,
        -              "minLength": 1,
        -              "type": "string"
        -            },
        -            "impact": {
        -              "description": "Why the finding matters to the audited website.",
        -              "type": "string"
        -            },
        -            "location": {
        -              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -              "type": "string"
        -            },
        -            "pillar": {
        -              "description": "Audit pillar that produced the finding.",
        -              "type": "string"
        -            },
        -            "remediation": {
        -              "description": "Concrete recommended fix or mitigation.",
        -              "type": "string"
        -            },
        -            "severity": {
        -              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -              "type": "string"
        -            },
        -            "title": {
        -              "description": "Short human-readable finding title.",
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "pillar",
        -            "findingKey",
        -            "severity",
        -            "title",
        -            "evidence",
        -            "impact",
        -            "remediation",
        -            "category"
        -          ],
        -          "type": "object"
        -        },
        -        "type": "array"
        -      },
        -      "findingsTruncated": {
        -        "description": "True when additional findings exist outside this response.",
        -        "type": "boolean"
        -      },
        -      "passingFindings": {
        -        "description": "Positive observations retained with their complete evidence.",
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "category": {
        -              "description": "Stable audit category for grouping related findings.",
        -              "type": "string"
        -            },
        -            "evidence": {
        -              "description": "Bounded observation that supports the finding.",
        -              "type": "string"
        -            },
        -            "findingKey": {
        -              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -              "maxLength": 512,
        -              "minLength": 1,
        -              "type": "string"
        -            },
        -            "impact": {
        -              "description": "Why the finding matters to the audited website.",
        -              "type": "string"
        -            },
        -            "location": {
        -              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -              "type": "string"
        -            },
        -            "pillar": {
        -              "description": "Audit pillar that produced the finding.",
        -              "type": "string"
        -            },
        -            "remediation": {
        -              "description": "Concrete recommended fix or mitigation.",
        -              "type": "string"
        -            },
        -            "severity": {
        -              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -              "type": "string"
        -            },
        -            "title": {
        -              "description": "Short human-readable finding title.",
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "pillar",
        -            "findingKey",
        -            "severity",
        -            "title",
        -            "evidence",
        -            "impact",
        -            "remediation",
        -            "category"
        -          ],
        -          "type": "object"
        -        },
        -        "type": "array"
        -      },
        -      "pillars": {
        -        "additionalProperties": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "findings": {
        -              "description": "Number of findings in this pillar.",
        -              "minimum": 0,
        -              "type": "integer"
        -            },
        -            "score": {
        -              "description": "Pillar score, or null when unavailable.",
        -              "type": [
        -                "number",
        -                "null"
        -              ]
        -            }
        -          },
        -          "required": [
        -            "score",
        -            "findings"
        -          ],
        -          "type": "object"
        -        },
        -        "description": "Per-pillar score and finding-count summary.",
        -        "type": "object"
        -      },
        -      "returnedFindings": {
        -        "description": "Number of cross-pillar findings included.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "status": {
        -        "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        -        "enum": [
        -          "completed",
        -          "partial"
        -        ],
        -        "type": "string"
        -      },
        -      "target": {
        -        "description": "Canonical audited target.",
        -        "type": "string"
        -      },
        -      "total": {
        -        "description": "Total cross-pillar findings before response truncation.",
        -        "minimum": 0,
        -        "type": "integer"
        -      }
        -    },
        -    "required": [
        -      "target",
        -      "blended",
        -      "pillars",
        -      "counts",
        -      "total",
        -      "returnedFindings",
        -      "findingsTruncated",
        -      "findings",
        -      "complete",
        -      "failedPillars"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "executionComplete": {
        -        "const": false,
        -        "description": "False until the entire audit result is ready for delivery.",
        -        "type": "boolean"
        -      },
        -      "jobId": {
        -        "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        -        "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -        "type": "string"
        -      },
        -      "nextAction": {
        -        "const": "poll_same_tool",
        -        "description": "Call this same tool again with pollArguments.",
        -        "type": "string"
        -      },
        -      "pollArguments": {
        -        "additionalProperties": false,
        -        "description": "Arguments for retrieving this existing audit without starting another scan.",
        -        "properties": {
        -          "jobId": {
        -            "description": "The same opaque audit job identifier.",
        -            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -            "type": "string"
        -          }
        -        },
        -        "required": [
        -          "jobId"
        -        ],
        -        "type": "object"
        -      },
        -      "retryAfterMs": {
        -        "description": "Suggested delay in milliseconds before polling this job again.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "status": {
        -        "const": "running",
        -        "description": "The audit is still executing or completing durable delivery.",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "status",
        -      "jobId",
        -      "executionComplete",
        -      "nextAction",
        -      "pollArguments",
        -      "retryAfterMs"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "auditExecuted": {
        -        "const": false,
        -        "description": "This request did not execute a new audit.",
        -        "type": "boolean"
        -      },
        -      "reason": {
        -        "description": "The recoverable job request prerequisite.",
        -        "enum": [
        -          "audit_job_busy",
        -          "audit_job_unavailable",
        -          "audit_job_argument_mismatch",
        -          "audit_job_invalid_arguments"
        -        ],
        -        "type": "string"
        -      },
        -      "status": {
        -        "const": "action_required",
        -        "description": "This request did not start a new audit.",
        -        "type": "string"
        -      },
        -      "usageConsumed": {
        -        "const": false,
        -        "description": "This request did not consume additional audit allowance.",
        -        "type": "boolean"
        -      }
        -    },
        -    "required": [
        -      "status",
        -      "reason",
        -      "auditExecuted",
        -      "usageConsumed"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "oneOf": [
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "auditDetails": {
        +            "additionalProperties": true,
        +            "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        +            "type": "object"
        +          },
        +          "blended": {
        +            "description": "Weighted score across measured pillars, or null when no pillar could be measured.",
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          },
        +          "complete": {
        +            "description": "Compatibility field: every requested pillar runner returned. Consult coverageStatus and auditDetails for unmeasured modules and metrics.",
        +            "type": "boolean"
        +          },
        +          "counts": {
        +            "additionalProperties": false,
        +            "description": "Finding totals grouped by normalized severity.",
        +            "properties": {
        +              "critical": {
        +                "description": "Number of critical findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "high": {
        +                "description": "Number of high-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "info": {
        +                "description": "Number of informational findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "low": {
        +                "description": "Number of low-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "medium": {
        +                "description": "Number of medium-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              }
        +            },
        +            "required": [
        +              "critical",
        +              "high",
        +              "medium",
        +              "low",
        +              "info"
        +            ],
        +            "type": "object"
        +          },
        +          "coverageStatus": {
        +            "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +            "enum": [
        +              "measured",
        +              "partial",
        +              "unavailable",
        +              "not_applicable"
        +            ],
        +            "type": "string"
        +          },
        +          "executionComplete": {
        +            "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +            "type": "boolean"
        +          },
        +          "failedPillars": {
        +            "description": "Pillars that could not be measured and their sanitized errors.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "error": {
        +                  "description": "Sanitized failure reason.",
        +                  "type": "string"
        +                },
        +                "pillar": {
        +                  "description": "Audit pillar that failed.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "pillar",
        +                "error"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "findings": {
        +            "description": "Prioritized findings across every completed audit pillar.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "pillar": {
        +                  "description": "Audit pillar that produced the finding.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "pillar",
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "findingsTruncated": {
        +            "description": "True when additional findings exist outside this response.",
        +            "type": "boolean"
        +          },
        +          "passingFindings": {
        +            "description": "Positive observations retained with their complete evidence.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "pillar": {
        +                  "description": "Audit pillar that produced the finding.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "pillar",
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "pillars": {
        +            "additionalProperties": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "findings": {
        +                  "description": "Number of findings in this pillar.",
        +                  "minimum": 0,
        +                  "type": "integer"
        +                },
        +                "score": {
        +                  "description": "Pillar score, or null when unavailable.",
        +                  "type": [
        +                    "number",
        +                    "null"
        +                  ]
        +                }
        +              },
        +              "required": [
        +                "score",
        +                "findings"
        +              ],
        +              "type": "object"
        +            },
        +            "description": "Per-pillar score and finding-count summary.",
        +            "type": "object"
        +          },
        +          "returnedFindings": {
        +            "description": "Number of cross-pillar findings included.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "status": {
        +            "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +            "enum": [
        +              "completed",
        +              "partial"
        +            ],
        +            "type": "string"
        +          },
        +          "target": {
        +            "description": "Canonical audited target.",
        +            "type": "string"
        +          },
        +          "total": {
        +            "description": "Total cross-pillar findings before response truncation.",
        +            "minimum": 0,
        +            "type": "integer"
        +          }
        +        },
        +        "required": [
        +          "target",
        +          "blended",
        +          "pillars",
        +          "counts",
        +          "total",
        +          "returnedFindings",
        +          "findingsTruncated",
        +          "findings",
        +          "complete",
        +          "failedPillars"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "executionComplete": {
        +            "const": false,
        +            "description": "False until the entire audit result is ready for delivery.",
        +            "type": "boolean"
        +          },
        +          "jobId": {
        +            "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        +            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +            "type": "string"
        +          },
        +          "nextAction": {
        +            "const": "poll_same_tool",
        +            "description": "Call this same tool again with pollArguments.",
        +            "type": "string"
        +          },
        +          "pollArguments": {
        +            "additionalProperties": false,
        +            "description": "Arguments for retrieving this existing audit without starting another scan.",
        +            "properties": {
        +              "jobId": {
        +                "description": "The same opaque audit job identifier.",
        +                "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "jobId"
        +            ],
        +            "type": "object"
        +          },
        +          "retryAfterMs": {
        +            "description": "Suggested delay in milliseconds before polling this job again.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "status": {
        +            "const": "running",
        +            "description": "The audit is still executing or completing durable delivery.",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "jobId",
        +          "executionComplete",
        +          "nextAction",
        +          "pollArguments",
        +          "retryAfterMs"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "auditExecuted": {
        +            "const": false,
        +            "description": "This request did not execute a new audit.",
        +            "type": "boolean"
        +          },
        +          "reason": {
        +            "description": "The recoverable job request prerequisite.",
        +            "enum": [
        +              "audit_job_busy",
        +              "audit_job_unavailable",
        +              "audit_job_argument_mismatch",
        +              "audit_job_invalid_arguments"
        +            ],
        +            "type": "string"
        +          },
        +          "status": {
        +            "const": "action_required",
        +            "description": "This request did not start a new audit.",
        +            "type": "string"
        +          },
        +          "usageConsumed": {
        +            "const": false,
        +            "description": "This request did not consume additional audit allowance.",
        +            "type": "boolean"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "reason",
        +          "auditExecuted",
        +          "usageConsumed"
        +        ],
        +        "type": "object"
        +      }
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "auditExecuted": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "reason": {
        +        "enum": [
        +          "entitlement_required",
        +          "target_verification_required",
        +          "target_reverification_required",
        +          "verification_scope_required",
        +          "usage_limit_reached",
        +          "authorization_consent_required"
        +        ],
        +        "type": "string"
        +      },
        +      "status": {
        +        "const": "action_required",
        +        "type": "string"
        +      },
        +      "usageConsumed": {
        +        "const": false,
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "reason",
        +      "auditExecuted",
        +      "usageConsumed"
        +    ],
        +    "type": "object"
        +  }
        +]
    • Changedaudit_integrations1 field changed
      • changedOutput schema / oneOf
        Previous value: -[
        -  {
        -    "additionalProperties": true,
        -    "properties": {
        -      "auditDetails": {
        -        "additionalProperties": true,
        -        "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        -        "type": "object"
        -      },
        -      "counts": {
        -        "additionalProperties": false,
        -        "description": "Finding totals grouped by normalized severity.",
        -        "properties": {
        -          "critical": {
        -            "description": "Number of critical findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "high": {
        -            "description": "Number of high-severity findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "info": {
        -            "description": "Number of informational findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "low": {
        -            "description": "Number of low-severity findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "medium": {
        -            "description": "Number of medium-severity findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          }
        -        },
        -        "required": [
        -          "critical",
        -          "high",
        -          "medium",
        -          "low",
        -          "info"
        -        ],
        -        "type": "object"
        -      },
        -      "coverageStatus": {
        -        "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        -        "enum": [
        -          "measured",
        -          "partial",
        -          "unavailable",
        -          "not_applicable"
        -        ],
        -        "type": "string"
        -      },
        -      "executionComplete": {
        -        "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        -        "type": "boolean"
        -      },
        -      "findings": {
        -        "description": "Prioritized findings with evidence, impact, and remediation.",
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "category": {
        -              "description": "Stable audit category for grouping related findings.",
        -              "type": "string"
        -            },
        -            "evidence": {
        -              "description": "Bounded observation that supports the finding.",
        -              "type": "string"
        -            },
        -            "findingKey": {
        -              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -              "maxLength": 512,
        -              "minLength": 1,
        -              "type": "string"
        -            },
        -            "impact": {
        -              "description": "Why the finding matters to the audited website.",
        -              "type": "string"
        -            },
        -            "location": {
        -              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -              "type": "string"
        -            },
        -            "remediation": {
        -              "description": "Concrete recommended fix or mitigation.",
        -              "type": "string"
        -            },
        -            "severity": {
        -              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -              "type": "string"
        -            },
        -            "title": {
        -              "description": "Short human-readable finding title.",
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "findingKey",
        -            "severity",
        -            "title",
        -            "evidence",
        -            "impact",
        -            "remediation",
        -            "category"
        -          ],
        -          "type": "object"
        -        },
        -        "type": "array"
        -      },
        -      "findingsTruncated": {
        -        "description": "True when additional findings exist outside this response.",
        -        "type": "boolean"
        -      },
        -      "grade": {
        -        "description": "Human-readable grade, or null when unavailable.",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "kind": {
        -        "description": "Audit pillar represented by this result.",
        -        "type": "string"
        -      },
        -      "passingChecks": {
        -        "description": "Number of checks that passed or reported protection.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "passingFindings": {
        -        "description": "Positive observations retained with their complete evidence.",
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "category": {
        -              "description": "Stable audit category for grouping related findings.",
        -              "type": "string"
        -            },
        -            "evidence": {
        -              "description": "Bounded observation that supports the finding.",
        -              "type": "string"
        -            },
        -            "findingKey": {
        -              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -              "maxLength": 512,
        -              "minLength": 1,
        -              "type": "string"
        -            },
        -            "impact": {
        -              "description": "Why the finding matters to the audited website.",
        -              "type": "string"
        -            },
        -            "location": {
        -              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -              "type": "string"
        -            },
        -            "remediation": {
        -              "description": "Concrete recommended fix or mitigation.",
        -              "type": "string"
        -            },
        -            "severity": {
        -              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -              "type": "string"
        -            },
        -            "title": {
        -              "description": "Short human-readable finding title.",
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "findingKey",
        -            "severity",
        -            "title",
        -            "evidence",
        -            "impact",
        -            "remediation",
        -            "category"
        -          ],
        -          "type": "object"
        -        },
        -        "type": "array"
        -      },
        -      "returnedFindings": {
        -        "description": "Number of findings included in this response.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "score": {
        -        "description": "Measured score from 0 to 100, or null when unavailable.",
        -        "type": [
        -          "number",
        -          "null"
        -        ]
        -      },
        -      "status": {
        -        "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        -        "enum": [
        -          "completed",
        -          "partial"
        -        ],
        -        "type": "string"
        -      },
        -      "target": {
        -        "description": "Canonical audited target.",
        -        "type": "string"
        -      },
        -      "total": {
        -        "description": "Total findings produced before response truncation.",
        -        "minimum": 0,
        -        "type": "integer"
        -      }
        -    },
        -    "required": [
        -      "target",
        -      "kind",
        -      "score",
        -      "grade",
        -      "counts",
        -      "total",
        -      "returnedFindings",
        -      "findingsTruncated",
        -      "passingChecks",
        -      "findings"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "executionComplete": {
        -        "const": false,
        -        "description": "False until the entire audit result is ready for delivery.",
        -        "type": "boolean"
        -      },
        -      "jobId": {
        -        "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        -        "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -        "type": "string"
        -      },
        -      "nextAction": {
        -        "const": "poll_same_tool",
        -        "description": "Call this same tool again with pollArguments.",
        -        "type": "string"
        -      },
        -      "pollArguments": {
        -        "additionalProperties": false,
        -        "description": "Arguments for retrieving this existing audit without starting another scan.",
        -        "properties": {
        -          "jobId": {
        -            "description": "The same opaque audit job identifier.",
        -            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -            "type": "string"
        -          }
        -        },
        -        "required": [
        -          "jobId"
        -        ],
        -        "type": "object"
        -      },
        -      "retryAfterMs": {
        -        "description": "Suggested delay in milliseconds before polling this job again.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "status": {
        -        "const": "running",
        -        "description": "The audit is still executing or completing durable delivery.",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "status",
        -      "jobId",
        -      "executionComplete",
        -      "nextAction",
        -      "pollArguments",
        -      "retryAfterMs"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "auditExecuted": {
        -        "const": false,
        -        "description": "This request did not execute a new audit.",
        -        "type": "boolean"
        -      },
        -      "reason": {
        -        "description": "The recoverable job request prerequisite.",
        -        "enum": [
        -          "audit_job_busy",
        -          "audit_job_unavailable",
        -          "audit_job_argument_mismatch",
        -          "audit_job_invalid_arguments"
        -        ],
        -        "type": "string"
        -      },
        -      "status": {
        -        "const": "action_required",
        -        "description": "This request did not start a new audit.",
        -        "type": "string"
        -      },
        -      "usageConsumed": {
        -        "const": false,
        -        "description": "This request did not consume additional audit allowance.",
        -        "type": "boolean"
        -      }
        -    },
        -    "required": [
        -      "status",
        -      "reason",
        -      "auditExecuted",
        -      "usageConsumed"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "oneOf": [
        +      {
        +        "additionalProperties": true,
        +        "properties": {
        +          "auditDetails": {
        +            "additionalProperties": true,
        +            "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        +            "type": "object"
        +          },
        +          "counts": {
        +            "additionalProperties": false,
        +            "description": "Finding totals grouped by normalized severity.",
        +            "properties": {
        +              "critical": {
        +                "description": "Number of critical findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "high": {
        +                "description": "Number of high-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "info": {
        +                "description": "Number of informational findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "low": {
        +                "description": "Number of low-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "medium": {
        +                "description": "Number of medium-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              }
        +            },
        +            "required": [
        +              "critical",
        +              "high",
        +              "medium",
        +              "low",
        +              "info"
        +            ],
        +            "type": "object"
        +          },
        +          "coverageStatus": {
        +            "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +            "enum": [
        +              "measured",
        +              "partial",
        +              "unavailable",
        +              "not_applicable"
        +            ],
        +            "type": "string"
        +          },
        +          "executionComplete": {
        +            "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +            "type": "boolean"
        +          },
        +          "findings": {
        +            "description": "Prioritized findings with evidence, impact, and remediation.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "findingsTruncated": {
        +            "description": "True when additional findings exist outside this response.",
        +            "type": "boolean"
        +          },
        +          "grade": {
        +            "description": "Human-readable grade, or null when unavailable.",
        +            "type": [
        +              "string",
        +              "null"
        +            ]
        +          },
        +          "kind": {
        +            "description": "Audit pillar represented by this result.",
        +            "type": "string"
        +          },
        +          "passingChecks": {
        +            "description": "Number of checks that passed or reported protection.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "passingFindings": {
        +            "description": "Positive observations retained with their complete evidence.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "returnedFindings": {
        +            "description": "Number of findings included in this response.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "score": {
        +            "description": "Measured score from 0 to 100, or null when unavailable.",
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          },
        +          "status": {
        +            "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +            "enum": [
        +              "completed",
        +              "partial"
        +            ],
        +            "type": "string"
        +          },
        +          "target": {
        +            "description": "Canonical audited target.",
        +            "type": "string"
        +          },
        +          "total": {
        +            "description": "Total findings produced before response truncation.",
        +            "minimum": 0,
        +            "type": "integer"
        +          }
        +        },
        +        "required": [
        +          "target",
        +          "kind",
        +          "score",
        +          "grade",
        +          "counts",
        +          "total",
        +          "returnedFindings",
        +          "findingsTruncated",
        +          "passingChecks",
        +          "findings"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "executionComplete": {
        +            "const": false,
        +            "description": "False until the entire audit result is ready for delivery.",
        +            "type": "boolean"
        +          },
        +          "jobId": {
        +            "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        +            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +            "type": "string"
        +          },
        +          "nextAction": {
        +            "const": "poll_same_tool",
        +            "description": "Call this same tool again with pollArguments.",
        +            "type": "string"
        +          },
        +          "pollArguments": {
        +            "additionalProperties": false,
        +            "description": "Arguments for retrieving this existing audit without starting another scan.",
        +            "properties": {
        +              "jobId": {
        +                "description": "The same opaque audit job identifier.",
        +                "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "jobId"
        +            ],
        +            "type": "object"
        +          },
        +          "retryAfterMs": {
        +            "description": "Suggested delay in milliseconds before polling this job again.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "status": {
        +            "const": "running",
        +            "description": "The audit is still executing or completing durable delivery.",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "jobId",
        +          "executionComplete",
        +          "nextAction",
        +          "pollArguments",
        +          "retryAfterMs"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "auditExecuted": {
        +            "const": false,
        +            "description": "This request did not execute a new audit.",
        +            "type": "boolean"
        +          },
        +          "reason": {
        +            "description": "The recoverable job request prerequisite.",
        +            "enum": [
        +              "audit_job_busy",
        +              "audit_job_unavailable",
        +              "audit_job_argument_mismatch",
        +              "audit_job_invalid_arguments"
        +            ],
        +            "type": "string"
        +          },
        +          "status": {
        +            "const": "action_required",
        +            "description": "This request did not start a new audit.",
        +            "type": "string"
        +          },
        +          "usageConsumed": {
        +            "const": false,
        +            "description": "This request did not consume additional audit allowance.",
        +            "type": "boolean"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "reason",
        +          "auditExecuted",
        +          "usageConsumed"
        +        ],
        +        "type": "object"
        +      }
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "auditExecuted": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "reason": {
        +        "enum": [
        +          "entitlement_required",
        +          "target_verification_required",
        +          "target_reverification_required",
        +          "verification_scope_required",
        +          "usage_limit_reached",
        +          "authorization_consent_required"
        +        ],
        +        "type": "string"
        +      },
        +      "status": {
        +        "const": "action_required",
        +        "type": "string"
        +      },
        +      "usageConsumed": {
        +        "const": false,
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "reason",
        +      "auditExecuted",
        +      "usageConsumed"
        +    ],
        +    "type": "object"
        +  }
        +]
    • Changedaudit_performance1 field changed
      • changedOutput schema / oneOf
        Previous value: -[
        -  {
        -    "additionalProperties": true,
        -    "properties": {
        -      "auditDetails": {
        -        "additionalProperties": true,
        -        "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        -        "type": "object"
        -      },
        -      "counts": {
        -        "additionalProperties": false,
        -        "description": "Finding totals grouped by normalized severity.",
        -        "properties": {
        -          "critical": {
        -            "description": "Number of critical findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "high": {
        -            "description": "Number of high-severity findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "info": {
        -            "description": "Number of informational findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "low": {
        -            "description": "Number of low-severity findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "medium": {
        -            "description": "Number of medium-severity findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          }
        -        },
        -        "required": [
        -          "critical",
        -          "high",
        -          "medium",
        -          "low",
        -          "info"
        -        ],
        -        "type": "object"
        -      },
        -      "coverageStatus": {
        -        "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        -        "enum": [
        -          "measured",
        -          "partial",
        -          "unavailable",
        -          "not_applicable"
        -        ],
        -        "type": "string"
        -      },
        -      "executionComplete": {
        -        "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        -        "type": "boolean"
        -      },
        -      "findings": {
        -        "description": "Prioritized findings with evidence, impact, and remediation.",
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "category": {
        -              "description": "Stable audit category for grouping related findings.",
        -              "type": "string"
        -            },
        -            "evidence": {
        -              "description": "Bounded observation that supports the finding.",
        -              "type": "string"
        -            },
        -            "findingKey": {
        -              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -              "maxLength": 512,
        -              "minLength": 1,
        -              "type": "string"
        -            },
        -            "impact": {
        -              "description": "Why the finding matters to the audited website.",
        -              "type": "string"
        -            },
        -            "location": {
        -              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -              "type": "string"
        -            },
        -            "remediation": {
        -              "description": "Concrete recommended fix or mitigation.",
        -              "type": "string"
        -            },
        -            "severity": {
        -              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -              "type": "string"
        -            },
        -            "title": {
        -              "description": "Short human-readable finding title.",
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "findingKey",
        -            "severity",
        -            "title",
        -            "evidence",
        -            "impact",
        -            "remediation",
        -            "category"
        -          ],
        -          "type": "object"
        -        },
        -        "type": "array"
        -      },
        -      "findingsTruncated": {
        -        "description": "True when additional findings exist outside this response.",
        -        "type": "boolean"
        -      },
        -      "grade": {
        -        "description": "Human-readable grade, or null when unavailable.",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "kind": {
        -        "description": "Audit pillar represented by this result.",
        -        "type": "string"
        -      },
        -      "passingChecks": {
        -        "description": "Number of checks that passed or reported protection.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "passingFindings": {
        -        "description": "Positive observations retained with their complete evidence.",
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "category": {
        -              "description": "Stable audit category for grouping related findings.",
        -              "type": "string"
        -            },
        -            "evidence": {
        -              "description": "Bounded observation that supports the finding.",
        -              "type": "string"
        -            },
        -            "findingKey": {
        -              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -              "maxLength": 512,
        -              "minLength": 1,
        -              "type": "string"
        -            },
        -            "impact": {
        -              "description": "Why the finding matters to the audited website.",
        -              "type": "string"
        -            },
        -            "location": {
        -              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -              "type": "string"
        -            },
        -            "remediation": {
        -              "description": "Concrete recommended fix or mitigation.",
        -              "type": "string"
        -            },
        -            "severity": {
        -              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -              "type": "string"
        -            },
        -            "title": {
        -              "description": "Short human-readable finding title.",
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "findingKey",
        -            "severity",
        -            "title",
        -            "evidence",
        -            "impact",
        -            "remediation",
        -            "category"
        -          ],
        -          "type": "object"
        -        },
        -        "type": "array"
        -      },
        -      "returnedFindings": {
        -        "description": "Number of findings included in this response.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "score": {
        -        "description": "Measured score from 0 to 100, or null when unavailable.",
        -        "type": [
        -          "number",
        -          "null"
        -        ]
        -      },
        -      "status": {
        -        "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        -        "enum": [
        -          "completed",
        -          "partial"
        -        ],
        -        "type": "string"
        -      },
        -      "target": {
        -        "description": "Canonical audited target.",
        -        "type": "string"
        -      },
        -      "total": {
        -        "description": "Total findings produced before response truncation.",
        -        "minimum": 0,
        -        "type": "integer"
        -      }
        -    },
        -    "required": [
        -      "target",
        -      "kind",
        -      "score",
        -      "grade",
        -      "counts",
        -      "total",
        -      "returnedFindings",
        -      "findingsTruncated",
        -      "passingChecks",
        -      "findings"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "executionComplete": {
        -        "const": false,
        -        "description": "False until the entire audit result is ready for delivery.",
        -        "type": "boolean"
        -      },
        -      "jobId": {
        -        "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        -        "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -        "type": "string"
        -      },
        -      "nextAction": {
        -        "const": "poll_same_tool",
        -        "description": "Call this same tool again with pollArguments.",
        -        "type": "string"
        -      },
        -      "pollArguments": {
        -        "additionalProperties": false,
        -        "description": "Arguments for retrieving this existing audit without starting another scan.",
        -        "properties": {
        -          "jobId": {
        -            "description": "The same opaque audit job identifier.",
        -            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -            "type": "string"
        -          }
        -        },
        -        "required": [
        -          "jobId"
        -        ],
        -        "type": "object"
        -      },
        -      "retryAfterMs": {
        -        "description": "Suggested delay in milliseconds before polling this job again.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "status": {
        -        "const": "running",
        -        "description": "The audit is still executing or completing durable delivery.",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "status",
        -      "jobId",
        -      "executionComplete",
        -      "nextAction",
        -      "pollArguments",
        -      "retryAfterMs"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "auditExecuted": {
        -        "const": false,
        -        "description": "This request did not execute a new audit.",
        -        "type": "boolean"
        -      },
        -      "reason": {
        -        "description": "The recoverable job request prerequisite.",
        -        "enum": [
        -          "audit_job_busy",
        -          "audit_job_unavailable",
        -          "audit_job_argument_mismatch",
        -          "audit_job_invalid_arguments"
        -        ],
        -        "type": "string"
        -      },
        -      "status": {
        -        "const": "action_required",
        -        "description": "This request did not start a new audit.",
        -        "type": "string"
        -      },
        -      "usageConsumed": {
        -        "const": false,
        -        "description": "This request did not consume additional audit allowance.",
        -        "type": "boolean"
        -      }
        -    },
        -    "required": [
        -      "status",
        -      "reason",
        -      "auditExecuted",
        -      "usageConsumed"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "oneOf": [
        +      {
        +        "additionalProperties": true,
        +        "properties": {
        +          "auditDetails": {
        +            "additionalProperties": true,
        +            "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        +            "type": "object"
        +          },
        +          "counts": {
        +            "additionalProperties": false,
        +            "description": "Finding totals grouped by normalized severity.",
        +            "properties": {
        +              "critical": {
        +                "description": "Number of critical findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "high": {
        +                "description": "Number of high-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "info": {
        +                "description": "Number of informational findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "low": {
        +                "description": "Number of low-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "medium": {
        +                "description": "Number of medium-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              }
        +            },
        +            "required": [
        +              "critical",
        +              "high",
        +              "medium",
        +              "low",
        +              "info"
        +            ],
        +            "type": "object"
        +          },
        +          "coverageStatus": {
        +            "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +            "enum": [
        +              "measured",
        +              "partial",
        +              "unavailable",
        +              "not_applicable"
        +            ],
        +            "type": "string"
        +          },
        +          "executionComplete": {
        +            "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +            "type": "boolean"
        +          },
        +          "findings": {
        +            "description": "Prioritized findings with evidence, impact, and remediation.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "findingsTruncated": {
        +            "description": "True when additional findings exist outside this response.",
        +            "type": "boolean"
        +          },
        +          "grade": {
        +            "description": "Human-readable grade, or null when unavailable.",
        +            "type": [
        +              "string",
        +              "null"
        +            ]
        +          },
        +          "kind": {
        +            "description": "Audit pillar represented by this result.",
        +            "type": "string"
        +          },
        +          "passingChecks": {
        +            "description": "Number of checks that passed or reported protection.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "passingFindings": {
        +            "description": "Positive observations retained with their complete evidence.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "returnedFindings": {
        +            "description": "Number of findings included in this response.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "score": {
        +            "description": "Measured score from 0 to 100, or null when unavailable.",
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          },
        +          "status": {
        +            "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +            "enum": [
        +              "completed",
        +              "partial"
        +            ],
        +            "type": "string"
        +          },
        +          "target": {
        +            "description": "Canonical audited target.",
        +            "type": "string"
        +          },
        +          "total": {
        +            "description": "Total findings produced before response truncation.",
        +            "minimum": 0,
        +            "type": "integer"
        +          }
        +        },
        +        "required": [
        +          "target",
        +          "kind",
        +          "score",
        +          "grade",
        +          "counts",
        +          "total",
        +          "returnedFindings",
        +          "findingsTruncated",
        +          "passingChecks",
        +          "findings"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "executionComplete": {
        +            "const": false,
        +            "description": "False until the entire audit result is ready for delivery.",
        +            "type": "boolean"
        +          },
        +          "jobId": {
        +            "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        +            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +            "type": "string"
        +          },
        +          "nextAction": {
        +            "const": "poll_same_tool",
        +            "description": "Call this same tool again with pollArguments.",
        +            "type": "string"
        +          },
        +          "pollArguments": {
        +            "additionalProperties": false,
        +            "description": "Arguments for retrieving this existing audit without starting another scan.",
        +            "properties": {
        +              "jobId": {
        +                "description": "The same opaque audit job identifier.",
        +                "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "jobId"
        +            ],
        +            "type": "object"
        +          },
        +          "retryAfterMs": {
        +            "description": "Suggested delay in milliseconds before polling this job again.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "status": {
        +            "const": "running",
        +            "description": "The audit is still executing or completing durable delivery.",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "jobId",
        +          "executionComplete",
        +          "nextAction",
        +          "pollArguments",
        +          "retryAfterMs"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "auditExecuted": {
        +            "const": false,
        +            "description": "This request did not execute a new audit.",
        +            "type": "boolean"
        +          },
        +          "reason": {
        +            "description": "The recoverable job request prerequisite.",
        +            "enum": [
        +              "audit_job_busy",
        +              "audit_job_unavailable",
        +              "audit_job_argument_mismatch",
        +              "audit_job_invalid_arguments"
        +            ],
        +            "type": "string"
        +          },
        +          "status": {
        +            "const": "action_required",
        +            "description": "This request did not start a new audit.",
        +            "type": "string"
        +          },
        +          "usageConsumed": {
        +            "const": false,
        +            "description": "This request did not consume additional audit allowance.",
        +            "type": "boolean"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "reason",
        +          "auditExecuted",
        +          "usageConsumed"
        +        ],
        +        "type": "object"
        +      }
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "auditExecuted": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "reason": {
        +        "enum": [
        +          "entitlement_required",
        +          "target_verification_required",
        +          "target_reverification_required",
        +          "verification_scope_required",
        +          "usage_limit_reached",
        +          "authorization_consent_required"
        +        ],
        +        "type": "string"
        +      },
        +      "status": {
        +        "const": "action_required",
        +        "type": "string"
        +      },
        +      "usageConsumed": {
        +        "const": false,
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "reason",
        +      "auditExecuted",
        +      "usageConsumed"
        +    ],
        +    "type": "object"
        +  }
        +]
    • Changedaudit_security1 field changed
      • changedOutput schema / oneOf
        Previous value: -[
        -  {
        -    "additionalProperties": true,
        -    "properties": {
        -      "auditDetails": {
        -        "additionalProperties": true,
        -        "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        -        "type": "object"
        -      },
        -      "counts": {
        -        "additionalProperties": false,
        -        "description": "Finding totals grouped by normalized severity.",
        -        "properties": {
        -          "critical": {
        -            "description": "Number of critical findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "high": {
        -            "description": "Number of high-severity findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "info": {
        -            "description": "Number of informational findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "low": {
        -            "description": "Number of low-severity findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "medium": {
        -            "description": "Number of medium-severity findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          }
        -        },
        -        "required": [
        -          "critical",
        -          "high",
        -          "medium",
        -          "low",
        -          "info"
        -        ],
        -        "type": "object"
        -      },
        -      "coverageStatus": {
        -        "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        -        "enum": [
        -          "measured",
        -          "partial",
        -          "unavailable",
        -          "not_applicable"
        -        ],
        -        "type": "string"
        -      },
        -      "executionComplete": {
        -        "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        -        "type": "boolean"
        -      },
        -      "findings": {
        -        "description": "Prioritized findings with evidence, impact, and remediation.",
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "category": {
        -              "description": "Stable audit category for grouping related findings.",
        -              "type": "string"
        -            },
        -            "evidence": {
        -              "description": "Bounded observation that supports the finding.",
        -              "type": "string"
        -            },
        -            "findingKey": {
        -              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -              "maxLength": 512,
        -              "minLength": 1,
        -              "type": "string"
        -            },
        -            "impact": {
        -              "description": "Why the finding matters to the audited website.",
        -              "type": "string"
        -            },
        -            "location": {
        -              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -              "type": "string"
        -            },
        -            "remediation": {
        -              "description": "Concrete recommended fix or mitigation.",
        -              "type": "string"
        -            },
        -            "severity": {
        -              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -              "type": "string"
        -            },
        -            "title": {
        -              "description": "Short human-readable finding title.",
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "findingKey",
        -            "severity",
        -            "title",
        -            "evidence",
        -            "impact",
        -            "remediation",
        -            "category"
        -          ],
        -          "type": "object"
        -        },
        -        "type": "array"
        -      },
        -      "findingsTruncated": {
        -        "description": "True when additional findings exist outside this response.",
        -        "type": "boolean"
        -      },
        -      "grade": {
        -        "description": "Human-readable grade, or null when unavailable.",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "kind": {
        -        "description": "Audit pillar represented by this result.",
        -        "type": "string"
        -      },
        -      "passingChecks": {
        -        "description": "Number of checks that passed or reported protection.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "passingFindings": {
        -        "description": "Positive observations retained with their complete evidence.",
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "category": {
        -              "description": "Stable audit category for grouping related findings.",
        -              "type": "string"
        -            },
        -            "evidence": {
        -              "description": "Bounded observation that supports the finding.",
        -              "type": "string"
        -            },
        -            "findingKey": {
        -              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -              "maxLength": 512,
        -              "minLength": 1,
        -              "type": "string"
        -            },
        -            "impact": {
        -              "description": "Why the finding matters to the audited website.",
        -              "type": "string"
        -            },
        -            "location": {
        -              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -              "type": "string"
        -            },
        -            "remediation": {
        -              "description": "Concrete recommended fix or mitigation.",
        -              "type": "string"
        -            },
        -            "severity": {
        -              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -              "type": "string"
        -            },
        -            "title": {
        -              "description": "Short human-readable finding title.",
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "findingKey",
        -            "severity",
        -            "title",
        -            "evidence",
        -            "impact",
        -            "remediation",
        -            "category"
        -          ],
        -          "type": "object"
        -        },
        -        "type": "array"
        -      },
        -      "returnedFindings": {
        -        "description": "Number of findings included in this response.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "score": {
        -        "description": "Measured score from 0 to 100, or null when unavailable.",
        -        "type": [
        -          "number",
        -          "null"
        -        ]
        -      },
        -      "status": {
        -        "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        -        "enum": [
        -          "completed",
        -          "partial"
        -        ],
        -        "type": "string"
        -      },
        -      "target": {
        -        "description": "Canonical audited target.",
        -        "type": "string"
        -      },
        -      "total": {
        -        "description": "Total findings produced before response truncation.",
        -        "minimum": 0,
        -        "type": "integer"
        -      }
        -    },
        -    "required": [
        -      "target",
        -      "kind",
        -      "score",
        -      "grade",
        -      "counts",
        -      "total",
        -      "returnedFindings",
        -      "findingsTruncated",
        -      "passingChecks",
        -      "findings"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "executionComplete": {
        -        "const": false,
        -        "description": "False until the entire audit result is ready for delivery.",
        -        "type": "boolean"
        -      },
        -      "jobId": {
        -        "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        -        "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -        "type": "string"
        -      },
        -      "nextAction": {
        -        "const": "poll_same_tool",
        -        "description": "Call this same tool again with pollArguments.",
        -        "type": "string"
        -      },
        -      "pollArguments": {
        -        "additionalProperties": false,
        -        "description": "Arguments for retrieving this existing audit without starting another scan.",
        -        "properties": {
        -          "jobId": {
        -            "description": "The same opaque audit job identifier.",
        -            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -            "type": "string"
        -          }
        -        },
        -        "required": [
        -          "jobId"
        -        ],
        -        "type": "object"
        -      },
        -      "retryAfterMs": {
        -        "description": "Suggested delay in milliseconds before polling this job again.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "status": {
        -        "const": "running",
        -        "description": "The audit is still executing or completing durable delivery.",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "status",
        -      "jobId",
        -      "executionComplete",
        -      "nextAction",
        -      "pollArguments",
        -      "retryAfterMs"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "auditExecuted": {
        -        "const": false,
        -        "description": "This request did not execute a new audit.",
        -        "type": "boolean"
        -      },
        -      "reason": {
        -        "description": "The recoverable job request prerequisite.",
        -        "enum": [
        -          "audit_job_busy",
        -          "audit_job_unavailable",
        -          "audit_job_argument_mismatch",
        -          "audit_job_invalid_arguments"
        -        ],
        -        "type": "string"
        -      },
        -      "status": {
        -        "const": "action_required",
        -        "description": "This request did not start a new audit.",
        -        "type": "string"
        -      },
        -      "usageConsumed": {
        -        "const": false,
        -        "description": "This request did not consume additional audit allowance.",
        -        "type": "boolean"
        -      }
        -    },
        -    "required": [
        -      "status",
        -      "reason",
        -      "auditExecuted",
        -      "usageConsumed"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "oneOf": [
        +      {
        +        "additionalProperties": true,
        +        "properties": {
        +          "auditDetails": {
        +            "additionalProperties": true,
        +            "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        +            "type": "object"
        +          },
        +          "counts": {
        +            "additionalProperties": false,
        +            "description": "Finding totals grouped by normalized severity.",
        +            "properties": {
        +              "critical": {
        +                "description": "Number of critical findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "high": {
        +                "description": "Number of high-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "info": {
        +                "description": "Number of informational findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "low": {
        +                "description": "Number of low-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "medium": {
        +                "description": "Number of medium-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              }
        +            },
        +            "required": [
        +              "critical",
        +              "high",
        +              "medium",
        +              "low",
        +              "info"
        +            ],
        +            "type": "object"
        +          },
        +          "coverageStatus": {
        +            "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +            "enum": [
        +              "measured",
        +              "partial",
        +              "unavailable",
        +              "not_applicable"
        +            ],
        +            "type": "string"
        +          },
        +          "executionComplete": {
        +            "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +            "type": "boolean"
        +          },
        +          "findings": {
        +            "description": "Prioritized findings with evidence, impact, and remediation.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "findingsTruncated": {
        +            "description": "True when additional findings exist outside this response.",
        +            "type": "boolean"
        +          },
        +          "grade": {
        +            "description": "Human-readable grade, or null when unavailable.",
        +            "type": [
        +              "string",
        +              "null"
        +            ]
        +          },
        +          "kind": {
        +            "description": "Audit pillar represented by this result.",
        +            "type": "string"
        +          },
        +          "passingChecks": {
        +            "description": "Number of checks that passed or reported protection.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "passingFindings": {
        +            "description": "Positive observations retained with their complete evidence.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "returnedFindings": {
        +            "description": "Number of findings included in this response.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "score": {
        +            "description": "Measured score from 0 to 100, or null when unavailable.",
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          },
        +          "status": {
        +            "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +            "enum": [
        +              "completed",
        +              "partial"
        +            ],
        +            "type": "string"
        +          },
        +          "target": {
        +            "description": "Canonical audited target.",
        +            "type": "string"
        +          },
        +          "total": {
        +            "description": "Total findings produced before response truncation.",
        +            "minimum": 0,
        +            "type": "integer"
        +          }
        +        },
        +        "required": [
        +          "target",
        +          "kind",
        +          "score",
        +          "grade",
        +          "counts",
        +          "total",
        +          "returnedFindings",
        +          "findingsTruncated",
        +          "passingChecks",
        +          "findings"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "executionComplete": {
        +            "const": false,
        +            "description": "False until the entire audit result is ready for delivery.",
        +            "type": "boolean"
        +          },
        +          "jobId": {
        +            "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        +            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +            "type": "string"
        +          },
        +          "nextAction": {
        +            "const": "poll_same_tool",
        +            "description": "Call this same tool again with pollArguments.",
        +            "type": "string"
        +          },
        +          "pollArguments": {
        +            "additionalProperties": false,
        +            "description": "Arguments for retrieving this existing audit without starting another scan.",
        +            "properties": {
        +              "jobId": {
        +                "description": "The same opaque audit job identifier.",
        +                "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "jobId"
        +            ],
        +            "type": "object"
        +          },
        +          "retryAfterMs": {
        +            "description": "Suggested delay in milliseconds before polling this job again.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "status": {
        +            "const": "running",
        +            "description": "The audit is still executing or completing durable delivery.",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "jobId",
        +          "executionComplete",
        +          "nextAction",
        +          "pollArguments",
        +          "retryAfterMs"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "auditExecuted": {
        +            "const": false,
        +            "description": "This request did not execute a new audit.",
        +            "type": "boolean"
        +          },
        +          "reason": {
        +            "description": "The recoverable job request prerequisite.",
        +            "enum": [
        +              "audit_job_busy",
        +              "audit_job_unavailable",
        +              "audit_job_argument_mismatch",
        +              "audit_job_invalid_arguments"
        +            ],
        +            "type": "string"
        +          },
        +          "status": {
        +            "const": "action_required",
        +            "description": "This request did not start a new audit.",
        +            "type": "string"
        +          },
        +          "usageConsumed": {
        +            "const": false,
        +            "description": "This request did not consume additional audit allowance.",
        +            "type": "boolean"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "reason",
        +          "auditExecuted",
        +          "usageConsumed"
        +        ],
        +        "type": "object"
        +      }
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "auditExecuted": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "reason": {
        +        "enum": [
        +          "entitlement_required",
        +          "target_verification_required",
        +          "target_reverification_required",
        +          "verification_scope_required",
        +          "usage_limit_reached",
        +          "authorization_consent_required"
        +        ],
        +        "type": "string"
        +      },
        +      "status": {
        +        "const": "action_required",
        +        "type": "string"
        +      },
        +      "usageConsumed": {
        +        "const": false,
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "reason",
        +      "auditExecuted",
        +      "usageConsumed"
        +    ],
        +    "type": "object"
        +  }
        +]
    • Changedaudit_seo1 field changed
      • changedOutput schema / oneOf
        Previous value: -[
        -  {
        -    "additionalProperties": true,
        -    "properties": {
        -      "auditDetails": {
        -        "additionalProperties": true,
        -        "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        -        "type": "object"
        -      },
        -      "counts": {
        -        "additionalProperties": false,
        -        "description": "Finding totals grouped by normalized severity.",
        -        "properties": {
        -          "critical": {
        -            "description": "Number of critical findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "high": {
        -            "description": "Number of high-severity findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "info": {
        -            "description": "Number of informational findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "low": {
        -            "description": "Number of low-severity findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "medium": {
        -            "description": "Number of medium-severity findings.",
        -            "minimum": 0,
        -            "type": "integer"
        -          }
        -        },
        -        "required": [
        -          "critical",
        -          "high",
        -          "medium",
        -          "low",
        -          "info"
        -        ],
        -        "type": "object"
        -      },
        -      "coverageStatus": {
        -        "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        -        "enum": [
        -          "measured",
        -          "partial",
        -          "unavailable",
        -          "not_applicable"
        -        ],
        -        "type": "string"
        -      },
        -      "executionComplete": {
        -        "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        -        "type": "boolean"
        -      },
        -      "findings": {
        -        "description": "Prioritized findings with evidence, impact, and remediation.",
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "category": {
        -              "description": "Stable audit category for grouping related findings.",
        -              "type": "string"
        -            },
        -            "evidence": {
        -              "description": "Bounded observation that supports the finding.",
        -              "type": "string"
        -            },
        -            "findingKey": {
        -              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -              "maxLength": 512,
        -              "minLength": 1,
        -              "type": "string"
        -            },
        -            "impact": {
        -              "description": "Why the finding matters to the audited website.",
        -              "type": "string"
        -            },
        -            "location": {
        -              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -              "type": "string"
        -            },
        -            "remediation": {
        -              "description": "Concrete recommended fix or mitigation.",
        -              "type": "string"
        -            },
        -            "severity": {
        -              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -              "type": "string"
        -            },
        -            "title": {
        -              "description": "Short human-readable finding title.",
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "findingKey",
        -            "severity",
        -            "title",
        -            "evidence",
        -            "impact",
        -            "remediation",
        -            "category"
        -          ],
        -          "type": "object"
        -        },
        -        "type": "array"
        -      },
        -      "findingsTruncated": {
        -        "description": "True when additional findings exist outside this response.",
        -        "type": "boolean"
        -      },
        -      "grade": {
        -        "description": "Human-readable grade, or null when unavailable.",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "kind": {
        -        "description": "Audit pillar represented by this result.",
        -        "type": "string"
        -      },
        -      "passingChecks": {
        -        "description": "Number of checks that passed or reported protection.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "passingFindings": {
        -        "description": "Positive observations retained with their complete evidence.",
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "category": {
        -              "description": "Stable audit category for grouping related findings.",
        -              "type": "string"
        -            },
        -            "evidence": {
        -              "description": "Bounded observation that supports the finding.",
        -              "type": "string"
        -            },
        -            "findingKey": {
        -              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -              "maxLength": 512,
        -              "minLength": 1,
        -              "type": "string"
        -            },
        -            "impact": {
        -              "description": "Why the finding matters to the audited website.",
        -              "type": "string"
        -            },
        -            "location": {
        -              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -              "type": "string"
        -            },
        -            "remediation": {
        -              "description": "Concrete recommended fix or mitigation.",
        -              "type": "string"
        -            },
        -            "severity": {
        -              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -              "type": "string"
        -            },
        -            "title": {
        -              "description": "Short human-readable finding title.",
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "findingKey",
        -            "severity",
        -            "title",
        -            "evidence",
        -            "impact",
        -            "remediation",
        -            "category"
        -          ],
        -          "type": "object"
        -        },
        -        "type": "array"
        -      },
        -      "returnedFindings": {
        -        "description": "Number of findings included in this response.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "score": {
        -        "description": "Measured score from 0 to 100, or null when unavailable.",
        -        "type": [
        -          "number",
        -          "null"
        -        ]
        -      },
        -      "status": {
        -        "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        -        "enum": [
        -          "completed",
        -          "partial"
        -        ],
        -        "type": "string"
        -      },
        -      "target": {
        -        "description": "Canonical audited target.",
        -        "type": "string"
        -      },
        -      "total": {
        -        "description": "Total findings produced before response truncation.",
        -        "minimum": 0,
        -        "type": "integer"
        -      }
        -    },
        -    "required": [
        -      "target",
        -      "kind",
        -      "score",
        -      "grade",
        -      "counts",
        -      "total",
        -      "returnedFindings",
        -      "findingsTruncated",
        -      "passingChecks",
        -      "findings"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "executionComplete": {
        -        "const": false,
        -        "description": "False until the entire audit result is ready for delivery.",
        -        "type": "boolean"
        -      },
        -      "jobId": {
        -        "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        -        "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -        "type": "string"
        -      },
        -      "nextAction": {
        -        "const": "poll_same_tool",
        -        "description": "Call this same tool again with pollArguments.",
        -        "type": "string"
        -      },
        -      "pollArguments": {
        -        "additionalProperties": false,
        -        "description": "Arguments for retrieving this existing audit without starting another scan.",
        -        "properties": {
        -          "jobId": {
        -            "description": "The same opaque audit job identifier.",
        -            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        -            "type": "string"
        -          }
        -        },
        -        "required": [
        -          "jobId"
        -        ],
        -        "type": "object"
        -      },
        -      "retryAfterMs": {
        -        "description": "Suggested delay in milliseconds before polling this job again.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "status": {
        -        "const": "running",
        -        "description": "The audit is still executing or completing durable delivery.",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "status",
        -      "jobId",
        -      "executionComplete",
        -      "nextAction",
        -      "pollArguments",
        -      "retryAfterMs"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "auditExecuted": {
        -        "const": false,
        -        "description": "This request did not execute a new audit.",
        -        "type": "boolean"
        -      },
        -      "reason": {
        -        "description": "The recoverable job request prerequisite.",
        -        "enum": [
        -          "audit_job_busy",
        -          "audit_job_unavailable",
        -          "audit_job_argument_mismatch",
        -          "audit_job_invalid_arguments"
        -        ],
        -        "type": "string"
        -      },
        -      "status": {
        -        "const": "action_required",
        -        "description": "This request did not start a new audit.",
        -        "type": "string"
        -      },
        -      "usageConsumed": {
        -        "const": false,
        -        "description": "This request did not consume additional audit allowance.",
        -        "type": "boolean"
        -      }
        -    },
        -    "required": [
        -      "status",
        -      "reason",
        -      "auditExecuted",
        -      "usageConsumed"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "oneOf": [
        +      {
        +        "additionalProperties": true,
        +        "properties": {
        +          "auditDetails": {
        +            "additionalProperties": true,
        +            "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        +            "type": "object"
        +          },
        +          "counts": {
        +            "additionalProperties": false,
        +            "description": "Finding totals grouped by normalized severity.",
        +            "properties": {
        +              "critical": {
        +                "description": "Number of critical findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "high": {
        +                "description": "Number of high-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "info": {
        +                "description": "Number of informational findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "low": {
        +                "description": "Number of low-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "medium": {
        +                "description": "Number of medium-severity findings.",
        +                "minimum": 0,
        +                "type": "integer"
        +              }
        +            },
        +            "required": [
        +              "critical",
        +              "high",
        +              "medium",
        +              "low",
        +              "info"
        +            ],
        +            "type": "object"
        +          },
        +          "coverageStatus": {
        +            "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +            "enum": [
        +              "measured",
        +              "partial",
        +              "unavailable",
        +              "not_applicable"
        +            ],
        +            "type": "string"
        +          },
        +          "executionComplete": {
        +            "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +            "type": "boolean"
        +          },
        +          "findings": {
        +            "description": "Prioritized findings with evidence, impact, and remediation.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "findingsTruncated": {
        +            "description": "True when additional findings exist outside this response.",
        +            "type": "boolean"
        +          },
        +          "grade": {
        +            "description": "Human-readable grade, or null when unavailable.",
        +            "type": [
        +              "string",
        +              "null"
        +            ]
        +          },
        +          "kind": {
        +            "description": "Audit pillar represented by this result.",
        +            "type": "string"
        +          },
        +          "passingChecks": {
        +            "description": "Number of checks that passed or reported protection.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "passingFindings": {
        +            "description": "Positive observations retained with their complete evidence.",
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "category": {
        +                  "description": "Stable audit category for grouping related findings.",
        +                  "type": "string"
        +                },
        +                "evidence": {
        +                  "description": "Bounded observation that supports the finding.",
        +                  "type": "string"
        +                },
        +                "findingKey": {
        +                  "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +                  "maxLength": 512,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                "impact": {
        +                  "description": "Why the finding matters to the audited website.",
        +                  "type": "string"
        +                },
        +                "location": {
        +                  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +                  "type": "string"
        +                },
        +                "remediation": {
        +                  "description": "Concrete recommended fix or mitigation.",
        +                  "type": "string"
        +                },
        +                "severity": {
        +                  "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "description": "Short human-readable finding title.",
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "findingKey",
        +                "severity",
        +                "title",
        +                "evidence",
        +                "impact",
        +                "remediation",
        +                "category"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "returnedFindings": {
        +            "description": "Number of findings included in this response.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "score": {
        +            "description": "Measured score from 0 to 100, or null when unavailable.",
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          },
        +          "status": {
        +            "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +            "enum": [
        +              "completed",
        +              "partial"
        +            ],
        +            "type": "string"
        +          },
        +          "target": {
        +            "description": "Canonical audited target.",
        +            "type": "string"
        +          },
        +          "total": {
        +            "description": "Total findings produced before response truncation.",
        +            "minimum": 0,
        +            "type": "integer"
        +          }
        +        },
        +        "required": [
        +          "target",
        +          "kind",
        +          "score",
        +          "grade",
        +          "counts",
        +          "total",
        +          "returnedFindings",
        +          "findingsTruncated",
        +          "passingChecks",
        +          "findings"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "executionComplete": {
        +            "const": false,
        +            "description": "False until the entire audit result is ready for delivery.",
        +            "type": "boolean"
        +          },
        +          "jobId": {
        +            "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        +            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +            "type": "string"
        +          },
        +          "nextAction": {
        +            "const": "poll_same_tool",
        +            "description": "Call this same tool again with pollArguments.",
        +            "type": "string"
        +          },
        +          "pollArguments": {
        +            "additionalProperties": false,
        +            "description": "Arguments for retrieving this existing audit without starting another scan.",
        +            "properties": {
        +              "jobId": {
        +                "description": "The same opaque audit job identifier.",
        +                "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "jobId"
        +            ],
        +            "type": "object"
        +          },
        +          "retryAfterMs": {
        +            "description": "Suggested delay in milliseconds before polling this job again.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "status": {
        +            "const": "running",
        +            "description": "The audit is still executing or completing durable delivery.",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "jobId",
        +          "executionComplete",
        +          "nextAction",
        +          "pollArguments",
        +          "retryAfterMs"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "auditExecuted": {
        +            "const": false,
        +            "description": "This request did not execute a new audit.",
        +            "type": "boolean"
        +          },
        +          "reason": {
        +            "description": "The recoverable job request prerequisite.",
        +            "enum": [
        +              "audit_job_busy",
        +              "audit_job_unavailable",
        +              "audit_job_argument_mismatch",
        +              "audit_job_invalid_arguments"
        +            ],
        +            "type": "string"
        +          },
        +          "status": {
        +            "const": "action_required",
        +            "description": "This request did not start a new audit.",
        +            "type": "string"
        +          },
        +          "usageConsumed": {
        +            "const": false,
        +            "description": "This request did not consume additional audit allowance.",
        +            "type": "boolean"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "reason",
        +          "auditExecuted",
        +          "usageConsumed"
        +        ],
        +        "type": "object"
        +      }
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "auditExecuted": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "reason": {
        +        "enum": [
        +          "entitlement_required",
        +          "target_verification_required",
        +          "target_reverification_required",
        +          "verification_scope_required",
        +          "usage_limit_reached",
        +          "authorization_consent_required"
        +        ],
        +        "type": "string"
        +      },
        +      "status": {
        +        "const": "action_required",
        +        "type": "string"
        +      },
        +      "usageConsumed": {
        +        "const": false,
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "reason",
        +      "auditExecuted",
        +      "usageConsumed"
        +    ],
        +    "type": "object"
        +  }
        +]
  4. 7 tool updates
    • Changedaudit_accessibility7 fields changed
      • addedInput schema / anyOf
        Added value: +[
        +  {
        +    "required": [
        +      "target"
        +    ]
        +  },
        +  {
        +    "maxProperties": 1,
        +    "required": [
        +      "jobId"
        +    ]
        +  }
        +]
      • addedInput schema / properties / jobId
        Added value: +{
        +  "description": "Resume an existing audit by polling this same tool with its returned jobId. Prefer jobId alone; if repeating other arguments, supply every original argument unchanged. Never invent a jobId.",
        +  "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +  "type": "string"
        +}
      • removedInput schema / required
        Removed value: -[
        -  "target"
        -]
      • removedOutput schema / additionalProperties
        Removed value: -true
      • addedOutput schema / oneOf
        Added value: +[
        +  {
        +    "additionalProperties": true,
        +    "properties": {
        +      "auditDetails": {
        +        "additionalProperties": true,
        +        "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        +        "type": "object"
        +      },
        +      "counts": {
        +        "additionalProperties": false,
        +        "description": "Finding totals grouped by normalized severity.",
        +        "properties": {
        +          "critical": {
        +            "description": "Number of critical findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "high": {
        +            "description": "Number of high-severity findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "info": {
        +            "description": "Number of informational findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "low": {
        +            "description": "Number of low-severity findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "medium": {
        +            "description": "Number of medium-severity findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          }
        +        },
        +        "required": [
        +          "critical",
        +          "high",
        +          "medium",
        +          "low",
        +          "info"
        +        ],
        +        "type": "object"
        +      },
        +      "coverageStatus": {
        +        "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +        "enum": [
        +          "measured",
        +          "partial",
        +          "unavailable",
        +          "not_applicable"
        +        ],
        +        "type": "string"
        +      },
        +      "executionComplete": {
        +        "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +        "type": "boolean"
        +      },
        +      "findings": {
        +        "description": "Prioritized findings with evidence, impact, and remediation.",
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "category": {
        +              "description": "Stable audit category for grouping related findings.",
        +              "type": "string"
        +            },
        +            "evidence": {
        +              "description": "Bounded observation that supports the finding.",
        +              "type": "string"
        +            },
        +            "findingKey": {
        +              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +              "maxLength": 512,
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "impact": {
        +              "description": "Why the finding matters to the audited website.",
        +              "type": "string"
        +            },
        +            "location": {
        +              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +              "type": "string"
        +            },
        +            "remediation": {
        +              "description": "Concrete recommended fix or mitigation.",
        +              "type": "string"
        +            },
        +            "severity": {
        +              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +              "type": "string"
        +            },
        +            "title": {
        +              "description": "Short human-readable finding title.",
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "findingKey",
        +            "severity",
        +            "title",
        +            "evidence",
        +            "impact",
        +            "remediation",
        +            "category"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "findingsTruncated": {
        +        "description": "True when additional findings exist outside this response.",
        +        "type": "boolean"
        +      },
        +      "grade": {
        +        "description": "Human-readable grade, or null when unavailable.",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "kind": {
        +        "description": "Audit pillar represented by this result.",
        +        "type": "string"
        +      },
        +      "passingChecks": {
        +        "description": "Number of checks that passed or reported protection.",
        +        "minimum": 0,
        +        "type": "integer"
        +      },
        +      "passingFindings": {
        +        "description": "Positive observations retained with their complete evidence.",
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "category": {
        +              "description": "Stable audit category for grouping related findings.",
        +              "type": "string"
        +            },
        +            "evidence": {
        +              "description": "Bounded observation that supports the finding.",
        +              "type": "string"
        +            },
        +            "findingKey": {
        +              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +              "maxLength": 512,
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "impact": {
        +              "description": "Why the finding matters to the audited website.",
        +              "type": "string"
        +            },
        +            "location": {
        +              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +              "type": "string"
        +            },
        +            "remediation": {
        +              "description": "Concrete recommended fix or mitigation.",
        +              "type": "string"
        +            },
        +            "severity": {
        +              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +              "type": "string"
        +            },
        +            "title": {
        +              "description": "Short human-readable finding title.",
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "findingKey",
        +            "severity",
        +            "title",
        +            "evidence",
        +            "impact",
        +            "remediation",
        +            "category"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "returnedFindings": {
        +        "description": "Number of findings included in this response.",
        +        "minimum": 0,
        +        "type": "integer"
        +      },
        +      "score": {
        +        "description": "Measured score from 0 to 100, or null when unavailable.",
        +        "type": [
        +          "number",
        +          "null"
        +        ]
        +      },
        +      "status": {
        +        "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +        "enum": [
        +          "completed",
        +          "partial"
        +        ],
        +        "type": "string"
        +      },
        +      "target": {
        +        "description": "Canonical audited target.",
        +        "type": "string"
        +      },
        +      "total": {
        +        "description": "Total findings produced before response truncation.",
        +        "minimum": 0,
        +        "type": "integer"
        +      }
        +    },
        +    "required": [
        +      "target",
        +      "kind",
        +      "score",
        +      "grade",
        +      "counts",
        +      "total",
        +      "returnedFindings",
        +      "findingsTruncated",
        +      "passingChecks",
        +      "findings"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "executionComplete": {
        +        "const": false,
        +        "description": "False until the entire audit result is ready for delivery.",
        +        "type": "boolean"
        +      },
        +      "jobId": {
        +        "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        +        "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +        "type": "string"
        +      },
        +      "nextAction": {
        +        "const": "poll_same_tool",
        +        "description": "Call this same tool again with pollArguments.",
        +        "type": "string"
        +      },
        +      "pollArguments": {
        +        "additionalProperties": false,
        +        "description": "Arguments for retrieving this existing audit without starting another scan.",
        +        "properties": {
        +          "jobId": {
        +            "description": "The same opaque audit job identifier.",
        +            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "jobId"
        +        ],
        +        "type": "object"
        +      },
        +      "retryAfterMs": {
        +        "description": "Suggested delay in milliseconds before polling this job again.",
        +        "minimum": 0,
        +        "type": "integer"
        +      },
        +      "status": {
        +        "const": "running",
        +        "description": "The audit is still executing or completing durable delivery.",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "jobId",
        +      "executionComplete",
        +      "nextAction",
        +      "pollArguments",
        +      "retryAfterMs"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "auditExecuted": {
        +        "const": false,
        +        "description": "This request did not execute a new audit.",
        +        "type": "boolean"
        +      },
        +      "reason": {
        +        "description": "The recoverable job request prerequisite.",
        +        "enum": [
        +          "audit_job_busy",
        +          "audit_job_unavailable",
        +          "audit_job_argument_mismatch",
        +          "audit_job_invalid_arguments"
        +        ],
        +        "type": "string"
        +      },
        +      "status": {
        +        "const": "action_required",
        +        "description": "This request did not start a new audit.",
        +        "type": "string"
        +      },
        +      "usageConsumed": {
        +        "const": false,
        +        "description": "This request did not consume additional audit allowance.",
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "reason",
        +      "auditExecuted",
        +      "usageConsumed"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties
        Removed value: -{
        -  "auditDetails": {
        -    "additionalProperties": true,
        -    "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        -    "type": "object"
        -  },
        -  "counts": {
        -    "additionalProperties": false,
        -    "description": "Finding totals grouped by normalized severity.",
        -    "properties": {
        -      "critical": {
        -        "description": "Number of critical findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "high": {
        -        "description": "Number of high-severity findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "info": {
        -        "description": "Number of informational findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "low": {
        -        "description": "Number of low-severity findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "medium": {
        -        "description": "Number of medium-severity findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      }
        -    },
        -    "required": [
        -      "critical",
        -      "high",
        -      "medium",
        -      "low",
        -      "info"
        -    ],
        -    "type": "object"
        -  },
        -  "coverageStatus": {
        -    "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        -    "enum": [
        -      "measured",
        -      "partial",
        -      "unavailable",
        -      "not_applicable"
        -    ],
        -    "type": "string"
        -  },
        -  "executionComplete": {
        -    "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        -    "type": "boolean"
        -  },
        -  "findings": {
        -    "description": "Prioritized findings with evidence, impact, and remediation.",
        -    "items": {
        -      "additionalProperties": false,
        -      "properties": {
        -        "category": {
        -          "description": "Stable audit category for grouping related findings.",
        -          "type": "string"
        -        },
        -        "evidence": {
        -          "description": "Bounded observation that supports the finding.",
        -          "type": "string"
        -        },
        -        "findingKey": {
        -          "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -          "maxLength": 512,
        -          "minLength": 1,
        -          "type": "string"
        -        },
        -        "impact": {
        -          "description": "Why the finding matters to the audited website.",
        -          "type": "string"
        -        },
        -        "location": {
        -          "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -          "type": "string"
        -        },
        -        "remediation": {
        -          "description": "Concrete recommended fix or mitigation.",
        -          "type": "string"
        -        },
        -        "severity": {
        -          "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -          "type": "string"
        -        },
        -        "title": {
        -          "description": "Short human-readable finding title.",
        -          "type": "string"
        -        }
        -      },
        -      "required": [
        -        "findingKey",
        -        "severity",
        -        "title",
        -        "evidence",
        -        "impact",
        -        "remediation",
        -        "category"
        -      ],
        -      "type": "object"
        -    },
        -    "type": "array"
        -  },
        -  "findingsTruncated": {
        -    "description": "True when additional findings exist outside this response.",
        -    "type": "boolean"
        -  },
        -  "grade": {
        -    "description": "Human-readable grade, or null when unavailable.",
        -    "type": [
        -      "string",
        -      "null"
        -    ]
        -  },
        -  "kind": {
        -    "description": "Audit pillar represented by this result.",
        -    "type": "string"
        -  },
        -  "passingChecks": {
        -    "description": "Number of checks that passed or reported protection.",
        -    "minimum": 0,
        -    "type": "integer"
        -  },
        -  "passingFindings": {
        -    "description": "Positive observations retained with their complete evidence.",
        -    "items": {
        -      "additionalProperties": false,
        -      "properties": {
        -        "category": {
        -          "description": "Stable audit category for grouping related findings.",
        -          "type": "string"
        -        },
        -        "evidence": {
        -          "description": "Bounded observation that supports the finding.",
        -          "type": "string"
        -        },
        -        "findingKey": {
        -          "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -          "maxLength": 512,
        -          "minLength": 1,
        -          "type": "string"
        -        },
        -        "impact": {
        -          "description": "Why the finding matters to the audited website.",
        -          "type": "string"
        -        },
        -        "location": {
        -          "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -          "type": "string"
        -        },
        -        "remediation": {
        -          "description": "Concrete recommended fix or mitigation.",
        -          "type": "string"
        -        },
        -        "severity": {
        -          "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -          "type": "string"
        -        },
        -        "title": {
        -          "description": "Short human-readable finding title.",
        -          "type": "string"
        -        }
        -      },
        -      "required": [
        -        "findingKey",
        -        "severity",
        -        "title",
        -        "evidence",
        -        "impact",
        -        "remediation",
        -        "category"
        -      ],
        -      "type": "object"
        -    },
        -    "type": "array"
        -  },
        -  "returnedFindings": {
        -    "description": "Number of findings included in this response.",
        -    "minimum": 0,
        -    "type": "integer"
        -  },
        -  "score": {
        -    "description": "Measured score from 0 to 100, or null when unavailable.",
        -    "type": [
        -      "number",
        -      "null"
        -    ]
        -  },
        -  "status": {
        -    "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        -    "enum": [
        -      "completed",
        -      "partial"
        -    ],
        -    "type": "string"
        -  },
        -  "target": {
        -    "description": "Canonical audited target.",
        -    "type": "string"
        -  },
        -  "total": {
        -    "description": "Total findings produced before response truncation.",
        -    "minimum": 0,
        -    "type": "integer"
        -  }
        -}
      • removedOutput schema / required
        Removed value: -[
        -  "target",
        -  "kind",
        -  "score",
        -  "grade",
        -  "counts",
        -  "total",
        -  "returnedFindings",
        -  "findingsTruncated",
        -  "passingChecks",
        -  "findings"
        -]
    • Changedaudit_ai_visibility7 fields changed
      • addedInput schema / anyOf
        Added value: +[
        +  {
        +    "required": [
        +      "target"
        +    ]
        +  },
        +  {
        +    "maxProperties": 1,
        +    "required": [
        +      "jobId"
        +    ]
        +  }
        +]
      • addedInput schema / properties / jobId
        Added value: +{
        +  "description": "Resume an existing audit by polling this same tool with its returned jobId. Prefer jobId alone; if repeating other arguments, supply every original argument unchanged. Never invent a jobId.",
        +  "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +  "type": "string"
        +}
      • removedInput schema / required
        Removed value: -[
        -  "target"
        -]
      • removedOutput schema / additionalProperties
        Removed value: -true
      • addedOutput schema / oneOf
        Added value: +[
        +  {
        +    "additionalProperties": true,
        +    "properties": {
        +      "auditDetails": {
        +        "additionalProperties": true,
        +        "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        +        "type": "object"
        +      },
        +      "counts": {
        +        "additionalProperties": false,
        +        "description": "Finding totals grouped by normalized severity.",
        +        "properties": {
        +          "critical": {
        +            "description": "Number of critical findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "high": {
        +            "description": "Number of high-severity findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "info": {
        +            "description": "Number of informational findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "low": {
        +            "description": "Number of low-severity findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "medium": {
        +            "description": "Number of medium-severity findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          }
        +        },
        +        "required": [
        +          "critical",
        +          "high",
        +          "medium",
        +          "low",
        +          "info"
        +        ],
        +        "type": "object"
        +      },
        +      "coverageStatus": {
        +        "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +        "enum": [
        +          "measured",
        +          "partial",
        +          "unavailable",
        +          "not_applicable"
        +        ],
        +        "type": "string"
        +      },
        +      "executionComplete": {
        +        "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +        "type": "boolean"
        +      },
        +      "findings": {
        +        "description": "Prioritized findings with evidence, impact, and remediation.",
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "category": {
        +              "description": "Stable audit category for grouping related findings.",
        +              "type": "string"
        +            },
        +            "evidence": {
        +              "description": "Bounded observation that supports the finding.",
        +              "type": "string"
        +            },
        +            "findingKey": {
        +              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +              "maxLength": 512,
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "impact": {
        +              "description": "Why the finding matters to the audited website.",
        +              "type": "string"
        +            },
        +            "location": {
        +              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +              "type": "string"
        +            },
        +            "remediation": {
        +              "description": "Concrete recommended fix or mitigation.",
        +              "type": "string"
        +            },
        +            "severity": {
        +              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +              "type": "string"
        +            },
        +            "title": {
        +              "description": "Short human-readable finding title.",
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "findingKey",
        +            "severity",
        +            "title",
        +            "evidence",
        +            "impact",
        +            "remediation",
        +            "category"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "findingsTruncated": {
        +        "description": "True when additional findings exist outside this response.",
        +        "type": "boolean"
        +      },
        +      "grade": {
        +        "description": "Human-readable grade, or null when unavailable.",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "kind": {
        +        "description": "Audit pillar represented by this result.",
        +        "type": "string"
        +      },
        +      "passingChecks": {
        +        "description": "Number of checks that passed or reported protection.",
        +        "minimum": 0,
        +        "type": "integer"
        +      },
        +      "passingFindings": {
        +        "description": "Positive observations retained with their complete evidence.",
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "category": {
        +              "description": "Stable audit category for grouping related findings.",
        +              "type": "string"
        +            },
        +            "evidence": {
        +              "description": "Bounded observation that supports the finding.",
        +              "type": "string"
        +            },
        +            "findingKey": {
        +              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +              "maxLength": 512,
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "impact": {
        +              "description": "Why the finding matters to the audited website.",
        +              "type": "string"
        +            },
        +            "location": {
        +              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +              "type": "string"
        +            },
        +            "remediation": {
        +              "description": "Concrete recommended fix or mitigation.",
        +              "type": "string"
        +            },
        +            "severity": {
        +              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +              "type": "string"
        +            },
        +            "title": {
        +              "description": "Short human-readable finding title.",
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "findingKey",
        +            "severity",
        +            "title",
        +            "evidence",
        +            "impact",
        +            "remediation",
        +            "category"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "returnedFindings": {
        +        "description": "Number of findings included in this response.",
        +        "minimum": 0,
        +        "type": "integer"
        +      },
        +      "score": {
        +        "description": "Measured score from 0 to 100, or null when unavailable.",
        +        "type": [
        +          "number",
        +          "null"
        +        ]
        +      },
        +      "status": {
        +        "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +        "enum": [
        +          "completed",
        +          "partial"
        +        ],
        +        "type": "string"
        +      },
        +      "target": {
        +        "description": "Canonical audited target.",
        +        "type": "string"
        +      },
        +      "total": {
        +        "description": "Total findings produced before response truncation.",
        +        "minimum": 0,
        +        "type": "integer"
        +      }
        +    },
        +    "required": [
        +      "target",
        +      "kind",
        +      "score",
        +      "grade",
        +      "counts",
        +      "total",
        +      "returnedFindings",
        +      "findingsTruncated",
        +      "passingChecks",
        +      "findings"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "executionComplete": {
        +        "const": false,
        +        "description": "False until the entire audit result is ready for delivery.",
        +        "type": "boolean"
        +      },
        +      "jobId": {
        +        "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        +        "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +        "type": "string"
        +      },
        +      "nextAction": {
        +        "const": "poll_same_tool",
        +        "description": "Call this same tool again with pollArguments.",
        +        "type": "string"
        +      },
        +      "pollArguments": {
        +        "additionalProperties": false,
        +        "description": "Arguments for retrieving this existing audit without starting another scan.",
        +        "properties": {
        +          "jobId": {
        +            "description": "The same opaque audit job identifier.",
        +            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "jobId"
        +        ],
        +        "type": "object"
        +      },
        +      "retryAfterMs": {
        +        "description": "Suggested delay in milliseconds before polling this job again.",
        +        "minimum": 0,
        +        "type": "integer"
        +      },
        +      "status": {
        +        "const": "running",
        +        "description": "The audit is still executing or completing durable delivery.",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "jobId",
        +      "executionComplete",
        +      "nextAction",
        +      "pollArguments",
        +      "retryAfterMs"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "auditExecuted": {
        +        "const": false,
        +        "description": "This request did not execute a new audit.",
        +        "type": "boolean"
        +      },
        +      "reason": {
        +        "description": "The recoverable job request prerequisite.",
        +        "enum": [
        +          "audit_job_busy",
        +          "audit_job_unavailable",
        +          "audit_job_argument_mismatch",
        +          "audit_job_invalid_arguments"
        +        ],
        +        "type": "string"
        +      },
        +      "status": {
        +        "const": "action_required",
        +        "description": "This request did not start a new audit.",
        +        "type": "string"
        +      },
        +      "usageConsumed": {
        +        "const": false,
        +        "description": "This request did not consume additional audit allowance.",
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "reason",
        +      "auditExecuted",
        +      "usageConsumed"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties
        Removed value: -{
        -  "auditDetails": {
        -    "additionalProperties": true,
        -    "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        -    "type": "object"
        -  },
        -  "counts": {
        -    "additionalProperties": false,
        -    "description": "Finding totals grouped by normalized severity.",
        -    "properties": {
        -      "critical": {
        -        "description": "Number of critical findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "high": {
        -        "description": "Number of high-severity findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "info": {
        -        "description": "Number of informational findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "low": {
        -        "description": "Number of low-severity findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "medium": {
        -        "description": "Number of medium-severity findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      }
        -    },
        -    "required": [
        -      "critical",
        -      "high",
        -      "medium",
        -      "low",
        -      "info"
        -    ],
        -    "type": "object"
        -  },
        -  "coverageStatus": {
        -    "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        -    "enum": [
        -      "measured",
        -      "partial",
        -      "unavailable",
        -      "not_applicable"
        -    ],
        -    "type": "string"
        -  },
        -  "executionComplete": {
        -    "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        -    "type": "boolean"
        -  },
        -  "findings": {
        -    "description": "Prioritized findings with evidence, impact, and remediation.",
        -    "items": {
        -      "additionalProperties": false,
        -      "properties": {
        -        "category": {
        -          "description": "Stable audit category for grouping related findings.",
        -          "type": "string"
        -        },
        -        "evidence": {
        -          "description": "Bounded observation that supports the finding.",
        -          "type": "string"
        -        },
        -        "findingKey": {
        -          "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -          "maxLength": 512,
        -          "minLength": 1,
        -          "type": "string"
        -        },
        -        "impact": {
        -          "description": "Why the finding matters to the audited website.",
        -          "type": "string"
        -        },
        -        "location": {
        -          "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -          "type": "string"
        -        },
        -        "remediation": {
        -          "description": "Concrete recommended fix or mitigation.",
        -          "type": "string"
        -        },
        -        "severity": {
        -          "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -          "type": "string"
        -        },
        -        "title": {
        -          "description": "Short human-readable finding title.",
        -          "type": "string"
        -        }
        -      },
        -      "required": [
        -        "findingKey",
        -        "severity",
        -        "title",
        -        "evidence",
        -        "impact",
        -        "remediation",
        -        "category"
        -      ],
        -      "type": "object"
        -    },
        -    "type": "array"
        -  },
        -  "findingsTruncated": {
        -    "description": "True when additional findings exist outside this response.",
        -    "type": "boolean"
        -  },
        -  "grade": {
        -    "description": "Human-readable grade, or null when unavailable.",
        -    "type": [
        -      "string",
        -      "null"
        -    ]
        -  },
        -  "kind": {
        -    "description": "Audit pillar represented by this result.",
        -    "type": "string"
        -  },
        -  "passingChecks": {
        -    "description": "Number of checks that passed or reported protection.",
        -    "minimum": 0,
        -    "type": "integer"
        -  },
        -  "passingFindings": {
        -    "description": "Positive observations retained with their complete evidence.",
        -    "items": {
        -      "additionalProperties": false,
        -      "properties": {
        -        "category": {
        -          "description": "Stable audit category for grouping related findings.",
        -          "type": "string"
        -        },
        -        "evidence": {
        -          "description": "Bounded observation that supports the finding.",
        -          "type": "string"
        -        },
        -        "findingKey": {
        -          "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -          "maxLength": 512,
        -          "minLength": 1,
        -          "type": "string"
        -        },
        -        "impact": {
        -          "description": "Why the finding matters to the audited website.",
        -          "type": "string"
        -        },
        -        "location": {
        -          "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -          "type": "string"
        -        },
        -        "remediation": {
        -          "description": "Concrete recommended fix or mitigation.",
        -          "type": "string"
        -        },
        -        "severity": {
        -          "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -          "type": "string"
        -        },
        -        "title": {
        -          "description": "Short human-readable finding title.",
        -          "type": "string"
        -        }
        -      },
        -      "required": [
        -        "findingKey",
        -        "severity",
        -        "title",
        -        "evidence",
        -        "impact",
        -        "remediation",
        -        "category"
        -      ],
        -      "type": "object"
        -    },
        -    "type": "array"
        -  },
        -  "returnedFindings": {
        -    "description": "Number of findings included in this response.",
        -    "minimum": 0,
        -    "type": "integer"
        -  },
        -  "score": {
        -    "description": "Measured score from 0 to 100, or null when unavailable.",
        -    "type": [
        -      "number",
        -      "null"
        -    ]
        -  },
        -  "status": {
        -    "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        -    "enum": [
        -      "completed",
        -      "partial"
        -    ],
        -    "type": "string"
        -  },
        -  "target": {
        -    "description": "Canonical audited target.",
        -    "type": "string"
        -  },
        -  "total": {
        -    "description": "Total findings produced before response truncation.",
        -    "minimum": 0,
        -    "type": "integer"
        -  }
        -}
      • removedOutput schema / required
        Removed value: -[
        -  "target",
        -  "kind",
        -  "score",
        -  "grade",
        -  "counts",
        -  "total",
        -  "returnedFindings",
        -  "findingsTruncated",
        -  "passingChecks",
        -  "findings"
        -]
    • Changedaudit_full7 fields changed
      • addedInput schema / anyOf
        Added value: +[
        +  {
        +    "required": [
        +      "target"
        +    ]
        +  },
        +  {
        +    "maxProperties": 1,
        +    "required": [
        +      "jobId"
        +    ]
        +  }
        +]
      • addedInput schema / properties / jobId
        Added value: +{
        +  "description": "Resume an existing audit by polling this same tool with its returned jobId. Prefer jobId alone; if repeating other arguments, supply every original argument unchanged. Never invent a jobId.",
        +  "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +  "type": "string"
        +}
      • removedInput schema / required
        Removed value: -[
        -  "target"
        -]
      • removedOutput schema / additionalProperties
        Removed value: -false
      • addedOutput schema / oneOf
        Added value: +[
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "auditDetails": {
        +        "additionalProperties": true,
        +        "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        +        "type": "object"
        +      },
        +      "blended": {
        +        "description": "Weighted score across measured pillars, or null when no pillar could be measured.",
        +        "type": [
        +          "number",
        +          "null"
        +        ]
        +      },
        +      "complete": {
        +        "description": "Compatibility field: every requested pillar runner returned. Consult coverageStatus and auditDetails for unmeasured modules and metrics.",
        +        "type": "boolean"
        +      },
        +      "counts": {
        +        "additionalProperties": false,
        +        "description": "Finding totals grouped by normalized severity.",
        +        "properties": {
        +          "critical": {
        +            "description": "Number of critical findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "high": {
        +            "description": "Number of high-severity findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "info": {
        +            "description": "Number of informational findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "low": {
        +            "description": "Number of low-severity findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "medium": {
        +            "description": "Number of medium-severity findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          }
        +        },
        +        "required": [
        +          "critical",
        +          "high",
        +          "medium",
        +          "low",
        +          "info"
        +        ],
        +        "type": "object"
        +      },
        +      "coverageStatus": {
        +        "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +        "enum": [
        +          "measured",
        +          "partial",
        +          "unavailable",
        +          "not_applicable"
        +        ],
        +        "type": "string"
        +      },
        +      "executionComplete": {
        +        "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +        "type": "boolean"
        +      },
        +      "failedPillars": {
        +        "description": "Pillars that could not be measured and their sanitized errors.",
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "error": {
        +              "description": "Sanitized failure reason.",
        +              "type": "string"
        +            },
        +            "pillar": {
        +              "description": "Audit pillar that failed.",
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "pillar",
        +            "error"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "findings": {
        +        "description": "Prioritized findings across every completed audit pillar.",
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "category": {
        +              "description": "Stable audit category for grouping related findings.",
        +              "type": "string"
        +            },
        +            "evidence": {
        +              "description": "Bounded observation that supports the finding.",
        +              "type": "string"
        +            },
        +            "findingKey": {
        +              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +              "maxLength": 512,
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "impact": {
        +              "description": "Why the finding matters to the audited website.",
        +              "type": "string"
        +            },
        +            "location": {
        +              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +              "type": "string"
        +            },
        +            "pillar": {
        +              "description": "Audit pillar that produced the finding.",
        +              "type": "string"
        +            },
        +            "remediation": {
        +              "description": "Concrete recommended fix or mitigation.",
        +              "type": "string"
        +            },
        +            "severity": {
        +              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +              "type": "string"
        +            },
        +            "title": {
        +              "description": "Short human-readable finding title.",
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "pillar",
        +            "findingKey",
        +            "severity",
        +            "title",
        +            "evidence",
        +            "impact",
        +            "remediation",
        +            "category"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "findingsTruncated": {
        +        "description": "True when additional findings exist outside this response.",
        +        "type": "boolean"
        +      },
        +      "passingFindings": {
        +        "description": "Positive observations retained with their complete evidence.",
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "category": {
        +              "description": "Stable audit category for grouping related findings.",
        +              "type": "string"
        +            },
        +            "evidence": {
        +              "description": "Bounded observation that supports the finding.",
        +              "type": "string"
        +            },
        +            "findingKey": {
        +              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +              "maxLength": 512,
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "impact": {
        +              "description": "Why the finding matters to the audited website.",
        +              "type": "string"
        +            },
        +            "location": {
        +              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +              "type": "string"
        +            },
        +            "pillar": {
        +              "description": "Audit pillar that produced the finding.",
        +              "type": "string"
        +            },
        +            "remediation": {
        +              "description": "Concrete recommended fix or mitigation.",
        +              "type": "string"
        +            },
        +            "severity": {
        +              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +              "type": "string"
        +            },
        +            "title": {
        +              "description": "Short human-readable finding title.",
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "pillar",
        +            "findingKey",
        +            "severity",
        +            "title",
        +            "evidence",
        +            "impact",
        +            "remediation",
        +            "category"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "pillars": {
        +        "additionalProperties": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "findings": {
        +              "description": "Number of findings in this pillar.",
        +              "minimum": 0,
        +              "type": "integer"
        +            },
        +            "score": {
        +              "description": "Pillar score, or null when unavailable.",
        +              "type": [
        +                "number",
        +                "null"
        +              ]
        +            }
        +          },
        +          "required": [
        +            "score",
        +            "findings"
        +          ],
        +          "type": "object"
        +        },
        +        "description": "Per-pillar score and finding-count summary.",
        +        "type": "object"
        +      },
        +      "returnedFindings": {
        +        "description": "Number of cross-pillar findings included.",
        +        "minimum": 0,
        +        "type": "integer"
        +      },
        +      "status": {
        +        "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +        "enum": [
        +          "completed",
        +          "partial"
        +        ],
        +        "type": "string"
        +      },
        +      "target": {
        +        "description": "Canonical audited target.",
        +        "type": "string"
        +      },
        +      "total": {
        +        "description": "Total cross-pillar findings before response truncation.",
        +        "minimum": 0,
        +        "type": "integer"
        +      }
        +    },
        +    "required": [
        +      "target",
        +      "blended",
        +      "pillars",
        +      "counts",
        +      "total",
        +      "returnedFindings",
        +      "findingsTruncated",
        +      "findings",
        +      "complete",
        +      "failedPillars"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "executionComplete": {
        +        "const": false,
        +        "description": "False until the entire audit result is ready for delivery.",
        +        "type": "boolean"
        +      },
        +      "jobId": {
        +        "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        +        "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +        "type": "string"
        +      },
        +      "nextAction": {
        +        "const": "poll_same_tool",
        +        "description": "Call this same tool again with pollArguments.",
        +        "type": "string"
        +      },
        +      "pollArguments": {
        +        "additionalProperties": false,
        +        "description": "Arguments for retrieving this existing audit without starting another scan.",
        +        "properties": {
        +          "jobId": {
        +            "description": "The same opaque audit job identifier.",
        +            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "jobId"
        +        ],
        +        "type": "object"
        +      },
        +      "retryAfterMs": {
        +        "description": "Suggested delay in milliseconds before polling this job again.",
        +        "minimum": 0,
        +        "type": "integer"
        +      },
        +      "status": {
        +        "const": "running",
        +        "description": "The audit is still executing or completing durable delivery.",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "jobId",
        +      "executionComplete",
        +      "nextAction",
        +      "pollArguments",
        +      "retryAfterMs"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "auditExecuted": {
        +        "const": false,
        +        "description": "This request did not execute a new audit.",
        +        "type": "boolean"
        +      },
        +      "reason": {
        +        "description": "The recoverable job request prerequisite.",
        +        "enum": [
        +          "audit_job_busy",
        +          "audit_job_unavailable",
        +          "audit_job_argument_mismatch",
        +          "audit_job_invalid_arguments"
        +        ],
        +        "type": "string"
        +      },
        +      "status": {
        +        "const": "action_required",
        +        "description": "This request did not start a new audit.",
        +        "type": "string"
        +      },
        +      "usageConsumed": {
        +        "const": false,
        +        "description": "This request did not consume additional audit allowance.",
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "reason",
        +      "auditExecuted",
        +      "usageConsumed"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties
        Removed value: -{
        -  "auditDetails": {
        -    "additionalProperties": true,
        -    "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        -    "type": "object"
        -  },
        -  "blended": {
        -    "description": "Weighted score across measured pillars, or null when no pillar could be measured.",
        -    "type": [
        -      "number",
        -      "null"
        -    ]
        -  },
        -  "complete": {
        -    "description": "Compatibility field: every requested pillar runner returned. Consult coverageStatus and auditDetails for unmeasured modules and metrics.",
        -    "type": "boolean"
        -  },
        -  "counts": {
        -    "additionalProperties": false,
        -    "description": "Finding totals grouped by normalized severity.",
        -    "properties": {
        -      "critical": {
        -        "description": "Number of critical findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "high": {
        -        "description": "Number of high-severity findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "info": {
        -        "description": "Number of informational findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "low": {
        -        "description": "Number of low-severity findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "medium": {
        -        "description": "Number of medium-severity findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      }
        -    },
        -    "required": [
        -      "critical",
        -      "high",
        -      "medium",
        -      "low",
        -      "info"
        -    ],
        -    "type": "object"
        -  },
        -  "coverageStatus": {
        -    "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        -    "enum": [
        -      "measured",
        -      "partial",
        -      "unavailable",
        -      "not_applicable"
        -    ],
        -    "type": "string"
        -  },
        -  "executionComplete": {
        -    "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        -    "type": "boolean"
        -  },
        -  "failedPillars": {
        -    "description": "Pillars that could not be measured and their sanitized errors.",
        -    "items": {
        -      "additionalProperties": false,
        -      "properties": {
        -        "error": {
        -          "description": "Sanitized failure reason.",
        -          "type": "string"
        -        },
        -        "pillar": {
        -          "description": "Audit pillar that failed.",
        -          "type": "string"
        -        }
        -      },
        -      "required": [
        -        "pillar",
        -        "error"
        -      ],
        -      "type": "object"
        -    },
        -    "type": "array"
        -  },
        -  "findings": {
        -    "description": "Prioritized findings across every completed audit pillar.",
        -    "items": {
        -      "additionalProperties": false,
        -      "properties": {
        -        "category": {
        -          "description": "Stable audit category for grouping related findings.",
        -          "type": "string"
        -        },
        -        "evidence": {
        -          "description": "Bounded observation that supports the finding.",
        -          "type": "string"
        -        },
        -        "findingKey": {
        -          "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -          "maxLength": 512,
        -          "minLength": 1,
        -          "type": "string"
        -        },
        -        "impact": {
        -          "description": "Why the finding matters to the audited website.",
        -          "type": "string"
        -        },
        -        "location": {
        -          "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -          "type": "string"
        -        },
        -        "pillar": {
        -          "description": "Audit pillar that produced the finding.",
        -          "type": "string"
        -        },
        -        "remediation": {
        -          "description": "Concrete recommended fix or mitigation.",
        -          "type": "string"
        -        },
        -        "severity": {
        -          "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -          "type": "string"
        -        },
        -        "title": {
        -          "description": "Short human-readable finding title.",
        -          "type": "string"
        -        }
        -      },
        -      "required": [
        -        "pillar",
        -        "findingKey",
        -        "severity",
        -        "title",
        -        "evidence",
        -        "impact",
        -        "remediation",
        -        "category"
        -      ],
        -      "type": "object"
        -    },
        -    "type": "array"
        -  },
        -  "findingsTruncated": {
        -    "description": "True when additional findings exist outside this response.",
        -    "type": "boolean"
        -  },
        -  "passingFindings": {
        -    "description": "Positive observations retained with their complete evidence.",
        -    "items": {
        -      "additionalProperties": false,
        -      "properties": {
        -        "category": {
        -          "description": "Stable audit category for grouping related findings.",
        -          "type": "string"
        -        },
        -        "evidence": {
        -          "description": "Bounded observation that supports the finding.",
        -          "type": "string"
        -        },
        -        "findingKey": {
        -          "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -          "maxLength": 512,
        -          "minLength": 1,
        -          "type": "string"
        -        },
        -        "impact": {
        -          "description": "Why the finding matters to the audited website.",
        -          "type": "string"
        -        },
        -        "location": {
        -          "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -          "type": "string"
        -        },
        -        "pillar": {
        -          "description": "Audit pillar that produced the finding.",
        -          "type": "string"
        -        },
        -        "remediation": {
        -          "description": "Concrete recommended fix or mitigation.",
        -          "type": "string"
        -        },
        -        "severity": {
        -          "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -          "type": "string"
        -        },
        -        "title": {
        -          "description": "Short human-readable finding title.",
        -          "type": "string"
        -        }
        -      },
        -      "required": [
        -        "pillar",
        -        "findingKey",
        -        "severity",
        -        "title",
        -        "evidence",
        -        "impact",
        -        "remediation",
        -        "category"
        -      ],
        -      "type": "object"
        -    },
        -    "type": "array"
        -  },
        -  "pillars": {
        -    "additionalProperties": {
        -      "additionalProperties": false,
        -      "properties": {
        -        "findings": {
        -          "description": "Number of findings in this pillar.",
        -          "minimum": 0,
        -          "type": "integer"
        -        },
        -        "score": {
        -          "description": "Pillar score, or null when unavailable.",
        -          "type": [
        -            "number",
        -            "null"
        -          ]
        -        }
        -      },
        -      "required": [
        -        "score",
        -        "findings"
        -      ],
        -      "type": "object"
        -    },
        -    "description": "Per-pillar score and finding-count summary.",
        -    "type": "object"
        -  },
        -  "returnedFindings": {
        -    "description": "Number of cross-pillar findings included.",
        -    "minimum": 0,
        -    "type": "integer"
        -  },
        -  "status": {
        -    "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        -    "enum": [
        -      "completed",
        -      "partial"
        -    ],
        -    "type": "string"
        -  },
        -  "target": {
        -    "description": "Canonical audited target.",
        -    "type": "string"
        -  },
        -  "total": {
        -    "description": "Total cross-pillar findings before response truncation.",
        -    "minimum": 0,
        -    "type": "integer"
        -  }
        -}
      • removedOutput schema / required
        Removed value: -[
        -  "target",
        -  "blended",
        -  "pillars",
        -  "counts",
        -  "total",
        -  "returnedFindings",
        -  "findingsTruncated",
        -  "findings",
        -  "complete",
        -  "failedPillars"
        -]
    • Changedaudit_integrations7 fields changed
      • addedInput schema / anyOf
        Added value: +[
        +  {
        +    "required": [
        +      "target"
        +    ]
        +  },
        +  {
        +    "maxProperties": 1,
        +    "required": [
        +      "jobId"
        +    ]
        +  }
        +]
      • addedInput schema / properties / jobId
        Added value: +{
        +  "description": "Resume an existing audit by polling this same tool with its returned jobId. Prefer jobId alone; if repeating other arguments, supply every original argument unchanged. Never invent a jobId.",
        +  "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +  "type": "string"
        +}
      • removedInput schema / required
        Removed value: -[
        -  "target"
        -]
      • removedOutput schema / additionalProperties
        Removed value: -true
      • addedOutput schema / oneOf
        Added value: +[
        +  {
        +    "additionalProperties": true,
        +    "properties": {
        +      "auditDetails": {
        +        "additionalProperties": true,
        +        "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        +        "type": "object"
        +      },
        +      "counts": {
        +        "additionalProperties": false,
        +        "description": "Finding totals grouped by normalized severity.",
        +        "properties": {
        +          "critical": {
        +            "description": "Number of critical findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "high": {
        +            "description": "Number of high-severity findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "info": {
        +            "description": "Number of informational findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "low": {
        +            "description": "Number of low-severity findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "medium": {
        +            "description": "Number of medium-severity findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          }
        +        },
        +        "required": [
        +          "critical",
        +          "high",
        +          "medium",
        +          "low",
        +          "info"
        +        ],
        +        "type": "object"
        +      },
        +      "coverageStatus": {
        +        "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +        "enum": [
        +          "measured",
        +          "partial",
        +          "unavailable",
        +          "not_applicable"
        +        ],
        +        "type": "string"
        +      },
        +      "executionComplete": {
        +        "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +        "type": "boolean"
        +      },
        +      "findings": {
        +        "description": "Prioritized findings with evidence, impact, and remediation.",
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "category": {
        +              "description": "Stable audit category for grouping related findings.",
        +              "type": "string"
        +            },
        +            "evidence": {
        +              "description": "Bounded observation that supports the finding.",
        +              "type": "string"
        +            },
        +            "findingKey": {
        +              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +              "maxLength": 512,
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "impact": {
        +              "description": "Why the finding matters to the audited website.",
        +              "type": "string"
        +            },
        +            "location": {
        +              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +              "type": "string"
        +            },
        +            "remediation": {
        +              "description": "Concrete recommended fix or mitigation.",
        +              "type": "string"
        +            },
        +            "severity": {
        +              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +              "type": "string"
        +            },
        +            "title": {
        +              "description": "Short human-readable finding title.",
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "findingKey",
        +            "severity",
        +            "title",
        +            "evidence",
        +            "impact",
        +            "remediation",
        +            "category"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "findingsTruncated": {
        +        "description": "True when additional findings exist outside this response.",
        +        "type": "boolean"
        +      },
        +      "grade": {
        +        "description": "Human-readable grade, or null when unavailable.",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "kind": {
        +        "description": "Audit pillar represented by this result.",
        +        "type": "string"
        +      },
        +      "passingChecks": {
        +        "description": "Number of checks that passed or reported protection.",
        +        "minimum": 0,
        +        "type": "integer"
        +      },
        +      "passingFindings": {
        +        "description": "Positive observations retained with their complete evidence.",
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "category": {
        +              "description": "Stable audit category for grouping related findings.",
        +              "type": "string"
        +            },
        +            "evidence": {
        +              "description": "Bounded observation that supports the finding.",
        +              "type": "string"
        +            },
        +            "findingKey": {
        +              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +              "maxLength": 512,
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "impact": {
        +              "description": "Why the finding matters to the audited website.",
        +              "type": "string"
        +            },
        +            "location": {
        +              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +              "type": "string"
        +            },
        +            "remediation": {
        +              "description": "Concrete recommended fix or mitigation.",
        +              "type": "string"
        +            },
        +            "severity": {
        +              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +              "type": "string"
        +            },
        +            "title": {
        +              "description": "Short human-readable finding title.",
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "findingKey",
        +            "severity",
        +            "title",
        +            "evidence",
        +            "impact",
        +            "remediation",
        +            "category"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "returnedFindings": {
        +        "description": "Number of findings included in this response.",
        +        "minimum": 0,
        +        "type": "integer"
        +      },
        +      "score": {
        +        "description": "Measured score from 0 to 100, or null when unavailable.",
        +        "type": [
        +          "number",
        +          "null"
        +        ]
        +      },
        +      "status": {
        +        "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +        "enum": [
        +          "completed",
        +          "partial"
        +        ],
        +        "type": "string"
        +      },
        +      "target": {
        +        "description": "Canonical audited target.",
        +        "type": "string"
        +      },
        +      "total": {
        +        "description": "Total findings produced before response truncation.",
        +        "minimum": 0,
        +        "type": "integer"
        +      }
        +    },
        +    "required": [
        +      "target",
        +      "kind",
        +      "score",
        +      "grade",
        +      "counts",
        +      "total",
        +      "returnedFindings",
        +      "findingsTruncated",
        +      "passingChecks",
        +      "findings"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "executionComplete": {
        +        "const": false,
        +        "description": "False until the entire audit result is ready for delivery.",
        +        "type": "boolean"
        +      },
        +      "jobId": {
        +        "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        +        "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +        "type": "string"
        +      },
        +      "nextAction": {
        +        "const": "poll_same_tool",
        +        "description": "Call this same tool again with pollArguments.",
        +        "type": "string"
        +      },
        +      "pollArguments": {
        +        "additionalProperties": false,
        +        "description": "Arguments for retrieving this existing audit without starting another scan.",
        +        "properties": {
        +          "jobId": {
        +            "description": "The same opaque audit job identifier.",
        +            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "jobId"
        +        ],
        +        "type": "object"
        +      },
        +      "retryAfterMs": {
        +        "description": "Suggested delay in milliseconds before polling this job again.",
        +        "minimum": 0,
        +        "type": "integer"
        +      },
        +      "status": {
        +        "const": "running",
        +        "description": "The audit is still executing or completing durable delivery.",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "jobId",
        +      "executionComplete",
        +      "nextAction",
        +      "pollArguments",
        +      "retryAfterMs"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "auditExecuted": {
        +        "const": false,
        +        "description": "This request did not execute a new audit.",
        +        "type": "boolean"
        +      },
        +      "reason": {
        +        "description": "The recoverable job request prerequisite.",
        +        "enum": [
        +          "audit_job_busy",
        +          "audit_job_unavailable",
        +          "audit_job_argument_mismatch",
        +          "audit_job_invalid_arguments"
        +        ],
        +        "type": "string"
        +      },
        +      "status": {
        +        "const": "action_required",
        +        "description": "This request did not start a new audit.",
        +        "type": "string"
        +      },
        +      "usageConsumed": {
        +        "const": false,
        +        "description": "This request did not consume additional audit allowance.",
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "reason",
        +      "auditExecuted",
        +      "usageConsumed"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties
        Removed value: -{
        -  "auditDetails": {
        -    "additionalProperties": true,
        -    "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        -    "type": "object"
        -  },
        -  "counts": {
        -    "additionalProperties": false,
        -    "description": "Finding totals grouped by normalized severity.",
        -    "properties": {
        -      "critical": {
        -        "description": "Number of critical findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "high": {
        -        "description": "Number of high-severity findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "info": {
        -        "description": "Number of informational findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "low": {
        -        "description": "Number of low-severity findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "medium": {
        -        "description": "Number of medium-severity findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      }
        -    },
        -    "required": [
        -      "critical",
        -      "high",
        -      "medium",
        -      "low",
        -      "info"
        -    ],
        -    "type": "object"
        -  },
        -  "coverageStatus": {
        -    "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        -    "enum": [
        -      "measured",
        -      "partial",
        -      "unavailable",
        -      "not_applicable"
        -    ],
        -    "type": "string"
        -  },
        -  "executionComplete": {
        -    "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        -    "type": "boolean"
        -  },
        -  "findings": {
        -    "description": "Prioritized findings with evidence, impact, and remediation.",
        -    "items": {
        -      "additionalProperties": false,
        -      "properties": {
        -        "category": {
        -          "description": "Stable audit category for grouping related findings.",
        -          "type": "string"
        -        },
        -        "evidence": {
        -          "description": "Bounded observation that supports the finding.",
        -          "type": "string"
        -        },
        -        "findingKey": {
        -          "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -          "maxLength": 512,
        -          "minLength": 1,
        -          "type": "string"
        -        },
        -        "impact": {
        -          "description": "Why the finding matters to the audited website.",
        -          "type": "string"
        -        },
        -        "location": {
        -          "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -          "type": "string"
        -        },
        -        "remediation": {
        -          "description": "Concrete recommended fix or mitigation.",
        -          "type": "string"
        -        },
        -        "severity": {
        -          "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -          "type": "string"
        -        },
        -        "title": {
        -          "description": "Short human-readable finding title.",
        -          "type": "string"
        -        }
        -      },
        -      "required": [
        -        "findingKey",
        -        "severity",
        -        "title",
        -        "evidence",
        -        "impact",
        -        "remediation",
        -        "category"
        -      ],
        -      "type": "object"
        -    },
        -    "type": "array"
        -  },
        -  "findingsTruncated": {
        -    "description": "True when additional findings exist outside this response.",
        -    "type": "boolean"
        -  },
        -  "grade": {
        -    "description": "Human-readable grade, or null when unavailable.",
        -    "type": [
        -      "string",
        -      "null"
        -    ]
        -  },
        -  "kind": {
        -    "description": "Audit pillar represented by this result.",
        -    "type": "string"
        -  },
        -  "passingChecks": {
        -    "description": "Number of checks that passed or reported protection.",
        -    "minimum": 0,
        -    "type": "integer"
        -  },
        -  "passingFindings": {
        -    "description": "Positive observations retained with their complete evidence.",
        -    "items": {
        -      "additionalProperties": false,
        -      "properties": {
        -        "category": {
        -          "description": "Stable audit category for grouping related findings.",
        -          "type": "string"
        -        },
        -        "evidence": {
        -          "description": "Bounded observation that supports the finding.",
        -          "type": "string"
        -        },
        -        "findingKey": {
        -          "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -          "maxLength": 512,
        -          "minLength": 1,
        -          "type": "string"
        -        },
        -        "impact": {
        -          "description": "Why the finding matters to the audited website.",
        -          "type": "string"
        -        },
        -        "location": {
        -          "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -          "type": "string"
        -        },
        -        "remediation": {
        -          "description": "Concrete recommended fix or mitigation.",
        -          "type": "string"
        -        },
        -        "severity": {
        -          "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -          "type": "string"
        -        },
        -        "title": {
        -          "description": "Short human-readable finding title.",
        -          "type": "string"
        -        }
        -      },
        -      "required": [
        -        "findingKey",
        -        "severity",
        -        "title",
        -        "evidence",
        -        "impact",
        -        "remediation",
        -        "category"
        -      ],
        -      "type": "object"
        -    },
        -    "type": "array"
        -  },
        -  "returnedFindings": {
        -    "description": "Number of findings included in this response.",
        -    "minimum": 0,
        -    "type": "integer"
        -  },
        -  "score": {
        -    "description": "Measured score from 0 to 100, or null when unavailable.",
        -    "type": [
        -      "number",
        -      "null"
        -    ]
        -  },
        -  "status": {
        -    "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        -    "enum": [
        -      "completed",
        -      "partial"
        -    ],
        -    "type": "string"
        -  },
        -  "target": {
        -    "description": "Canonical audited target.",
        -    "type": "string"
        -  },
        -  "total": {
        -    "description": "Total findings produced before response truncation.",
        -    "minimum": 0,
        -    "type": "integer"
        -  }
        -}
      • removedOutput schema / required
        Removed value: -[
        -  "target",
        -  "kind",
        -  "score",
        -  "grade",
        -  "counts",
        -  "total",
        -  "returnedFindings",
        -  "findingsTruncated",
        -  "passingChecks",
        -  "findings"
        -]
    • Changedaudit_performance7 fields changed
      • addedInput schema / anyOf
        Added value: +[
        +  {
        +    "required": [
        +      "target"
        +    ]
        +  },
        +  {
        +    "maxProperties": 1,
        +    "required": [
        +      "jobId"
        +    ]
        +  }
        +]
      • addedInput schema / properties / jobId
        Added value: +{
        +  "description": "Resume an existing audit by polling this same tool with its returned jobId. Prefer jobId alone; if repeating other arguments, supply every original argument unchanged. Never invent a jobId.",
        +  "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +  "type": "string"
        +}
      • removedInput schema / required
        Removed value: -[
        -  "target"
        -]
      • removedOutput schema / additionalProperties
        Removed value: -true
      • addedOutput schema / oneOf
        Added value: +[
        +  {
        +    "additionalProperties": true,
        +    "properties": {
        +      "auditDetails": {
        +        "additionalProperties": true,
        +        "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        +        "type": "object"
        +      },
        +      "counts": {
        +        "additionalProperties": false,
        +        "description": "Finding totals grouped by normalized severity.",
        +        "properties": {
        +          "critical": {
        +            "description": "Number of critical findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "high": {
        +            "description": "Number of high-severity findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "info": {
        +            "description": "Number of informational findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "low": {
        +            "description": "Number of low-severity findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "medium": {
        +            "description": "Number of medium-severity findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          }
        +        },
        +        "required": [
        +          "critical",
        +          "high",
        +          "medium",
        +          "low",
        +          "info"
        +        ],
        +        "type": "object"
        +      },
        +      "coverageStatus": {
        +        "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +        "enum": [
        +          "measured",
        +          "partial",
        +          "unavailable",
        +          "not_applicable"
        +        ],
        +        "type": "string"
        +      },
        +      "executionComplete": {
        +        "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +        "type": "boolean"
        +      },
        +      "findings": {
        +        "description": "Prioritized findings with evidence, impact, and remediation.",
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "category": {
        +              "description": "Stable audit category for grouping related findings.",
        +              "type": "string"
        +            },
        +            "evidence": {
        +              "description": "Bounded observation that supports the finding.",
        +              "type": "string"
        +            },
        +            "findingKey": {
        +              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +              "maxLength": 512,
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "impact": {
        +              "description": "Why the finding matters to the audited website.",
        +              "type": "string"
        +            },
        +            "location": {
        +              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +              "type": "string"
        +            },
        +            "remediation": {
        +              "description": "Concrete recommended fix or mitigation.",
        +              "type": "string"
        +            },
        +            "severity": {
        +              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +              "type": "string"
        +            },
        +            "title": {
        +              "description": "Short human-readable finding title.",
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "findingKey",
        +            "severity",
        +            "title",
        +            "evidence",
        +            "impact",
        +            "remediation",
        +            "category"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "findingsTruncated": {
        +        "description": "True when additional findings exist outside this response.",
        +        "type": "boolean"
        +      },
        +      "grade": {
        +        "description": "Human-readable grade, or null when unavailable.",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "kind": {
        +        "description": "Audit pillar represented by this result.",
        +        "type": "string"
        +      },
        +      "passingChecks": {
        +        "description": "Number of checks that passed or reported protection.",
        +        "minimum": 0,
        +        "type": "integer"
        +      },
        +      "passingFindings": {
        +        "description": "Positive observations retained with their complete evidence.",
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "category": {
        +              "description": "Stable audit category for grouping related findings.",
        +              "type": "string"
        +            },
        +            "evidence": {
        +              "description": "Bounded observation that supports the finding.",
        +              "type": "string"
        +            },
        +            "findingKey": {
        +              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +              "maxLength": 512,
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "impact": {
        +              "description": "Why the finding matters to the audited website.",
        +              "type": "string"
        +            },
        +            "location": {
        +              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +              "type": "string"
        +            },
        +            "remediation": {
        +              "description": "Concrete recommended fix or mitigation.",
        +              "type": "string"
        +            },
        +            "severity": {
        +              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +              "type": "string"
        +            },
        +            "title": {
        +              "description": "Short human-readable finding title.",
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "findingKey",
        +            "severity",
        +            "title",
        +            "evidence",
        +            "impact",
        +            "remediation",
        +            "category"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "returnedFindings": {
        +        "description": "Number of findings included in this response.",
        +        "minimum": 0,
        +        "type": "integer"
        +      },
        +      "score": {
        +        "description": "Measured score from 0 to 100, or null when unavailable.",
        +        "type": [
        +          "number",
        +          "null"
        +        ]
        +      },
        +      "status": {
        +        "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +        "enum": [
        +          "completed",
        +          "partial"
        +        ],
        +        "type": "string"
        +      },
        +      "target": {
        +        "description": "Canonical audited target.",
        +        "type": "string"
        +      },
        +      "total": {
        +        "description": "Total findings produced before response truncation.",
        +        "minimum": 0,
        +        "type": "integer"
        +      }
        +    },
        +    "required": [
        +      "target",
        +      "kind",
        +      "score",
        +      "grade",
        +      "counts",
        +      "total",
        +      "returnedFindings",
        +      "findingsTruncated",
        +      "passingChecks",
        +      "findings"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "executionComplete": {
        +        "const": false,
        +        "description": "False until the entire audit result is ready for delivery.",
        +        "type": "boolean"
        +      },
        +      "jobId": {
        +        "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        +        "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +        "type": "string"
        +      },
        +      "nextAction": {
        +        "const": "poll_same_tool",
        +        "description": "Call this same tool again with pollArguments.",
        +        "type": "string"
        +      },
        +      "pollArguments": {
        +        "additionalProperties": false,
        +        "description": "Arguments for retrieving this existing audit without starting another scan.",
        +        "properties": {
        +          "jobId": {
        +            "description": "The same opaque audit job identifier.",
        +            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "jobId"
        +        ],
        +        "type": "object"
        +      },
        +      "retryAfterMs": {
        +        "description": "Suggested delay in milliseconds before polling this job again.",
        +        "minimum": 0,
        +        "type": "integer"
        +      },
        +      "status": {
        +        "const": "running",
        +        "description": "The audit is still executing or completing durable delivery.",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "jobId",
        +      "executionComplete",
        +      "nextAction",
        +      "pollArguments",
        +      "retryAfterMs"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "auditExecuted": {
        +        "const": false,
        +        "description": "This request did not execute a new audit.",
        +        "type": "boolean"
        +      },
        +      "reason": {
        +        "description": "The recoverable job request prerequisite.",
        +        "enum": [
        +          "audit_job_busy",
        +          "audit_job_unavailable",
        +          "audit_job_argument_mismatch",
        +          "audit_job_invalid_arguments"
        +        ],
        +        "type": "string"
        +      },
        +      "status": {
        +        "const": "action_required",
        +        "description": "This request did not start a new audit.",
        +        "type": "string"
        +      },
        +      "usageConsumed": {
        +        "const": false,
        +        "description": "This request did not consume additional audit allowance.",
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "reason",
        +      "auditExecuted",
        +      "usageConsumed"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties
        Removed value: -{
        -  "auditDetails": {
        -    "additionalProperties": true,
        -    "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        -    "type": "object"
        -  },
        -  "counts": {
        -    "additionalProperties": false,
        -    "description": "Finding totals grouped by normalized severity.",
        -    "properties": {
        -      "critical": {
        -        "description": "Number of critical findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "high": {
        -        "description": "Number of high-severity findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "info": {
        -        "description": "Number of informational findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "low": {
        -        "description": "Number of low-severity findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "medium": {
        -        "description": "Number of medium-severity findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      }
        -    },
        -    "required": [
        -      "critical",
        -      "high",
        -      "medium",
        -      "low",
        -      "info"
        -    ],
        -    "type": "object"
        -  },
        -  "coverageStatus": {
        -    "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        -    "enum": [
        -      "measured",
        -      "partial",
        -      "unavailable",
        -      "not_applicable"
        -    ],
        -    "type": "string"
        -  },
        -  "executionComplete": {
        -    "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        -    "type": "boolean"
        -  },
        -  "findings": {
        -    "description": "Prioritized findings with evidence, impact, and remediation.",
        -    "items": {
        -      "additionalProperties": false,
        -      "properties": {
        -        "category": {
        -          "description": "Stable audit category for grouping related findings.",
        -          "type": "string"
        -        },
        -        "evidence": {
        -          "description": "Bounded observation that supports the finding.",
        -          "type": "string"
        -        },
        -        "findingKey": {
        -          "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -          "maxLength": 512,
        -          "minLength": 1,
        -          "type": "string"
        -        },
        -        "impact": {
        -          "description": "Why the finding matters to the audited website.",
        -          "type": "string"
        -        },
        -        "location": {
        -          "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -          "type": "string"
        -        },
        -        "remediation": {
        -          "description": "Concrete recommended fix or mitigation.",
        -          "type": "string"
        -        },
        -        "severity": {
        -          "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -          "type": "string"
        -        },
        -        "title": {
        -          "description": "Short human-readable finding title.",
        -          "type": "string"
        -        }
        -      },
        -      "required": [
        -        "findingKey",
        -        "severity",
        -        "title",
        -        "evidence",
        -        "impact",
        -        "remediation",
        -        "category"
        -      ],
        -      "type": "object"
        -    },
        -    "type": "array"
        -  },
        -  "findingsTruncated": {
        -    "description": "True when additional findings exist outside this response.",
        -    "type": "boolean"
        -  },
        -  "grade": {
        -    "description": "Human-readable grade, or null when unavailable.",
        -    "type": [
        -      "string",
        -      "null"
        -    ]
        -  },
        -  "kind": {
        -    "description": "Audit pillar represented by this result.",
        -    "type": "string"
        -  },
        -  "passingChecks": {
        -    "description": "Number of checks that passed or reported protection.",
        -    "minimum": 0,
        -    "type": "integer"
        -  },
        -  "passingFindings": {
        -    "description": "Positive observations retained with their complete evidence.",
        -    "items": {
        -      "additionalProperties": false,
        -      "properties": {
        -        "category": {
        -          "description": "Stable audit category for grouping related findings.",
        -          "type": "string"
        -        },
        -        "evidence": {
        -          "description": "Bounded observation that supports the finding.",
        -          "type": "string"
        -        },
        -        "findingKey": {
        -          "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -          "maxLength": 512,
        -          "minLength": 1,
        -          "type": "string"
        -        },
        -        "impact": {
        -          "description": "Why the finding matters to the audited website.",
        -          "type": "string"
        -        },
        -        "location": {
        -          "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -          "type": "string"
        -        },
        -        "remediation": {
        -          "description": "Concrete recommended fix or mitigation.",
        -          "type": "string"
        -        },
        -        "severity": {
        -          "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -          "type": "string"
        -        },
        -        "title": {
        -          "description": "Short human-readable finding title.",
        -          "type": "string"
        -        }
        -      },
        -      "required": [
        -        "findingKey",
        -        "severity",
        -        "title",
        -        "evidence",
        -        "impact",
        -        "remediation",
        -        "category"
        -      ],
        -      "type": "object"
        -    },
        -    "type": "array"
        -  },
        -  "returnedFindings": {
        -    "description": "Number of findings included in this response.",
        -    "minimum": 0,
        -    "type": "integer"
        -  },
        -  "score": {
        -    "description": "Measured score from 0 to 100, or null when unavailable.",
        -    "type": [
        -      "number",
        -      "null"
        -    ]
        -  },
        -  "status": {
        -    "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        -    "enum": [
        -      "completed",
        -      "partial"
        -    ],
        -    "type": "string"
        -  },
        -  "target": {
        -    "description": "Canonical audited target.",
        -    "type": "string"
        -  },
        -  "total": {
        -    "description": "Total findings produced before response truncation.",
        -    "minimum": 0,
        -    "type": "integer"
        -  }
        -}
      • removedOutput schema / required
        Removed value: -[
        -  "target",
        -  "kind",
        -  "score",
        -  "grade",
        -  "counts",
        -  "total",
        -  "returnedFindings",
        -  "findingsTruncated",
        -  "passingChecks",
        -  "findings"
        -]
    • Changedaudit_security7 fields changed
      • addedInput schema / anyOf
        Added value: +[
        +  {
        +    "required": [
        +      "target"
        +    ]
        +  },
        +  {
        +    "maxProperties": 1,
        +    "required": [
        +      "jobId"
        +    ]
        +  }
        +]
      • addedInput schema / properties / jobId
        Added value: +{
        +  "description": "Resume an existing audit by polling this same tool with its returned jobId. Prefer jobId alone; if repeating other arguments, supply every original argument unchanged. Never invent a jobId.",
        +  "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +  "type": "string"
        +}
      • removedInput schema / required
        Removed value: -[
        -  "target"
        -]
      • removedOutput schema / additionalProperties
        Removed value: -true
      • addedOutput schema / oneOf
        Added value: +[
        +  {
        +    "additionalProperties": true,
        +    "properties": {
        +      "auditDetails": {
        +        "additionalProperties": true,
        +        "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        +        "type": "object"
        +      },
        +      "counts": {
        +        "additionalProperties": false,
        +        "description": "Finding totals grouped by normalized severity.",
        +        "properties": {
        +          "critical": {
        +            "description": "Number of critical findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "high": {
        +            "description": "Number of high-severity findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "info": {
        +            "description": "Number of informational findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "low": {
        +            "description": "Number of low-severity findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "medium": {
        +            "description": "Number of medium-severity findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          }
        +        },
        +        "required": [
        +          "critical",
        +          "high",
        +          "medium",
        +          "low",
        +          "info"
        +        ],
        +        "type": "object"
        +      },
        +      "coverageStatus": {
        +        "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +        "enum": [
        +          "measured",
        +          "partial",
        +          "unavailable",
        +          "not_applicable"
        +        ],
        +        "type": "string"
        +      },
        +      "executionComplete": {
        +        "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +        "type": "boolean"
        +      },
        +      "findings": {
        +        "description": "Prioritized findings with evidence, impact, and remediation.",
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "category": {
        +              "description": "Stable audit category for grouping related findings.",
        +              "type": "string"
        +            },
        +            "evidence": {
        +              "description": "Bounded observation that supports the finding.",
        +              "type": "string"
        +            },
        +            "findingKey": {
        +              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +              "maxLength": 512,
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "impact": {
        +              "description": "Why the finding matters to the audited website.",
        +              "type": "string"
        +            },
        +            "location": {
        +              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +              "type": "string"
        +            },
        +            "remediation": {
        +              "description": "Concrete recommended fix or mitigation.",
        +              "type": "string"
        +            },
        +            "severity": {
        +              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +              "type": "string"
        +            },
        +            "title": {
        +              "description": "Short human-readable finding title.",
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "findingKey",
        +            "severity",
        +            "title",
        +            "evidence",
        +            "impact",
        +            "remediation",
        +            "category"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "findingsTruncated": {
        +        "description": "True when additional findings exist outside this response.",
        +        "type": "boolean"
        +      },
        +      "grade": {
        +        "description": "Human-readable grade, or null when unavailable.",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "kind": {
        +        "description": "Audit pillar represented by this result.",
        +        "type": "string"
        +      },
        +      "passingChecks": {
        +        "description": "Number of checks that passed or reported protection.",
        +        "minimum": 0,
        +        "type": "integer"
        +      },
        +      "passingFindings": {
        +        "description": "Positive observations retained with their complete evidence.",
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "category": {
        +              "description": "Stable audit category for grouping related findings.",
        +              "type": "string"
        +            },
        +            "evidence": {
        +              "description": "Bounded observation that supports the finding.",
        +              "type": "string"
        +            },
        +            "findingKey": {
        +              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +              "maxLength": 512,
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "impact": {
        +              "description": "Why the finding matters to the audited website.",
        +              "type": "string"
        +            },
        +            "location": {
        +              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +              "type": "string"
        +            },
        +            "remediation": {
        +              "description": "Concrete recommended fix or mitigation.",
        +              "type": "string"
        +            },
        +            "severity": {
        +              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +              "type": "string"
        +            },
        +            "title": {
        +              "description": "Short human-readable finding title.",
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "findingKey",
        +            "severity",
        +            "title",
        +            "evidence",
        +            "impact",
        +            "remediation",
        +            "category"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "returnedFindings": {
        +        "description": "Number of findings included in this response.",
        +        "minimum": 0,
        +        "type": "integer"
        +      },
        +      "score": {
        +        "description": "Measured score from 0 to 100, or null when unavailable.",
        +        "type": [
        +          "number",
        +          "null"
        +        ]
        +      },
        +      "status": {
        +        "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +        "enum": [
        +          "completed",
        +          "partial"
        +        ],
        +        "type": "string"
        +      },
        +      "target": {
        +        "description": "Canonical audited target.",
        +        "type": "string"
        +      },
        +      "total": {
        +        "description": "Total findings produced before response truncation.",
        +        "minimum": 0,
        +        "type": "integer"
        +      }
        +    },
        +    "required": [
        +      "target",
        +      "kind",
        +      "score",
        +      "grade",
        +      "counts",
        +      "total",
        +      "returnedFindings",
        +      "findingsTruncated",
        +      "passingChecks",
        +      "findings"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "executionComplete": {
        +        "const": false,
        +        "description": "False until the entire audit result is ready for delivery.",
        +        "type": "boolean"
        +      },
        +      "jobId": {
        +        "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        +        "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +        "type": "string"
        +      },
        +      "nextAction": {
        +        "const": "poll_same_tool",
        +        "description": "Call this same tool again with pollArguments.",
        +        "type": "string"
        +      },
        +      "pollArguments": {
        +        "additionalProperties": false,
        +        "description": "Arguments for retrieving this existing audit without starting another scan.",
        +        "properties": {
        +          "jobId": {
        +            "description": "The same opaque audit job identifier.",
        +            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "jobId"
        +        ],
        +        "type": "object"
        +      },
        +      "retryAfterMs": {
        +        "description": "Suggested delay in milliseconds before polling this job again.",
        +        "minimum": 0,
        +        "type": "integer"
        +      },
        +      "status": {
        +        "const": "running",
        +        "description": "The audit is still executing or completing durable delivery.",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "jobId",
        +      "executionComplete",
        +      "nextAction",
        +      "pollArguments",
        +      "retryAfterMs"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "auditExecuted": {
        +        "const": false,
        +        "description": "This request did not execute a new audit.",
        +        "type": "boolean"
        +      },
        +      "reason": {
        +        "description": "The recoverable job request prerequisite.",
        +        "enum": [
        +          "audit_job_busy",
        +          "audit_job_unavailable",
        +          "audit_job_argument_mismatch",
        +          "audit_job_invalid_arguments"
        +        ],
        +        "type": "string"
        +      },
        +      "status": {
        +        "const": "action_required",
        +        "description": "This request did not start a new audit.",
        +        "type": "string"
        +      },
        +      "usageConsumed": {
        +        "const": false,
        +        "description": "This request did not consume additional audit allowance.",
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "reason",
        +      "auditExecuted",
        +      "usageConsumed"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties
        Removed value: -{
        -  "auditDetails": {
        -    "additionalProperties": true,
        -    "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        -    "type": "object"
        -  },
        -  "counts": {
        -    "additionalProperties": false,
        -    "description": "Finding totals grouped by normalized severity.",
        -    "properties": {
        -      "critical": {
        -        "description": "Number of critical findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "high": {
        -        "description": "Number of high-severity findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "info": {
        -        "description": "Number of informational findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "low": {
        -        "description": "Number of low-severity findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "medium": {
        -        "description": "Number of medium-severity findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      }
        -    },
        -    "required": [
        -      "critical",
        -      "high",
        -      "medium",
        -      "low",
        -      "info"
        -    ],
        -    "type": "object"
        -  },
        -  "coverageStatus": {
        -    "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        -    "enum": [
        -      "measured",
        -      "partial",
        -      "unavailable",
        -      "not_applicable"
        -    ],
        -    "type": "string"
        -  },
        -  "executionComplete": {
        -    "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        -    "type": "boolean"
        -  },
        -  "findings": {
        -    "description": "Prioritized findings with evidence, impact, and remediation.",
        -    "items": {
        -      "additionalProperties": false,
        -      "properties": {
        -        "category": {
        -          "description": "Stable audit category for grouping related findings.",
        -          "type": "string"
        -        },
        -        "evidence": {
        -          "description": "Bounded observation that supports the finding.",
        -          "type": "string"
        -        },
        -        "findingKey": {
        -          "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -          "maxLength": 512,
        -          "minLength": 1,
        -          "type": "string"
        -        },
        -        "impact": {
        -          "description": "Why the finding matters to the audited website.",
        -          "type": "string"
        -        },
        -        "location": {
        -          "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -          "type": "string"
        -        },
        -        "remediation": {
        -          "description": "Concrete recommended fix or mitigation.",
        -          "type": "string"
        -        },
        -        "severity": {
        -          "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -          "type": "string"
        -        },
        -        "title": {
        -          "description": "Short human-readable finding title.",
        -          "type": "string"
        -        }
        -      },
        -      "required": [
        -        "findingKey",
        -        "severity",
        -        "title",
        -        "evidence",
        -        "impact",
        -        "remediation",
        -        "category"
        -      ],
        -      "type": "object"
        -    },
        -    "type": "array"
        -  },
        -  "findingsTruncated": {
        -    "description": "True when additional findings exist outside this response.",
        -    "type": "boolean"
        -  },
        -  "grade": {
        -    "description": "Human-readable grade, or null when unavailable.",
        -    "type": [
        -      "string",
        -      "null"
        -    ]
        -  },
        -  "kind": {
        -    "description": "Audit pillar represented by this result.",
        -    "type": "string"
        -  },
        -  "passingChecks": {
        -    "description": "Number of checks that passed or reported protection.",
        -    "minimum": 0,
        -    "type": "integer"
        -  },
        -  "passingFindings": {
        -    "description": "Positive observations retained with their complete evidence.",
        -    "items": {
        -      "additionalProperties": false,
        -      "properties": {
        -        "category": {
        -          "description": "Stable audit category for grouping related findings.",
        -          "type": "string"
        -        },
        -        "evidence": {
        -          "description": "Bounded observation that supports the finding.",
        -          "type": "string"
        -        },
        -        "findingKey": {
        -          "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -          "maxLength": 512,
        -          "minLength": 1,
        -          "type": "string"
        -        },
        -        "impact": {
        -          "description": "Why the finding matters to the audited website.",
        -          "type": "string"
        -        },
        -        "location": {
        -          "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -          "type": "string"
        -        },
        -        "remediation": {
        -          "description": "Concrete recommended fix or mitigation.",
        -          "type": "string"
        -        },
        -        "severity": {
        -          "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -          "type": "string"
        -        },
        -        "title": {
        -          "description": "Short human-readable finding title.",
        -          "type": "string"
        -        }
        -      },
        -      "required": [
        -        "findingKey",
        -        "severity",
        -        "title",
        -        "evidence",
        -        "impact",
        -        "remediation",
        -        "category"
        -      ],
        -      "type": "object"
        -    },
        -    "type": "array"
        -  },
        -  "returnedFindings": {
        -    "description": "Number of findings included in this response.",
        -    "minimum": 0,
        -    "type": "integer"
        -  },
        -  "score": {
        -    "description": "Measured score from 0 to 100, or null when unavailable.",
        -    "type": [
        -      "number",
        -      "null"
        -    ]
        -  },
        -  "status": {
        -    "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        -    "enum": [
        -      "completed",
        -      "partial"
        -    ],
        -    "type": "string"
        -  },
        -  "target": {
        -    "description": "Canonical audited target.",
        -    "type": "string"
        -  },
        -  "total": {
        -    "description": "Total findings produced before response truncation.",
        -    "minimum": 0,
        -    "type": "integer"
        -  }
        -}
      • removedOutput schema / required
        Removed value: -[
        -  "target",
        -  "kind",
        -  "score",
        -  "grade",
        -  "counts",
        -  "total",
        -  "returnedFindings",
        -  "findingsTruncated",
        -  "passingChecks",
        -  "findings"
        -]
    • Changedaudit_seo7 fields changed
      • addedInput schema / anyOf
        Added value: +[
        +  {
        +    "required": [
        +      "target"
        +    ]
        +  },
        +  {
        +    "maxProperties": 1,
        +    "required": [
        +      "jobId"
        +    ]
        +  }
        +]
      • addedInput schema / properties / jobId
        Added value: +{
        +  "description": "Resume an existing audit by polling this same tool with its returned jobId. Prefer jobId alone; if repeating other arguments, supply every original argument unchanged. Never invent a jobId.",
        +  "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +  "type": "string"
        +}
      • removedInput schema / required
        Removed value: -[
        -  "target"
        -]
      • removedOutput schema / additionalProperties
        Removed value: -true
      • addedOutput schema / oneOf
        Added value: +[
        +  {
        +    "additionalProperties": true,
        +    "properties": {
        +      "auditDetails": {
        +        "additionalProperties": true,
        +        "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        +        "type": "object"
        +      },
        +      "counts": {
        +        "additionalProperties": false,
        +        "description": "Finding totals grouped by normalized severity.",
        +        "properties": {
        +          "critical": {
        +            "description": "Number of critical findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "high": {
        +            "description": "Number of high-severity findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "info": {
        +            "description": "Number of informational findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "low": {
        +            "description": "Number of low-severity findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "medium": {
        +            "description": "Number of medium-severity findings.",
        +            "minimum": 0,
        +            "type": "integer"
        +          }
        +        },
        +        "required": [
        +          "critical",
        +          "high",
        +          "medium",
        +          "low",
        +          "info"
        +        ],
        +        "type": "object"
        +      },
        +      "coverageStatus": {
        +        "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +        "enum": [
        +          "measured",
        +          "partial",
        +          "unavailable",
        +          "not_applicable"
        +        ],
        +        "type": "string"
        +      },
        +      "executionComplete": {
        +        "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +        "type": "boolean"
        +      },
        +      "findings": {
        +        "description": "Prioritized findings with evidence, impact, and remediation.",
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "category": {
        +              "description": "Stable audit category for grouping related findings.",
        +              "type": "string"
        +            },
        +            "evidence": {
        +              "description": "Bounded observation that supports the finding.",
        +              "type": "string"
        +            },
        +            "findingKey": {
        +              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +              "maxLength": 512,
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "impact": {
        +              "description": "Why the finding matters to the audited website.",
        +              "type": "string"
        +            },
        +            "location": {
        +              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +              "type": "string"
        +            },
        +            "remediation": {
        +              "description": "Concrete recommended fix or mitigation.",
        +              "type": "string"
        +            },
        +            "severity": {
        +              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +              "type": "string"
        +            },
        +            "title": {
        +              "description": "Short human-readable finding title.",
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "findingKey",
        +            "severity",
        +            "title",
        +            "evidence",
        +            "impact",
        +            "remediation",
        +            "category"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "findingsTruncated": {
        +        "description": "True when additional findings exist outside this response.",
        +        "type": "boolean"
        +      },
        +      "grade": {
        +        "description": "Human-readable grade, or null when unavailable.",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "kind": {
        +        "description": "Audit pillar represented by this result.",
        +        "type": "string"
        +      },
        +      "passingChecks": {
        +        "description": "Number of checks that passed or reported protection.",
        +        "minimum": 0,
        +        "type": "integer"
        +      },
        +      "passingFindings": {
        +        "description": "Positive observations retained with their complete evidence.",
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "category": {
        +              "description": "Stable audit category for grouping related findings.",
        +              "type": "string"
        +            },
        +            "evidence": {
        +              "description": "Bounded observation that supports the finding.",
        +              "type": "string"
        +            },
        +            "findingKey": {
        +              "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +              "maxLength": 512,
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "impact": {
        +              "description": "Why the finding matters to the audited website.",
        +              "type": "string"
        +            },
        +            "location": {
        +              "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +              "type": "string"
        +            },
        +            "remediation": {
        +              "description": "Concrete recommended fix or mitigation.",
        +              "type": "string"
        +            },
        +            "severity": {
        +              "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +              "type": "string"
        +            },
        +            "title": {
        +              "description": "Short human-readable finding title.",
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "findingKey",
        +            "severity",
        +            "title",
        +            "evidence",
        +            "impact",
        +            "remediation",
        +            "category"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "returnedFindings": {
        +        "description": "Number of findings included in this response.",
        +        "minimum": 0,
        +        "type": "integer"
        +      },
        +      "score": {
        +        "description": "Measured score from 0 to 100, or null when unavailable.",
        +        "type": [
        +          "number",
        +          "null"
        +        ]
        +      },
        +      "status": {
        +        "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +        "enum": [
        +          "completed",
        +          "partial"
        +        ],
        +        "type": "string"
        +      },
        +      "target": {
        +        "description": "Canonical audited target.",
        +        "type": "string"
        +      },
        +      "total": {
        +        "description": "Total findings produced before response truncation.",
        +        "minimum": 0,
        +        "type": "integer"
        +      }
        +    },
        +    "required": [
        +      "target",
        +      "kind",
        +      "score",
        +      "grade",
        +      "counts",
        +      "total",
        +      "returnedFindings",
        +      "findingsTruncated",
        +      "passingChecks",
        +      "findings"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "executionComplete": {
        +        "const": false,
        +        "description": "False until the entire audit result is ready for delivery.",
        +        "type": "boolean"
        +      },
        +      "jobId": {
        +        "description": "Opaque temporary job identifier bound to this account, tool and MCP surface.",
        +        "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +        "type": "string"
        +      },
        +      "nextAction": {
        +        "const": "poll_same_tool",
        +        "description": "Call this same tool again with pollArguments.",
        +        "type": "string"
        +      },
        +      "pollArguments": {
        +        "additionalProperties": false,
        +        "description": "Arguments for retrieving this existing audit without starting another scan.",
        +        "properties": {
        +          "jobId": {
        +            "description": "The same opaque audit job identifier.",
        +            "pattern": "^mj_[A-Za-z0-9_-]{32}$",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "jobId"
        +        ],
        +        "type": "object"
        +      },
        +      "retryAfterMs": {
        +        "description": "Suggested delay in milliseconds before polling this job again.",
        +        "minimum": 0,
        +        "type": "integer"
        +      },
        +      "status": {
        +        "const": "running",
        +        "description": "The audit is still executing or completing durable delivery.",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "jobId",
        +      "executionComplete",
        +      "nextAction",
        +      "pollArguments",
        +      "retryAfterMs"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "auditExecuted": {
        +        "const": false,
        +        "description": "This request did not execute a new audit.",
        +        "type": "boolean"
        +      },
        +      "reason": {
        +        "description": "The recoverable job request prerequisite.",
        +        "enum": [
        +          "audit_job_busy",
        +          "audit_job_unavailable",
        +          "audit_job_argument_mismatch",
        +          "audit_job_invalid_arguments"
        +        ],
        +        "type": "string"
        +      },
        +      "status": {
        +        "const": "action_required",
        +        "description": "This request did not start a new audit.",
        +        "type": "string"
        +      },
        +      "usageConsumed": {
        +        "const": false,
        +        "description": "This request did not consume additional audit allowance.",
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "status",
        +      "reason",
        +      "auditExecuted",
        +      "usageConsumed"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties
        Removed value: -{
        -  "auditDetails": {
        -    "additionalProperties": true,
        -    "description": "Complete available scope, check states and measurement evidence; unmeasured checks are not passes.",
        -    "type": "object"
        -  },
        -  "counts": {
        -    "additionalProperties": false,
        -    "description": "Finding totals grouped by normalized severity.",
        -    "properties": {
        -      "critical": {
        -        "description": "Number of critical findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "high": {
        -        "description": "Number of high-severity findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "info": {
        -        "description": "Number of informational findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "low": {
        -        "description": "Number of low-severity findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "medium": {
        -        "description": "Number of medium-severity findings.",
        -        "minimum": 0,
        -        "type": "integer"
        -      }
        -    },
        -    "required": [
        -      "critical",
        -      "high",
        -      "medium",
        -      "low",
        -      "info"
        -    ],
        -    "type": "object"
        -  },
        -  "coverageStatus": {
        -    "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        -    "enum": [
        -      "measured",
        -      "partial",
        -      "unavailable",
        -      "not_applicable"
        -    ],
        -    "type": "string"
        -  },
        -  "executionComplete": {
        -    "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        -    "type": "boolean"
        -  },
        -  "findings": {
        -    "description": "Prioritized findings with evidence, impact, and remediation.",
        -    "items": {
        -      "additionalProperties": false,
        -      "properties": {
        -        "category": {
        -          "description": "Stable audit category for grouping related findings.",
        -          "type": "string"
        -        },
        -        "evidence": {
        -          "description": "Bounded observation that supports the finding.",
        -          "type": "string"
        -        },
        -        "findingKey": {
        -          "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -          "maxLength": 512,
        -          "minLength": 1,
        -          "type": "string"
        -        },
        -        "impact": {
        -          "description": "Why the finding matters to the audited website.",
        -          "type": "string"
        -        },
        -        "location": {
        -          "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -          "type": "string"
        -        },
        -        "remediation": {
        -          "description": "Concrete recommended fix or mitigation.",
        -          "type": "string"
        -        },
        -        "severity": {
        -          "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -          "type": "string"
        -        },
        -        "title": {
        -          "description": "Short human-readable finding title.",
        -          "type": "string"
        -        }
        -      },
        -      "required": [
        -        "findingKey",
        -        "severity",
        -        "title",
        -        "evidence",
        -        "impact",
        -        "remediation",
        -        "category"
        -      ],
        -      "type": "object"
        -    },
        -    "type": "array"
        -  },
        -  "findingsTruncated": {
        -    "description": "True when additional findings exist outside this response.",
        -    "type": "boolean"
        -  },
        -  "grade": {
        -    "description": "Human-readable grade, or null when unavailable.",
        -    "type": [
        -      "string",
        -      "null"
        -    ]
        -  },
        -  "kind": {
        -    "description": "Audit pillar represented by this result.",
        -    "type": "string"
        -  },
        -  "passingChecks": {
        -    "description": "Number of checks that passed or reported protection.",
        -    "minimum": 0,
        -    "type": "integer"
        -  },
        -  "passingFindings": {
        -    "description": "Positive observations retained with their complete evidence.",
        -    "items": {
        -      "additionalProperties": false,
        -      "properties": {
        -        "category": {
        -          "description": "Stable audit category for grouping related findings.",
        -          "type": "string"
        -        },
        -        "evidence": {
        -          "description": "Bounded observation that supports the finding.",
        -          "type": "string"
        -        },
        -        "findingKey": {
        -          "description": "Deterministic pillar-scoped identity for before/after comparison.",
        -          "maxLength": 512,
        -          "minLength": 1,
        -          "type": "string"
        -        },
        -        "impact": {
        -          "description": "Why the finding matters to the audited website.",
        -          "type": "string"
        -        },
        -        "location": {
        -          "description": "Observed URL or path with credentials and query secrets removed, when available.",
        -          "type": "string"
        -        },
        -        "remediation": {
        -          "description": "Concrete recommended fix or mitigation.",
        -          "type": "string"
        -        },
        -        "severity": {
        -          "description": "Normalized finding severity: critical, high, medium, low, or info.",
        -          "type": "string"
        -        },
        -        "title": {
        -          "description": "Short human-readable finding title.",
        -          "type": "string"
        -        }
        -      },
        -      "required": [
        -        "findingKey",
        -        "severity",
        -        "title",
        -        "evidence",
        -        "impact",
        -        "remediation",
        -        "category"
        -      ],
        -      "type": "object"
        -    },
        -    "type": "array"
        -  },
        -  "returnedFindings": {
        -    "description": "Number of findings included in this response.",
        -    "minimum": 0,
        -    "type": "integer"
        -  },
        -  "score": {
        -    "description": "Measured score from 0 to 100, or null when unavailable.",
        -    "type": [
        -      "number",
        -      "null"
        -    ]
        -  },
        -  "status": {
        -    "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        -    "enum": [
        -      "completed",
        -      "partial"
        -    ],
        -    "type": "string"
        -  },
        -  "target": {
        -    "description": "Canonical audited target.",
        -    "type": "string"
        -  },
        -  "total": {
        -    "description": "Total findings produced before response truncation.",
        -    "minimum": 0,
        -    "type": "integer"
        -  }
        -}
      • removedOutput schema / required
        Removed value: -[
        -  "target",
        -  "kind",
        -  "score",
        -  "grade",
        -  "counts",
        -  "total",
        -  "returnedFindings",
        -  "findingsTruncated",
        -  "passingChecks",
        -  "findings"
        -]
  5. 7 tool updates
    • Changedaudit_accessibility5 fields changed
      • changedOutput schema / properties / auditDetails / description
        Previous value: -"Bounded assessment scope, check states and available measurement evidence; unmeasured checks are not passes."New value: +"Complete available scope, check states and measurement evidence; unmeasured checks are not passes."
      • addedOutput schema / properties / coverageStatus
        Added value: +{
        +  "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +  "enum": [
        +    "measured",
        +    "partial",
        +    "unavailable",
        +    "not_applicable"
        +  ],
        +  "type": "string"
        +}
      • addedOutput schema / properties / executionComplete
        Added value: +{
        +  "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / passingFindings
        Added value: +{
        +  "description": "Positive observations retained with their complete evidence.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "category": {
        +        "description": "Stable audit category for grouping related findings.",
        +        "type": "string"
        +      },
        +      "evidence": {
        +        "description": "Bounded observation that supports the finding.",
        +        "type": "string"
        +      },
        +      "findingKey": {
        +        "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +        "maxLength": 512,
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      "impact": {
        +        "description": "Why the finding matters to the audited website.",
        +        "type": "string"
        +      },
        +      "location": {
        +        "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +        "type": "string"
        +      },
        +      "remediation": {
        +        "description": "Concrete recommended fix or mitigation.",
        +        "type": "string"
        +      },
        +      "severity": {
        +        "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +        "type": "string"
        +      },
        +      "title": {
        +        "description": "Short human-readable finding title.",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "findingKey",
        +      "severity",
        +      "title",
        +      "evidence",
        +      "impact",
        +      "remediation",
        +      "category"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / status
        Added value: +{
        +  "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +  "enum": [
        +    "completed",
        +    "partial"
        +  ],
        +  "type": "string"
        +}
    • Changedaudit_ai_visibility10 fields changed
      • addedInput schema / properties / brand
        Added value: +{
        +  "description": "Optional expected brand name; otherwise inferred from the website.",
        +  "maxLength": 200,
        +  "minLength": 1,
        +  "type": "string"
        +}
      • addedInput schema / properties / competitors
        Added value: +{
        +  "description": "Optional competitor names for comparison-content assessment.",
        +  "items": {
        +    "maxLength": 200,
        +    "minLength": 1,
        +    "type": "string"
        +  },
        +  "maxItems": 8,
        +  "type": "array"
        +}
      • addedInput schema / properties / maxPages
        Added value: +{
        +  "description": "Maximum pages per crawl. Defaults to the connected plan maximum, bounded by remaining allowance.",
        +  "maximum": 30,
        +  "minimum": 1,
        +  "type": "integer"
        +}
      • addedInput schema / properties / promptLimit
        Added value: +{
        +  "description": "Maximum content-readiness prompts, capped by account and remaining allowance. Defaults to the account maximum.",
        +  "maximum": 24,
        +  "minimum": 1,
        +  "type": "integer"
        +}
      • addedInput schema / properties / prompts
        Added value: +{
        +  "description": "Optional questions to assess against the site content. These are content-readiness checks, not live AI-provider queries.",
        +  "items": {
        +    "maxLength": 500,
        +    "minLength": 1,
        +    "type": "string"
        +  },
        +  "maxItems": 24,
        +  "minItems": 1,
        +  "type": "array"
        +}
      • changedOutput schema / properties / auditDetails / description
        Previous value: -"Bounded assessment scope, check states and available measurement evidence; unmeasured checks are not passes."New value: +"Complete available scope, check states and measurement evidence; unmeasured checks are not passes."
      • addedOutput schema / properties / coverageStatus
        Added value: +{
        +  "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +  "enum": [
        +    "measured",
        +    "partial",
        +    "unavailable",
        +    "not_applicable"
        +  ],
        +  "type": "string"
        +}
      • addedOutput schema / properties / executionComplete
        Added value: +{
        +  "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / passingFindings
        Added value: +{
        +  "description": "Positive observations retained with their complete evidence.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "category": {
        +        "description": "Stable audit category for grouping related findings.",
        +        "type": "string"
        +      },
        +      "evidence": {
        +        "description": "Bounded observation that supports the finding.",
        +        "type": "string"
        +      },
        +      "findingKey": {
        +        "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +        "maxLength": 512,
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      "impact": {
        +        "description": "Why the finding matters to the audited website.",
        +        "type": "string"
        +      },
        +      "location": {
        +        "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +        "type": "string"
        +      },
        +      "remediation": {
        +        "description": "Concrete recommended fix or mitigation.",
        +        "type": "string"
        +      },
        +      "severity": {
        +        "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +        "type": "string"
        +      },
        +      "title": {
        +        "description": "Short human-readable finding title.",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "findingKey",
        +      "severity",
        +      "title",
        +      "evidence",
        +      "impact",
        +      "remediation",
        +      "category"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / status
        Added value: +{
        +  "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +  "enum": [
        +    "completed",
        +    "partial"
        +  ],
        +  "type": "string"
        +}
    • Changedaudit_full17 fields changed
      • addedInput schema / properties / brand
        Added value: +{
        +  "description": "Optional expected brand name; otherwise inferred from the website.",
        +  "maxLength": 200,
        +  "minLength": 1,
        +  "type": "string"
        +}
      • addedInput schema / properties / competitors
        Added value: +{
        +  "description": "Optional competitor names for comparison-content assessment.",
        +  "items": {
        +    "maxLength": 200,
        +    "minLength": 1,
        +    "type": "string"
        +  },
        +  "maxItems": 8,
        +  "type": "array"
        +}
      • addedInput schema / properties / includeSearchConsole
        Added value: +{
        +  "description": "Include available Search Console evidence from the account’s existing Google connection, subject to its keyword allowance. Missing access does not stop the website audit.",
        +  "type": "boolean"
        +}
      • addedInput schema / properties / maxPages
        Added value: +{
        +  "description": "Maximum pages per crawl. Defaults to the connected plan maximum, bounded by remaining allowance.",
        +  "maximum": 30,
        +  "minimum": 1,
        +  "type": "integer"
        +}
      • addedInput schema / properties / modules
        Added value: +{
        +  "description": "Optional explicit security module selection. Omit to use the plan scope. Protected checks require current target ownership; unavailable engines are reported as unmeasured.",
        +  "items": {
        +    "enum": [
        +      "dns",
        +      "dns-email",
        +      "rdap",
        +      "tls",
        +      "http-headers",
        +      "mitm-posture",
        +      "tech-fingerprint",
        +      "http-methods",
        +      "exposure",
        +      "api-exposure",
        +      "auth-surface",
        +      "supply-chain",
        +      "wordpress",
        +      "ports",
        +      "port-intel",
        +      "sql-injection",
        +      "ddos-resilience",
        +      "secret-exposure",
        +      "subdomain-takeover",
        +      "cors-audit",
        +      "injection-canary",
        +      "transport-delivery",
        +      "pentest-suite",
        +      "engine-nmap",
        +      "engine-nuclei",
        +      "engine-zap",
        +      "engine-wpscan"
        +    ],
        +    "type": "string"
        +  },
        +  "maxItems": 27,
        +  "minItems": 1,
        +  "type": "array",
        +  "uniqueItems": true
        +}
      • addedInput schema / properties / ports
        Added value: +{
        +  "description": "Optional port selection: top, common, all, or comma-separated ports/ranges. Account limits apply; default top.",
        +  "maxLength": 512,
        +  "type": "string"
        +}
      • addedInput schema / properties / profile
        Added value: +{
        +  "description": "Optional security profile included in the account. Omit to run all security modules included in the connected plan.",
        +  "enum": [
        +    "passive",
        +    "baseline",
        +    "deep",
        +    "all"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / promptLimit
        Added value: +{
        +  "description": "Maximum content-readiness prompts, capped by account and remaining allowance. Defaults to the account maximum.",
        +  "maximum": 24,
        +  "minimum": 1,
        +  "type": "integer"
        +}
      • addedInput schema / properties / prompts
        Added value: +{
        +  "description": "Optional questions to assess against the site content. These are content-readiness checks, not live AI-provider queries.",
        +  "items": {
        +    "maxLength": 500,
        +    "minLength": 1,
        +    "type": "string"
        +  },
        +  "maxItems": 24,
        +  "minItems": 1,
        +  "type": "array"
        +}
      • addedInput schema / properties / searchConsoleDays
        Added value: +{
        +  "description": "Search Console reporting window in days (default 28).",
        +  "enum": [
        +    7,
        +    28,
        +    90
        +  ],
        +  "type": "integer"
        +}
      • addedInput schema / properties / strategy
        Added value: +{
        +  "description": "PageSpeed device strategy (default mobile); field data is included when available.",
        +  "enum": [
        +    "mobile",
        +    "desktop"
        +  ],
        +  "type": "string"
        +}
      • changedOutput schema / properties / auditDetails / description
        Previous value: -"Per-pillar assessment scope, check states and available measurement evidence."New value: +"Complete available scope, check states and measurement evidence; unmeasured checks are not passes."
      • changedOutput schema / properties / complete / description
        Previous value: -"True only when every requested pillar completed successfully."New value: +"Compatibility field: every requested pillar runner returned. Consult coverageStatus and auditDetails for unmeasured modules and metrics."
      • addedOutput schema / properties / coverageStatus
        Added value: +{
        +  "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +  "enum": [
        +    "measured",
        +    "partial",
        +    "unavailable",
        +    "not_applicable"
        +  ],
        +  "type": "string"
        +}
      • addedOutput schema / properties / executionComplete
        Added value: +{
        +  "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / passingFindings
        Added value: +{
        +  "description": "Positive observations retained with their complete evidence.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "category": {
        +        "description": "Stable audit category for grouping related findings.",
        +        "type": "string"
        +      },
        +      "evidence": {
        +        "description": "Bounded observation that supports the finding.",
        +        "type": "string"
        +      },
        +      "findingKey": {
        +        "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +        "maxLength": 512,
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      "impact": {
        +        "description": "Why the finding matters to the audited website.",
        +        "type": "string"
        +      },
        +      "location": {
        +        "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +        "type": "string"
        +      },
        +      "pillar": {
        +        "description": "Audit pillar that produced the finding.",
        +        "type": "string"
        +      },
        +      "remediation": {
        +        "description": "Concrete recommended fix or mitigation.",
        +        "type": "string"
        +      },
        +      "severity": {
        +        "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +        "type": "string"
        +      },
        +      "title": {
        +        "description": "Short human-readable finding title.",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "pillar",
        +      "findingKey",
        +      "severity",
        +      "title",
        +      "evidence",
        +      "impact",
        +      "remediation",
        +      "category"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / status
        Added value: +{
        +  "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +  "enum": [
        +    "completed",
        +    "partial"
        +  ],
        +  "type": "string"
        +}
    • Changedaudit_integrations5 fields changed
      • changedOutput schema / properties / auditDetails / description
        Previous value: -"Bounded assessment scope, check states and available measurement evidence; unmeasured checks are not passes."New value: +"Complete available scope, check states and measurement evidence; unmeasured checks are not passes."
      • addedOutput schema / properties / coverageStatus
        Added value: +{
        +  "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +  "enum": [
        +    "measured",
        +    "partial",
        +    "unavailable",
        +    "not_applicable"
        +  ],
        +  "type": "string"
        +}
      • addedOutput schema / properties / executionComplete
        Added value: +{
        +  "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / passingFindings
        Added value: +{
        +  "description": "Positive observations retained with their complete evidence.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "category": {
        +        "description": "Stable audit category for grouping related findings.",
        +        "type": "string"
        +      },
        +      "evidence": {
        +        "description": "Bounded observation that supports the finding.",
        +        "type": "string"
        +      },
        +      "findingKey": {
        +        "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +        "maxLength": 512,
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      "impact": {
        +        "description": "Why the finding matters to the audited website.",
        +        "type": "string"
        +      },
        +      "location": {
        +        "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +        "type": "string"
        +      },
        +      "remediation": {
        +        "description": "Concrete recommended fix or mitigation.",
        +        "type": "string"
        +      },
        +      "severity": {
        +        "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +        "type": "string"
        +      },
        +      "title": {
        +        "description": "Short human-readable finding title.",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "findingKey",
        +      "severity",
        +      "title",
        +      "evidence",
        +      "impact",
        +      "remediation",
        +      "category"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / status
        Added value: +{
        +  "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +  "enum": [
        +    "completed",
        +    "partial"
        +  ],
        +  "type": "string"
        +}
    • Changedaudit_performance5 fields changed
      • changedOutput schema / properties / auditDetails / description
        Previous value: -"Bounded assessment scope, check states and available measurement evidence; unmeasured checks are not passes."New value: +"Complete available scope, check states and measurement evidence; unmeasured checks are not passes."
      • addedOutput schema / properties / coverageStatus
        Added value: +{
        +  "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +  "enum": [
        +    "measured",
        +    "partial",
        +    "unavailable",
        +    "not_applicable"
        +  ],
        +  "type": "string"
        +}
      • addedOutput schema / properties / executionComplete
        Added value: +{
        +  "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / passingFindings
        Added value: +{
        +  "description": "Positive observations retained with their complete evidence.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "category": {
        +        "description": "Stable audit category for grouping related findings.",
        +        "type": "string"
        +      },
        +      "evidence": {
        +        "description": "Bounded observation that supports the finding.",
        +        "type": "string"
        +      },
        +      "findingKey": {
        +        "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +        "maxLength": 512,
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      "impact": {
        +        "description": "Why the finding matters to the audited website.",
        +        "type": "string"
        +      },
        +      "location": {
        +        "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +        "type": "string"
        +      },
        +      "remediation": {
        +        "description": "Concrete recommended fix or mitigation.",
        +        "type": "string"
        +      },
        +      "severity": {
        +        "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +        "type": "string"
        +      },
        +      "title": {
        +        "description": "Short human-readable finding title.",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "findingKey",
        +      "severity",
        +      "title",
        +      "evidence",
        +      "impact",
        +      "remediation",
        +      "category"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / status
        Added value: +{
        +  "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +  "enum": [
        +    "completed",
        +    "partial"
        +  ],
        +  "type": "string"
        +}
    • Changedaudit_security10 fields changed
      • changedInput schema / properties / modules / description
        Previous value: -"Optional security modules. The default uses public posture signals only. Explicit protected modules require verified-target authorization and remain subject to account and hosted active-scan policy."New value: +"Optional explicit security module selection. Omit to use the plan scope. Protected checks require current target ownership; unavailable engines are reported as unmeasured."
      • addedInput schema / properties / modules / minItems
        Added value: +1
      • addedInput schema / properties / ports
        Added value: +{
        +  "description": "Optional port selection: top, common, all, or comma-separated ports/ranges. Account limits apply; default top.",
        +  "maxLength": 512,
        +  "type": "string"
        +}
      • changedInput schema / properties / profile / description
        Previous value: -"Scan depth. Depth selection (passive/deep/all) is available only on a self-hosted server; the hosted transport runs a fixed non-intrusive baseline."New value: +"Optional security profile included in the account. Omit to run all security modules included in the connected plan."
      • changedInput schema / properties / profile / enum
        Previous value: -[
        -  "baseline"
        -]New value: +[
        +  "passive",
        +  "baseline",
        +  "deep",
        +  "all"
        +]
      • changedOutput schema / properties / auditDetails / description
        Previous value: -"Bounded assessment scope, check states and available measurement evidence; unmeasured checks are not passes."New value: +"Complete available scope, check states and measurement evidence; unmeasured checks are not passes."
      • addedOutput schema / properties / coverageStatus
        Added value: +{
        +  "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +  "enum": [
        +    "measured",
        +    "partial",
        +    "unavailable",
        +    "not_applicable"
        +  ],
        +  "type": "string"
        +}
      • addedOutput schema / properties / executionComplete
        Added value: +{
        +  "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / passingFindings
        Added value: +{
        +  "description": "Positive observations retained with their complete evidence.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "category": {
        +        "description": "Stable audit category for grouping related findings.",
        +        "type": "string"
        +      },
        +      "evidence": {
        +        "description": "Bounded observation that supports the finding.",
        +        "type": "string"
        +      },
        +      "findingKey": {
        +        "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +        "maxLength": 512,
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      "impact": {
        +        "description": "Why the finding matters to the audited website.",
        +        "type": "string"
        +      },
        +      "location": {
        +        "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +        "type": "string"
        +      },
        +      "remediation": {
        +        "description": "Concrete recommended fix or mitigation.",
        +        "type": "string"
        +      },
        +      "severity": {
        +        "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +        "type": "string"
        +      },
        +      "title": {
        +        "description": "Short human-readable finding title.",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "findingKey",
        +      "severity",
        +      "title",
        +      "evidence",
        +      "impact",
        +      "remediation",
        +      "category"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / status
        Added value: +{
        +  "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +  "enum": [
        +    "completed",
        +    "partial"
        +  ],
        +  "type": "string"
        +}
    • Changedaudit_seo8 fields changed
      • addedInput schema / properties / includeSearchConsole
        Added value: +{
        +  "description": "Include available Search Console evidence from the account’s existing Google connection, subject to its keyword allowance. Missing access does not stop the website audit.",
        +  "type": "boolean"
        +}
      • changedInput schema / properties / maxPages / description
        Previous value: -"Pages to crawl (default 8)."New value: +"Maximum pages per crawl. Defaults to the connected plan maximum, bounded by remaining allowance."
      • addedInput schema / properties / searchConsoleDays
        Added value: +{
        +  "description": "Search Console reporting window in days (default 28).",
        +  "enum": [
        +    7,
        +    28,
        +    90
        +  ],
        +  "type": "integer"
        +}
      • changedOutput schema / properties / auditDetails / description
        Previous value: -"Bounded assessment scope, check states and available measurement evidence; unmeasured checks are not passes."New value: +"Complete available scope, check states and measurement evidence; unmeasured checks are not passes."
      • addedOutput schema / properties / coverageStatus
        Added value: +{
        +  "description": "Availability of measurements within the requested methods and account scope; not a claim to test every possible website behavior.",
        +  "enum": [
        +    "measured",
        +    "partial",
        +    "unavailable",
        +    "not_applicable"
        +  ],
        +  "type": "string"
        +}
      • addedOutput schema / properties / executionComplete
        Added value: +{
        +  "description": "Whether all requested pillar runners returned. This is separate from measurement coverage.",
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / passingFindings
        Added value: +{
        +  "description": "Positive observations retained with their complete evidence.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "category": {
        +        "description": "Stable audit category for grouping related findings.",
        +        "type": "string"
        +      },
        +      "evidence": {
        +        "description": "Bounded observation that supports the finding.",
        +        "type": "string"
        +      },
        +      "findingKey": {
        +        "description": "Deterministic pillar-scoped identity for before/after comparison.",
        +        "maxLength": 512,
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      "impact": {
        +        "description": "Why the finding matters to the audited website.",
        +        "type": "string"
        +      },
        +      "location": {
        +        "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +        "type": "string"
        +      },
        +      "remediation": {
        +        "description": "Concrete recommended fix or mitigation.",
        +        "type": "string"
        +      },
        +      "severity": {
        +        "description": "Normalized finding severity: critical, high, medium, low, or info.",
        +        "type": "string"
        +      },
        +      "title": {
        +        "description": "Short human-readable finding title.",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "findingKey",
        +      "severity",
        +      "title",
        +      "evidence",
        +      "impact",
        +      "remediation",
        +      "category"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / status
        Added value: +{
        +  "description": "Completed when requested measurements are available; partial when a requested runner or measurement is unavailable.",
        +  "enum": [
        +    "completed",
        +    "partial"
        +  ],
        +  "type": "string"
        +}
  6. 7 tool updates
    • Changedaudit_accessibility2 fields changed
      • addedOutput schema / properties / auditDetails
        Added value: +{
        +  "additionalProperties": true,
        +  "description": "Bounded assessment scope, check states and available measurement evidence; unmeasured checks are not passes.",
        +  "type": "object"
        +}
      • addedOutput schema / properties / findings / items / properties / location
        Added value: +{
        +  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +  "type": "string"
        +}
    • Changedaudit_ai_visibility2 fields changed
      • addedOutput schema / properties / auditDetails
        Added value: +{
        +  "additionalProperties": true,
        +  "description": "Bounded assessment scope, check states and available measurement evidence; unmeasured checks are not passes.",
        +  "type": "object"
        +}
      • addedOutput schema / properties / findings / items / properties / location
        Added value: +{
        +  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +  "type": "string"
        +}
    • Changedaudit_full2 fields changed
      • addedOutput schema / properties / auditDetails
        Added value: +{
        +  "additionalProperties": true,
        +  "description": "Per-pillar assessment scope, check states and available measurement evidence.",
        +  "type": "object"
        +}
      • addedOutput schema / properties / findings / items / properties / location
        Added value: +{
        +  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +  "type": "string"
        +}
    • Changedaudit_integrations2 fields changed
      • addedOutput schema / properties / auditDetails
        Added value: +{
        +  "additionalProperties": true,
        +  "description": "Bounded assessment scope, check states and available measurement evidence; unmeasured checks are not passes.",
        +  "type": "object"
        +}
      • addedOutput schema / properties / findings / items / properties / location
        Added value: +{
        +  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +  "type": "string"
        +}
    • Changedaudit_performance2 fields changed
      • addedOutput schema / properties / auditDetails
        Added value: +{
        +  "additionalProperties": true,
        +  "description": "Bounded assessment scope, check states and available measurement evidence; unmeasured checks are not passes.",
        +  "type": "object"
        +}
      • addedOutput schema / properties / findings / items / properties / location
        Added value: +{
        +  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +  "type": "string"
        +}
    • Changedaudit_security2 fields changed
      • addedOutput schema / properties / auditDetails
        Added value: +{
        +  "additionalProperties": true,
        +  "description": "Bounded assessment scope, check states and available measurement evidence; unmeasured checks are not passes.",
        +  "type": "object"
        +}
      • addedOutput schema / properties / findings / items / properties / location
        Added value: +{
        +  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +  "type": "string"
        +}
    • Changedaudit_seo2 fields changed
      • addedOutput schema / properties / auditDetails
        Added value: +{
        +  "additionalProperties": true,
        +  "description": "Bounded assessment scope, check states and available measurement evidence; unmeasured checks are not passes.",
        +  "type": "object"
        +}
      • addedOutput schema / properties / findings / items / properties / location
        Added value: +{
        +  "description": "Observed URL or path with credentials and query secrets removed, when available.",
        +  "type": "string"
        +}
  7. 7 tool updates
    • First observedaudit_accessibility
    • First observedaudit_ai_visibility
    • First observedaudit_full
    • First observedaudit_integrations
    • First observedaudit_performance
    • First observedaudit_security
    • First observedaudit_seo

Publisher details

Operator
EGENİL TELEFERİK MÜHENDİSLİK TEKNİK İŞLETME DANIŞMANLIK LİMİTED ŞİRKETİ · Publisher source
Vendor relationship
First-party · Publisher source
Trust center
Not available
Restrictions
Requires a Sitelemetry account with a verified email address and browser-based OAuth sign-in; no API key is needed. Free accounts can connect and use the checks included in their plan. Available audit modules and usage quotas depend on the selected plan. Only assess websites you own or are authorized to test. Domain verification is required for protected checks; the Claude-specific endpoint requires an exact verified HTTPS target for every audit. · Publisher source

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Audit any website for privacy, security, accessibility, and performance issues — with scores, grades, and actionable fix instructions. No account required.
    3
    4 npm
    MIT
  • F
    license
    Not graded
    quality
    Not graded
    maintenance
    Provides comprehensive website auditing for SEO, performance, accessibility, and security using AI-powered analysis. It enables users to generate detailed audit reports and actionable improvement suggestions for any given URL.
    -
  • A
    license
    Not graded
    quality
    F
    maintenance
    Exposes SEO and AI-readability audit tools to AI agents, enabling one-shot anonymous audits or full authenticated audits with PDF reports and organic traffic data.
    39 npm
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources