Skip to main content
Glama

Create stage dashboard

create_stage_dashboard

Build a live-performance web dashboard with cue buttons, master faders, panic toggle, and audio readout. Access via any device on a trusted network—no app required.

Instructions

Serve one unified live-performance cockpit from a Web Server DAT — a single responsive web page (phone + laptop) that combines a grid of cue-launch buttons (recall named cues from manage_cue on the target COMP), master faders bound to chosen parameters, a big PANIC button (toggles the target COMP's Blackout/Freeze safety pars, the create_panic mechanism), and a live readout strip (a beat indicator plus a VU bar reading an audio-features Null CHOP). Open the URL — no app to install — and the page POSTs every control change back to the server, which applies it. SECURITY: like the bridge and create_phone_remote, this listens on all interfaces and accepts writes with NO auth, so use it only on a trusted network. Store cues with manage_cue, expose params with create_control_panel, and run create_panic first so the Blackout/Freeze toggles exist.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
targetNoControl COMP the dashboard is built inside. It holds the cues (manage_cue) and the Blackout/Freeze toggles (create_panic); cue buttons fire that COMP's cues and the panic button toggles its safety pars./project1
portNoTCP port for the dashboard web server (keep it distinct from the bridge's 9980 and phone_remote's 9981).
cuesNoCue names (stored with manage_cue) to expose as launch buttons, in order. Each becomes a button that instantly recalls its cue on the target COMP. Empty omits the cue grid.
fadersNoMaster faders, each a { label, par_path } that becomes a slider writing the parameter live. Empty omits the fader bank.
audio_featuresNoOptional audio-features Null CHOP path for the readout strip's VU bar (first channel). When omitted the readout still renders (beat from the timeline, VU flat).
nameNoName of the Web Server DAT (and its callbacks DAT) built inside the target COMP.stage_dashboard
layoutNoDashboard layout. 'v1' is the original (cues + faders + readout + panic). 'v2' adds stereo VU, BPM, cue timeline strip, FPS/cook overlay, and a sticky confirm-PANIC bar. Default 'v1' for backward compat.v1
tempo_channelNov2 only. Absolute path to a CHOP whose first channel is current BPM (e.g. a detect_tempo Null CHOP). Omitted = BPM widget hidden.
cue_timesNov2 only. Cue start times (seconds from show start) from compose_cue_list, for the timeline strip's playhead. Empty = strip omitted, cue grid still shown.
Behavior5/5

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

The description thoroughly discloses behavioral traits: it creates a web server that listens on all interfaces, accepts unauthenticated writes, and includes security implications. It also explains how the dashboard interacts with other tools (manage_cue, create_panic). This adds significant value beyond the sparse annotations.

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?

The description is a single paragraph of about 120 words, packing essential information without redundancy. It fronts the main purpose and includes security and prerequisite details. While dense, it remains readable and organized.

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?

Given 9 parameters (all well-documented) and no output schema, the description explains the tool's purpose, components, prerequisites, security, and layout options (v1/v2). It covers all necessary context for an AI agent to understand when and how to use the tool.

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?

With 100% schema coverage, each parameter already has detailed descriptions. The overall description adds context by explaining how parameters like 'cues' and 'faders' work together (e.g., 'cue buttons fire that COMP's cues') and why port numbers should be distinct. This enriches understanding beyond the schema.

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 clearly states the tool creates a 'live-performance cockpit' and lists its components (cue buttons, faders, panic button, readout). It mentions similarities to 'create_phone_remote' but doesn't explicitly differentiate its unique purpose from other sibling tools like 'create_control_panel'.

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?

The description provides context on when to use the tool (unified web dashboard) and mentions prerequisites and alternatives ('Store cues with manage_cue, expose params with create_control_panel, and run create_panic first'). It also includes a security warning about trusted networks, but lacks explicit 'when not to use' guidance.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Pantani/tdmcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server