Skip to main content
Glama

List quotes

get_quotes
Read-onlyIdempotent

List quotes stored on this self-host instance, newest first (direction: "asc" for oldest first). Filter by project_reference (from get_projects), version_reference, since (ISO date) or search (text match on indicators). Paged with limit (default 25, max 100) and offset; has_more says whether another page exists. Returns { count, limit, offset, has_more, quotes: [{ quote_reference, project_reference, project_name, version_reference, version, created_at, status, valid, result, indicator, client_ref, exec_time_ms, error, amended_result, amended_valid, sold, quote_url }], next_steps } — result and valid are what the engine priced; amended_result / amended_valid (null when not amended) are what someone changed them to in the dashboard, and sold (null when never set) whether it sold. No input or output payloads; call get_quote for one quote's full review. Dry runs (run_quote without save, run_version_tests) are never stored, so they never appear here; run_quote with save: true does.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "get_quotes"
  }
}

Input Schema

NameRequiredDescriptionDefault
limitNoOptional. Page size, default 25, max 100.
sinceNoOptional. ISO date or date-time; only quotes created at or after it.
offsetNoOptional. Rows to skip, for paging.
searchNoOptional. Text to match in the quote's indicators.
directionNoOptional. desc (newest first, default) or asc.
project_referenceNoOptional. Only quotes for this project (get_projects lists them).
version_referenceNoOptional. Only quotes priced by this version.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already cover the safety profile (readOnlyHint, idempotentHint, closed-world), yet the description adds genuinely new behavior: what is persisted versus discarded, default ordering, page-size ceiling, and how `has_more` signals pagination. It also disambiguates the semantically tricky return fields, explaining that `result`/`valid` are engine-priced while `amended_result`/`amended_valid` and `sold` reflect dashboard changes and may be null.

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?

It is front-loaded with purpose, ordering, and filters before the return payload, and every sentence carries information. The single dense paragraph with stacked parentheticals and a long inline field list is harder to scan than it needs to be, which keeps it below a 5.

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

Completeness5/5

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

There is no output schema, so the description has to carry the return contract, and it does — enumerating the response envelope and the fields an agent would otherwise guess at. Combined with the paging, ordering, filtering, and persistence rules, nothing essential for calling this tool correctly is 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% and every parameter is already documented there, including defaults, bounds, and the direction enum, so the schema does the heavy lifting. The description reinforces a few points (limit default 25/max 100, since as ISO date, search matching indicators, project_reference sourced from get_projects) but adds no format or syntax detail beyond the schema. Baseline 3 is appropriate.

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?

The opening clause names a specific verb and resource ("List quotes stored on this self-host instance") plus default ordering and the asc override. It explicitly separates itself from the sibling `get_quote` ("call get_quote for one quote's full review"), so an agent distinguishes list vs. single-fetch without opening either schema.

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

Usage Guidelines5/5

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

It names the alternative (get_quote) and the condition that selects it, and it states a when-not rule: dry runs (run_quote without save, run_version_tests) are never stored and therefore never appear. Filter entry points are also routed (project_reference comes from get_projects), leaving little to inference.

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