Skip to main content
Glama

Curate jobs and explore trade-offs

curate_job_shortlist
Read-onlyIdempotent

Preferred first call for public RxRooster job browsing, matching, trade-offs, and top-paying jobs. Send known preferences; never enumerate cursors. Keep hourly/annual pay separate, use disclosed pay only, and never convert. Lock preferences unless flexibility is allowed; never change profession. Alternatives are previews. Resolve supplied cities with resolve_shortlist_location. Report unsupported criteria; never claim credentialing or current availability.

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": {
      "criteria": "<criteria>"
    },
    "name": "curate_job_shortlist"
  }
}

Input Schema

NameRequiredDescriptionDefault
cursorNo
criteriaYes

Output Schema

NameRequiredDescriptionDefault
kindYes
matchesYes
criteriaYes
inventoryYes
next_cursorNo
alternativesYes
continue_urlYes
total_matchesYes
schema_versionYes
needs_confirmationYes
needs_confirmation_countYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • removedOutput schema / properties / alternatives / items / properties / matches / items / properties / job / properties / job_id / description
      Removed value: -"Opaque RxRooster job ID returned by search_anesthesia_jobs."
    • removedOutput schema / properties / matches / items / properties / job / properties / job_id / description
      Removed value: -"Opaque RxRooster job ID returned by search_anesthesia_jobs."
    • removedOutput schema / properties / needs_confirmation / items / properties / job / properties / job_id / description
      Removed value: -"Opaque RxRooster job ID returned by search_anesthesia_jobs."
  2. Added

TDQS

A4.4/5.0
Behavior5/5

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

Annotations already establish that the tool is read-only, idempotent, non-destructive, and not open-world. The description adds meaningful operational boundaries beyond that: never enumerate cursors, keep hourly and annual pay separate, use disclosed pay only and never convert, lock preferences unless flexibility is allowed, never change profession, report unsupported criteria, and never claim credentialing or current availability.

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?

The description front-loads purpose and packs in operational rules without filler. However, the telegraphic clause list is dense and some rules, such as 'Alternatives are previews,' are terse enough that clearer structure would improve scanability.

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?

This is a complex tool with a nested criteria object and cursor pagination, but an output schema exists, so return values need not be explained. The description covers the main calling constraints and sibling handoff; it does not fully explain cursor acquisition or every criteria field, but the schema structure and output schema fill those gaps adequately.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the criteria parameter is a nested object, so the description must compensate. It does for key semantics: criteria represent known preferences, locked fields should not vary unless flexibility is allowed, profession must not change, pay fields stay separate and unconverted, cursors are opaque and must not be enumerated, and cities must be resolved via the sibling tool. It leaves many nested fields such as sort_by, provider_type, and schedule_patterns to the schema structure, so coverage is useful but not complete.

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?

The description identifies the tool as the preferred first call for public RxRooster job browsing, matching, trade-offs, and top-paying jobs, which makes the resource and main operations clear. It also distinguishes preview alternatives and names resolve_shortlist_location as a sibling, though 'curate' remains broader than a single specific verb.

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 explicitly says when to use this tool as the preferred first call, how to send known preferences, not to enumerate cursors, when to lock preferences, never to change profession, and to use resolve_shortlist_location for supplied cities. It also says to report unsupported criteria and not to claim credentialing or current availability, which is unusually complete routing guidance.

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