Skip to main content
Glama

Synthex Forge — x402 Paid Agent Services

Assess Tool Verdict

assess_tool_verdict
Read-onlyIdempotent

Is this MCP tool safe to grant?. use it rather than assess_endpoint_verdict for verdict specifically; an object with 37 fields including algorithm, as_of. $0.02 USDC.

Input Schema

NameRequiredDescriptionDefault
tool_nameYesThe tool name this operation operates on. See the schema for its type and whether it is required.
server_urlYesThe server url this operation operates on. See the schema for its type and whether it is required.

Output Schema

NameRequiredDescriptionDefault
kindNoThe `kind` field of the response.
as_ofNoThe date the answer is computed as of.
routeNoThe `route` field of the response.
valueNoThe `value` field of the response.
detailYesHuman-readable explanation of the verdict.
key_idNoThe `key_id` field of the response.
limitsNoThe `limits` field of the response.
probesNoThe `probes` field of the response.
sha256NoThe `sha256` field of the response.
reasonsNoThe `reasons` field of the response.
serviceNoThe `service` field of the response.
subjectNoThe `subject` field of the response.
verdictYesThe decision this tool returned.
coverageNoHow much of the underlying corpus the answer is based on.
evidenceNoThe `evidence` field of the response.
algorithmNoThe `algorithm` field of the response.
price_usdNoThe price of the operation that was paid.
signatureYesThe Ed25519 signature over the evidence core, base64-encoded.
tool_nameNoThe `tool_name` field of the response.
disclaimerNoThe `disclaimer` field of the response.
public_keyNoThe `public_key` field of the response.
risk_flagsNoThe `risk_flags` field of the response.
server_urlNoThe `server_url` field of the response.
timeout_msNoThe `timeout_ms` field of the response.
permissionsNoThe `permissions` field of the response.
signed_overNoThe `signed_over` field of the response.
side_effectsNoThe `side_effects` field of the response.
writes_stateNoThe `writes_state` field of the response.
coverage_gapsNoThe `coverage_gaps` field of the response.
output_sha256YesSHA-256 hex digest of the canonical evidence core.
network_egressNoThe `network_egress` field of the response.
profile_versionNoVersion of the answer profile.
minimum_requiredNoThe `minimum_required` field of the response.
deployment_contextNoThe `deployment_context` field of the response.
max_calls_per_hourNoThe `max_calls_per_hour` field of the response.
declared_permissionsNoThe `declared_permissions` field of the response.
observed_side_effectsNoThe `observed_side_effects` field of the response.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed39 schema fields changed
    • addedOutput schema / properties / algorithm
      Added value: +{
      +  "description": "The `algorithm` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / as_of
      Added value: +{
      +  "description": "The date the answer is computed as of.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / coverage
      Added value: +{
      +  "description": "How much of the underlying corpus the answer is based on.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / coverage_gaps
      Added value: +{
      +  "description": "The `coverage_gaps` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / declared_permissions
      Added value: +{
      +  "description": "The `declared_permissions` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / deployment_context
      Added value: +{
      +  "description": "The `deployment_context` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / detail
      Added value: +{
      +  "description": "Human-readable explanation of the verdict.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / disclaimer
      Added value: +{
      +  "description": "The `disclaimer` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / evidence
      Added value: +{
      +  "description": "The `evidence` 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 / limits
      Added value: +{
      +  "description": "The `limits` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / max_calls_per_hour
      Added value: +{
      +  "description": "The `max_calls_per_hour` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / minimum_required
      Added value: +{
      +  "description": "The `minimum_required` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / network_egress
      Added value: +{
      +  "description": "The `network_egress` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / observed_side_effects
      Added value: +{
      +  "description": "The `observed_side_effects` 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 / permissions
      Added value: +{
      +  "description": "The `permissions` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / price_usd
      Added value: +{
      +  "description": "The price of the operation that was paid.",
      +  "type": "number"
      +}
    • addedOutput schema / properties / probes
      Added value: +{
      +  "description": "The `probes` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / profile_version
      Added value: +{
      +  "description": "Version of the answer profile.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / public_key
      Added value: +{
      +  "description": "The `public_key` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / reasons
      Added value: +{
      +  "description": "The `reasons` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / risk_flags
      Added value: +{
      +  "description": "The `risk_flags` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / route
      Added value: +{
      +  "description": "The `route` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / server_url
      Added value: +{
      +  "description": "The `server_url` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / service
      Added value: +{
      +  "description": "The `service` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / sha256
      Added value: +{
      +  "description": "The `sha256` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / side_effects
      Added value: +{
      +  "description": "The `side_effects` 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 / signed_over
      Added value: +{
      +  "description": "The `signed_over` field of the response.",
      +  "type": "object"
      +}
    • removedOutput schema / properties / status
      Removed value: -{
      -  "type": "string"
      -}
    • addedOutput schema / properties / subject
      Added value: +{
      +  "description": "The `subject` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / timeout_ms
      Added value: +{
      +  "description": "The `timeout_ms` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / tool_name
      Added value: +{
      +  "description": "The `tool_name` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / value
      Added value: +{
      +  "description": "The `value` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / verdict
      Added value: +{
      +  "description": "The decision this tool returned.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / writes_state
      Added value: +{
      +  "description": "The `writes_state` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / required
      Added value: +[
      +  "detail",
      +  "output_sha256",
      +  "signature",
      +  "verdict"
      +]
  2. Added

TDQS

B3/5.0
Behavior3/5

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

Annotations already declare readOnly/idempotent/non-destructive/closed-world, so safety behavior is covered structurally. The description adds two things annotations can't: a cost of $0.02 USDC and a hint that the response is large (37 fields). It says nothing about latency, failure modes, or whether the verdict is cached or deterministic across calls.

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?

Very short, but the structure is loose: it opens with a question, then a routing aside, then a return-shape note, then pricing, joined by semicolons. Nothing is wasted outright, but the cost and output-shape fragments read like stitched-together notes rather than a front-loaded definition.

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 fields need not be described) and annotations cover safety, which lowers the bar. Still missing for a paid, verdict-producing tool: what the verdict values mean, whether calling it twice on the same server_url+tool_name is billed twice, and any dependency on prior scan tools like run_mcp_security_scan.

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 100% for both required parameters (tool_name, server_url), so the schema carries the load. The description adds no format hints — e.g. whether server_url must be a full URL with scheme, or whether tool_name must match a discovered name exactly — so it neither helps nor harms beyond baseline.

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

Purpose3/5

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

The description frames the purpose as a question ("Is this MCP tool safe to grant?") rather than a verb+resource statement, but the intent — produce a safety verdict for a named MCP tool — is recoverable. Naming assess_endpoint_verdict as the neighboring tool helps distinguish scope, though it never contrasts with assess_tool_permission or audit_tool_poisoning, which also cover MCP tool safety.

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?

It gives one explicit alternative (use this rather than assess_endpoint_verdict "for verdict specifically"), which is genuine routing guidance. There are no when-not conditions, no prerequisites (e.g. does server_url need to be reachable?), and no statement of what inputs produce a valid verdict.

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.