accord_trace_verify
Verify an AccordTrace recorded proof, optionally compare supplied data/hash, and verify an issuer signature when one is present.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| data | No | ||
| hash | No | ||
| proof_id | Yes |
Verify an AccordTrace recorded proof, optionally compare supplied data/hash, and verify an issuer signature when one is present.
| Name | Required | Description | Default |
|---|---|---|---|
| data | No | ||
| hash | No | ||
| proof_id | Yes |
Changes observed during successful MCP inspections.
Input schema / additionalPropertiesRemoved value: -falseInput schema / properties / data / descriptionRemoved value: -"Optional exact string or JSON value to compare."Input schema / properties / hash / descriptionRemoved value: -"Optional SHA-256 digest to compare."Input schema / properties / hash / patternRemoved value: -"^(sha256:)?[a-fA-F0-9]{64}$"Input schema / properties / proof_id / descriptionRemoved value: -"Accord Trace proof identifier."Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses conditional behavior (issuer signature verification only when present) and optional data/hash comparison. However, it does not state whether the operation is read-only, what the result format is, or how failures like missing proofs are handled, leaving meaningful behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that covers the primary purpose and the optional/conditional behaviors with no filler or redundancy. Every phrase adds distinct information and the structure is easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 3-parameter tool with no output schema and no annotations, the description is under-specified. It omits the return value or result shape, error behavior, and any explicit side-effect guarantee. It also leaves ambiguous whether data and hash may be supplied together or are mutually exclusive, which an agent would need to know to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It explains that data and hash are for optional comparison and that issuer signature verification is conditional, which adds meaning beyond the raw schema. Still, it does not clarify the expected format of hash, the type of data, or the exact role of proof_id beyond being the identifier of the proof.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'verify' with the resource 'AccordTrace recorded proof,' making the core action clear. It also distinguishes itself from siblings by mentioning optional data/hash comparison and issuer signature verification, which are not covered by get_proof, create_proof, or hash tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used to verify proofs, but it gives no explicit guidance on when to use this tool versus alternates such as accord_trace_get_proof. The 'optionally' and 'when one is present' clauses describe parameter behavior, not tool selection criteria, so usage context is only partially implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.