Skip to main content
Glama

Synthex Forge — x402 Paid Agent Services

Register Containment Policy

register_containment_policy
Destructive

Containment Register. use it rather than assess_mandate_compliance for containment policy, not mandate compliance; an object with 56 fields including action, actionType. $0.25 USDC.

Input Schema

NameRequiredDescriptionDefault
rulesNoThe rules this operation operates on. See the schema for its type and whether it is required.
policyNoThe policy document or policy id the decision is evaluated against.
agent_didNoThe agent did this operation operates on. See the schema for its type and whether it is required.
rule_signaturesNoThe rule signatures this operation operates on. See the schema for its type and whether it is required.
emergency_contact_didNoThe emergency contact did this operation operates on. See the schema for its type and whether it is required.

Output Schema

NameRequiredDescriptionDefault
idNoThe `id` field of the response.
kindNoThe `kind` field of the response.
nameNoThe `name` field of the response.
noteNoA note on how the answer was produced.
typeNoThe `type` field of the response.
whenNoThe `when` field of the response.
rulesNoThe rules evaluated.
actionNoThe `action` field of the response.
detailYesHuman-readable explanation of the verdict.
policyNoThe `policy` field of the response.
ruleIdNoThe `ruleId` field of the response.
sha256NoThe `sha256` field of the response.
signedNoThe `signed` field of the response.
targetNoThe `target` field of the response.
channelNoThe `channel` field of the response.
framingNoThe `framing` field of the response.
metricsNoThe `metrics` field of the response.
presentNoThe `present` field of the response.
summaryNoOne-line summary of the answer.
verdictYesThe decision this tool returned.
versionNoThe `version` field of the response.
agentDidNoThe `agentDid` field of the response.
coverageNoHow much of the underlying corpus the answer is based on.
signedByNoThe `signedBy` field of the response.
algorithmNoThe `algorithm` field of the response.
conditionNoThe `condition` field of the response.
directiveNoThe `directive` field of the response.
readinessNoThe `readiness` field of the response.
rules_refNoThe `rules_ref` field of the response.
actionTypeNoThe `actionType` field of the response.
assessedAtNoThe `assessedAt` field of the response.
ed25519SigNoThe `ed25519Sig` field of the response.
ruleSha256NoThe `ruleSha256` field of the response.
evidenceCoreNoThe `evidenceCore` field of the response.
observationsNoThe `observations` field of the response.
publicKeyHexNoThe `publicKeyHex` field of the response.
relaySignalsNoThe `relaySignals` field of the response.
rules_signedNoThe `rules_signed` field of the response.
signed_rulesNoThe `signed_rules` field of the response.
verdictLevelNoThe `verdictLevel` field of the response.
rules_skippedNoThe `rules_skipped` field of the response.
evidenceDigestNoThe `evidenceDigest` field of the response.
policy_presentNoThe `policy_present` field of the response.
readinessLevelNoThe `readinessLevel` field of the response.
rules_unsignedNoThe `rules_unsigned` field of the response.
canonicalSha256NoThe `canonicalSha256` field of the response.
contact_presentNoThe `contact_present` field of the response.
relayed_signalsNoThe `relayed_signals` field of the response.
reproducibilityNoThe `reproducibility` field of the response.
rules_registeredNoThe `rules_registered` field of the response.
verificationHintNoThe `verificationHint` field of the response.
agent_did_presentNoThe `agent_did_present` field of the response.
authorityDisclaimerNoThe `authorityDisclaimer` field of the response.
contact_did_presentNoThe `contact_did_present` field of the response.
emergencyContactDidNoThe `emergencyContactDid` field of the response.
holds_kill_switch_authorityNoThe `holds_kill_switch_authority` field of the response.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed58 schema fields changed
    • addedOutput schema / properties / action
      Added value: +{
      +  "description": "The `action` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / actionType
      Added value: +{
      +  "description": "The `actionType` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / agentDid
      Added value: +{
      +  "description": "The `agentDid` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / agent_did_present
      Added value: +{
      +  "description": "The `agent_did_present` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / algorithm
      Added value: +{
      +  "description": "The `algorithm` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / assessedAt
      Added value: +{
      +  "description": "The `assessedAt` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / authorityDisclaimer
      Added value: +{
      +  "description": "The `authorityDisclaimer` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / canonicalSha256
      Added value: +{
      +  "description": "The `canonicalSha256` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / channel
      Added value: +{
      +  "description": "The `channel` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / condition
      Added value: +{
      +  "description": "The `condition` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / contact_did_present
      Added value: +{
      +  "description": "The `contact_did_present` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / contact_present
      Added value: +{
      +  "description": "The `contact_present` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / coverage
      Added value: +{
      +  "description": "How much of the underlying corpus the answer is based on.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / detail
      Added value: +{
      +  "description": "Human-readable explanation of the verdict.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / directive
      Added value: +{
      +  "description": "The `directive` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / ed25519Sig
      Added value: +{
      +  "description": "The `ed25519Sig` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / emergencyContactDid
      Added value: +{
      +  "description": "The `emergencyContactDid` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / evidenceCore
      Added value: +{
      +  "description": "The `evidenceCore` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / evidenceDigest
      Added value: +{
      +  "description": "The `evidenceDigest` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / framing
      Added value: +{
      +  "description": "The `framing` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / holds_kill_switch_authority
      Added value: +{
      +  "description": "The `holds_kill_switch_authority` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / id
      Added value: +{
      +  "description": "The `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 / metrics
      Added value: +{
      +  "description": "The `metrics` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / name
      Added value: +{
      +  "description": "The `name` 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 / observations
      Added value: +{
      +  "description": "The `observations` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / policy
      Added value: +{
      +  "description": "The `policy` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / policy_present
      Added value: +{
      +  "description": "The `policy_present` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / present
      Added value: +{
      +  "description": "The `present` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / publicKeyHex
      Added value: +{
      +  "description": "The `publicKeyHex` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / readiness
      Added value: +{
      +  "description": "The `readiness` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / readinessLevel
      Added value: +{
      +  "description": "The `readinessLevel` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / relaySignals
      Added value: +{
      +  "description": "The `relaySignals` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / relayed_signals
      Added value: +{
      +  "description": "The `relayed_signals` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / reproducibility
      Added value: +{
      +  "description": "The `reproducibility` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / ruleId
      Added value: +{
      +  "description": "The `ruleId` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / ruleSha256
      Added value: +{
      +  "description": "The `ruleSha256` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / rules
      Added value: +{
      +  "description": "The rules evaluated.",
      +  "items": {
      +    "description": "One record.",
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • addedOutput schema / properties / rules_ref
      Added value: +{
      +  "description": "The `rules_ref` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / rules_registered
      Added value: +{
      +  "description": "The `rules_registered` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / rules_signed
      Added value: +{
      +  "description": "The `rules_signed` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / rules_skipped
      Added value: +{
      +  "description": "The `rules_skipped` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / rules_unsigned
      Added value: +{
      +  "description": "The `rules_unsigned` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / sha256
      Added value: +{
      +  "description": "The `sha256` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / signed
      Added value: +{
      +  "description": "The `signed` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / signedBy
      Added value: +{
      +  "description": "The `signedBy` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / signed_rules
      Added value: +{
      +  "description": "The `signed_rules` field of the response.",
      +  "type": "object"
      +}
    • removedOutput schema / properties / status
      Removed value: -{
      -  "type": "string"
      -}
    • addedOutput schema / properties / summary
      Added value: +{
      +  "description": "One-line summary of the answer.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / target
      Added value: +{
      +  "description": "The `target` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / type
      Added value: +{
      +  "description": "The `type` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / verdict
      Added value: +{
      +  "description": "The decision this tool returned.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / verdictLevel
      Added value: +{
      +  "description": "The `verdictLevel` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / verificationHint
      Added value: +{
      +  "description": "The `verificationHint` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / version
      Added value: +{
      +  "description": "The `version` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / when
      Added value: +{
      +  "description": "The `when` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / required
      Added value: +[
      +  "detail",
      +  "verdict"
      +]
  2. Added

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare the tool is a non-idempotent, destructive write, so the core risk profile is known without the description. The description does add one piece of genuinely useful context that annotations cannot convey: the "$0.25 USDC" cost of invoking it. It says nothing about irreversibility, required permissions, or what the 56-field object refers to, leaving the destructive semantics unexplained.

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

Conciseness5/5

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

It is only two sentences and the routing instruction (the most decision-relevant part) is delivered immediately. There is no padding; the ambiguity comes from under-specification, not verbosity.

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?

This is a destructive, non-idempotent, paid mutation tool, and the description never says what registering a containment policy produces or what state it changes. An output schema exists so return shape needn't be spelled out, but the dangling "56 fields including action, actionType" claim is unexplained and the cost disclosure is the only substantive gap it fills.

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 five parameters (rules, policy, agent_did, rule_signatures, emergency_contact_did) are already documented, and the description adds nothing about any of them. Worse, the fields it does name (action, actionType) are not among the inputs, which is distracting rather than informative. Baseline 3 per the coverage rule.

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?

"Containment Register" largely restates the tool name rather than stating a verb and object, and the fragment "an object with 56 fields including action, actionType" is never explained. It does, however, carve out the domain against a sibling ("for containment policy, not mandate compliance"), so an agent can place it roughly, even if it can't describe what registering actually does.

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 names a concrete alternative and the condition that selects it: use this rather than `assess_mandate_compliance` for containment policy, not mandate compliance. That is an explicit routing rule. It gives no when-not guidance beyond that single comparison, which keeps it short of a 5.

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.