Skip to main content
Glama

Synthex Forge — x402 Paid Agent Services

Verify Licence Status

verify_licence_status
Read-onlyIdempotent

re-run the pure function and verify the signed answer. use it rather than check_licence_status for licence status specifically; an object with 14 fields including algorithm, basis.

Input Schema

NameRequiredDescriptionDefault
signatureYesThe Ed25519 signature (hex).
answerCoreYesThe answerCore object returned by POST /v1/licence/check.
output_sha256NoThe output_sha256 returned alongside the answer (optional; when supplied it is compared against a freshly recomputed digest).

Output Schema

NameRequiredDescriptionDefault
basisNoThe `basis` field of the response.
sig_okNoThe `sig_ok` field of the response.
verdictYesThe decision this tool returned.
algorithmNoThe `algorithm` field of the response.
sha256_okNoThe `sha256_ok` field of the response.
reproducedNoThe `reproduced` field of the response.
publicKeyHexNoThe `publicKeyHex` field of the response.
rules_sha256NoThe `rules_sha256` field of the response.
signature_okNoThe `signature_ok` field of the response.
corpusVersionNoThe `corpusVersion` field of the response.
signature_errorNoThe `signature_error` field of the response.
sha256_recomputedNoThe `sha256_recomputed` field of the response.
rules_sha256_matchNoThe `rules_sha256_match` field of the response.
output_sha256_matchNoThe `output_sha256_match` field of the response.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed16 schema fields changed
    • addedOutput schema / properties / algorithm
      Added value: +{
      +  "description": "The `algorithm` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / basis
      Added value: +{
      +  "description": "The `basis` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / corpusVersion
      Added value: +{
      +  "description": "The `corpusVersion` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / output_sha256_match
      Added value: +{
      +  "description": "The `output_sha256_match` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / publicKeyHex
      Added value: +{
      +  "description": "The `publicKeyHex` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / reproduced
      Added value: +{
      +  "description": "The `reproduced` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / rules_sha256
      Added value: +{
      +  "description": "The `rules_sha256` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / rules_sha256_match
      Added value: +{
      +  "description": "The `rules_sha256_match` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / sha256_ok
      Added value: +{
      +  "description": "The `sha256_ok` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / sha256_recomputed
      Added value: +{
      +  "description": "The `sha256_recomputed` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / sig_ok
      Added value: +{
      +  "description": "The `sig_ok` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / signature_error
      Added value: +{
      +  "description": "The `signature_error` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / signature_ok
      Added value: +{
      +  "description": "The `signature_ok` field of the response.",
      +  "type": "object"
      +}
    • removedOutput schema / properties / status
      Removed value: -{
      -  "type": "string"
      -}
    • addedOutput schema / properties / verdict
      Added value: +{
      +  "description": "The decision this tool returned.",
      +  "type": "string"
      +}
    • addedOutput schema / required
      Added value: +[
      +  "verdict"
      +]
  2. Added

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 adds real value by disclosing the verification mechanism (re-running a pure function against a signed answer) and the signature algorithm context, which annotations do not provide.

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

Conciseness4/5

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

Two compact clauses, front-loaded with the core action and immediately followed by the sibling routing. No wasted sentences, though the phrasing is slightly terse/run-on.

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 annotations covering safety, an output schema present, and 100% param coverage, the description is largely complete. It adds the point of the tool (signature verification via re-running a pure function) which is the key missing context. Minor residual gap: it doesn't say what failure/mismatch produces.

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 signature and answerCore are already documented in the schema. The description's '14 fields including algorithm, basis' describes the answer payload rather than clarifying the parameters themselves. Baseline 3 is appropriate given the schema does the heavy lifting.

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 (verify) and resource (licence status by re-running the pure function and checking a signed answer), and explicitly names the sibling check_licence_status. The 'object with 14 fields including algorithm, basis' adds shape detail, though 'the pure function' is left underspecified.

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?

Explicitly routes the agent: 'use it rather than check_licence_status for licence status specifically.' Names the alternative and the selecting condition. The qualifier 'for licence status specifically' is a bit ambiguous (it implies check_licence_status covers other domains) but the routing intent is clear.

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.