Skip to main content
Glama

Classify into one of your options

jev_classify

Classify your input into one of your predefined options. Returns the chosen option, probabilities for every option, confidence, and a recommended action triggered by confidence thresholds.

Instructions

Pick exactly one option from a set you define. Returns the chosen option, the probability of every option, a confidence value, and a recommended action gated on confidence. Use when the answer is one of a fixed set. The options must be supplied by you: Jev selects among them and cannot invent a new one. Up to 255 options.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
stateYesThe content to evaluate. A plain string for text, or an object/array for structured data such as a record, a diff, or a chat log.
optionsYesMap of option name to a description that separates it from the others. Both the name and the description are sent to the model, so keep names short and distinct. A description may be an object or array when structure clarifies it, or null to leave it undescribed.
add_noneNoAdd a no-match option meaning none of yours fits. Defaults to true. Turn off only when one option must always apply. If you already use the name 'none', the added option takes a different key and it is reported back as none_option.
questionYesThe judgment to make. A string, or an object/array when the question has several labelled parts. This is the only instruction Jev sees, so state it in full.
act_aboveNoConfidence at or above which the answer is marked 'act'. Default 0.8. Calibrate on your own data and the cost of being wrong.
review_aboveNoConfidence at or above which the answer is marked 'review' rather than 'abstain'. Default 0.5.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
modelYes
usageYes
actionYes
choiceYes
confidenceYes
thresholdsYes
none_optionYesThe key carrying the no-match meaning, or null when none was added.
probabilitiesYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.3.0

TDQS

A4/5.0
Behavior3/5

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

No annotations are provided, so the description must carry the behavioral burden. It discloses the return values (chosen option, probabilities, confidence, recommended action) and the constraint that Jev cannot invent new options. However, it does not explicitly state that the tool is read-only or has no side effects, though that is implied for a classification tool. It also lacks details on error behavior or edge cases, but the core behavioral traits are covered.

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: it opens with the core action, then lists returns, then gives usage context, then a key constraint, then a limit. Every sentence adds value with no redundancy or filler.

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?

Given the output schema exists, the description doesn't need to detail return formats, but it does anyway. It covers the essential usage guidance, constraints, and limits. The only missing piece is a note on what happens with add_none behavior, but that is in the schema. Overall it is sufficiently complete for an agent to invoke correctly.

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 the schema already documents all parameters thoroughly. The description adds a useful constraint ('Up to 255 options') not present in the schema, and mentions the confidence-gated action, which maps to act_above and review_above. However, it does not describe individual parameters, relying on the schema. Baseline 3 is appropriate, with a slight bonus for the 255-option limit.

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 states a specific verb ('Pick') and resource ('one option from a set you define'), and clearly distinguishes the tool from siblings like jev_score or jev_check by focusing on classification among a fixed set. The return values are also mentioned, making the purpose unambiguous.

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?

It explicitly states when to use: 'Use when the answer is one of a fixed set.' It also clarifies a key usage requirement: the options must be supplied by the user, and Jev cannot invent new ones. It doesn't explicitly mention when not to use or name alternatives, but the context is clear enough for an agent to route correctly.

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