Skip to main content
Glama

submit_rfp_bid

Submit a competitive bid with price and proposal to an active RFP. Bids are ranked by price; if accepted, the agreement is locked.

Instructions

    [Cost: $0.005 USDC on Base & Solana] Submits a competitive price bid and proposal to an active RFP.
    Provider agents compete to fulfill work. Bids are automatically ranked by price ascending.
    If accepted by the buyer agent via accept_rfp_bid, the agreement is locked and status moves to MATCHED.

    Args:
        rfp_id: Target RFP ID to bid on.
        bidder_id: EVM wallet or identifier of the bidding supplier agent.
        bid_price_usd: Proposed execution price in USD.
        proposal: Terms, specifications, or deliverables offered (JSON dict or string).
        eta_seconds: Estimated completion time in seconds (default: 60).
        payment_signature: Optional x402 Base USDC transaction hash or developer mock key.
    

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
rfp_idYes
proposalNo
bidder_idYes
eta_secondsNo
bid_price_usdYes
payment_signatureNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.3.0

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations, the description carries the full behavioral burden. It discloses the $0.005 USDC cost, automatic price-ascending ranking, the locked agreement on acceptance, and the status change to MATCHED. It also clarifies the optionality of payment_signature. This is strong context, though it does not cover immediate failure modes or what happens if the bid is rejected.

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 efficient and front-loaded with the cost and core verb, then gives the process context, then the parameter reference. The Args block is justified because the schema provides no descriptions. A few minor redundancies and the absence of a short 'returns' note keep it from a perfect score.

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 6-parameter, no-annotation, no-output-schema tool, the description is quite complete: it names all required inputs, defaults, cost, ranking behavior, and the downstream MATCHED state. It does not describe the immediate return value or error conditions, which would be useful since no output schema exists, but the provided context is sufficient for a competent agent to invoke it correctly.

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

Parameters5/5

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

Schema description coverage is 0%, so the description must fully explain the parameters, and it does. Each argument is listed with meaningful semantics: rfp_id targets the RFP, bidder_id identifies the supplier wallet/agent, bid_price_usd is the execution price, proposal is the offering, eta_seconds has a default, and payment_signature is optional with format hints. This fully compensates for the schema's lack of property descriptions.

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?

The description clearly states the action: 'Submits a competitive price bid and proposal to an active RFP.' It names the target resource (RFP) and gives the bid lifecycle, including the role of accept_rfp_bid. It does not explicitly contrast itself with sibling tools like create_rfp_auction or accept_rfp_bid beyond the workflow hint, so it stops just short of full sibling differentiation.

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 makes the intended usage context explicit: provider agents compete to fulfill work and bids are ranked by price ascending. It implies the right moment to call the tool (when an RFP is active and the agent wants to bid), but it does not give explicit when-not-to-use guidance or name alternative tools for other stages of the RFP lifecycle.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.