Skip to main content
Glama

Synthex Forge — x402 Paid Agent Services

Validate Data Payload

validate_data_payload
Read-onlyIdempotent

Coercion and repair of a payload against a schema, with the repairs. use it rather than create_signed_data_snapshot for payload, not signed data snapshot; an object with 35 fields including actual, algorithm.

Input Schema

NameRequiredDescriptionDefault
as_ofNoThe date the answer is computed as of (YYYY-MM-DD). Defaults to today. Use it to reproduce a past answer exactly.
coerceNoThe coerce this operation operates on. See the schema for its type and whether it is required.
repairNoThe repair this operation operates on. See the schema for its type and whether it is required.
schemaNoThe JSON Schema the operation operates on.
strictNoThe strict this operation operates on. See the schema for its type and whether it is required.
payloadNoThe payload the operation operates on.

Output Schema

NameRequiredDescriptionDefault
opNoThe `op` field of the response.
toNoThe `to` field of the response.
whyNoThe `why` field of the response.
asOfNoThe `asOf` field of the response.
fromNoThe `from` field of the response.
kindNoThe `kind` field of the response.
noteNoA note on how the answer was produced.
pathNoThe `path` field of the response.
ruleNoThe rule or criteria that decided the verdict.
validYesWhether the artifact verified.
actualNoThe `actual` field of the response.
errorsNoThe `errors` field of the response.
key_idNoThe `key_id` field of the response.
sha256NoThe `sha256` field of the response.
messageNoThe `message` field of the response.
expectedNoThe `expected` field of the response.
repairedNoThe `repaired` field of the response.
signedByNoThe `signedBy` field of the response.
algorithmNoThe `algorithm` field of the response.
repairOpsNoThe `repairOps` field of the response.
signatureYesThe Ed25519 signature over the evidence core, base64-encoded.
ed25519SigNoThe `ed25519Sig` field of the response.
repair_opsNoThe `repair_ops` field of the response.
evidenceCoreNoThe `evidenceCore` field of the response.
publicKeyHexNoThe `publicKeyHex` field of the response.
rulesVersionNoVersion of the rules evaluated.
output_sha256YesSHA-256 hex digest of the canonical evidence core.
rules_versionNoThe `rules_version` field of the response.
profileVersionNoVersion of the answer profile.
canonicalSha256NoThe `canonicalSha256` field of the response.
rejectedRepairsNoThe `rejectedRepairs` field of the response.
reproducibilityNoThe `reproducibility` field of the response.
rejected_repairsNoThe `rejected_repairs` field of the response.
schemaKeysUnsupportedNoThe `schemaKeysUnsupported` field of the response.
schema_keys_unsupportedNoThe `schema_keys_unsupported` field of the response.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed37 schema fields changed
    • addedOutput schema / properties / actual
      Added value: +{
      +  "description": "The `actual` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / algorithm
      Added value: +{
      +  "description": "The `algorithm` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / asOf
      Added value: +{
      +  "description": "The `asOf` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / canonicalSha256
      Added value: +{
      +  "description": "The `canonicalSha256` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / ed25519Sig
      Added value: +{
      +  "description": "The `ed25519Sig` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / errors
      Added value: +{
      +  "description": "The `errors` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / evidenceCore
      Added value: +{
      +  "description": "The `evidenceCore` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / expected
      Added value: +{
      +  "description": "The `expected` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / from
      Added value: +{
      +  "description": "The `from` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / key_id
      Added value: +{
      +  "description": "The `key_id` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / kind
      Added value: +{
      +  "description": "The `kind` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / message
      Added value: +{
      +  "description": "The `message` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / note
      Added value: +{
      +  "description": "A note on how the answer was produced.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / op
      Added value: +{
      +  "description": "The `op` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / output_sha256
      Added value: +{
      +  "description": "SHA-256 hex digest of the canonical evidence core.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / path
      Added value: +{
      +  "description": "The `path` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / profileVersion
      Added value: +{
      +  "description": "Version of the answer profile.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / publicKeyHex
      Added value: +{
      +  "description": "The `publicKeyHex` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / rejectedRepairs
      Added value: +{
      +  "description": "The `rejectedRepairs` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / rejected_repairs
      Added value: +{
      +  "description": "The `rejected_repairs` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / repairOps
      Added value: +{
      +  "description": "The `repairOps` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / repair_ops
      Added value: +{
      +  "description": "The `repair_ops` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / repaired
      Added value: +{
      +  "description": "The `repaired` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / reproducibility
      Added value: +{
      +  "description": "The `reproducibility` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / rule
      Added value: +{
      +  "description": "The rule or criteria that decided the verdict.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / rulesVersion
      Added value: +{
      +  "description": "Version of the rules evaluated.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / rules_version
      Added value: +{
      +  "description": "The `rules_version` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / schemaKeysUnsupported
      Added value: +{
      +  "description": "The `schemaKeysUnsupported` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / schema_keys_unsupported
      Added value: +{
      +  "description": "The `schema_keys_unsupported` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / sha256
      Added value: +{
      +  "description": "The `sha256` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / signature
      Added value: +{
      +  "description": "The Ed25519 signature over the evidence core, base64-encoded.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / signedBy
      Added value: +{
      +  "description": "The `signedBy` field of the response.",
      +  "type": "object"
      +}
    • removedOutput schema / properties / status
      Removed value: -{
      -  "type": "string"
      -}
    • addedOutput schema / properties / to
      Added value: +{
      +  "description": "The `to` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / valid
      Added value: +{
      +  "description": "Whether the artifact verified.",
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / why
      Added value: +{
      +  "description": "The `why` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / required
      Added value: +[
      +  "output_sha256",
      +  "signature",
      +  "valid"
      +]
  2. Added

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already state that the tool is read-only, idempotent, non-destructive, and closed-world. The description adds that coercion/repair occurs and that repairs are returned, but it does not clarify whether the original payload is mutated, how failures are reported, or how `strict` affects behavior.

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?

It is short and front-loads the core action, but the second sentence is a run-on fragment with unclear punctuation. The phrase 'an object with 35 fields including actual, algorithm' is not cleanly connected to the payload or the return value.

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 output schema and annotations cover much of the safety and return behavior, so the description need not explain everything. Still, it leaves important invocation details vague, especially the meanings of `coerce`, `repair`, and `strict`, and does not fully disambiguate this tool from all validation-related siblings.

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 coverage is 100%, so the baseline is 3. The description adds a little payload detail ('an object with 35 fields including actual, algorithm') but does not explain the `coerce`, `repair`, or `strict` flags beyond what the schema already says.

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 action on a specific resource: coercion and repair of a payload against a schema. It also explicitly distinguishes itself from `create_signed_data_snapshot`, though the phrasing is fragmented and never plainly says 'validate'.

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 gives an explicit alternative-selection rule: use this rather than `create_signed_data_snapshot` when the subject is a payload, not a signed data snapshot. It does not distinguish against other plausible siblings such as `verify_data_validation` or `clean_json_schema`.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.