Skip to main content
Glama

spec_write

Saves a complete specification and returns what changed, letting AI clients track weapon bugs as measurable cases and compare fixes against a baseline.

Instructions

Saves a whole spec and returns what changed.

Input Schema

NameRequiredDescriptionDefault
specYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.1/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 burden. It does disclose two useful traits beyond structured data: that the entire spec is replaced ("whole spec") and that the response is a diff ("returns what changed"). However, it omits whether the operation is destructive to existing content, whether it requires authorization, and any confirmation or error behavior.

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 front-loaded sentence with no filler. It is efficient, though given the tool's complexity it is arguably too terse rather than 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?

For a write tool with no annotations, an untyped nested payload, 0% schema coverage, and no output schema, the description leaves major gaps. It notes a return value exists but does not describe its shape, and says nothing about permissions, overwrite risk, or failure modes.

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 coverage is 0% and the single parameter is an opaque nested object with additionalProperties=true, so the schema gives no meaning. The phrase "whole spec" adds real value by signaling that the argument must be a complete document rather than a partial update, but no structure or format details are provided.

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 ("saves a whole spec") and clarifies scope with "whole," implying a full-document write rather than a patch. It doesn't explicitly contrast with siblings like spec_read, spec_list, or spec_validate, so differentiation is only implied by the write semantics.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use spec_write versus spec_validate or spec_read, no prerequisites, and no conditions under which it should be avoided. The agent is left to infer usage entirely.

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