Skip to main content
Glama

Synthex Forge — x402 Paid Agent Services

Get Quota Preflight

get_quota_preflight
Read-onlyIdempotent

Whether a call fits a remaining quota, before you spend it. use it rather than get_budget_preflight for quota preflight, not budget preflight; an object with 61 fields including agentId, agent_id. $0.01 USDC.

Input Schema

NameRequiredDescriptionDefault
callsNoThe calls this operation operates on. See the schema for its type and whether it is required.
quotaNoThe quota this operation operates on. See the schema for its type and whether it is required.
targetNoThe target the operation acts on — a host, a service or an endpoint.
agentIdNoThe agentId this operation operates on. See the schema for its type and whether it is required.
requestIdNoA caller-supplied idempotency key. The same key returns the same result instead of charging twice.

Output Schema

NameRequiredDescriptionDefault
idNoThe `id` field of the response.
okYesWhether the operation succeeded.
kindNoThe `kind` field of the response.
nameNoThe `name` field of the response.
noteNoA note on how the answer was produced.
callsNoThe `calls` field of the response.
errorNoThe machine-readable error code, when the operation failed.
quotaNoThe `quota` field of the response.
checksNoThe individual checks that were run.
detailYesHuman-readable explanation of the verdict.
reasonNoWhy the verdict was reached.
replayNoThe `replay` field of the response.
sha256NoThe `sha256` field of the response.
statusNoThe status of the operation.
targetNoThe `target` field of the response.
agentIdNoThe `agentId` field of the response.
agent_idNoThe `agent_id` field of the response.
decisionNoThe `decision` field of the response.
findingsNoThe `findings` field of the response.
maxCallsNoThe `maxCalls` field of the response.
reservedNoThe `reserved` field of the response.
signedByNoThe `signedBy` field of the response.
algorithmNoThe `algorithm` field of the response.
assuranceNoThe `assurance` field of the response.
expiresAtNoThe `expiresAt` field of the response.
grantedAtNoThe `grantedAt` field of the response.
max_callsNoThe `max_calls` field of the response.
requestIdNoThe `requestId` field of the response.
usedCallsNoThe `usedCalls` field of the response.
windowEndNoThe `windowEnd` field of the response.
ed25519SigNoThe `ed25519Sig` field of the response.
used_callsNoThe `used_calls` field of the response.
window_endNoThe `window_end` field of the response.
checksTotalNoThe `checksTotal` field of the response.
evaluatedAtNoThe `evaluatedAt` field of the response.
reservationNoThe `reservation` field of the response.
windowStartNoThe `windowStart` field of the response.
checks_totalNoThe `checks_total` field of the response.
coverageGapsNoThe `coverageGaps` field of the response.
evaluated_atNoThe `evaluated_at` field of the response.
evidenceCoreNoThe `evidenceCore` field of the response.
publicKeyHexNoThe `publicKeyHex` field of the response.
window_startNoThe `window_start` field of the response.
coverage_gapsNoThe `coverage_gaps` field of the response.
currentWindowNoThe `currentWindow` field of the response.
periodSecondsNoThe `periodSeconds` field of the response.
callsRequestedNoThe `callsRequested` field of the response.
checksObservedNoThe `checksObserved` field of the response.
period_secondsNoThe `period_seconds` field of the response.
profileVersionNoVersion of the answer profile.
remainingCallsNoThe `remainingCalls` field of the response.
requestedCallsNoThe `requestedCalls` field of the response.
calls_requestedNoThe `calls_requested` field of the response.
canonicalSha256NoThe `canonicalSha256` field of the response.
checks_observedNoThe `checks_observed` field of the response.
profile_versionNoVersion of the answer profile.
remaining_callsNoThe `remaining_calls` field of the response.
reproducibilityNoThe `reproducibility` field of the response.
storedUsedCallsNoThe `storedUsedCalls` field of the response.
windowIsCurrentNoThe `windowIsCurrent` field of the response.
attestedWindowStartNoThe `attestedWindowStart` field of the response.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed62 schema fields changed
    • addedOutput schema / properties / agentId
      Added value: +{
      +  "description": "The `agentId` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / agent_id
      Added value: +{
      +  "description": "The `agent_id` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / algorithm
      Added value: +{
      +  "description": "The `algorithm` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / assurance
      Added value: +{
      +  "description": "The `assurance` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / attestedWindowStart
      Added value: +{
      +  "description": "The `attestedWindowStart` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / calls
      Added value: +{
      +  "description": "The `calls` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / callsRequested
      Added value: +{
      +  "description": "The `callsRequested` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / calls_requested
      Added value: +{
      +  "description": "The `calls_requested` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / canonicalSha256
      Added value: +{
      +  "description": "The `canonicalSha256` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / checks
      Added value: +{
      +  "description": "The individual checks that were run.",
      +  "items": {
      +    "description": "One record.",
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • addedOutput schema / properties / checksObserved
      Added value: +{
      +  "description": "The `checksObserved` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / checksTotal
      Added value: +{
      +  "description": "The `checksTotal` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / checks_observed
      Added value: +{
      +  "description": "The `checks_observed` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / checks_total
      Added value: +{
      +  "description": "The `checks_total` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / coverageGaps
      Added value: +{
      +  "description": "The `coverageGaps` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / coverage_gaps
      Added value: +{
      +  "description": "The `coverage_gaps` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / currentWindow
      Added value: +{
      +  "description": "The `currentWindow` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / decision
      Added value: +{
      +  "description": "The `decision` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / detail
      Added value: +{
      +  "description": "Human-readable explanation of the verdict.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / ed25519Sig
      Added value: +{
      +  "description": "The `ed25519Sig` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / error
      Added value: +{
      +  "description": "The machine-readable error code, when the operation failed.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / evaluatedAt
      Added value: +{
      +  "description": "The `evaluatedAt` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / evaluated_at
      Added value: +{
      +  "description": "The `evaluated_at` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / evidenceCore
      Added value: +{
      +  "description": "The `evidenceCore` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / expiresAt
      Added value: +{
      +  "description": "The `expiresAt` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / findings
      Added value: +{
      +  "description": "The `findings` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / grantedAt
      Added value: +{
      +  "description": "The `grantedAt` 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 / maxCalls
      Added value: +{
      +  "description": "The `maxCalls` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / max_calls
      Added value: +{
      +  "description": "The `max_calls` 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 / ok
      Added value: +{
      +  "description": "Whether the operation succeeded.",
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / periodSeconds
      Added value: +{
      +  "description": "The `periodSeconds` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / period_seconds
      Added value: +{
      +  "description": "The `period_seconds` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / profileVersion
      Added value: +{
      +  "description": "Version of the answer profile.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / profile_version
      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 / quota
      Added value: +{
      +  "description": "The `quota` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / reason
      Added value: +{
      +  "description": "Why the verdict was reached.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / remainingCalls
      Added value: +{
      +  "description": "The `remainingCalls` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / remaining_calls
      Added value: +{
      +  "description": "The `remaining_calls` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / replay
      Added value: +{
      +  "description": "The `replay` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / reproducibility
      Added value: +{
      +  "description": "The `reproducibility` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / requestId
      Added value: +{
      +  "description": "The `requestId` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / requestedCalls
      Added value: +{
      +  "description": "The `requestedCalls` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / reservation
      Added value: +{
      +  "description": "The `reservation` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / reserved
      Added value: +{
      +  "description": "The `reserved` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / sha256
      Added value: +{
      +  "description": "The `sha256` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / signedBy
      Added value: +{
      +  "description": "The `signedBy` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / status / description
      Added value: +"The status of the operation."
    • addedOutput schema / properties / storedUsedCalls
      Added value: +{
      +  "description": "The `storedUsedCalls` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / target
      Added value: +{
      +  "description": "The `target` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / usedCalls
      Added value: +{
      +  "description": "The `usedCalls` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / used_calls
      Added value: +{
      +  "description": "The `used_calls` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / windowEnd
      Added value: +{
      +  "description": "The `windowEnd` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / windowIsCurrent
      Added value: +{
      +  "description": "The `windowIsCurrent` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / windowStart
      Added value: +{
      +  "description": "The `windowStart` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / window_end
      Added value: +{
      +  "description": "The `window_end` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / window_start
      Added value: +{
      +  "description": "The `window_start` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / required
      Added value: +[
      +  "detail",
      +  "ok"
      +]
  2. Added

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds genuinely useful context — a $0.01 USDC charge for a read-only check — but the return note ('61 fields including agentId, agent_id') is confused and duplicative, and no auth or rate-limit behavior is described.

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?

The core purpose is front-loaded, but the sentence degenerates into a run-on with a semicolon splice, and the 'agentId, agent_id' fragment is noise that does not earn its place.

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 and an output schema covering return shape, the description needs only purpose, alternative, and cost — all present. Only the muddled return note and missing auth/cost-mechanism detail keep it from a 5.

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% with descriptions on all five parameters, so the schema carries the semantics. The description only echoes the agentId field and adds no format or usage meaning beyond it; baseline 3 applies.

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 check — whether a call fits remaining quota before spending it — and names the sibling it is not (get_budget_preflight). The phrasing is slightly garbled but an agent can distinguish it from the budget sibling without opening the schema.

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 this rather than get_budget_preflight for quota preflight, not budget preflight. This is a clear when/when-not rule, though it lacks prerequisites or exclusions beyond that single comparison.

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.