Skip to main content
Glama

Chamfer: CNC machining, molding, sheet metal and PCB RFQs; MRO parts by part number

Send the requirement

send_requirement
Idempotent

Send the requirement to Chamfer once the buyer says to: the first send records the request (its receipt token is the requirement's token, for request_status and offers); a later send of a changed requirement records a revision of the same request. Name the revision the buyer saw. This orders nothing: an offer comes later and is accepted separately on its exact terms.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "slug": "<slug>",
      "id": "<id>",
      "token": "<token>",
      "revision": "<revision>"
    },
    "name": "send_requirement"
  }
}

Input Schema

NameRequiredDescriptionDefault
idYesThe requirement id from an earlier answer
slugYesThe service, from list_propositions
op_idNo
tokenYesIts private token (also the receipt token of the request it is sent as); keep it private
actionNoWhat the buyer wants done (default quote): to buy, lease, verify...
contactNo
revisionYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare the safety profile (non-read-only, idempotent, non-destructive, closed-world), so the description's value is in the semantics it adds: the first send records a request whose receipt token is the requirement's own token and is reused by request_status and offers, while a later changed send records a revision of the same request. The 'orders nothing' clause is genuinely useful behavioral framing. It still does not say what is returned, what happens on a duplicate send of an unchanged requirement, or why the buyer-seen revision number matters operationally.

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?

Three sentences, front-loaded with the action and its trigger, then the first-send/revision distinction, then the non-commitment caveat. Dense but every clause carries meaning. Minor cost: the token parenthetical is nested inside a sentence about request recording, making it slower to parse than a separate statement would be.

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

Completeness3/5

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

This is a 7-parameter mutation with a nested contact object and no output schema, so the description carries real burden. It covers the send/revision lifecycle well but omits the contact and op_id parameters entirely, does not state permission or privacy obligations beyond 'keep it private' in the schema, and leaves the agent unsure what a successful send yields besides an implied token.

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 57%, and the description compensates for the weakest link by explaining the token's dual role as the requirement token and the request receipt token used by request_status and offers, and by framing 'revision' as the revision the buyer actually saw. It says nothing about op_id, contact (a nested object with a required email), or action, which remain documented only partially or not at all in the schema. Adequate but leaving real gaps.

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 states a specific verb and resource ('Send the requirement to Chamfer') and splits the operation into two distinct behaviors: the first send records the request, a later send records a revision of the same request. That is far more than a restatement of the name, and it implicitly separates this tool from edit_requirement. It does not name a sibling to route against, which keeps it just short of a 5.

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 trigger condition ('once the buyer says to') and an explicit boundary for what the tool is not ('This orders nothing: an offer comes later and is accepted separately on its exact terms'), which steers the agent away from treating a send as a commitment. What is missing is any mention of prerequisites such as whether an offer or PO must already exist, or which tool to use if the requirement has not yet been described.

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