Skip to main content
Glama

rush_simplify

Decompose high-complexity functions into smaller, modular helpers to reduce cognitive load and improve code maintainability.

Instructions

Decompose high-complexity functions into modular helpers

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
fileYes
max_complexityNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv0.2.2
    • changedInput schema / title
      Previous value: -"mcp_rush_simplifyArguments"New value: +"rush_simplifyArguments"
    • changedOutput schema / title
      Previous value: -"mcp_rush_simplifyOutput"New value: +"rush_simplifyOutput"
  2. First observedv0.3.0

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It states the action but doesn't disclose whether the tool modifies the file in place, creates new files, requires a specific language, or how it handles functions that can't be simplified. For a tool that likely rewrites code, this is a significant gap.

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?

A single, concise sentence that front-loads the core action. It's efficient and not padded, though it could add a bit more detail without becoming verbose.

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

Completeness2/5

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

The tool has an output schema (not shown) and 2 parameters, but the description is minimal. For a code-modifying tool, an agent needs to know whether the file is edited in place, what the output contains, and how max_complexity affects behavior. The description is too thin to fully guide correct invocation.

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 0%, so the description must compensate. It explains the purpose of 'file' implicitly (the file containing high-complexity functions) but doesn't explain 'max_complexity' semantics beyond its name. The default of 10 is in the schema, but the description doesn't clarify what the threshold means or how it's used. Baseline 3 is appropriate since the description adds some context but leaves parameter meaning mostly to inference.

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 description uses a specific verb ('decompose') and resource ('high-complexity functions'), and the tool name 'rush_simplify' aligns with the action. It clearly distinguishes from siblings like rush_complexity (which likely measures complexity) and rush_review (which reviews code), though it doesn't explicitly name an alternative.

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 implies usage: use this when you have high-complexity functions that need modularization. However, it doesn't explicitly state when not to use it or mention alternatives like rush_complexity for measuring complexity first. The context is clear but exclusions are absent.

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