Skip to main content
Glama
drohi-r
by drohi-r

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
COMPANION_HOSTNoCompanion instance IP127.0.0.1
COMPANION_PORTNoCompanion HTTP and websocket port8000
COMPANION_UI_HOSTNoBrowser UI bind address127.0.0.1
COMPANION_UI_PORTNoBrowser UI port8088
COMPANION_TIMEOUT_SNoHTTP request timeout in seconds10.0
COMPANION_TRANSPORTNoMCP transport (stdio, sse, streamable-http)stdio
COMPANION_ALLOWED_HOSTSNoComma-separated allowlist for target hosts. Set '*' to allow any.127.0.0.1,localhost,::1
COMPANION_WRITE_ENABLEDNoSet to '0' for read-only mode1

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_server_configA

Return the current Companion MCP server configuration.

get_custom_variableC

Get the value of a Companion custom variable.

get_module_variableC

Get a module variable value from a named Companion connection.

health_checkA

Probe Companion reachability and return API status details.

list_surfacesA

List connected Companion control surfaces.

get_button_infoB

Fetch the current control state and rendered preview metadata for a Companion button location.

get_button_runtime_summaryC

Return a compact runtime-oriented summary for a button.

verify_button_render_changeC

Compare the current button preview fingerprint to a previous preview hash.

set_button_style_verifiedC

Apply button style changes and verify whether the rendered button output actually changed.

get_page_gridB

Read a rectangular grid of button payloads for a page.

export_page_layoutC

Export a page region as a reusable layout payload.

snapshot_page_inventoryC

Export a page region with operator-focused button summaries, hashes, style, and feedback state.

save_page_inventory_snapshotC

Capture a page inventory snapshot and save it to a local checkpoint file.

load_page_inventory_snapshotC

Load a previously saved page inventory snapshot from disk.

list_page_inventory_snapshotsA

List saved page inventory snapshot files.

delete_page_inventory_snapshotC

Delete a saved page inventory snapshot file.

diff_page_inventoryC

Compare two page inventory snapshots and summarize added, removed, and changed buttons.

preview_restore_page_style_from_inventoryA

Resolve a captured page inventory into restore-style entries without writing to Companion.

preview_restore_page_style_from_snapshotB

Preview a restore plan from a saved snapshot, optionally filtered to selected coordinates.

save_page_style_presetC

Save the current page style state as a reusable preset file.

load_page_style_presetC

Load a saved page style preset file.

list_page_style_presetsA

List saved page style preset files.

delete_page_style_presetC

Delete a saved page style preset file.

preview_apply_page_style_presetA

Preview applying a saved preset onto a page, optionally with row/column offsets.

find_buttonsC

Find buttons by text, control id, control type, or integration metadata within a page region.

snapshot_custom_variablesC

Read a named set of custom variables into one snapshot payload.

press_buttonB

Press and release a button (runs both down and up actions).

press_button_verifiedB

Press a button and verify whether its visible or runtime state changed.

hold_buttonA

Press and hold a button (runs down actions only). Use release_button to let go.

release_buttonA

Release a held button (runs up actions).

rotate_leftC

Trigger a left rotation on an encoder button.

rotate_rightC

Trigger a right rotation on an encoder button.

set_stepC

Set the current step of a button action sequence.

set_button_textC

Change the text displayed on a button.

set_button_colorB

Change button colors. Use 6-digit hex (e.g. 'ff0000' for red). color=text color, bgcolor=background color.

set_button_styleA

Set multiple button style properties at once. All parameters optional — only provided values are changed.

set_custom_variableB

Set the value of a Companion custom variable.

rescan_surfacesA

Rescan for connected USB surfaces (Stream Deck, etc.).

press_button_sequenceA

Press multiple buttons in sequence with a configurable delay between each.

buttons_json: JSON array of {page, row, column} objects. delay_ms: milliseconds to wait between presses (default 100).

set_page_styleC

Batch-set style on multiple buttons on a page.

buttons_json: JSON array of {row, column, text?, color?, bgcolor?} objects.

set_page_style_verifiedC

Batch-set styles on a page and return verified per-button outcomes plus an inventory diff.

restore_page_style_from_inventoryC

Restore button style state from a previously captured page inventory.

restore_selected_page_style_from_inventoryC

Restore only selected coordinates from a captured page inventory.

restore_page_style_from_snapshotC

Restore button style state from a saved snapshot file, optionally filtered to selected coordinates.

apply_page_style_transactionC

Save a rollback checkpoint, apply verified page style changes, and return the checkpoint metadata.

rollback_page_style_transactionC

Rollback page styles from a saved transaction snapshot.

apply_page_style_presetC

Apply a saved page style preset with optional page override and coordinate offsets.

label_button_gridA

Label a grid of buttons from a flat list of names.

Fills left-to-right, top-to-bottom. Empty strings skip that position. labels_json: JSON array of strings, e.g. ["GO", "STOP", "", "BLACKOUT"] columns: buttons per row (default 8, use 5 for standard Stream Deck).

preview_page_styleC

Validate and preview a batch page-style operation without writing to Companion.

preview_label_button_gridC

Resolve a label grid into coordinates without writing to Companion.

preview_button_templateC

Preview a reusable button template placed at an origin on a page.

apply_button_templateC

Apply a reusable button template at an origin on a page.

press_bank_buttonA

Press a button using the legacy bank API (deprecated but still works). button is 0-indexed.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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/drohi-r/companion-mcp'

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