Skip to main content
Glama

validate_proposal_spec

Validates versioned requirements, design, impact, and codebase-note Markdown, returning structured violations and rejecting unauthorized approvals without modifying files.

Instructions

Validate versioned requirements, codebase-notes, change impact, or design Markdown; legacy proposals remain readable.

Strictly READ-ONLY: Never modifies files in the workspace.
Zero Mock Data: Fails fast on invalid inputs or malformed schemas, returning structured violations.
Anti-Self-Approval: Detects and rejects unauthorized autonomous approvals (APPROVED_BY_SPEC).

Args:
    proposal_content: Raw Markdown content of a requirements, codebase-notes, impact, design, or legacy proposal document.
    proposal_path: Optional path in docs/features/<module>/<feature>/vN/ or docs/work-items/<slug>/vN/ (legacy paths also supported).
    feature_name: Name of the feature module (optional).

Returns:
    Dictionary containing structural validation status, violations, and checked rules; never user approval.

Input Schema

NameRequiredDescriptionDefault
feature_nameNo
proposal_pathNo
proposal_contentNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv3.3.1

TDQS

A3.8/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does so well: it declares strict read-only behavior ('Never modifies files'), fail-fast error behavior on invalid input or malformed schemas, and a notable side behavior (anti-self-approval detection rejecting APPROVED_BY_SPEC). What it omits is permission/authentication requirements and any limits on content size, which keeps it from a 5.

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?

The behavioral constraints are front-loaded in three tight bullets before the Args/Returns block, so an agent can skim the key facts first. Minor waste exists, such as the 'Zero Mock Data' label attached to a statement about fail-fast validation, and 'Strictly READ-ONLY: Never modifies files' restates itself.

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?

An output schema exists, so the Returns block is largely redundant but harmless, and the important gaps (annotations absent) are covered by the read-only and fail-fast disclosures. Given only three optional string parameters and no required inputs, an agent has enough to call it correctly, though it must guess which argument combination is valid.

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 description coverage is 0%, so the description must compensate, and it largely does: it explains proposal_content as raw Markdown body, proposal_path with accepted directory patterns (docs/features/<module>/<feature>/vN/ and docs/work-items/<slug>/vN/, plus legacy), and feature_name as the module name. It does not explain the interaction or precedence among the three optional parameters (e.g., which one wins when both content and path are given).

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 concrete verb (validate) and concrete resources (requirements, codebase-notes, change impact, design Markdown, legacy proposals), so an agent knows exactly what artifact class this handles. It does not explicitly contrast itself with the sibling validators (validate_plan_slices, validate_module_architecture, validate_architecture_code), so differentiation is inferred from the artifact names rather than stated.

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?

Usage is implied by the document types listed in the first sentence and by 'legacy proposals remain readable,' which tells the agent legacy docs are in scope. There is no explicit when-to-use / when-not-to-use guidance and no mention of the sibling validators or prerequisites such as which of the three optional args must be supplied.

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