Skip to main content
Glama

Create app version

create_app_version

App versioning — add a new version to an EXISTING app (by app_id) to change its membership selector (prefix rules, includes/excludes) or display. Author the new version's definition against the schema from get_app_definition_schema. Pass publish=true to make it the live manifest immediately. (For a brand-new app, use create_app.)

Input Schema

NameRequiredDescriptionDefault
app_idYesThe app id to add a version to.
publishNoIf true, immediately publish the version this call creates (the common create-then-publish in one step). Defaults to false; omit to leave the version as an unpublished draft.
definitionYesThe app definition, as a JSON object. Fetch the exact JSON Schema it must satisfy with get_app_definition_schema and author against it (or copy an existing one with the get_*_version tool). The owning service validates it on submit.

Output Schema

NameRequiredDescriptionDefault
slugYes
app_idYes
versionYes
publishedYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnly=false, destructive=false, openWorld=true, idempotent=false. The description adds value beyond them: it clarifies that publish=true makes the version the live manifest immediately while omitting it leaves an unpublished draft, and that the service validates the definition on submit. It stops short of saying whether an unpublish/rollback path exists once a version goes live.

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?

Three sentences, front-loaded with the core operation, then the schema-source instruction, then the publish switch, then the sibling exclusion. No filler; every clause carries routing or behavioral information.

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 mutation against a nested free-form object, the description supplies the missing pieces: where the JSON Schema lives, that it is validated on submit, what publish does, and which sibling handles brand-new apps. Return values are covered by the existing output schema, so nothing material is left unexplained.

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?

Schema coverage is 100%, so the baseline is 3, but the description adds real meaning: it ties publish to its live-manifest consequence and tells the caller where to obtain the definition contract (get_app_definition_schema, or copy via get_*_version). That is more than a restatement of the schema text.

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 and resource ('add a new version to an EXISTING app (by app_id)') and scopes it to changing the membership selector or display. It also explicitly disambiguates from the sibling create_app, so an agent can route without opening either schema.

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?

Gives the condition for use (modifying an existing app's selector/display), names the alternative for the opposite case ('For a brand-new app, use create_app'), and routes to get_app_definition_schema for authoring. The publish=true vs. draft default fork is spelled out as a decision the caller makes.

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