Skip to main content
Glama

gorelo_list_contracts

Read-only

Lists billing contracts with their service lines, filterable by client and status, with pagination support. Retrieve contract details to review what each client is billed for.

Instructions

Lists billing contracts, each with the service lines it is made of.

Input Schema

NameRequiredDescriptionDefault
cursorNoOpaque pagination cursor from a previous page; omit for the first page. Only valid against the same filters that produced it.
pageSizeNoNumber of items per page. Clamped to 1-200 (default 50).
clientIdsNoclient ids; keeps only contracts billed to any of them.
statusIdsNostatus ids: 1 Active, 2 Expired, 3 Archived. Omitted returns Active and Expired (archived excluded). Any other id is a 400.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed6 schema fields changedv1.1.1
    • addedInput schema / properties / clientIds / description
      Added value: +"client ids; keeps only contracts billed to any of them."
    • changedInput schema / properties / clientIds / items / type
      Previous value: -"number"New value: +"integer"
    • changedInput schema / properties / cursor / description
      Previous value: -"Opaque pagination cursor from a previous page; omit for the first page."New value: +"Opaque pagination cursor from a previous page; omit for the first page. Only valid against the same filters that produced it."
    • changedInput schema / properties / pageSize / description
      Previous value: -"Items per page, clamped 1-200 (default 50)."New value: +"Number of items per page. Clamped to 1-200 (default 50)."
    • changedInput schema / properties / pageSize / type
      Previous value: -"number"New value: +"integer"
    • addedInput schema / properties / statusIds
      Added value: +{
      +  "description": "status ids: 1 Active, 2 Expired, 3 Archived. Omitted returns Active and Expired (archived excluded). Any other id is a 400.",
      +  "items": {
      +    "type": "integer"
      +  },
      +  "type": "array"
      +}
  2. First observedv0.1.0

TDQS

B3.4/5.0
Behavior3/5

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

readOnlyHint=true already declares the safety profile, so the bar is lower. The description does add real context beyond the annotation by disclosing that service lines are embedded in each returned contract (valuable since there is no output schema), but it says nothing about pagination flow or the default exclusion of Archived contracts, which lives only in the schema.

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?

A single front-loaded sentence with zero filler; the resource and its notable return characteristic are stated immediately. Nothing is restated or padded.

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 fully-optional-parameter read tool with 100% schema coverage and no output schema, the description covers what the tool returns (contracts plus their service lines), which is the main thing the schema cannot convey. It falls short only on pagination behavior and the filter-based usage context, which are minor gaps given the rich schema.

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%, so cursor semantics, page-size clamping, and the statusId enum mapping are already fully documented in the schema. The description adds no parameter meaning beyond that, so the baseline 3 applies.

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 (Lists) and resource (billing contracts) plus the nested service-line content of each record. It does not explicitly distinguish itself from the sibling gorelo_get_contract or mention that filters are available, so sibling differentiation is only implicit in the plural name.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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

The description gives no when-to-use guidance, no mention of the clientId/statusId filters that would make this the right choice over gorelo_get_contract, and no note about when another tool is preferable. The agent must infer usage entirely from the name and schema.

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

Deploy Server

Other Tools