Skip to main content
Glama

Submit the request signed by its own requester

submit_request

Relay BODY_JSON from prepare_request, unchanged, with the caller's personal_sign signature over MESSAGE_TO_SIGN to the existing /labor/request gate. Never hold or sign a key or send payment. The gate validates wallet ownership and either records a demand request, resolves it to an existing or newly posted governed packet, or returns a blocker. A request is not a purchase order, funding commitment, employment agreement, permission to work, or verified outcome. If a relay times out, first read existing requests for that wallet rather than blindly submitting again. Cost and signer: free, no gas; signed by the person's own wallet or passkey, and the house never holds a key.

Input Schema

NameRequiredDescriptionDefault
bodyJsonYesThe exact BODY_JSON from prepare_request, unchanged.
signatureYesThe caller's 0x personal_sign signature over MESSAGE_TO_SIGN. Never the key.

Output Schema

NameRequiredDescriptionDefault
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.4/5.0
Behavior5/5

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

Goes well beyond the annotations: discloses cost (free, no gas), custody model (house never holds a key; signed by the person's own wallet or passkey), the gate's validation behavior, and the three possible outcomes (recorded request, resolved to an existing/new governed packet, or blocker). The retry warning is especially valuable given idempotentHint=false, where a blind resubmit could duplicate.

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?

Front-loaded with the action and the exact payload/signature contract before any caveats, and the timeout rule is placed where it will be read. It is dense but nearly every sentence carries operational weight; the disclaimer about what a request is not is the one partially expendable clause.

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

Completeness5/5

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

With an output schema available, the description needn't explain return shapes, and it covers the remaining gaps an agent needs: precondition, custody/signing model, cost, failure/blocker behavior, and retry safety. Nothing material is missing for correct invocation.

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% and both parameters are already documented, so the schema does the heavy lifting. The description reinforces the 'unchanged' constraint on bodyJson and that the signature is personal_sign over MESSAGE_TO_SIGN and never the key, but adds no new format or syntax detail beyond the schema.

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

Purpose5/5

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

Specific verb (relay/submit) plus specific resource (BODY_JSON from prepare_request to the /labor/request gate), and it names its upstream companion tool explicitly, so the prepare_request -> submit_request pairing is unmistakable. It is clearly distinguished from the many other submit_* siblings by the target endpoint and payload contract.

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 states the precondition (payload must come from prepare_request, unchanged) and gives a concrete when-not rule: on timeout, read existing requests for that wallet rather than resubmitting. It stops short of naming the specific sibling to read (request_status vs. my_work), so the alternative is implied rather than explicit.

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.

Resources