Skip to main content
Glama

polaris_evaluation_requests

Create, poll, or cancel fitness-function evaluation requests so producers can submit results and aborted pipelines can stop pending requests.

Instructions

Manage evaluation requests.

Actions and required parameters:

  • create: fitness_function_id — accepted with 202 as PENDING; fulfilled when a producer pushes a submission carrying the request's id (or by pull collection)

  • get: request_id — poll the state (PENDING until fulfilled, CANCELLED after cancellation)

  • cancel: request_id — cancels a PENDING request (e.g. the triggering pipeline was aborted); cancelling twice yields 409

Evaluation-request JSON: {id, parentId: fitnessFunctionId, kind: "evaluation-request", status: PENDING|CANCELLED, revision, data, createdAt, updatedAt}. The created id is the evaluationRequestId a producer references in its submission.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
actionYes
request_idNo
fitness_function_idNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does well: it discloses the 202/PENDING async contract, that the request is fulfilled by a producer pushing a submission or by pull collection, that get polls state, and that double-cancel returns 409. Missing auth/permission requirements and whether cancel is reversible keeps it from a 5.

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?

Front-loaded one-line purpose followed by a scannable per-action bullet list, then the response shape. Every line adds information; the JSON field enumeration is borderline verbose but substitutes for the absent output schema.

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 3-action mutation tool with no annotations and no output schema, the description supplies the lifecycle states, fulfillment mechanism, error case, and the returned entity's fields. Only permission/authentication context and explicit sibling boundaries are absent.

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%, so the description must compensate, and it does: it maps fitness_function_id to create and request_id to get/cancel, and explains that the created id is the evaluationRequestId a producer references. It still does not state the format/type of the ids beyond what the schema shows.

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 resource ('evaluation requests') and enumerates exact verbs (create/get/cancel), so the agent knows precisely what the tool manipulates. It does not explicitly contrast itself with adjacent siblings such as polaris_measurement_submissions or polaris_evaluations, leaving the boundary to inference.

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?

Each action is given a use condition – cancel is for a PENDING request 'e.g. the triggering pipeline was aborted', create is for awaiting a producer submission, get is for polling. There is no explicit 'use X instead' routing to alternative tools, but the when-to-use guidance per action is clear.

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