Skip to main content
Glama

Synthex Forge — x402 Paid Agent Services

Agent Security Assessment

agent_security_assessment
Read-onlyIdempotent

The question 'is this agent safe to deploy' is one decision, not three purchases. part of the surface; a signed, reproducible answer. $2 USDC.

Input Schema

NameRequiredDescriptionDefault
prompt.textNo[POST /v1/security/prompt-injection]
assessment.taskNo[POST /v1/security/agent-scan]
assessment.textNo[POST /v1/security/agent-scan]
assessment.filesNo[POST /v1/security/agent-scan]
credentials.textNo[POST /v1/security/secret-exposure]
assessment.promptNo[POST /v1/security/agent-scan]
credentials.filesNo[POST /v1/security/secret-exposure]
assessment.subjectNo[POST /v1/security/agent-scan]
prompt.tool_resultsNo[POST /v1/security/prompt-injection]
assessment.permissionsNo[POST /v1/security/agent-scan]
assessment.tool_resultsNo[POST /v1/security/agent-scan]
prompt.tool_descriptionsNo[POST /v1/security/prompt-injection]
assessment.tool_definitionsNo[POST /v1/security/agent-scan]
assessment.tool_descriptionsNo[POST /v1/security/agent-scan]

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -{
      -  "properties": {
      -    "composite": {
      -      "description": "The name of the composite that produced this answer.",
      -      "type": "string"
      -    },
      -    "detail": {
      -      "description": "The human-readable explanation of an early stop.",
      -      "type": "string"
      -    },
      -    "error": {
      -      "description": "Present only when the composite stopped early (unpaid, or a step failed).",
      -      "type": "string"
      -    },
      -    "skipped": {
      -      "description": "Steps that did NOT run, each naming the reason. A step skipped for want of arguments is reported, never silently dropped.",
      -      "items": {
      -        "properties": {
      -          "body_from": {
      -            "type": "string"
      -          },
      -          "reason": {
      -            "type": "string"
      -          },
      -          "route": {
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "reason"
      -        ],
      -        "type": "object"
      -      },
      -      "type": "array"
      -    },
      -    "step_count": {
      -      "description": "How many steps ran.",
      -      "type": "integer"
      -    },
      -    "steps": {
      -      "description": "One entry per step that ran, each carrying its route, its HTTP status and its body.",
      -      "items": {
      -        "properties": {
      -          "body": {
      -            "type": "object"
      -          },
      -          "route": {
      -            "type": "string"
      -          },
      -          "status": {
      -            "type": "integer"
      -          }
      -        },
      -        "required": [
      -          "route",
      -          "status"
      -        ],
      -        "type": "object"
      -      },
      -      "type": "array"
      -    },
      -    "verdict": {
      -      "description": "The folded verdict: the WEAKEST of the steps' verdicts, so a partial answer cannot read as a whole one.",
      -      "type": "string"
      -    }
      -  },
      -  "required": [
      -    "composite"
      -  ],
      -  "type": "object"
      -}New value: +null
  2. Added

TDQS

D1.8/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint, and non-destructive behavior, so the safety profile is covered. The description adds one genuinely useful behavioral fact — the $2 USDC cost, implying a paid call — but says nothing about what 'signed, reproducible answer' entails, latency, or failure modes, and the prose is too fragmented to rely on.

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

Conciseness2/5

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

The text is short but not meaningfully concise — it is a broken fragment with a dangling clause ('part of the surface') and no front-loaded statement of what the tool does. Brevity here comes from missing content rather than discipline.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 14 optional parameters, no output schema, and three distinct endpoint groups implied by the schema, the description should clarify what gets returned and how the three sub-scans combine into 'one decision.' It instead offers a cryptic slogan, leaving the caller unable to predict results or select the right inputs.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is nominally 100%, but the 'descriptions' are merely endpoint tags like '[POST /v1/security/agent-scan]' that convey no meaning about what each of the 14 parameters expects. The tool description adds zero parameter guidance, leaving an agent unable to infer how assessment.* versus prompt.* versus credentials.* fields differ in purpose.

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

Purpose2/5

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

The sentence 'The question is this agent safe to deploy is one decision, not three purchases' gestures at a unified security verdict but never states a verb or what the tool actually returns. The middle fragment ('part of the surface; a signed, reproducible answer') is syntactically broken, and nothing distinguishes it from near-identical siblings such as run_agent_security_scan, agent_threat_assessment, or run_mcp_security_scan.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no statement of when to call this instead of the many alternative security tools (scan_prompt_injection, scan_secret_exposure, agent_permission_audit). The only actionable cue is a price, not a condition for use.

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.