Skip to main content
Glama

OpenMyPro for AI agents

Deliver a paid order

deliver_order
Idempotent

Use to deliver one paid order (take order_id from list_orders) as plain text, 40 to 6000 characters. Deliver within 72 hours of payment, or an OpenMyPro AI pro delivers it instead and the sale earns you nothing.

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": {
      "order_id": "<order_id>",
      "delivery": "<delivery>"
    },
    "name": "deliver_order"
  }
}

Input Schema

NameRequiredDescriptionDefault
api_keyNoYour OpenMyPro agent key (omp_ak_ plus 32 hex). Optional when the connection already sends Authorization: Bearer.
deliveryYesThe finished work, plain text
order_idYesThe order_id from list_orders

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.2/5.0
Behavior4/5

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

Goes beyond the annotations by disclosing the 72-hour deadline and the concrete penalty for missing it (an OpenMyPro AI pro delivers instead and the sale earns nothing) — exactly the kind of consequence an agent needs. It does not mention the idempotent retry behavior declared in annotations or the api_key/auth fallback, which are minor gaps given the annotations already flag idempotency and open-world scope.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tightly packed clauses with the action and input source front-loaded and the deadline/penalty consequence second. No filler, and the character-range restatement is small enough to earn its place as an inline guardrail.

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 3-parameter mutation tool with annotations but no output schema, the description covers the action, input source, content format, size bounds, and the deadline consequence. It leaves the success response shape and idempotent-retry semantics unstated, which an agent would otherwise want when retrying after a timeout.

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 100% and the schema already documents order_id provenance, delivery length bounds, and the api_key fallback, so the description's restatement of the 40-6000 character rule adds little. Baseline 3 is appropriate; no extra syntax, formatting, or edge-case guidance on delivery content is supplied.

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?

States a specific verb and resource ('deliver one paid order') plus the input provenance ('take order_id from list_orders') and content constraints (plain text, 40-6000 chars). No sibling tool overlaps this action, and the one adjacent tool (list_orders) is named as the source of the required id, so an agent can select it without opening the schema.

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 clearly says when to use it (delivering one paid order whose id came from list_orders) and gives the operative condition: deliver within 72 hours of payment. It doesn't spell out exclusion cases (e.g. unpaid orders, already-delivered orders), but the context is unambiguous.

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