Skip to main content
Glama

brain_require_spec

Register a mandatory spec file to make agents read it before working on matching topics; set trigger keywords and instructions.

Instructions

Register a specification file that the agent MUST read before working on matching topics.

Args: spec_path: Path to spec file (e.g., 'specs/design-tokens.md', 'docs/api.md') trigger_pattern: Comma-separated keywords triggering this requirement (e.g., 'design, ui, layout, componentes') instruction: Directive for the agent (e.g., 'Read design tokens before generating CSS') project: Project identifier or 'global'

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
projectNoglobal
spec_pathYes
instructionNo
trigger_patternYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden. It does disclose the key trait - the registration creates a mandatory read requirement ('MUST read') rather than an advisory note - but says nothing about persistence scope, whether re-registering the same spec_path overwrites, how trigger matching is evaluated, or permission needs.

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 one-sentence purpose followed by a compact per-parameter list; no filler. The docstring formatting ('Args:') is slightly mechanical but every line carries usable information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values need not be explained, and all four params are documented. However, with no annotations and several sibling rule-recording tools, the description leaves unaddressed how this requirement persists and how it interacts with brain_record_rule, which an agent needs in order to choose correctly.

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 the Args block documents all four parameters with concrete examples ('design, ui, layout, componentes') and the intended value of project. It does not state that project defaults to 'global' explicitly, leaving that to the schema.

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 ('Register a specification file') plus the distinguishing behavioral property that the agent MUST read it before matching topics. This separates it from siblings like brain_record_rule and brain_record_golden_pattern, though it never names those alternatives explicitly.

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 'MUST read before working on matching topics' clause implies when the tool is appropriate, but there is no explicit when-to-use/when-not guidance and no comparison to brain_record_rule or brain_record_golden_pattern, which an agent could easily confuse with this tool.

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