Skip to main content
Glama

Get app

get_app
Read-onlyIdempotent

Get a single app by slug or id. Returns its metadata plus published_manifest — the TYPED selector of its last-published version (membership prefix rules + includes/excludes, and display), so you can read the app's shape from concrete fields. published_manifest is absent when the app is unpublished; to read/edit the raw definition body (draft or any version) use get_app_version.

Input Schema

NameRequiredDescriptionDefault
slugNothe app slug (provide this or app_id)
app_idNothe app id (provide this or slug)

Output Schema

NameRequiredDescriptionDefault
slugYes
app_idYes
descriptionYes
display_nameYes
latest_versionYes
published_manifestNo
last_published_versionYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so the safety profile is covered. The description adds genuine context beyond that: what published_manifest contains, and that it is missing for unpublished apps. It stops short of describing error behavior or pagination, but for a single-item read there is little else to disclose.

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?

Three sentences, front-loaded with the core action and immediately followed by return-value semantics and the sibling routing. The clause 'so you can read the app's shape from concrete fields' is mildly redundant with the preceding TYPED selector explanation, but nothing else is wasted.

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?

An output schema exists, so the description is not obliged to enumerate return fields, and it correctly focuses on the one nuance an agent cannot infer: published_manifest's absence for unpublished apps. The minor gap is that neither schema nor description states what happens if zero arguments are passed, which is relevant given required parameters is 0.

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 description coverage is 100% and both parameters already document the 'provide this or the other' relationship. The description's 'by slug or id' restates the schema rather than adding syntax, format, or precedence rules for when both are supplied — the baseline 3 applies.

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 ('Get a single app by slug or id') and goes further to name what is returned: metadata plus published_manifest, defined as the typed selector of the last-published version. It also explicitly distinguishes itself from get_app_version, so an agent can pick between the two 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?

Names the alternative tool and the exact condition that selects it: 'to read/edit the raw definition body (draft or any version) use get_app_version.' It also flags the edge case that published_manifest is absent for unpublished apps, so the agent knows when the result will be incomplete.

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