Skip to main content
Glama

Propose a change

mttr_propose

Before you deploy a change to a site set to approve, proposes it to the person: mttr keeps it and emails them what the change is, the rule and pages, your summary marked as your words, and an Approve and a Decline link, each working once and lapsing after 72 hours. Then wait: call mttr_proposal with the id until it says approved, and deploy only then. Declined or expired means do not deploy. At most 20 proposals for a site an hour, so put related changes in one.

Input Schema

NameRequiredDescriptionDefault
diffNoThe change as a unified diff, at most 20,000 characters. Shown to the person, never applied by mttr.
ruleNoThe mttr rule it answers, by id, such as answer-first. Leave it out for a change no rule names.
siteYesThe site, as a domain such as example.com.
pagesNoThe pages it changes, as paths separated by commas, such as /pricing,/about. At most 20; none for the whole site.
titleYesWhat the change is, in a few words on one line, at most 120 characters.
summaryYesWhat the change does and why, in a few sentences the person can judge, at most 2000 characters.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already say readOnlyHint=false, destructiveHint=false, openWorldHint=false, but the description adds genuinely new behavior: an email is sent to a human, the Approve/Decline links are single-use and lapse after 72 hours, the diff is never applied by mttr, and there is a per-site rate limit. The only gap is that it does not say what the tool itself returns in the call response (id only, presumably).

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 with the trigger condition, then the follow-up loop, then the rate-limit caveat, so an agent gets the decision rule in the first clause. The first sentence is long and enumerates email contents the agent cannot control, which is the only waste.

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

Completeness5/5

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

For a 6-parameter mutation-ish tool with no output schema, the description covers what the call does, what the human sees, what to do afterward, how long approval lasts, and the throughput limit. Nothing an agent needs in order to call it correctly and act on the result is missing.

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 100%, so the schema already explains diff, rule, site, pages, title and summary, and the description mostly restates content rather than parameter syntax. It does add two useful nuances the schema lacks: the summary is presented to the approver 'marked as your words', and related changes should be consolidated because of the hourly cap. That is incremental meaning on top of a fully documented schema, so baseline 3.

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 (proposes a change) and the exact condition that triggers it (a site set to approve), plus what the tool actually does with it: mttr keeps it and emails the person. This separates it cleanly from mttr_proposal (status check) and mttr_proposals (list) named right in the text.

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

Usage Guidelines5/5

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

Explicit when-to-use (before deploying to an approving site), explicit follow-up loop (call mttr_proposal with the id until approved), and explicit negative branch (declined or expired means do not deploy). It even gives batching guidance given the 20/hour cap by telling the agent to put related changes in one proposal.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources