Skip to main content
Glama
Achindra2003

Zoho Inventory Connector

by Achindra2003

search_sales_orders

Read-onlyIdempotent

Find sales orders by reference number, order number, customer name, or text. Search by date range or free text to locate specific orders quickly.

Instructions

Find sales orders by reference number, order number, customer or text. Give at least one criterion.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
textNoFree-text search across order number, reference, customer and item names.
cursorNonext_cursor from the previous page; omit for the first page.
date_toNoYYYY-MM-DD, inclusive.
date_fromNoYYYY-MM-DD, inclusive.
page_sizeNoResults per page (1-100).
customer_nameNoPart of the customer's name.
reference_numberNoExact reference number, usually the storefront or Razorpay order/payment ID.
salesorder_numberNoExact Zoho sales order number, e.g. SO-00101.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultsYes
has_moreYes
returnedYes
next_cursorNoPass back as `cursor` to fetch the next page.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint, so the safety profile is fully covered by structured data. The description adds only the minimum-one-criterion requirement and nothing about result volume, ranking, or matching behavior; pagination is documented in the schema rather than the description.

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 searchable dimensions, then the constraint. No filler, though it is minimal enough that it leaves value on the table.

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?

With a rich output schema, full annotation coverage, and complete parameter documentation, the description does not need to explain return values or pagination. It is complete enough to call correctly, with only sibling differentiation missing.

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 description coverage is 100% with all 8 parameters documented individually (formats, ranges, defaults), so the schema carries the load. The description names the same searchable fields (reference number, order number, customer, text) without adding syntax or precedence detail, matching the baseline for high coverage.

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 (find/search) and resource (sales orders) plus the searchable fields, so the agent knows this is a lookup tool. It does not distinguish itself from siblings like list_sales_orders or get_sales_order, so it falls 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 Guidelines3/5

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

"Give at least one criterion" is a useful invocation constraint, implying the search needs a filter and is not a bare list. However, there is no guidance on when to use this versus list_sales_orders or get_sales_order, so usage is only implied.

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