send_message
[Buy] Send a message to the other party on a purchase/order thread.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | ||
| purchaseId | Yes |
[Buy] Send a message to the other party on a purchase/order thread.
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | ||
| purchaseId | Yes |
Changes observed during successful MCP inspections. Dates show when Glama detected each change.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already disclose readOnlyHint=false and destructiveHint=false, so the description adds marginal behavioral context by specifying the recipient ('other party') and thread scope. However, it omits any information about side effects, permissions, or return behavior beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact sentence with no redundant words. The [Buy] tag adds context without verbosity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple, but the description lacks parameter explanations and usage guidance, which are especially needed given the sparse schema. It provides the core purpose but not enough for an agent to confidently invoke the tool without additional inference.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description must explain parameters but fails to do so. The names 'purchaseId' and 'body' are self-explanatory to some degree, but the description does not elaborate on their semantics, formats, or constraints (such as the 4000-character limit).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Send' with the resource 'message' on a purchase/order thread, clearly distinguishing it from sibling tools like list_messages. It fully clarifies the tool's function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The '[Buy]' prefix indicates the operational context but does not explicitly contrast with alternatives or state when not to use. The thread context implies usage for purchase communication, but no exclusions or alternative tool references are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.
Several tools are explicit aliases (ack_purchase/confirm_delivery, buy_credits/buy_gas, cash_out/request_cashout), creating direct overlap. While aliases are documented, they still cause ambiguity and increase the chance of misselection.
Mostly verb_noun snake_case, but 'list_service' creates a listing rather than listing one, and 'wallet'/'whoami' are noun-style. Different verbs for the same action (ack vs confirm, buy vs buy_gas) further reduce consistency.
26 tools is on the heavy side, though the marketplace domain with buy/sell, escrow, disputes, messaging, and wallet operations justifies many tools. Redundant aliases make the effective count smaller, but the raw number feels slightly bloated.
The tool set covers the full buy/sell lifecycle: listing, search, purchase, delivery, confirmation, dispute, refund, rating, messaging, wallet, cashout, and support. Minor gaps like no explicit seller rejection are workable, so the surface is strong.