Skip to main content
Glama

dm_extract

Extract decision labels from a one-turn transcript with a two-call workflow, returning extraction IDs, decision points, records, validation results, and disagreements.

Instructions

Extract decision labels from a one-turn transcript (two calls). Call 1: {transcript|path|transcript_id, [contributor_off_confirmed], [extractor_local]} or {transcript_id, pass: 2} for the audit pass; returns transcript_id + extraction_id + points + record_schema. Call 2: {extraction_id*, extractor*, records*, [new_points]}; returns accepted + rejected (one code per check) + jev_disagreements.

Input Schema

NameRequiredDescriptionDefault
payloadYes

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.8/5.0
Behavior4/5

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

With no annotations supplied, the description carries the full burden and does disclose meaningful behavior: the operation is two-call, Call 1 yields transcript_id, extraction_id, points and record_schema, and Call 2 returns accepted plus rejected with one code per check plus jev_disagreements. That tells the agent this is a validating, feedback-driven mutation. It omits side-effect scope, idempotency, and any permission or contributor-confirmation semantics behind the 'contributor_off_confirmed' flag.

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 purpose, then split cleanly into Call 1 and Call 2 blocks with the payload shape inline; nearly every token carries information. The telegraphic brace-and-pipe notation is dense enough that it takes careful parsing, which costs some readability.

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 a nested free-form payload and an output schema that already documents returns, the description supplies the essential missing piece: the two-call contract and the payload keys. Domain terms like 'points', 'record_schema', and 'jev_disagreements' are left undefined, and the audit-pass trigger is stated but not motivated.

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 coverage is 0% and the entire schema is one opaque 'payload' object with additionalProperties true, so the description is the only source of parameter meaning. It does enumerate the acceptable keys for both call shapes (transcript|path|transcript_id, contributor_off_confirmed, extractor_local, pass: 2, extraction_id, extractor, records, new_points) and marks the required ones with asterisks. It stops short of explaining types or the meaning of flags like extractor_local and contributor_off_confirmed.

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 verb and resource: "Extract decision labels from a one-turn transcript (two calls)". The two-phase nature is made explicit, so the agent knows this is not a single-shot operation. It does not, however, distinguish itself from sibling extractors such as do_extract or dm_analyze, which an agent would need to tell apart.

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 spells out the invocation sequence in detail (Call 1 with a transcript-or-path-or-id payload, or pass: 2 for the audit pass; Call 2 with extraction_id/extractor/records plus optional new_points), which is real procedural guidance. What it never says is when to prefer this tool over do_extract or the dm_* analyze/decide siblings, nor when the optional audit pass is required versus optional.

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