Skip to main content
Glama

Score on a scale with Jev

jev.score
Read-only

Rates a state against 2–10 ordered level descriptions and returns a probability-weighted score, level legend, probabilities, and confidence for calibrated judgments.

Instructions

Ask TypeSafe Jev to rate some state along ordered levels. criteria is an array of 2-10 level descriptions, lowest first. Returns answer.score (a probability-weighted level index from 0, may fall between levels), answer.legend, answer.probabilities and answer.confidence.

state is the content to judge (a string, or a JSON object/array). instructions must state the full question; refer to parts of structured state with backticked paths such as ticket.messages[0].text. model is optional. images (optional, up to 4 PNG, JPEG or WebP, 4 MiB each) are judged together with state; each is either { "path": "" } for a local file inside a directory the server allows (JEV_IMAGE_DIRS), or { "data": "data:image/png;base64,..." }. Only image-capable models accept images (for example cloudflare/clef or cloudflare/clef-flash through OpenRouter); other models reject them. Never put images inside state. To ask several questions about the same state, use jev.evaluate instead: it answers them in one request. provider is optional; this server offers only "typesafe".

Input Schema

NameRequiredDescriptionDefault
modelNo
stateYes
imagesNo
criteriaYes
providerNo
instructionsYes

Output Schema

NameRequiredDescriptionDefault
modelYesThe model that answered, usually a versioned ID
usageYes
answerYes
providerNoThe provider that answered

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.6.0

TDQS

A4.7/5.0
Behavior5/5

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

Annotations only declare readOnlyHint and openWorldHint, but the description adds real behavioral context: image constraints (max 4, PNG/JPEG/WebP, 4 MiB each), the JEV_IMAGE_DIRS sandbox for path-based images, the fact that only image-capable models accept images and others reject them, and that the only supported provider is 'typesafe'. It even discloses the return shape, including that scores are probability-weighted and may fall between levels.

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 with the core operation and return shape, then parameter guidance, then the sibling routing hint — a sensible order. It is dense and a few clauses (base64 data URL format, per-format repetition of PNG/JPEG/WebP) duplicate what the schema already documents, so it is somewhat longer than strictly necessary.

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?

An output schema exists, yet the description still names the key return fields (answer.score, answer.legend, answer.probabilities, answer.confidence), which helps an agent interpret the probability-weighted index. Combined with the model/provider caveats and image rules, nothing essential for a correct invocation is missing.

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

Parameters5/5

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

Schema description coverage is 0%, but the description compensates for every parameter: `state` (string or JSON object/array), `instructions` (must state the full question, use backticked paths into structured state), `criteria` (2-10 ordered levels), `model` and `provider` (both optional, provider restricted to 'typesafe'), and both image forms with their required keys. It also gives a concrete path syntax example, which the schema does not.

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?

States a specific verb and resource — rate a state along ordered levels — and immediately pins down what `criteria` means (2-10 level descriptions, lowest first). It also names the sibling it is not for the multi-question case, so an agent can distinguish it from jev.evaluate 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 Guidelines4/5

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

Explicit routing guidance: 'To ask several questions about the same state, use jev.evaluate instead' gives a clear when-to-use-the-alternative rule, and the image/model compatibility note warns when this tool cannot be used. It does not address jev.choice or jev.evaluate_batch, which are plausible nearer alternatives for single-label judgement or multiple states.

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