Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
OPENHAB_URLYesThe URL of your OpenHAB instance (e.g., http://openhab:8080)
OPENHAB_API_TOKENYesYour generated long-lived API token

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

CapabilityDetails
tools
{
  "listChanged": true
}
resources
{
  "subscribe": true,
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
initial_discoveryA

One-shot bootstrap: returns a compact guidance context with a room-grouped quick-reference of every item (name, type, live state). Call ONCE on first contact. Do NOT also call generate_home_blueprint or get_system_summary — this covers all discovery needs.

get_system_summaryA

High-density snapshot of the OpenHAB system: items, things, rooms, health.

generate_home_blueprintA

Full room-by-room Markdown guide of the home. Use for layout exploration or when a user explicitly asks for a home overview — NOT as a first step (use initial_discovery instead).

resolve_itemA

PRIMARY item finder. Converts natural-language intent ("kitchen light", "front door sensor") into ranked matches with exact names, types, rooms, and live states. Call this BEFORE any other search.

send_commandC

Send a command (ON, OFF, numeric value, etc.) to a single item.

execute_batchA

Execute multiple commands in parallel. Use for "Goodnight", scene-like, or multi-device actions.

schedule_commandA

Schedule a command to run after a delay (e.g. "turn off in 20 minutes").

query_itemsC

Read item data. action: all (list with optional filters), get (by name), multi (batch by names), search (fuzzy text), master_search (across items+things+rules), room_inventory, semantic_path, neighbors, schema.

query_thingsC

Read thing data. action: all (list all), get (by UID), status (status info).

query_rulesB

Read automation rules. action: all (list all), get (by UID).

manage_itemB

Modify items. action: create_or_update, delete, update_state, add_tag, remove_tag, set_metadata, remove_metadata. WARNING: Do NOT use create_or_update for semantic model fixes (parentage, hierarchy). Use remediate action=semantic_fix instead. create_or_update safely merges existing groupNames and tags on update, but semantic relationships (hasLocation, isPointOf, isPartOf) must go through semantic_fix. WARNING: Do NOT use create_or_update for semantic model fixes (parentage, hierarchy). Use remediate action=semantic_fix instead. create_or_update safely merges existing groupNames and tags on update, but semantic relationships (hasLocation, isPointOf, isPartOf) must go through semantic_fix.

manage_thingC

Manage things. action: create, update, delete, enable, disable, configure.

manage_ruleC

Manage automation rules. action: create, update, delete, enable, disable, run.

manage_linkB

Manage item-channel links. action: list, link, unlink, configure (apply a link profile).

manage_sceneC

Named scene management. action: capture (save current item states), activate (restore a saved scene).

manage_logsB

OpenHAB log access. Logs are on the remote OpenHAB server — ask the user for the path and call set_folder first. action: set_folder, recent, historical, search.

manage_persistenceC

Persistence data operations. action: services (list), get_data, store_data, statistics, summarize.

manage_uiD

UI, add-ons, sitemaps, semantic tags, and discovery inbox. action: addons, install_addon, uninstall_addon, sitemaps, sitemap_to_main_ui, ui_components, ui_tiles, generate_widget, semantic_tags, create_tag, update_tag, delete_tag, inbox_list, inbox_approve, inbox_ignore, inbox_unignore.

manage_systemD

System config, loggers, voice/audio, and binding scans. action: system_info, services, service_config_get, service_config_update, logger_list, logger_set, transformations, templates, trigger_scan, voice_say, voice_interpret, voices, audio_sinks, audio_sources, habot.

analyze_homeA

Home-wide analysis. action: health (offline + battery), safety_audit, energy, stale_items, orphans (broken links), semantic_audit (returns structured SemanticIssue objects with issue type + safeFix suggestions — same logic as the OpenHAB MainUI model page), rule_conflicts, find_equipment (by room + type), voice_exposure (Google/Alexa mappings).

diagnose_itemA

Item diagnostics. action: explain (forensic state + rules + history), topology (Mermaid home graph).

automationB

Automation generation and testing. action: generate_rule (from NL), discover_patterns (temporal correlation), shadow_run (dry-run preview), simulate (predict outcome + rule chains), validate_rule (JS syntax check).

remediateB

Bulk remediation and generation. action: bulk_update (batch tags/groups), create_equipment (auto-provision from thing), suggest_tags, standardize_naming, optimize_persistence, export_snapshot, boilerplate (TS types). semantic_fix: safely fix ONE item's semantic parent without touching other fields or groupNames — uses targeted REST endpoints (metadata only + additive group). semantic_fix_all: run full audit and auto-apply all safely fixable issues (dryRun=true for preview).

control_mediaC

Control a media player equipment item. action: play, pause, next, previous, volume_up, volume_down.

mcp_statusB

MCP server metadata. action: health (SSE/cache metrics), capabilities, prompt_context (AI priming context for this home).

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
OpenHAB ItemsA list of all items and their current states
OpenHAB ThingsA list of all configured things and their status
OpenHAB Discovery InboxA list of discovered but unconfigured things in the inbox
OpenHAB System SummaryA token-efficient overview of the system state for LLM context optimization
OpenHAB Item SchemaUltra-minimal list of item names and types for zero-token discovery
OpenHAB AI Prompt ContextPre-baked system prompt fragment to prime any AI agent for this specific home

TDQS

B3/5.0

Scored across 25 tools

Disambiguation3/5

Several tools overlap in practice: query_items vs resolve_item, initial_discovery vs get_system_summary vs generate_home_blueprint, and analyze_home vs diagnose_item vs remediate semantic fixes. The descriptions try hard to disambiguate with explicit 'PRIMARY' and 'do NOT use' warnings, which helps but also signals genuine boundary confusion.

Naming Consistency4/5

Most names follow a predictable snake_case verb_noun or manage_/query_ pattern (manage_item, query_things, send_command, execute_batch). Minor deviations like remediate, automation, initial_discovery, and mcp_status are readable but break the pattern slightly.

Tool Count3/5

At 25 tools, the surface is at the heavy end, and many tools are large action multiplexers with 5-15 actions each. The domain is broad, but overlapping discovery, query, and analysis tools make the count feel excessive rather than tightly scoped.

Completeness5/5

Coverage is broad and lifecycle-complete across items, things, rules, links, scenes, persistence, logs, UI, system config, media control, and automation generation. No obvious core OpenHAB operation appears missing.

Maintenance

ActivityMaintained
ResponsivenessNo recent community issues