Skip to main content
Glama

Extract values from a file

jev_extract
Read-onlyIdempotent

Extract specific values—ports, versions, URLs, dates, quoted settings—from a file in one call, returning verbatim matches with line numbers and confidence.

Instructions

Get short values out of a file (a port, a version, a URL, a date, a quoted setting) without reading the file. Code finds every value of each requested kind; Jev picks the one that answers each question, so it can pick wrong but never invent a value. Pass every value you need from the file in one call: the file is read once for all of them. Returns, per question, the value verbatim with its line, a confidence-gated action, and whether the file answers at all. value is null when it does not.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pathNoA file read inside the server. Same rules as jev_triage paths. Supply exactly one of path or text.
textNoThe content, when you already hold it.
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.
questionsYesEvery value you need from this file (up to 16). They are judged in one pass over the same file, so batch them rather than calling again.
review_aboveNoConfidence at or above which the answer is marked 'review' rather than 'abstain'. Default 0.5.
no_at_or_belowNoProbability at or below which a check's verdict is 'no'. Default 0.3. Between the two the verdict is 'uncertain'.
yes_at_or_aboveNoProbability at or above which a check's verdict is 'yes'. Default 0.7.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
modelYes
usageYes
resultsYesOne per question, in the order asked.
windowsYesRequests made; a question with more candidates than one request holds spans several.
latency_msYesWall-clock milliseconds for the API round trip, for your own calibration logs.
thresholdsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.14.0

TDQS

A3.9/5.0
Behavior5/5

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

Beyond the readOnlyHint/idempotentHint annotations, the description discloses the tool's heuristic failure mode — 'it can pick wrong but never invent a value' — which is exactly the behavioral trait an agent needs to calibrate trust in extracted answers. It also adds the single-read performance guarantee and the null-when-unanswered return semantics, all context the annotations do not provide.

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?

About five dense sentences with purpose front-loaded in the first clause and no filler. The batching sentence repeats guidance already present in the schema's questions description, and the return-value sentence is partly redundant with the output schema, but the overall length is well within what the tool's complexity justifies.

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 heuristic, confidence-gated nature of the tool and a rich supporting schema (100% param coverage, output schema, four safety annotations), the description covers the non-obvious essentials: candidate collection, the pick-wrong honesty caveat, batching behavior, and null semantics. Nothing needed to invoke it correctly is missing, though an explicit when-not-to-use note would have pushed this to a 5.

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 seven parameters, including defaults (0.8, 0.5, 0.3, 0.7), the path/text exclusivity rule, and the 'line' kind fallback. The description adds only marginal parameter context — 'confidence-gated action' links the act_above/review_above thresholds to output behavior — which earns the baseline 3 but nothing more.

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 opening sentence names a specific verb and resource — 'Get short values out of a file (a port, a version, a URL, a date, a quoted setting) without reading the file' — with concrete examples that make the tool's scope immediately obvious. It does not explicitly contrast a sibling tool, so it stops short of full 5-level differentiation, but the extraction-vs-classify/score/search/check operation is clear enough to distinguish within the jev_ family.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

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

The description gives operational context — use this when you need short values from a file rather than reading the whole thing — and adds genuine how-to guidance: 'Pass every value you need from the file in one call: the file is read once for all of them.' However, it never states when-not-to-use or names an alternative sibling, leaving selection guidance implied rather than explicit.

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