Skip to main content
Glama

Server Details

Browser-local and CLI static evidence for deployed AI model artifacts.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
100.0% over 22 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
JunHwan-Kwon/deepbom
GitHub Stars
2
Server Listing
deepbom

TDQS

A3.7/5.0

Scored across 7 tools

Disambiguation3/5

analyze_file vs query_file are distinguishable (initial analysis vs follow-up), but the three publish_* tools (publish_analysis, publish_query, publish_error) plus query_file create fuzzy boundaries, since publish_query and query_file both deal with Evidence IR query projections. The descriptions are verbose enough to help, but the publish/query overlap is a real misselection risk.

Naming Consistency4/5

All tools share the deepbom_ prefix and snake_case, which is highly consistent. The verb_noun pattern holds for most (analyze_file, publish_query, query_file, workflow_guide), though capabilities is a bare noun and publish_query/publish_analysis/publish_error are a tightly clustered verb variant.

Tool Count5/5

Seven tools is well within the ideal 3-15 range and each appears to earn its place: initial analysis, follow-up queries, capabilities metadata, workflow guidance, and three browser-result publishers for the round-trip protocol.

Completeness4/5

The analyze -> query -> publish lifecycle is well covered, with capabilities and workflow_guide handling discovery and metadata boundaries. Minor gaps remain (e.g. no explicit export/visualization or batch operations exposed as tools), but the core analysis workflow has no obvious dead ends.

Available Tools

7 tools
deepbom_analyze_fileAnalyze an AI model artifactA
Read-onlyIdempotent
Inspect

Use when the user asks to inspect, summarize, or visualize an attached TFLite, ONNX, GGUF, SafeTensors, Core ML, or ExecuTorch deployment artifact. Opens a browser-local analyzer, returns a hash-bound format-neutral Model IR table and static evidence summary, and provides deterministic document views without executing model code. Do not use for training checkpoints, measured latency, task accuracy, clinical validity, regulatory compliance, or actual runtime placement.

ParametersJSON Schema
NameRequiredDescriptionDefault
fileYes
analysis_depthNoUse structure unless the user explicitly asks to inspect serialized tensor payload values. Payload integrity can require reading the complete attachment.structure

Output Schema

ParametersJSON Schema
NameRequiredDescription
fileYes
statusYes
privacyYes
analysis_depthYes
analyzer_versionYes

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already mark this readOnly/idempotent/non-destructive. The description adds crucial context: it opens a browser-local analyzer, returns a hash-bound format-neutral Model IR table and static evidence summary, and provides deterministic views without executing model code. This goes well beyond the annotations and clarifies safety boundaries.

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?

Two sentences packed with distinct pieces of information: trigger condition, supported formats, processing behavior, output artifacts, safety guarantee, and an exclusion list. The trigger condition is front-loaded and no sentence is filler.

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 tool with a rich input schema and output schema, the description provides the necessary operational context: when to invoke, what to pass, what to expect as output, and important exclusions. Missing details like exact return schema are already available in the output schema; the description is complete for selection and invocation.

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 50%: analysis_depth is fully documented in the schema, while file is not. The description compensates by identifying file as the attached deployment artifact (TFLite/ONNX/etc. formats), which gives the agent enough semantic grounding to map the user's attachment to the file parameter. It doesn't detail the OpenAIFile fields, but the object shape is already in 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 opens with a concrete use case ('inspect, summarize, or visualize'), names the exact resource formats (TFLite, ONNX, GGUF, etc.), and contrasts with what it is not ('Do not use for training checkpoints...'). This makes it distinguishable from siblings and clearly tied to the name/title.

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

Usage Guidelines5/5

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

Explicitly states when to use ('Use when the user asks...') and provides an explicit exclusion list covering training checkpoints, measured latency, task accuracy, clinical validity, regulatory compliance, and runtime placement. This is strong routing guidance, though it does not name sibling tools as alternatives.

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

deepbom_capabilitiesCheck DEEPBOM capabilitiesA
Read-onlyIdempotent
Inspect

Use before analysis when format support, privacy boundaries, or the difference between the ChatGPT and local DEEPBOM paths is unclear. Returns capability metadata only and does not inspect a file.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
schemaYes
versionYes
local_pathYes
chatgpt_pathYes
evidence_boundaryYes
supported_formatsYes

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare the safety profile (readOnly, idempotent, non-destructive, closed-world), so the bar is lower. The description adds meaningful context beyond them: it returns metadata only and performs no file inspection, which is exactly the behavioral distinction an agent needs here.

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?

Two tight sentences, front-loaded with the 'use before analysis when...' trigger, then the scope exclusion. No filler and nothing redundant.

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?

An output schema exists, so return values need no explanation, and the annotations carry the safety profile. Combined with the explicit usage trigger and the file-inspection exclusion, this is sufficient for an agent to invoke it correctly.

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 tool takes zero parameters, which is the baseline-4 case; there is nothing in the schema for the description to supplement. No parameter semantics are needed or expected.

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

Purpose4/5

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

The description states a specific function (returns capability metadata) and explicitly scopes out file inspection, which cleanly separates it from deepbom_analyze_file. It is clear what the tool returns, though the 'what it does' is partly carried by the name/title rather than a strong verb+resource phrasing.

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

Usage Guidelines5/5

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

It gives explicit trigger conditions: use it before analysis when format support, privacy boundaries, or the ChatGPT-vs-local path distinction is unclear. That is a concrete when-to-use rule, and the 'does not inspect a file' clause implicitly steers file work to the analyze sibling.

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

deepbom_publish_analysisReturn a DEEPBOM analysis to chatA
Read-onlyIdempotent
Inspect

Receives one bounded browser-produced DEEPBOM result, validates its structure, and returns it to the conversation. This tool accepts analysis results, never model bytes.

ParametersJSON Schema
NameRequiredDescriptionDefault
resultYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds two genuine behavioral facts beyond them: the input is a single bounded result and the tool validates structure before returning. It does not say what happens when validation fails or how errors surface.

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?

Two sentences, no filler, and the core action (receives/validates/returns) is front-loaded ahead of the input constraint. Every sentence earns its place.

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

Completeness3/5

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

An output schema exists, so return-value explanation is not required. Given the very complex nested input with zero schema descriptions, the description is adequate at a high level but silent on validation failure behavior, error reporting, and the meaning of the v1/v2 schema variants.

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

Parameters3/5

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

Schema description coverage is 0% and the single parameter is a deeply nested object, so the description carries the burden. It partially compensates by identifying the payload as a browser-produced DEEPBOM analysis result, which aligns with the schema consts (analysis_location='chatgpt_browser_sandbox', schema v1/v2), but adds no field-level meaning.

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

Purpose4/5

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

States a specific verb+resource chain: receives a bounded browser-produced DEEPBOM result, validates it, and returns it to the conversation. The clause 'This tool accepts analysis results, never model bytes' distinguishes it from deepbom_analyze_file without naming it, but siblings are not explicitly referenced.

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

Usage Guidelines3/5

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

The description implies usage context by restricting input to a 'browser-produced DEEPBOM result' and excluding model bytes, which tells the agent this is the post-analysis publish step. However, it never states when to call this versus deepbom_analyze_file or deepbom_publish_error, and gives no preconditions or exclusions.

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

deepbom_publish_errorReturn a DEEPBOM analysis error to chatB
Read-onlyIdempotent
Inspect

Receives one bounded browser-produced DEEPBOM error and returns a recovery action to the conversation. This tool accepts diagnostic text, never model bytes.

ParametersJSON Schema
NameRequiredDescriptionDefault
errorYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
codeYes
schemaYes
messageYes
file_nameYes
analyzer_versionYes
suggested_actionYes
analysis_locationYes
transfer_boundaryYes

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so the agent knows this is a safe, local, repeatable read operation. The description adds the important constraint that it accepts diagnostic text and never model bytes, which is useful context beyond the annotations. However, it doesn't describe what the recovery action looks like or how errors are processed.

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?

Two concise sentences that front-load the purpose and include an important constraint. No waste, though it could be slightly more informative without becoming verbose.

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

Completeness3/5

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

The tool has a detailed input schema and an output schema, so the description needn't explain return values. However, for an error-handling tool with no usage guidelines and no clarification of how the recovery action is generated or used, the description leaves gaps in contextual understanding.

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

Parameters3/5

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

Schema description coverage is 0%, but the nested error object has eight required fields with const values and additionalProperties=false, which provides strong structural guidance. The description only clarifies that the input is diagnostic text, not model bytes, which adds marginal semantic value. Baseline 3 is appropriate given the rich schema structure compensates for the lack of text descriptions.

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

Purpose4/5

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

States a specific verb+resource: receives a bounded browser-produced DEEPBOM error and returns a recovery action to the conversation. Clear purpose, but does not differentiate from sibling tools like deepbom_publish_analysis or deepbom_capabilities beyond the word 'error'.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like deepbom_analyze_file or deepbom_publish_analysis. The description implies it's for error recovery but doesn't state the triggering condition or when it should not be used.

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

deepbom_publish_queryReturn requested model evidence to chatB
Read-onlyIdempotent
Inspect

Component-only: validates and returns a bounded Evidence IR query projection for the same attachment. No model bytes, state persistence, or runtime execution. Result digests establish consistency, not independent server attestation.

ParametersJSON Schema
NameRequiredDescriptionDefault
resultYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
rowsYes
queryYes
schemaYes
statusYes
contextYes
artifactYes
coverageYes
query_sha256Yes
result_sha256Yes
model_ir_sha256Yes
analyzer_versionYes
analysis_locationYes
evidence_boundaryYes
transfer_boundaryYes

TDQS

B3.4/5.0
Behavior4/5

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

Annotations already establish the safe read-only/idempotent profile, so the bar is lower. The description still adds meaningful context beyond them: it declares the output is a bounded projection with no model bytes, no persistence, and no execution, and warns that result digests prove consistency rather than server attestation — a trust caveat not derivable from 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?

Three compact sentences, front-loaded with the component scope and followed by exclusions and the digest caveat. No filler, though the phrasing is jargon-heavy enough to reduce immediate readability.

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

Completeness3/5

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

With an output schema present, return values need not be explained, and the description does cover scope and trust boundaries. But for a tool whose sole input is a large nested object, it omits how the 'result' payload is produced and how it relates to sibling query/publish tools, leaving the workflow incomplete.

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

Parameters2/5

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

The single top-level 'result' parameter has 0% schema description coverage, and the description says nothing about what it must contain or how it is obtained (presumably echoing a prior call). While some deeply nested fields carry their own schema descriptions, the description does not compensate for the undocumented top-level input.

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

Purpose4/5

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

The description names a specific verb ('validates and returns') and resource ('bounded Evidence IR query projection') and scopes it to 'the same attachment'. However, 'Evidence IR query projection' is dense internal jargon and the description never distinguishes this tool from siblings like deepbom_query_file or deepbom_publish_analysis.

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

Usage Guidelines3/5

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

'For the same attachment' implies this is a follow-up call on an artifact already analyzed, and the exclusion list ('no model bytes, state persistence, or runtime execution') sketches boundaries. But there is no explicit when-to-use, when-not, or named alternative among the six siblings.

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

deepbom_query_fileInspect specific model evidenceA
Read-onlyIdempotent
Inspect

Use for follow-up questions about an already identified attachment: inspect a layer by subject_ref, search or page through all operations, inspect findings, rank improvement investigations, inspect encoded activation fusion, compare source-pinned static delegate eligibility, or explicitly analyze weight distributions, channels, similarity, singular spectra, sparsity and quantization with section=weights and optional weight_view. Weight analysis reads payloads on demand with explicit decoder/budget coverage (128 MiB widget limit). Reuse the ChatGPT-authorized file and the exact SHA-256 from its previous DEEPBOM result. section=profiles lists available backend profiles; query.target selects only a TFLite CPU planning profile from capabilities. The browser computes the query from the shared Evidence IR and returns a bounded result; model bytes are not sent to DEEPBOM. Static candidate eligibility is not observed placement, speed, accuracy, or runtime fusion. Do not invent findings while browser_query_started is pending.

ParametersJSON Schema
NameRequiredDescriptionDefault
fileYes
queryYes
analysis_depthNoUse structure unless the user explicitly asks to inspect serialized tensor payload values. Payload integrity can require reading the complete attachment.structure
expected_sha256Yes

Output Schema

ParametersJSON Schema
NameRequiredDescription
queryYes
statusYes
analysis_depthYesUse structure unless the user explicitly asks to inspect serialized tensor payload values. Payload integrity can require reading the complete attachment.
expected_sha256Yes
analyzer_versionYes

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already cover read-only/idempotent/non-destructive/closed-world, but the description adds meaningful traits beyond them: payloads are read on demand under a 128 MiB widget limit, the browser computes the query and returns only a bounded result, model bytes are never sent to DEEPBOM, and 'static candidate eligibility is not observed placement, speed, accuracy, or runtime fusion'. The pending-state warning ('do not invent findings while browser_query_started is pending') is genuinely useful operational context.

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

Conciseness3/5

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

The core guidance is front-loaded, but the middle is a single sprawling sentence chaining eight 'or' clauses that mixes usage, parameters, and caveats together. It is information-dense but hard to parse, and some enumeration could be tightened without losing meaning.

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

Completeness4/5

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

With an output schema present, return values need no explanation, and the description covers the important query modes, the payload/budget caveat, the meaning of static eligibility, and the dependency on a prior result. Only the analysis_depth dimension and explicit sibling routing remain unaddressed.

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 only 25%, so the description carries real weight here and largely delivers: it explains section=weights with weight_view, section=profiles, query.target as a TFLite CPU planning profile (not detected hardware), and the file/SHA-256 reuse requirement. The notable gap is analysis_depth, which appears only in the schema and is not addressed in the description.

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

Purpose4/5

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

The opening clause states a specific verb and scope: follow-up inspection of an already identified attachment, with the enumeration of sections (operators, findings, placement, fusion, weights, etc.) making the resource concrete. It implicitly distinguishes itself from deepbom_analyze_file via 'already identified attachment' and 'previous DEEPBOM result', but never names the sibling explicitly, so a 5 is not warranted.

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?

It clearly routes the agent: use this for follow-up questions after an attachment has been identified, and reuse the ChatGPT-authorized file plus the exact SHA-256 from the prior result. There is no explicit 'when not to use' or named alternative tool, which keeps it below 5.

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

deepbom_workflow_guideChoose a DEEPBOM analysis workflowA
Read-onlyIdempotent
Inspect

Use to discover how to answer a model-analysis question across ChatGPT, the interactive deepbom.org workspace and the local CLI. Returns real query sections, visualization/export actions, explicit web continuation links, required inputs, CLI argument templates and evidence limits for weights, pruning investigation, comparison, BOM verification, metadata/OMOP, activation evidence, runtime, batch/CI and integrations. No attachment is required. This is guidance, not a completed analysis or local command execution. Prefer answering from existing evidence; inspect supported follow-ups with deepbom_query_file before offering web continuation for richer interaction. Website links transfer only a workflow ID, never model data.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNoOptional known artifact format; filters applicable workflows, not per-file analysis coverage.
workflowNoall

Output Schema

ParametersJSON Schema
NameRequiredDescription
formatYes
schemaYes
statusYes
boundaryYes
workflowsYes
catalog_versionYes

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive/closed-world, so the safety profile is covered. The description still adds real value beyond them: 'No attachment is required', 'guidance, not a completed analysis or local command execution', and the privacy note 'Website links transfer only a workflow ID, never model data.' These disclose behavior an agent could not infer from annotations alone.

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

Conciseness3/5

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

Front-loaded with the purpose, which is good, but the rest is a single dense run-on listing many covered topics. Most sentences carry real information, yet the enumeration of workflow areas reads as filler against the enum in the schema and would benefit from tighter formatting.

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

Completeness4/5

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

An output schema exists, so return-value explanation is not required. The description covers scope, when to use, input requirements ('No attachment is required'), continuation semantics and data-privacy limits. Complete enough for an agent to call it correctly; only the workflow-to-topic mapping could be tighter.

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 50%: the format enum is documented while the workflow enum is not. The description compensates by enumerating the workflow subject areas (weights, pruning investigation, comparison, BOM verification, metadata/OMOP, activation evidence, runtime, batch/CI, integrations), giving meaning that maps to the enum beyond the schema. This is meaningful added semantics for the undocumented parameter.

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

Purpose4/5

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

States a specific verb+resource: discover how to answer a model-analysis question across ChatGPT, the deepbom.org workspace and the local CLI. It also explicitly disambiguates from siblings by declaring 'This is guidance, not a completed analysis or local command execution' and pointing to deepbom_query_file for follow-ups. Clear enough to select without opening the schema, though the enumeration of covered topics blurs the core purpose slightly.

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?

Gives explicit usage context ('Use to discover how to answer a model-analysis question') and a routing rule: 'Prefer answering from existing evidence; inspect supported follow-ups with deepbom_query_file before offering web continuation for richer interaction.' It names an alternative and the condition selecting it, but does not state when to prefer this over deepbom_capabilities specifically.

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. 3 tool updates
    • Changeddeepbom_publish_query4 fields changed
      • changedInput schema / properties / result / properties / query / properties / section / enum
        Previous value: -[
        -  "operators",
        -  "operator",
        -  "findings",
        -  "placement",
        -  "fusion",
        -  "improvements",
        -  "profiles"
        -]New value: +[
        +  "operators",
        +  "operator",
        +  "findings",
        +  "placement",
        +  "fusion",
        +  "improvements",
        +  "profiles",
        +  "weights"
        +]
      • addedInput schema / properties / result / properties / query / properties / weight_view
        Added value: +{
        +  "description": "Only for section=weights: explicitly opt into bounded payload analysis; use returned weight subject_ref to select a tensor. Default distribution.",
        +  "enum": [
        +    "distribution",
        +    "channels",
        +    "similarity",
        +    "spectrum",
        +    "sparsity",
        +    "quantization"
        +  ],
        +  "type": "string"
        +}
      • changedOutput schema / properties / query / properties / section / enum
        Previous value: -[
        -  "operators",
        -  "operator",
        -  "findings",
        -  "placement",
        -  "fusion",
        -  "improvements",
        -  "profiles"
        -]New value: +[
        +  "operators",
        +  "operator",
        +  "findings",
        +  "placement",
        +  "fusion",
        +  "improvements",
        +  "profiles",
        +  "weights"
        +]
      • addedOutput schema / properties / query / properties / weight_view
        Added value: +{
        +  "description": "Only for section=weights: explicitly opt into bounded payload analysis; use returned weight subject_ref to select a tensor. Default distribution.",
        +  "enum": [
        +    "distribution",
        +    "channels",
        +    "similarity",
        +    "spectrum",
        +    "sparsity",
        +    "quantization"
        +  ],
        +  "type": "string"
        +}
    • Changeddeepbom_query_file4 fields changed
      • changedInput schema / properties / query / properties / section / enum
        Previous value: -[
        -  "operators",
        -  "operator",
        -  "findings",
        -  "placement",
        -  "fusion",
        -  "improvements",
        -  "profiles"
        -]New value: +[
        +  "operators",
        +  "operator",
        +  "findings",
        +  "placement",
        +  "fusion",
        +  "improvements",
        +  "profiles",
        +  "weights"
        +]
      • addedInput schema / properties / query / properties / weight_view
        Added value: +{
        +  "description": "Only for section=weights: explicitly opt into bounded payload analysis; use returned weight subject_ref to select a tensor. Default distribution.",
        +  "enum": [
        +    "distribution",
        +    "channels",
        +    "similarity",
        +    "spectrum",
        +    "sparsity",
        +    "quantization"
        +  ],
        +  "type": "string"
        +}
      • changedOutput schema / properties / query / properties / section / enum
        Previous value: -[
        -  "operators",
        -  "operator",
        -  "findings",
        -  "placement",
        -  "fusion",
        -  "improvements",
        -  "profiles"
        -]New value: +[
        +  "operators",
        +  "operator",
        +  "findings",
        +  "placement",
        +  "fusion",
        +  "improvements",
        +  "profiles",
        +  "weights"
        +]
      • addedOutput schema / properties / query / properties / weight_view
        Added value: +{
        +  "description": "Only for section=weights: explicitly opt into bounded payload analysis; use returned weight subject_ref to select a tensor. Default distribution.",
        +  "enum": [
        +    "distribution",
        +    "channels",
        +    "similarity",
        +    "spectrum",
        +    "sparsity",
        +    "quantization"
        +  ],
        +  "type": "string"
        +}
    • Addeddeepbom_workflow_guide
  2. 2 tool updates
    • Addeddeepbom_publish_query
    • Addeddeepbom_query_file
  3. 1 tool update
    • Changeddeepbom_publish_analysis8 fields changed
      • removedInput schema / properties / result / additionalProperties
        Removed value: -false
      • addedInput schema / properties / result / anyOf
        Added value: +[
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "analysis_location": {
        +        "const": "chatgpt_browser_sandbox",
        +        "type": "string"
        +      },
        +      "analyzer_version": {
        +        "type": "string"
        +      },
        +      "artifact": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "artifact_ir_sha256": {
        +            "type": [
        +              "string",
        +              "null"
        +            ]
        +          },
        +          "byte_length": {
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "filename": {
        +            "type": "string"
        +          },
        +          "format": {
        +            "type": "string"
        +          },
        +          "sha256": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "filename",
        +          "format",
        +          "sha256",
        +          "byte_length"
        +        ],
        +        "type": "object"
        +      },
        +      "evidence_boundary": {
        +        "type": "string"
        +      },
        +      "findings": {
        +        "type": "object"
        +      },
        +      "graph": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "mac_confidence": {
        +            "type": "string"
        +          },
        +          "operator_count": {
        +            "minimum": 0,
        +            "type": [
        +              "integer",
        +              "null"
        +            ]
        +          },
        +          "tensor_count": {
        +            "minimum": 0,
        +            "type": [
        +              "integer",
        +              "null"
        +            ]
        +          },
        +          "total_macs": {
        +            "minimum": 0,
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          }
        +        },
        +        "required": [
        +          "operator_count",
        +          "tensor_count",
        +          "total_macs",
        +          "mac_confidence"
        +        ],
        +        "type": "object"
        +      },
        +      "model_summary": {
        +        "type": "object"
        +      },
        +      "quantization": {
        +        "type": "object"
        +      },
        +      "reproduction": {
        +        "type": [
        +          "object",
        +          "null"
        +        ]
        +      },
        +      "schema": {
        +        "const": "deepbom.chatgpt_analysis_result.v1",
        +        "type": "string"
        +      },
        +      "storage": {
        +        "type": [
        +          "object",
        +          "null"
        +        ]
        +      },
        +      "transfer_boundary": {
        +        "type": "string"
        +      },
        +      "verdict": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "artifact_defect_count": {
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "caution_count": {
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "evidence_needed_count": {
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "status": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "artifact_defect_count",
        +          "caution_count",
        +          "evidence_needed_count"
        +        ],
        +        "type": "object"
        +      }
        +    },
        +    "required": [
        +      "schema",
        +      "analyzer_version",
        +      "analysis_location",
        +      "artifact",
        +      "verdict",
        +      "graph",
        +      "storage",
        +      "quantization",
        +      "model_summary",
        +      "findings",
        +      "evidence_boundary",
        +      "transfer_boundary",
        +      "reproduction"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "analysis_location": {
        +        "const": "chatgpt_browser_sandbox",
        +        "type": "string"
        +      },
        +      "analyzer_version": {
        +        "type": "string"
        +      },
        +      "artifact": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "artifact_ir_sha256": {
        +            "type": [
        +              "string",
        +              "null"
        +            ]
        +          },
        +          "byte_length": {
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "filename": {
        +            "type": "string"
        +          },
        +          "format": {
        +            "type": "string"
        +          },
        +          "sha256": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "filename",
        +          "format",
        +          "sha256",
        +          "byte_length"
        +        ],
        +        "type": "object"
        +      },
        +      "evidence_boundary": {
        +        "type": "string"
        +      },
        +      "findings": {
        +        "type": "object"
        +      },
        +      "graph": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "mac_confidence": {
        +            "type": "string"
        +          },
        +          "operator_count": {
        +            "minimum": 0,
        +            "type": [
        +              "integer",
        +              "null"
        +            ]
        +          },
        +          "tensor_count": {
        +            "minimum": 0,
        +            "type": [
        +              "integer",
        +              "null"
        +            ]
        +          },
        +          "total_macs": {
        +            "minimum": 0,
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          }
        +        },
        +        "required": [
        +          "operator_count",
        +          "tensor_count",
        +          "total_macs",
        +          "mac_confidence"
        +        ],
        +        "type": "object"
        +      },
        +      "model_summary": {
        +        "type": "object"
        +      },
        +      "provenance_summary": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "artifact_sha256": {
        +            "pattern": "^[a-f0-9]{64}$",
        +            "type": "string"
        +          },
        +          "attested_relationship_count": {
        +            "maximum": 1000000,
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "check_count": {
        +            "maximum": 1000000,
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "check_counts": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "match": {
        +                "maximum": 1000000,
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "mismatch": {
        +                "maximum": 1000000,
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "not_assessed": {
        +                "maximum": 1000000,
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "unresolved": {
        +                "maximum": 1000000,
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "unsupported": {
        +                "maximum": 1000000,
        +                "minimum": 0,
        +                "type": "integer"
        +              }
        +            },
        +            "required": [
        +              "match",
        +              "mismatch",
        +              "not_assessed",
        +              "unresolved",
        +              "unsupported"
        +            ],
        +            "type": "object"
        +          },
        +          "field_count": {
        +            "maximum": 1000000,
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "mapped_declared_field_count": {
        +            "maximum": 1000000,
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "metadata_truth_verified": {
        +            "const": false,
        +            "type": "boolean"
        +          },
        +          "model_ir_sha256": {
        +            "pattern": "^[a-f0-9]{64}$",
        +            "type": "string"
        +          },
        +          "node_count": {
        +            "maximum": 1000000,
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "observed_file_count": {
        +            "maximum": 1000000,
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "provenance_ir_sha256": {
        +            "pattern": "^[a-f0-9]{64}$",
        +            "type": "string"
        +          },
        +          "publisher_authenticity": {
        +            "const": "not_verified",
        +            "type": "string"
        +          },
        +          "relationship_count": {
        +            "maximum": 1000000,
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "schema": {
        +            "const": "deepbom.provenance_summary.v1",
        +            "type": "string"
        +          },
        +          "status": {
        +            "enum": [
        +              "contradiction_observed",
        +              "incomplete",
        +              "no_contradiction_observed"
        +            ],
        +            "type": "string"
        +          },
        +          "unsupported_field_count": {
        +            "maximum": 1000000,
        +            "minimum": 0,
        +            "type": "integer"
        +          }
        +        },
        +        "required": [
        +          "schema",
        +          "artifact_sha256",
        +          "model_ir_sha256",
        +          "provenance_ir_sha256",
        +          "status",
        +          "node_count",
        +          "relationship_count",
        +          "observed_file_count",
        +          "check_count",
        +          "field_count",
        +          "mapped_declared_field_count",
        +          "unsupported_field_count",
        +          "attested_relationship_count",
        +          "check_counts",
        +          "metadata_truth_verified",
        +          "publisher_authenticity"
        +        ],
        +        "type": "object"
        +      },
        +      "quantization": {
        +        "type": "object"
        +      },
        +      "reproduction": {
        +        "type": [
        +          "object",
        +          "null"
        +        ]
        +      },
        +      "schema": {
        +        "const": "deepbom.chatgpt_analysis_result.v2",
        +        "type": "string"
        +      },
        +      "storage": {
        +        "type": [
        +          "object",
        +          "null"
        +        ]
        +      },
        +      "transfer_boundary": {
        +        "type": "string"
        +      },
        +      "verdict": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "artifact_defect_count": {
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "caution_count": {
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "evidence_needed_count": {
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "status": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "artifact_defect_count",
        +          "caution_count",
        +          "evidence_needed_count"
        +        ],
        +        "type": "object"
        +      }
        +    },
        +    "required": [
        +      "schema",
        +      "analyzer_version",
        +      "analysis_location",
        +      "artifact",
        +      "verdict",
        +      "graph",
        +      "storage",
        +      "quantization",
        +      "model_summary",
        +      "findings",
        +      "evidence_boundary",
        +      "transfer_boundary",
        +      "reproduction"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / result / properties
        Removed value: -{
        -  "analysis_location": {
        -    "const": "chatgpt_browser_sandbox",
        -    "type": "string"
        -  },
        -  "analyzer_version": {
        -    "type": "string"
        -  },
        -  "artifact": {
        -    "additionalProperties": false,
        -    "properties": {
        -      "artifact_ir_sha256": {
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "byte_length": {
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "filename": {
        -        "type": "string"
        -      },
        -      "format": {
        -        "type": "string"
        -      },
        -      "sha256": {
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "filename",
        -      "format",
        -      "sha256",
        -      "byte_length"
        -    ],
        -    "type": "object"
        -  },
        -  "evidence_boundary": {
        -    "type": "string"
        -  },
        -  "findings": {
        -    "type": "object"
        -  },
        -  "graph": {
        -    "additionalProperties": false,
        -    "properties": {
        -      "mac_confidence": {
        -        "type": "string"
        -      },
        -      "operator_count": {
        -        "minimum": 0,
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "tensor_count": {
        -        "minimum": 0,
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "total_macs": {
        -        "minimum": 0,
        -        "type": [
        -          "number",
        -          "null"
        -        ]
        -      }
        -    },
        -    "required": [
        -      "operator_count",
        -      "tensor_count",
        -      "total_macs",
        -      "mac_confidence"
        -    ],
        -    "type": "object"
        -  },
        -  "model_summary": {
        -    "type": "object"
        -  },
        -  "provenance_summary": {
        -    "additionalProperties": false,
        -    "properties": {
        -      "artifact_sha256": {
        -        "pattern": "^[a-f0-9]{64}$",
        -        "type": "string"
        -      },
        -      "attested_relationship_count": {
        -        "maximum": 1000000,
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "check_count": {
        -        "maximum": 1000000,
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "check_counts": {
        -        "additionalProperties": false,
        -        "properties": {
        -          "match": {
        -            "maximum": 1000000,
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "mismatch": {
        -            "maximum": 1000000,
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "not_assessed": {
        -            "maximum": 1000000,
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "unresolved": {
        -            "maximum": 1000000,
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "unsupported": {
        -            "maximum": 1000000,
        -            "minimum": 0,
        -            "type": "integer"
        -          }
        -        },
        -        "required": [
        -          "match",
        -          "mismatch",
        -          "not_assessed",
        -          "unresolved",
        -          "unsupported"
        -        ],
        -        "type": "object"
        -      },
        -      "field_count": {
        -        "maximum": 1000000,
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "mapped_declared_field_count": {
        -        "maximum": 1000000,
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "metadata_truth_verified": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "model_ir_sha256": {
        -        "pattern": "^[a-f0-9]{64}$",
        -        "type": "string"
        -      },
        -      "node_count": {
        -        "maximum": 1000000,
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "observed_file_count": {
        -        "maximum": 1000000,
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "provenance_ir_sha256": {
        -        "pattern": "^[a-f0-9]{64}$",
        -        "type": "string"
        -      },
        -      "publisher_authenticity": {
        -        "const": "not_verified",
        -        "type": "string"
        -      },
        -      "relationship_count": {
        -        "maximum": 1000000,
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "schema": {
        -        "const": "deepbom.provenance_summary.v1",
        -        "type": "string"
        -      },
        -      "status": {
        -        "enum": [
        -          "contradiction_observed",
        -          "incomplete",
        -          "no_contradiction_observed"
        -        ],
        -        "type": "string"
        -      },
        -      "unsupported_field_count": {
        -        "maximum": 1000000,
        -        "minimum": 0,
        -        "type": "integer"
        -      }
        -    },
        -    "required": [
        -      "schema",
        -      "artifact_sha256",
        -      "model_ir_sha256",
        -      "provenance_ir_sha256",
        -      "status",
        -      "node_count",
        -      "relationship_count",
        -      "observed_file_count",
        -      "check_count",
        -      "field_count",
        -      "mapped_declared_field_count",
        -      "unsupported_field_count",
        -      "attested_relationship_count",
        -      "check_counts",
        -      "metadata_truth_verified",
        -      "publisher_authenticity"
        -    ],
        -    "type": "object"
        -  },
        -  "quantization": {
        -    "type": "object"
        -  },
        -  "reproduction": {
        -    "type": [
        -      "object",
        -      "null"
        -    ]
        -  },
        -  "schema": {
        -    "const": "deepbom.chatgpt_analysis_result.v2",
        -    "type": "string"
        -  },
        -  "storage": {
        -    "type": [
        -      "object",
        -      "null"
        -    ]
        -  },
        -  "transfer_boundary": {
        -    "type": "string"
        -  },
        -  "verdict": {
        -    "additionalProperties": false,
        -    "properties": {
        -      "artifact_defect_count": {
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "caution_count": {
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "evidence_needed_count": {
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "status": {
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "status",
        -      "artifact_defect_count",
        -      "caution_count",
        -      "evidence_needed_count"
        -    ],
        -    "type": "object"
        -  }
        -}
      • removedInput schema / properties / result / required
        Removed value: -[
        -  "schema",
        -  "analyzer_version",
        -  "analysis_location",
        -  "artifact",
        -  "verdict",
        -  "graph",
        -  "storage",
        -  "quantization",
        -  "model_summary",
        -  "findings",
        -  "evidence_boundary",
        -  "transfer_boundary",
        -  "reproduction"
        -]
      • removedOutput schema / additionalProperties
        Removed value: -false
      • addedOutput schema / anyOf
        Added value: +[
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "analysis_location": {
        +        "const": "chatgpt_browser_sandbox",
        +        "type": "string"
        +      },
        +      "analyzer_version": {
        +        "type": "string"
        +      },
        +      "artifact": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "artifact_ir_sha256": {
        +            "type": [
        +              "string",
        +              "null"
        +            ]
        +          },
        +          "byte_length": {
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "filename": {
        +            "type": "string"
        +          },
        +          "format": {
        +            "type": "string"
        +          },
        +          "sha256": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "filename",
        +          "format",
        +          "sha256",
        +          "byte_length"
        +        ],
        +        "type": "object"
        +      },
        +      "evidence_boundary": {
        +        "type": "string"
        +      },
        +      "findings": {
        +        "type": "object"
        +      },
        +      "graph": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "mac_confidence": {
        +            "type": "string"
        +          },
        +          "operator_count": {
        +            "minimum": 0,
        +            "type": [
        +              "integer",
        +              "null"
        +            ]
        +          },
        +          "tensor_count": {
        +            "minimum": 0,
        +            "type": [
        +              "integer",
        +              "null"
        +            ]
        +          },
        +          "total_macs": {
        +            "minimum": 0,
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          }
        +        },
        +        "required": [
        +          "operator_count",
        +          "tensor_count",
        +          "total_macs",
        +          "mac_confidence"
        +        ],
        +        "type": "object"
        +      },
        +      "model_summary": {
        +        "type": "object"
        +      },
        +      "quantization": {
        +        "type": "object"
        +      },
        +      "reproduction": {
        +        "type": [
        +          "object",
        +          "null"
        +        ]
        +      },
        +      "schema": {
        +        "const": "deepbom.chatgpt_analysis_result.v1",
        +        "type": "string"
        +      },
        +      "storage": {
        +        "type": [
        +          "object",
        +          "null"
        +        ]
        +      },
        +      "transfer_boundary": {
        +        "type": "string"
        +      },
        +      "verdict": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "artifact_defect_count": {
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "caution_count": {
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "evidence_needed_count": {
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "status": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "artifact_defect_count",
        +          "caution_count",
        +          "evidence_needed_count"
        +        ],
        +        "type": "object"
        +      }
        +    },
        +    "required": [
        +      "schema",
        +      "analyzer_version",
        +      "analysis_location",
        +      "artifact",
        +      "verdict",
        +      "graph",
        +      "storage",
        +      "quantization",
        +      "model_summary",
        +      "findings",
        +      "evidence_boundary",
        +      "transfer_boundary",
        +      "reproduction"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "analysis_location": {
        +        "const": "chatgpt_browser_sandbox",
        +        "type": "string"
        +      },
        +      "analyzer_version": {
        +        "type": "string"
        +      },
        +      "artifact": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "artifact_ir_sha256": {
        +            "type": [
        +              "string",
        +              "null"
        +            ]
        +          },
        +          "byte_length": {
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "filename": {
        +            "type": "string"
        +          },
        +          "format": {
        +            "type": "string"
        +          },
        +          "sha256": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "filename",
        +          "format",
        +          "sha256",
        +          "byte_length"
        +        ],
        +        "type": "object"
        +      },
        +      "evidence_boundary": {
        +        "type": "string"
        +      },
        +      "findings": {
        +        "type": "object"
        +      },
        +      "graph": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "mac_confidence": {
        +            "type": "string"
        +          },
        +          "operator_count": {
        +            "minimum": 0,
        +            "type": [
        +              "integer",
        +              "null"
        +            ]
        +          },
        +          "tensor_count": {
        +            "minimum": 0,
        +            "type": [
        +              "integer",
        +              "null"
        +            ]
        +          },
        +          "total_macs": {
        +            "minimum": 0,
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          }
        +        },
        +        "required": [
        +          "operator_count",
        +          "tensor_count",
        +          "total_macs",
        +          "mac_confidence"
        +        ],
        +        "type": "object"
        +      },
        +      "model_summary": {
        +        "type": "object"
        +      },
        +      "provenance_summary": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "artifact_sha256": {
        +            "pattern": "^[a-f0-9]{64}$",
        +            "type": "string"
        +          },
        +          "attested_relationship_count": {
        +            "maximum": 1000000,
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "check_count": {
        +            "maximum": 1000000,
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "check_counts": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "match": {
        +                "maximum": 1000000,
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "mismatch": {
        +                "maximum": 1000000,
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "not_assessed": {
        +                "maximum": 1000000,
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "unresolved": {
        +                "maximum": 1000000,
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "unsupported": {
        +                "maximum": 1000000,
        +                "minimum": 0,
        +                "type": "integer"
        +              }
        +            },
        +            "required": [
        +              "match",
        +              "mismatch",
        +              "not_assessed",
        +              "unresolved",
        +              "unsupported"
        +            ],
        +            "type": "object"
        +          },
        +          "field_count": {
        +            "maximum": 1000000,
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "mapped_declared_field_count": {
        +            "maximum": 1000000,
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "metadata_truth_verified": {
        +            "const": false,
        +            "type": "boolean"
        +          },
        +          "model_ir_sha256": {
        +            "pattern": "^[a-f0-9]{64}$",
        +            "type": "string"
        +          },
        +          "node_count": {
        +            "maximum": 1000000,
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "observed_file_count": {
        +            "maximum": 1000000,
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "provenance_ir_sha256": {
        +            "pattern": "^[a-f0-9]{64}$",
        +            "type": "string"
        +          },
        +          "publisher_authenticity": {
        +            "const": "not_verified",
        +            "type": "string"
        +          },
        +          "relationship_count": {
        +            "maximum": 1000000,
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "schema": {
        +            "const": "deepbom.provenance_summary.v1",
        +            "type": "string"
        +          },
        +          "status": {
        +            "enum": [
        +              "contradiction_observed",
        +              "incomplete",
        +              "no_contradiction_observed"
        +            ],
        +            "type": "string"
        +          },
        +          "unsupported_field_count": {
        +            "maximum": 1000000,
        +            "minimum": 0,
        +            "type": "integer"
        +          }
        +        },
        +        "required": [
        +          "schema",
        +          "artifact_sha256",
        +          "model_ir_sha256",
        +          "provenance_ir_sha256",
        +          "status",
        +          "node_count",
        +          "relationship_count",
        +          "observed_file_count",
        +          "check_count",
        +          "field_count",
        +          "mapped_declared_field_count",
        +          "unsupported_field_count",
        +          "attested_relationship_count",
        +          "check_counts",
        +          "metadata_truth_verified",
        +          "publisher_authenticity"
        +        ],
        +        "type": "object"
        +      },
        +      "quantization": {
        +        "type": "object"
        +      },
        +      "reproduction": {
        +        "type": [
        +          "object",
        +          "null"
        +        ]
        +      },
        +      "schema": {
        +        "const": "deepbom.chatgpt_analysis_result.v2",
        +        "type": "string"
        +      },
        +      "storage": {
        +        "type": [
        +          "object",
        +          "null"
        +        ]
        +      },
        +      "transfer_boundary": {
        +        "type": "string"
        +      },
        +      "verdict": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "artifact_defect_count": {
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "caution_count": {
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "evidence_needed_count": {
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "status": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "status",
        +          "artifact_defect_count",
        +          "caution_count",
        +          "evidence_needed_count"
        +        ],
        +        "type": "object"
        +      }
        +    },
        +    "required": [
        +      "schema",
        +      "analyzer_version",
        +      "analysis_location",
        +      "artifact",
        +      "verdict",
        +      "graph",
        +      "storage",
        +      "quantization",
        +      "model_summary",
        +      "findings",
        +      "evidence_boundary",
        +      "transfer_boundary",
        +      "reproduction"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties
        Removed value: -{
        -  "analysis_location": {
        -    "const": "chatgpt_browser_sandbox",
        -    "type": "string"
        -  },
        -  "analyzer_version": {
        -    "type": "string"
        -  },
        -  "artifact": {
        -    "additionalProperties": false,
        -    "properties": {
        -      "artifact_ir_sha256": {
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "byte_length": {
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "filename": {
        -        "type": "string"
        -      },
        -      "format": {
        -        "type": "string"
        -      },
        -      "sha256": {
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "filename",
        -      "format",
        -      "sha256",
        -      "byte_length"
        -    ],
        -    "type": "object"
        -  },
        -  "evidence_boundary": {
        -    "type": "string"
        -  },
        -  "findings": {
        -    "type": "object"
        -  },
        -  "graph": {
        -    "additionalProperties": false,
        -    "properties": {
        -      "mac_confidence": {
        -        "type": "string"
        -      },
        -      "operator_count": {
        -        "minimum": 0,
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "tensor_count": {
        -        "minimum": 0,
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "total_macs": {
        -        "minimum": 0,
        -        "type": [
        -          "number",
        -          "null"
        -        ]
        -      }
        -    },
        -    "required": [
        -      "operator_count",
        -      "tensor_count",
        -      "total_macs",
        -      "mac_confidence"
        -    ],
        -    "type": "object"
        -  },
        -  "model_summary": {
        -    "type": "object"
        -  },
        -  "provenance_summary": {
        -    "additionalProperties": false,
        -    "properties": {
        -      "artifact_sha256": {
        -        "pattern": "^[a-f0-9]{64}$",
        -        "type": "string"
        -      },
        -      "attested_relationship_count": {
        -        "maximum": 1000000,
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "check_count": {
        -        "maximum": 1000000,
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "check_counts": {
        -        "additionalProperties": false,
        -        "properties": {
        -          "match": {
        -            "maximum": 1000000,
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "mismatch": {
        -            "maximum": 1000000,
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "not_assessed": {
        -            "maximum": 1000000,
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "unresolved": {
        -            "maximum": 1000000,
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "unsupported": {
        -            "maximum": 1000000,
        -            "minimum": 0,
        -            "type": "integer"
        -          }
        -        },
        -        "required": [
        -          "match",
        -          "mismatch",
        -          "not_assessed",
        -          "unresolved",
        -          "unsupported"
        -        ],
        -        "type": "object"
        -      },
        -      "field_count": {
        -        "maximum": 1000000,
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "mapped_declared_field_count": {
        -        "maximum": 1000000,
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "metadata_truth_verified": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "model_ir_sha256": {
        -        "pattern": "^[a-f0-9]{64}$",
        -        "type": "string"
        -      },
        -      "node_count": {
        -        "maximum": 1000000,
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "observed_file_count": {
        -        "maximum": 1000000,
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "provenance_ir_sha256": {
        -        "pattern": "^[a-f0-9]{64}$",
        -        "type": "string"
        -      },
        -      "publisher_authenticity": {
        -        "const": "not_verified",
        -        "type": "string"
        -      },
        -      "relationship_count": {
        -        "maximum": 1000000,
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "schema": {
        -        "const": "deepbom.provenance_summary.v1",
        -        "type": "string"
        -      },
        -      "status": {
        -        "enum": [
        -          "contradiction_observed",
        -          "incomplete",
        -          "no_contradiction_observed"
        -        ],
        -        "type": "string"
        -      },
        -      "unsupported_field_count": {
        -        "maximum": 1000000,
        -        "minimum": 0,
        -        "type": "integer"
        -      }
        -    },
        -    "required": [
        -      "schema",
        -      "artifact_sha256",
        -      "model_ir_sha256",
        -      "provenance_ir_sha256",
        -      "status",
        -      "node_count",
        -      "relationship_count",
        -      "observed_file_count",
        -      "check_count",
        -      "field_count",
        -      "mapped_declared_field_count",
        -      "unsupported_field_count",
        -      "attested_relationship_count",
        -      "check_counts",
        -      "metadata_truth_verified",
        -      "publisher_authenticity"
        -    ],
        -    "type": "object"
        -  },
        -  "quantization": {
        -    "type": "object"
        -  },
        -  "reproduction": {
        -    "type": [
        -      "object",
        -      "null"
        -    ]
        -  },
        -  "schema": {
        -    "const": "deepbom.chatgpt_analysis_result.v2",
        -    "type": "string"
        -  },
        -  "storage": {
        -    "type": [
        -      "object",
        -      "null"
        -    ]
        -  },
        -  "transfer_boundary": {
        -    "type": "string"
        -  },
        -  "verdict": {
        -    "additionalProperties": false,
        -    "properties": {
        -      "artifact_defect_count": {
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "caution_count": {
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "evidence_needed_count": {
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "status": {
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "status",
        -      "artifact_defect_count",
        -      "caution_count",
        -      "evidence_needed_count"
        -    ],
        -    "type": "object"
        -  }
        -}
      • removedOutput schema / required
        Removed value: -[
        -  "schema",
        -  "analyzer_version",
        -  "analysis_location",
        -  "artifact",
        -  "verdict",
        -  "graph",
        -  "storage",
        -  "quantization",
        -  "model_summary",
        -  "findings",
        -  "evidence_boundary",
        -  "transfer_boundary",
        -  "reproduction"
        -]
  4. 1 tool update
    • Changeddeepbom_publish_analysis6 fields changed
      • removedInput schema / properties / result / properties / evidence_links
        Removed value: -{
        -  "additionalProperties": false,
        -  "properties": {
        -    "artifact_sha256": {
        -      "pattern": "^[a-f0-9]{64}$",
        -      "type": "string"
        -    },
        -    "attested_relationship_count": {
        -      "maximum": 1000000,
        -      "minimum": 0,
        -      "type": "integer"
        -    },
        -    "check_count": {
        -      "maximum": 1000000,
        -      "minimum": 0,
        -      "type": "integer"
        -    },
        -    "check_counts": {
        -      "additionalProperties": false,
        -      "properties": {
        -        "match": {
        -          "maximum": 1000000,
        -          "minimum": 0,
        -          "type": "integer"
        -        },
        -        "mismatch": {
        -          "maximum": 1000000,
        -          "minimum": 0,
        -          "type": "integer"
        -        },
        -        "not_assessed": {
        -          "maximum": 1000000,
        -          "minimum": 0,
        -          "type": "integer"
        -        },
        -        "unresolved": {
        -          "maximum": 1000000,
        -          "minimum": 0,
        -          "type": "integer"
        -        },
        -        "unsupported": {
        -          "maximum": 1000000,
        -          "minimum": 0,
        -          "type": "integer"
        -        }
        -      },
        -      "required": [
        -        "match",
        -        "mismatch",
        -        "not_assessed",
        -        "unresolved",
        -        "unsupported"
        -      ],
        -      "type": "object"
        -    },
        -    "evidence_link_ir_sha256": {
        -      "pattern": "^[a-f0-9]{64}$",
        -      "type": "string"
        -    },
        -    "field_count": {
        -      "maximum": 1000000,
        -      "minimum": 0,
        -      "type": "integer"
        -    },
        -    "mapped_declared_field_count": {
        -      "maximum": 1000000,
        -      "minimum": 0,
        -      "type": "integer"
        -    },
        -    "metadata_truth_verified": {
        -      "const": false,
        -      "type": "boolean"
        -    },
        -    "model_ir_sha256": {
        -      "pattern": "^[a-f0-9]{64}$",
        -      "type": "string"
        -    },
        -    "node_count": {
        -      "maximum": 1000000,
        -      "minimum": 0,
        -      "type": "integer"
        -    },
        -    "observed_file_count": {
        -      "maximum": 1000000,
        -      "minimum": 0,
        -      "type": "integer"
        -    },
        -    "publisher_authenticity": {
        -      "const": "not_verified",
        -      "type": "string"
        -    },
        -    "relationship_count": {
        -      "maximum": 1000000,
        -      "minimum": 0,
        -      "type": "integer"
        -    },
        -    "schema": {
        -      "const": "deepbom.evidence_link_summary.v1",
        -      "type": "string"
        -    },
        -    "status": {
        -      "enum": [
        -        "contradiction_observed",
        -        "incomplete",
        -        "no_contradiction_observed"
        -      ],
        -      "type": "string"
        -    },
        -    "unsupported_field_count": {
        -      "maximum": 1000000,
        -      "minimum": 0,
        -      "type": "integer"
        -    }
        -  },
        -  "required": [
        -    "schema",
        -    "artifact_sha256",
        -    "model_ir_sha256",
        -    "evidence_link_ir_sha256",
        -    "status",
        -    "node_count",
        -    "relationship_count",
        -    "observed_file_count",
        -    "check_count",
        -    "field_count",
        -    "mapped_declared_field_count",
        -    "unsupported_field_count",
        -    "attested_relationship_count",
        -    "check_counts",
        -    "metadata_truth_verified",
        -    "publisher_authenticity"
        -  ],
        -  "type": "object"
        -}
      • addedInput schema / properties / result / properties / provenance_summary
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "artifact_sha256": {
        +      "pattern": "^[a-f0-9]{64}$",
        +      "type": "string"
        +    },
        +    "attested_relationship_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "check_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "check_counts": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "match": {
        +          "maximum": 1000000,
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "mismatch": {
        +          "maximum": 1000000,
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "not_assessed": {
        +          "maximum": 1000000,
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "unresolved": {
        +          "maximum": 1000000,
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "unsupported": {
        +          "maximum": 1000000,
        +          "minimum": 0,
        +          "type": "integer"
        +        }
        +      },
        +      "required": [
        +        "match",
        +        "mismatch",
        +        "not_assessed",
        +        "unresolved",
        +        "unsupported"
        +      ],
        +      "type": "object"
        +    },
        +    "field_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "mapped_declared_field_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "metadata_truth_verified": {
        +      "const": false,
        +      "type": "boolean"
        +    },
        +    "model_ir_sha256": {
        +      "pattern": "^[a-f0-9]{64}$",
        +      "type": "string"
        +    },
        +    "node_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "observed_file_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "provenance_ir_sha256": {
        +      "pattern": "^[a-f0-9]{64}$",
        +      "type": "string"
        +    },
        +    "publisher_authenticity": {
        +      "const": "not_verified",
        +      "type": "string"
        +    },
        +    "relationship_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "schema": {
        +      "const": "deepbom.provenance_summary.v1",
        +      "type": "string"
        +    },
        +    "status": {
        +      "enum": [
        +        "contradiction_observed",
        +        "incomplete",
        +        "no_contradiction_observed"
        +      ],
        +      "type": "string"
        +    },
        +    "unsupported_field_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    }
        +  },
        +  "required": [
        +    "schema",
        +    "artifact_sha256",
        +    "model_ir_sha256",
        +    "provenance_ir_sha256",
        +    "status",
        +    "node_count",
        +    "relationship_count",
        +    "observed_file_count",
        +    "check_count",
        +    "field_count",
        +    "mapped_declared_field_count",
        +    "unsupported_field_count",
        +    "attested_relationship_count",
        +    "check_counts",
        +    "metadata_truth_verified",
        +    "publisher_authenticity"
        +  ],
        +  "type": "object"
        +}
      • changedInput schema / properties / result / properties / schema / const
        Previous value: -"deepbom.chatgpt_analysis_result.v1"New value: +"deepbom.chatgpt_analysis_result.v2"
      • removedOutput schema / properties / evidence_links
        Removed value: -{
        -  "additionalProperties": false,
        -  "properties": {
        -    "artifact_sha256": {
        -      "pattern": "^[a-f0-9]{64}$",
        -      "type": "string"
        -    },
        -    "attested_relationship_count": {
        -      "maximum": 1000000,
        -      "minimum": 0,
        -      "type": "integer"
        -    },
        -    "check_count": {
        -      "maximum": 1000000,
        -      "minimum": 0,
        -      "type": "integer"
        -    },
        -    "check_counts": {
        -      "additionalProperties": false,
        -      "properties": {
        -        "match": {
        -          "maximum": 1000000,
        -          "minimum": 0,
        -          "type": "integer"
        -        },
        -        "mismatch": {
        -          "maximum": 1000000,
        -          "minimum": 0,
        -          "type": "integer"
        -        },
        -        "not_assessed": {
        -          "maximum": 1000000,
        -          "minimum": 0,
        -          "type": "integer"
        -        },
        -        "unresolved": {
        -          "maximum": 1000000,
        -          "minimum": 0,
        -          "type": "integer"
        -        },
        -        "unsupported": {
        -          "maximum": 1000000,
        -          "minimum": 0,
        -          "type": "integer"
        -        }
        -      },
        -      "required": [
        -        "match",
        -        "mismatch",
        -        "not_assessed",
        -        "unresolved",
        -        "unsupported"
        -      ],
        -      "type": "object"
        -    },
        -    "evidence_link_ir_sha256": {
        -      "pattern": "^[a-f0-9]{64}$",
        -      "type": "string"
        -    },
        -    "field_count": {
        -      "maximum": 1000000,
        -      "minimum": 0,
        -      "type": "integer"
        -    },
        -    "mapped_declared_field_count": {
        -      "maximum": 1000000,
        -      "minimum": 0,
        -      "type": "integer"
        -    },
        -    "metadata_truth_verified": {
        -      "const": false,
        -      "type": "boolean"
        -    },
        -    "model_ir_sha256": {
        -      "pattern": "^[a-f0-9]{64}$",
        -      "type": "string"
        -    },
        -    "node_count": {
        -      "maximum": 1000000,
        -      "minimum": 0,
        -      "type": "integer"
        -    },
        -    "observed_file_count": {
        -      "maximum": 1000000,
        -      "minimum": 0,
        -      "type": "integer"
        -    },
        -    "publisher_authenticity": {
        -      "const": "not_verified",
        -      "type": "string"
        -    },
        -    "relationship_count": {
        -      "maximum": 1000000,
        -      "minimum": 0,
        -      "type": "integer"
        -    },
        -    "schema": {
        -      "const": "deepbom.evidence_link_summary.v1",
        -      "type": "string"
        -    },
        -    "status": {
        -      "enum": [
        -        "contradiction_observed",
        -        "incomplete",
        -        "no_contradiction_observed"
        -      ],
        -      "type": "string"
        -    },
        -    "unsupported_field_count": {
        -      "maximum": 1000000,
        -      "minimum": 0,
        -      "type": "integer"
        -    }
        -  },
        -  "required": [
        -    "schema",
        -    "artifact_sha256",
        -    "model_ir_sha256",
        -    "evidence_link_ir_sha256",
        -    "status",
        -    "node_count",
        -    "relationship_count",
        -    "observed_file_count",
        -    "check_count",
        -    "field_count",
        -    "mapped_declared_field_count",
        -    "unsupported_field_count",
        -    "attested_relationship_count",
        -    "check_counts",
        -    "metadata_truth_verified",
        -    "publisher_authenticity"
        -  ],
        -  "type": "object"
        -}
      • addedOutput schema / properties / provenance_summary
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "artifact_sha256": {
        +      "pattern": "^[a-f0-9]{64}$",
        +      "type": "string"
        +    },
        +    "attested_relationship_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "check_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "check_counts": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "match": {
        +          "maximum": 1000000,
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "mismatch": {
        +          "maximum": 1000000,
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "not_assessed": {
        +          "maximum": 1000000,
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "unresolved": {
        +          "maximum": 1000000,
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "unsupported": {
        +          "maximum": 1000000,
        +          "minimum": 0,
        +          "type": "integer"
        +        }
        +      },
        +      "required": [
        +        "match",
        +        "mismatch",
        +        "not_assessed",
        +        "unresolved",
        +        "unsupported"
        +      ],
        +      "type": "object"
        +    },
        +    "field_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "mapped_declared_field_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "metadata_truth_verified": {
        +      "const": false,
        +      "type": "boolean"
        +    },
        +    "model_ir_sha256": {
        +      "pattern": "^[a-f0-9]{64}$",
        +      "type": "string"
        +    },
        +    "node_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "observed_file_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "provenance_ir_sha256": {
        +      "pattern": "^[a-f0-9]{64}$",
        +      "type": "string"
        +    },
        +    "publisher_authenticity": {
        +      "const": "not_verified",
        +      "type": "string"
        +    },
        +    "relationship_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "schema": {
        +      "const": "deepbom.provenance_summary.v1",
        +      "type": "string"
        +    },
        +    "status": {
        +      "enum": [
        +        "contradiction_observed",
        +        "incomplete",
        +        "no_contradiction_observed"
        +      ],
        +      "type": "string"
        +    },
        +    "unsupported_field_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    }
        +  },
        +  "required": [
        +    "schema",
        +    "artifact_sha256",
        +    "model_ir_sha256",
        +    "provenance_ir_sha256",
        +    "status",
        +    "node_count",
        +    "relationship_count",
        +    "observed_file_count",
        +    "check_count",
        +    "field_count",
        +    "mapped_declared_field_count",
        +    "unsupported_field_count",
        +    "attested_relationship_count",
        +    "check_counts",
        +    "metadata_truth_verified",
        +    "publisher_authenticity"
        +  ],
        +  "type": "object"
        +}
      • changedOutput schema / properties / schema / const
        Previous value: -"deepbom.chatgpt_analysis_result.v1"New value: +"deepbom.chatgpt_analysis_result.v2"
  5. 1 tool update
    • Changeddeepbom_publish_analysis2 fields changed
      • addedInput schema / properties / result / properties / evidence_links
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "artifact_sha256": {
        +      "pattern": "^[a-f0-9]{64}$",
        +      "type": "string"
        +    },
        +    "attested_relationship_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "check_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "check_counts": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "match": {
        +          "maximum": 1000000,
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "mismatch": {
        +          "maximum": 1000000,
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "not_assessed": {
        +          "maximum": 1000000,
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "unresolved": {
        +          "maximum": 1000000,
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "unsupported": {
        +          "maximum": 1000000,
        +          "minimum": 0,
        +          "type": "integer"
        +        }
        +      },
        +      "required": [
        +        "match",
        +        "mismatch",
        +        "not_assessed",
        +        "unresolved",
        +        "unsupported"
        +      ],
        +      "type": "object"
        +    },
        +    "evidence_link_ir_sha256": {
        +      "pattern": "^[a-f0-9]{64}$",
        +      "type": "string"
        +    },
        +    "field_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "mapped_declared_field_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "metadata_truth_verified": {
        +      "const": false,
        +      "type": "boolean"
        +    },
        +    "model_ir_sha256": {
        +      "pattern": "^[a-f0-9]{64}$",
        +      "type": "string"
        +    },
        +    "node_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "observed_file_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "publisher_authenticity": {
        +      "const": "not_verified",
        +      "type": "string"
        +    },
        +    "relationship_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "schema": {
        +      "const": "deepbom.evidence_link_summary.v1",
        +      "type": "string"
        +    },
        +    "status": {
        +      "enum": [
        +        "contradiction_observed",
        +        "incomplete",
        +        "no_contradiction_observed"
        +      ],
        +      "type": "string"
        +    },
        +    "unsupported_field_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    }
        +  },
        +  "required": [
        +    "schema",
        +    "artifact_sha256",
        +    "model_ir_sha256",
        +    "evidence_link_ir_sha256",
        +    "status",
        +    "node_count",
        +    "relationship_count",
        +    "observed_file_count",
        +    "check_count",
        +    "field_count",
        +    "mapped_declared_field_count",
        +    "unsupported_field_count",
        +    "attested_relationship_count",
        +    "check_counts",
        +    "metadata_truth_verified",
        +    "publisher_authenticity"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / evidence_links
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "artifact_sha256": {
        +      "pattern": "^[a-f0-9]{64}$",
        +      "type": "string"
        +    },
        +    "attested_relationship_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "check_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "check_counts": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "match": {
        +          "maximum": 1000000,
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "mismatch": {
        +          "maximum": 1000000,
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "not_assessed": {
        +          "maximum": 1000000,
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "unresolved": {
        +          "maximum": 1000000,
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "unsupported": {
        +          "maximum": 1000000,
        +          "minimum": 0,
        +          "type": "integer"
        +        }
        +      },
        +      "required": [
        +        "match",
        +        "mismatch",
        +        "not_assessed",
        +        "unresolved",
        +        "unsupported"
        +      ],
        +      "type": "object"
        +    },
        +    "evidence_link_ir_sha256": {
        +      "pattern": "^[a-f0-9]{64}$",
        +      "type": "string"
        +    },
        +    "field_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "mapped_declared_field_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "metadata_truth_verified": {
        +      "const": false,
        +      "type": "boolean"
        +    },
        +    "model_ir_sha256": {
        +      "pattern": "^[a-f0-9]{64}$",
        +      "type": "string"
        +    },
        +    "node_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "observed_file_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "publisher_authenticity": {
        +      "const": "not_verified",
        +      "type": "string"
        +    },
        +    "relationship_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "schema": {
        +      "const": "deepbom.evidence_link_summary.v1",
        +      "type": "string"
        +    },
        +    "status": {
        +      "enum": [
        +        "contradiction_observed",
        +        "incomplete",
        +        "no_contradiction_observed"
        +      ],
        +      "type": "string"
        +    },
        +    "unsupported_field_count": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    }
        +  },
        +  "required": [
        +    "schema",
        +    "artifact_sha256",
        +    "model_ir_sha256",
        +    "evidence_link_ir_sha256",
        +    "status",
        +    "node_count",
        +    "relationship_count",
        +    "observed_file_count",
        +    "check_count",
        +    "field_count",
        +    "mapped_declared_field_count",
        +    "unsupported_field_count",
        +    "attested_relationship_count",
        +    "check_counts",
        +    "metadata_truth_verified",
        +    "publisher_authenticity"
        +  ],
        +  "type": "object"
        +}
  6. 1 tool update
    • Changeddeepbom_publish_analysis4 fields changed
      • addedInput schema / properties / result / properties / model_summary
        Added value: +{
        +  "type": "object"
        +}
      • changedInput schema / properties / result / required
        Previous value: -[
        -  "schema",
        -  "analyzer_version",
        -  "analysis_location",
        -  "artifact",
        -  "verdict",
        -  "graph",
        -  "storage",
        -  "quantization",
        -  "findings",
        -  "evidence_boundary",
        -  "transfer_boundary",
        -  "reproduction"
        -]New value: +[
        +  "schema",
        +  "analyzer_version",
        +  "analysis_location",
        +  "artifact",
        +  "verdict",
        +  "graph",
        +  "storage",
        +  "quantization",
        +  "model_summary",
        +  "findings",
        +  "evidence_boundary",
        +  "transfer_boundary",
        +  "reproduction"
        +]
      • addedOutput schema / properties / model_summary
        Added value: +{
        +  "type": "object"
        +}
      • changedOutput schema / required
        Previous value: -[
        -  "schema",
        -  "analyzer_version",
        -  "analysis_location",
        -  "artifact",
        -  "verdict",
        -  "graph",
        -  "storage",
        -  "quantization",
        -  "findings",
        -  "evidence_boundary",
        -  "transfer_boundary",
        -  "reproduction"
        -]New value: +[
        +  "schema",
        +  "analyzer_version",
        +  "analysis_location",
        +  "artifact",
        +  "verdict",
        +  "graph",
        +  "storage",
        +  "quantization",
        +  "model_summary",
        +  "findings",
        +  "evidence_boundary",
        +  "transfer_boundary",
        +  "reproduction"
        +]

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables local static analysis of AI deployment artifacts, producing SHA-256 hashes, serialized structure, defects, cautions, evidence gaps, and limitations without executing model code.
    Apache 2.0
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI agents to capture and hash-register browser evidence, enforce cite-or-fail claim checks against registered bytes, and export Merkle-rooted evidence bundles that other agents can re-verify fully offline.
    18 npm
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables local inspection of AI model deployment artifacts without executing model code, returning SHA-256, structure, defect analysis, and evidence-gap findings in Gemini CLI conversations.
    Apache 2.0
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.