Skip to main content
Glama

App Store live-preview payload (internal)

preview_app_store_entry
Read-onlyIdempotent

Fetch an App Store entry's UI, manifest, and mock-data fixtures so an App Store app can render a live sandboxed preview card; read-only, nothing installed.

Instructions

Internal: returns an App Store entry's ui and manifest plus its mock-data fixtures, so the App Store app can render a LIVE sandboxed preview card (srcdoc + stub oma + mock snapshot). Read-only; nothing is installed. Not useful to call directly.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYesApp Store entry name (see app_store_list)

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
htmlYesthe entry's ui slot (field named for its format — the preview iframe srcdocs it)
nameYes
titleYes
categoryYes
fixturesYesembedded mock snapshot items, or null if the entry ships none
manifestYes
descriptionYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.7.2

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare read-only, idempotent, non-destructive, closed-world behavior, and the description reinforces this with 'nothing is installed' and 'sandboxed'. It also adds real behavioral context the annotations cannot convey: the payload is srcdoc + stub oma + mock snapshot. No rate limits or error behavior are described, but that is minor here.

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?

One dense sentence plus two short qualifiers, with the important context ('Internal:', 'Read-only', 'Not useful to call directly') front-loaded and easy to scan. Slightly jargon-heavy (srcdoc, stub oma) but not 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?

An output schema exists, so return values need no prose, and the single-parameter surface is fully covered by the schema. For an internal read-only tool the description supplies enough to understand what it does and to avoid misusing it.

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% and the single parameter ('name') is already documented in the schema with a pointer to app_store_list; the description adds no syntax, format, or naming detail beyond that. Baseline 3 is appropriate.

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?

The description names a specific verb (returns) and enumerates the exact payload: an entry's ui, manifest, and mock-data fixtures, plus the end goal (render a live sandboxed preview card). It clearly is not install_from_app_store or get_app, though it never explicitly names a sibling to compare against.

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

Usage Guidelines4/5

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

It gives a clear negative directive ('Not useful to call directly') and explains why (internal, consumed by the App Store app to render a preview), which effectively tells an agent to stay away. It does not, however, state the positive condition under which a direct call is warranted.

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