Skip to main content
Glama

Save editor config as project

project_save

Persists the current editor configuration to the project list, updating an existing project by ID or adding a new one, then marks the editor as saved.

Instructions

Persist the current editor config into the project list (the app store's updateFirmware: updates by id, adds if new) and mark the editor as saved. MUTATING (writes the project list).

Input Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.4.0

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare a non-idempotent, non-destructive write; the description adds real value by naming the write target (the project list) and the upsert semantics ('updates by id, adds if new') plus the side effect of marking the editor saved. It does not say what happens on failure or whether an existing project entry is overwritten in detail, keeping it below a 5.

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?

Two sentences, front-loaded with the action and followed by the mutating warning. The parenthetical referencing the app store's 'updateFirmware' is opaque jargon that costs a little clarity without adding actionable meaning.

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?

For a zero-parameter mutation with full annotation coverage and no output schema, the description covers what is written and the upsert behavior. It could note the resulting project identity or state change on the editor, but nothing essential is missing for correct invocation.

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?

Zero parameters, so there is nothing for the description to disambiguate; the baseline of 4 applies. The description correctly signals that the tool acts on implicit editor state rather than arguments.

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+resource: persist the current editor config into the project list and mark the editor saved. The 'adds if new' clause distinguishes it from a pure create (project_create) without naming that sibling, so it is clear but not explicitly differentiated.

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?

Usage is only implied: an editor must be open with a current config, and this is the persist step. There is no explicit when-to-use vs project_create/project_list guidance, and no stated preconditions or failure situations.

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