Skip to main content
Glama

Submit the signed offer (step 2 of 2)

submit_bid

Complete the bid: pass workId, the BODY_JSON from prepare_bid UNCHANGED, and the signature your wallet produced over MESSAGE_TO_SIGN. Relays to the same public bid gate any HTTP client uses; this server holds no keys and no funds. Free with a valid signature. Returns your recorded offer; the creator accepts or declines it later — work_status and my_work show what happened. 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
workIdYesThe packet id.
bodyJsonYesThe exact BODY_JSON string from prepare_bid, unchanged.
signatureYesThe 0x… personal_sign output over MESSAGE_TO_SIGN.

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/5.0
Behavior4/5

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

Beyond annotations it discloses real behavioral context: the call is a pure relay to a public gate, the server holds no keys or funds, there is no gas cost, signing is done by the user's own wallet or passkey, and the offer is only recorded — the creator accepts or declines later. What it omits is the consequence of idempotentHint=false: nothing warns that a retry or double-submit may create a duplicate offer.

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 action and inputs are front-loaded, which is good, but the closing sentence duplicates earlier content: 'free' appears twice, and 'this server holds no keys and no funds' is restated as 'the house never holds a key.' That repetition in a short description is wasted space an agent must parse.

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?

For a non-idempotent, open-world write with an output schema, the description covers custody, cost, signing identity, and the downstream lifecycle (creator accepts/declines, check work_status/my_work) — more than enough to call it. The remaining gap is retry/failure semantics for a non-idempotent mutation.

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 the description largely restates schema text ('BODY_JSON from prepare_bid UNCHANGED', 'signature your wallet produced over MESSAGE_TO_SIGN'). The 'UNCHANGED' emphasis is a useful warning about byte-exactness, but it does not add format, ordering, or validation detail beyond the schema, so the baseline of 3 applies.

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?

The description names a specific verb+resource ('Complete the bid') and states exactly which inputs finalize it, plus the value proposition that it relays to the same public bid gate any HTTP client uses. Its position in the two-step prepare_bid → submit_bid sequence is unambiguous, and it clearly is not one of the many other submit_* siblings (submit_outcome_bid, submit_direct_offer).

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 gives a clear precondition (bodyJson must be the exact BODY_JSON from prepare_bid, unchanged, plus the signature over MESSAGE_TO_SIGN) and routes post-submission questions to work_status and my_work. It does not state when-not to use it or what to do on a failed/duplicate submission, so it falls short of a full when/when-not/alternatives guide.

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