amaran-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| AMARAN_BACKEND | No | Selects the backend: auto (default), desktop, or bluetooth. In auto mode, amaran Desktop is used when running, otherwise Bluetooth is used. | auto |
| AMARAN_OPENAPI_KEY | No | Key from an approved amaran OpenAPI application, used for the amaran Desktop local API. Can alternatively be stored in ~/.config/amaran-mcp/openapi_key. If neither is set, the server signs with a random key. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_lightA | Read the light's power, mode, brightness, colour, effect and battery. Also lists what this model supports (colour temperature range, effects). |
| set_powerA | Turn the light on or off. On restores what it was doing before. |
| set_brightnessA | Change brightness only, keeping the current white, colour or effect. While music mode runs, this moves music mode's brightness range instead. |
| set_whiteA | Set white light by colour temperature. get_light shows this model's range. |
| set_colorA | Set a coloured light, by hue and saturation or by a #RRGGBB hex colour. |
| set_effectC | Start one of the light's built-in effects. |
| stop_effectA | Stop the running effect and return to the last steady white or colour. |
| save_sceneA | Save the light's current look under a name, replacing any scene with that name. |
| recall_sceneB | Put the light back into a saved scene. get_light lists the saved scenes. |
| start_music_modeA | Start music mode: the light follows what this Mac is playing (including AirPlay from an iPhone) with slow, ethereal colour. Moods: ethereal, deep, dawn. |
| stop_music_modeA | Stop music mode and return the light to how it was. |
| mark_music_momentB | Flag this moment in the music mode recording ("the chords just lifted"), for training. Call it the moment the user says so. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 12 tools
Each tool has a distinct verb targeting a different aspect of the lamp's state (power, brightness, white, colour, effect, scene, music mode), and descriptions explicitly clarify boundaries, e.g. set_brightness noting it only adjusts brightness while preserving the current mode. The only mild conceptual overlap, start_music_mode vs set_effect, is resolved by describing music mode as a separate behaviour. An agent can pick the right tool from names alone.
All twelve tools follow a strict snake_case verb_noun pattern (get_light, set_power, stop_effect, save_scene, start_music_mode), with natural mirrored pairs like start_music_mode/stop_music_mode and save_scene/recall_scene. No mixed casing or inconsistent verb styles.
Twelve tools is well within the ideal 3-15 range for a single-device lighting controller. Every tool maps to a real capability (state read, each light attribute, effects, scenes, music mode) without redundant entries.
The surface covers the full lifecycle for light control: read state, set power/brightness/colour/white, start and stop effects, save and recall scenes, and music mode. The main gap is scene management beyond save/recall — there is no delete_scene or rename, so saved scenes can only be overwritten, not removed.