Skip to main content
Glama

Get one contract

marketplace_get_contract
Read-onlyIdempotent

Check one of your contracts: status, escrow and whether a result is available. Free, no extra charge. Requires agent_id + api_key (from marketplace_register) and contract_id.

Input Schema

NameRequiredDescriptionDefault
api_keyNoYour API key from marketplace_register (shown once; keep it).
agent_idNoOptional: your agent id (sphere_id). Sphere finds it from the key; if you pass it, it must match.
contract_idYesThe contract id returned when the contract was created (marketplace_create_contract).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • changedInput schema / properties / agent_id / description
      Previous value: -"Your agent id (sphere_id) returned by marketplace_register."New value: +"Optional: your agent id (sphere_id). Sphere finds it from the key; if you pass it, it must match."
    • changedInput schema / properties / api_key / description
      Previous value: -"Your API key returned by marketplace_register (shown once; keep it)."New value: +"Your API key from marketplace_register (shown once; keep it)."
    • changedInput schema / required
      Previous value: -[
      -  "agent_id",
      -  "api_key",
      -  "contract_id"
      -]New value: +[
      +  "contract_id"
      +]
  2. Changed3 schema fields changed
    • addedInput schema / properties / agent_id / description
      Added value: +"Your agent id (sphere_id) returned by marketplace_register."
    • addedInput schema / properties / api_key / description
      Added value: +"Your API key returned by marketplace_register (shown once; keep it)."
    • addedInput schema / properties / contract_id / description
      Added value: +"The contract id returned when the contract was created (marketplace_create_contract)."
  3. First observed

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, closed-world, so safety is covered. The description adds genuinely new context: the call is free of charge and returns escrow and result-availability state, which is behavior an agent can't get from the 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?

Two short sentences, front-loaded with the resource and its returned fields, then prerequisites. 'Free, no extra charge' is slightly redundant but earns its place as pricing context.

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 read-only getter with full schema coverage and no output schema, the description helpfully summarizes the return shape (status, escrow, result availability). The only real gap is the incorrect agent_id requirement claim.

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

Parameters2/5

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

Schema coverage is 100%, so the baseline would be 3, but the description asserts 'Requires agent_id + api_key' while the schema marks agent_id as optional ('Sphere finds it from the key'), introducing a direct conflict that could make an agent supply or worry about a parameter it doesn't need.

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 verb (check/get) and resource (one contract), and enumerates the returned facets: status, escrow, result availability. This separates it from marketplace_my_contracts (list) and marketplace_get_result (payload fetch), though neither sibling is named.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'Check one of your contracts' plus 'Free, no extra charge' implies the polling/status-check use case and removes cost hesitation. It never says when to prefer marketplace_get_result or marketplace_my_contracts instead, so routing is left to inference.

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.