Skip to main content
Glama

uniprot_provenance_verify

Read-only

Re-fetches a recorded UniProt URL to check that the release and SHA-256 response digest still match the original provenance, flagging drift or incomplete evidence.

Instructions

Re-fetch a previously recorded UniProt URL and verify it still returns the same release identifier and the same canonical response body (SHA-256). Pass the values from a prior response's provenance footer (url, release, response_sha256, accept_header); empty optional fields skip the corresponding check. Only both matches earn verified; absent checks return incomplete_evidence if nothing drifted. Reachability, mismatch and per-check fields remain available.

accept_header must match the Accept header used for the original request (default application/json; use text/plain;format=fasta for FASTA-originated provenance). Replaying the wrong header causes a guaranteed hash mismatch because the upstream serves different content depending on content negotiation.

Verification applies to individual UniProt REST responses only. It does not independently validate derived biological conclusions, composite dossiers, or cross-origin ClinVar and AlphaFold DB responses. Check the recorded source and digest for each upstream input separately.

Input Schema

NameRequiredDescriptionDefault
urlYes
releaseNo
accept_headerNoapplication/json
response_formatNomarkdown
response_sha256No

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.1.9

TDQS

A4.5/5.0
Behavior5/5

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

Annotations only declare readOnlyHint/openWorldHint, and the description adds substantial context beyond them: the three outcome states (verified, incomplete_evidence, mismatch), the skip semantics for empty optional fields, retention of reachability and per-check fields, and the non-obvious trap that replaying the wrong Accept header guarantees a hash mismatch due to content negotiation.

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?

Front-loaded with the core action in the first sentence, and every paragraph (parameter sourcing, Accept-header warning, scope limits) does distinct work. Some sentences are dense and compressed to the point of being cryptic, notably 'Reachability, mismatch and per-check fields remain available.'

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 values needn't be spelled out, and the description still covers input sourcing, drift-detection semantics, outcome vocabulary and scope exclusions. The only meaningful hole for a 5-parameter verification tool is the undocumented response_format control.

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 0%, so the description must carry the load; it explains url, release, response_sha256 and accept_header (including its default and the FASTA-specific value text/plain;format=fasta). The fifth parameter, response_format (default markdown), is documented in neither the schema nor the description, leaving one gap.

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

Purpose5/5

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

States a precise verb-and-resource pair: re-fetch a recorded UniProt URL and verify the release identifier and SHA-256 digest still match. It also bounds the purpose against near-neighbours by excluding composite dossiers and cross-origin ClinVar/AlphaFold responses, which is the distinction an agent needs in this large sibling set.

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?

Tells the caller to pass values from a prior response's provenance footer and that empty optional fields skip the corresponding check, plus a clear 'when not to use' paragraph limiting it to individual UniProt REST responses. It never names a concrete alternative sibling (e.g. uniprot_replay_from_cache) for the cases it excludes, so routing to the substitute is left to inference.

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