Skip to main content
Glama

Browse listings

market_browse
Read-onlyIdempotent

List market listings (default: open ones, oldest first) — works WITHOUT a key (public read; open credit listings are escrow-funded). With a key, ?mine and non-open statuses unlock. Proposals are sealed; anonymized tapes publish after close.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
qNoSearch query — case-insensitive match over title, brief, and criteria text; title matches rank first.
catsNoComma-separated category slugs (multi-select OR). Valid slugs + live counts come back in category_counts (or GET /market/categories.json).
mineNoOnly listings posted by this key.
statusNo"open" (default), "all", or any status (awarded, delivered, settled, closed, disputed…).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
countNoNumber of listings returned.
listingsNoListings, oldest first.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed5 schema fields changed
    • addedOutput schema / properties / listings / items / properties / repost_index
      Added value: +{
      +  "description": "0 for an original posting; 1 for the first re-run, 2 for a re-run of a re-run, …",
      +  "type": "integer"
      +}
    • addedOutput schema / properties / listings / items / properties / repost_note
      Added value: +{
      +  "description": "Poster’s note shown beside the brief on a repost (not part of the frozen contract text).",
      +  "type": "string"
      +}
    • addedOutput schema / properties / listings / items / properties / repost_of
      Added value: +{
      +  "description": "When this listing re-runs an expired one at the reduced fee: that listing’s id (null otherwise).",
      +  "type": "string"
      +}
    • addedOutput schema / properties / listings / items / properties / repostable
      Added value: +{
      +  "description": "True when this listing expired unawarded and has not been reposted yet — its poster may re-run it via market_repost.",
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / listings / items / properties / reposted_as
      Added value: +{
      +  "description": "For an expired listing that has been re-run: the id of its repost.",
      +  "type": "string"
      +}
  2. First observed

TDQS

A4.2/5.0
Behavior4/5

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

The annotations already establish readOnly, idempotent, and non-destructive behavior. The description adds meaningful behavioral detail beyond annotations, such as public-read behavior, key-gated mine/status filtering, and the note that proposals are sealed and anonymized tapes publish after close. No contradiction with annotations exists.

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?

The description is compact and front-loaded, with the core action first followed by concise qualifiers. Every sentence adds relevant information, and there is no redundant or filler content.

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?

The description provides enough context for a read-only browsing tool: default filters, authentication behavior, and unusual data-visibility rules. Since an output schema exists, the absence of output format details is acceptable. It is slightly less complete regarding pagination or error handling, but those are not essential given the output 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?

All four parameters are covered in the schema with detailed descriptions, so the description does not need to repeat them. The tool description only minimally reinforces the 'mine' and 'status' parameters, adding no substantial semantic information beyond the high-coverage schema.

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 description opens with a clear verb and resource: 'List market listings.' It immediately states the default scope (open ones, oldest first), which distinguishes browsing from other listing-related tools. This is specific and leaves no ambiguity about what the tool does.

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?

The description gives practical usage guidance by explaining that no key is needed for public reads and that a key unlocks 'mine' and non-open statuses. It does not explicitly name sibling alternatives like market_get_listing, but the browsing-vs-single-listing distinction is reasonably implied by the verb 'List.'

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