Skip to main content
Glama
ilyautov

consilium-principis

validate_decision_map

Validates a decision map before calculation, checking user confirmation, numeric ranges, status-quo option, formula parsing, and verbal versions; returns validation errors for advisor follow-up.

Instructions

Гейты честности карты решения («Principis-расчёт», fail-closed): каждая величина подтверждена юзером (confirmed_by_user), тройки min<=mode<=max / prob в [0,1], статус-кво вариант есть, формулы парсятся, у каждой — словесная версия. → {valid, errors[]}. Ошибки доноси до юзера ВОПРОСАМИ совета, не техдампом. Зови после допроса карты, ПЕРЕД run_calculation.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
mapYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.1

TDQS

A4.3/5.0
Behavior4/5

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

No annotations, so the description carries the full burden: it discloses fail-closed semantics, the return shape {valid, errors[]}, and a behavioral directive (surface errors to the user as council questions, not a tech dump). It doesn't discuss idempotency or side effects, but it is far more transparent than a bare 'validate' claim.

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?

One dense but front-loaded block: purpose and gates first, then return shape, then error-handling guidance, then call timing. Every clause carries information (checks, output, usage); no 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?

With no output schema, the description supplies the return shape and the validation contract, and ties usage to a sibling. For a one-param validation tool it is nearly self-sufficient; only the deep structure of the nested map is left implicit.

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 single 'map' param is a nested object, so the schema gives nothing. The description compensates by enumerating the properties the map must satisfy (confirmed_by_user, triples, status-quo variant, parseable formulas, verbal version), effectively documenting the expected structure.

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 (validate) and resource (decision map) and enumerates the concrete invariants it checks (confirmed_by_user, min<=mode<=max, prob in [0,1], status-quo variant, parseable formulas, verbal version). It also positions itself against the sibling run_calculation ('BEFORE run_calculation'), so an agent can distinguish it from the other decision-map siblings.

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?

Gives explicit timing: call after interrogating the map and before run_calculation, naming the sibling it precedes. No explicit when-not case, but the sequencing is clear enough to route correctly.

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