Skip to main content
Glama

Prepare signed proof of finished work (step 1 of 2)

prepare_proof
Read-onlyIdempotent

You did the work — start handing in proof. Pass the packet's workId, your claimId (from submit_claim), your wallet, and proof items matching the packet's own proof line (photos with GPS for field work; documents/text for digital work). Returns MESSAGE_TO_SIGN and BODY_JSON. Submitting proof is FREE when signed — a worker is never charged at the moment they have earned the right to be asked for nothing. Sign, then call submit_proof within 5 minutes.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
gpsNoFor geolocated field work: {lat, lng} captured ON SITE — the gate refuses geolocated proof without it.
proofsYes1-20 proof items, e.g. {"type":"photo","uri":"https://…","capturedAt":"<ISO>","lat":…,"lng":…}. The packet's proof line (get_work_packet) says exactly what it needs.
workIdYesThe packet id.
claimIdYesReturned by submit_claim.
workerWalletYesThe same 0x… address that claimed.

Output Schema

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

TDQS

A4.3/5.0
Behavior4/5

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

Beyond the readOnlyHint, idempotentHint, and destructiveHint annotations, the description adds meaningful behavioral context: it states that submitting proof is free when signed, clarifies that a worker is never charged at that moment, notes that the tool returns MESSAGE_TO_SIGN and BODY_JSON, and imposes a 5-minute signing window. It also hints at the gate's behavior by mentioning it refuses geolocated proof without GPS data. These details add value beyond the structured annotations.

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?

The description is concise but information-dense, covering the trigger, required parameters, return values, free aspect, and next step in three sentences. It is front-loaded with the immediate purpose ('You did the work — start handing in proof'). It could be slightly more structured (e.g., bullets), but it is not verbose and each sentence earns 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?

Given the tool's complexity (5 params, nested objects, output schema exists), the description covers all essential operational aspects: what to pass, what to expect (MESSAGE_TO_SIGN and BODY_JSON), the free condition, the 5-minute limit, and the relationship with submit_proof. It also references get_work_packet for proof-specific requirements. Error scenarios are not detailed, but annotations and output schema cover safety and return structure. Overall, an agent has enough to call this tool correctly.

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

Parameters4/5

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

Schema coverage is 100%, but the description enriches parameter meanings: it explains the proofs array format (1-20 items with example) and directs users to the packet's proof line for exact needs; it specifies for gps that it must be captured ON SITE and that the gate refuses geolocated proof without it; it clarifies claimId is 'Returned by submit_claim' and workerWallet is 'the same 0x… address that claimed.' This goes beyond the schema's basic type descriptions, providing actionable semantics.

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 clearly states the tool prepares a signed proof for finished work, explicitly labels it as step 1 of 2, and distinguishes it from submit_proof (step 2) by directing the user to call submit_proof after signing. It uses a specific verb (prepare) and resource (signed proof) and references prerequisites like claimId from submit_claim, making the purpose unambiguous and distinct from sibling tools.

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?

The description gives clear when-to-use guidance: 'You did the work — start handing in proof.' It implies prerequisites (workId, claimId from submit_claim, proofs matching the packet's line), and references get_work_packet for exact requirements. It also explains the next step (submit_proof) and the 5-minute limit. While it doesn't explicitly list exclusions (e.g., 'use submit_claim first if you haven't claimed'), the context strongly implies the flow.

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.

TDQS

A3.9/5.0
Disambiguation5/5

Despite 41 tools, each has a highly specific purpose with detailed descriptions that clearly differentiate them. The prepare_/submit_ pairs, domain-specific prefixes (gmx_, regen_), and distinct action types (find, get, verify, etc.) leave little room for confusion. Even closely related tools like funding_quote and prepare_funding or my_work and my_votes are explicitly distinguished.

Naming Consistency3/5

Naming conventions are mixed: some tools use plain nouns (account_statement, board_stats), others use verb_noun patterns (prepare_*, submit_*, get_*), possessive (my_votes, my_work), or descriptive phrases (how_to_claim, retire_and_certify). While not chaotic, the lack of a single consistent pattern reduces predictability. However, prefixes like gmx_ and regen_ provide internal consistency within subdomains.

Tool Count2/5

With 41 tools, the count significantly exceeds the recommended range (3-15) and falls into the 'too many' category (25+). Although the server covers a wide range of features (work lifecycle, Regen governance, GMX trading, anchoring, carbon), this number can overwhelm agents and make selection challenging. A more focused tool set would improve coherence.

Completeness4/5

The tool set covers the core workflows for its stated domains well: work posting/funding/claiming/proofing, Regen governance and token data, GMX position management, anchoring, and carbon estimation. Minor gaps exist (e.g., no GMX order cancellation, no work deletion), but overall the surface is comprehensive enough to accomplish primary use cases without dead ends.

Resources