Skip to main content
Glama

Add or edit a listing option

optimizer_save_option

Add a new listing option or replace an existing one, then re-score it and report validation issues such as length limits and repeated words.

Instructions

Add your own listing option (omit optionId) or replace the listing of an existing option. The app re-scores it and reports validation problems (length limits, repeated words) in get_optimizer.

Input Schema

NameRequiredDescriptionDefault
labelNoName for a new option.
listingYes
optionIdNoOption to replace; omit to add a new one.
projectIdYesProject id (from get_overview).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.7

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare non-read-only, non-destructive, non-idempotent, closed-world. The description adds real value beyond that: the app re-scores the saved option and surfaces validation problems (length limits, repeated words) in get_optimizer, which tells the agent the write has a follow-up verification path. It stops short of saying whether unspecified fields are cleared on replace.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences, the mode-switching rule is front-loaded, and the follow-up location (get_optimizer) closes the loop. Nothing is padded.

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?

With no output schema, the description correctly points the agent to get_optimizer for the re-scoring and validation results, which is the key post-call behavior. Minor gaps remain around replace semantics (partial vs full overwrite) for a nested-object mutation.

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 75% and each nested listing field already carries its platform-specific length limits in the schema, so the schema does most of the work. The description restates the optionId omission rule that the schema description already states, adding no new syntax or format detail.

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 pair (add / replace) on a specific resource (a listing option) and ties the mode to optionId presence. It does not explicitly differentiate itself from nearby siblings like optimizer_edit_locale or optimizer_more_options, so it stops short of a 5.

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 add-vs-replace decision is spelled out via the optionId conditional, which is genuinely useful routing. But there is no guidance on when to use this instead of optimizer_edit_locale, optimizer_more_options, or optimizer_choose, so tool-level selection is left to inference.

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