mcp-hs4
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| hs4.health.getB | Check HS4 connectivity, auth status and basic runtime metrics. |
| hs4.help.routeB | Route a natural-language goal to the safest recommended HS4 MCP tool workflow. |
| hs4.resolve.devicesC | Resolve likely device refs from a natural-language query. |
| hs4.resolve.eventsC | Resolve likely event IDs from a natural-language query. |
| hs4.resolve.camerasB | Resolve likely camera IDs from a natural-language query. |
| hs4.change.prepareC | Prepare a guarded mutation and return a commit token for two-phase execution. |
| hs4.change.commitB | Commit a previously prepared mutation token. |
| hs4.intent.device_set_by_nameC | Resolve a device by name and prepare/optionally commit a device state change. |
| hs4.intent.event_run_by_nameC | Resolve an event by name/group and prepare/optionally commit event execution. |
| hs4.intent.scene_activateC | Activate a scene by resolving an event first, with device fallback when no event is found. |
| hs4.selftest.runC | Run a read-only MCP/HS4 health and capability self-test matrix. |
| hs4.devices.listC | List HS4 devices with filtering by location, interface, and capability. |
| hs4.devices.getC | Retrieve one or more devices by reference ID. |
| hs4.devices.controls.getC | Retrieve control pair metadata for one or more device refs. |
| hs4.devices.status.getC | Fetch status snapshot for selected devices or full system. |
| hs4.devices.setB | Set a device state by control value (preferred) or setdevicestatus mode. Performs post-write verification by default and can auto-fallback to control_value when set_status does not converge. |
| hs4.events.listC | List HS4 events with optional group/name filters. |
| hs4.events.getA | Get a single HS4 event by id or exact group+name, including raw definition fields when available. |
| hs4.events.definition.getB | Read and normalize full event definitions from persisted HS4 event files (triggers/actions/conditions). |
| hs4.events.runA | Run an HS4 event by id, or by group+name. |
| hs4.scripts.runC | Run a HomeSeer script command through runscript.html action handler. This is powerful and should be tightly allowlisted in production. |
| hs4.plugins.function.callC | Call pluginfunction endpoint with positional P1..Pn parameters. |
| hs4.plugins.listA | List installed HS4 plugins and version/update metadata. |
| hs4.cameras.listA | List configured HS4 cameras. |
| hs4.cameras.snapshot.getC | Get camera snapshot payload for a camera ID. |
| hs4.cameras.panC | Pan/tilt command for a camera via pancamera endpoint. |
| hs4.audit.queryC | Query in-memory/local audit log entries produced by MCP operations. |
| hs4.admin.users.listC | List HS4 users in the admin namespace. |
| hs4.admin.users.createC | Create a user account through admin controls. |
| hs4.admin.users.updateB | Update an existing user account through admin controls. |
| hs4.admin.users.deleteB | Delete a user account through admin controls. |
| hs4.admin.users.set_roleB | Set the role for a user account through admin controls. |
| hs4.admin.plugins.catalog.getC | Get plugin catalog/install metadata in the admin namespace. |
| hs4.admin.plugins.installC | Install a plugin through admin controls. |
| hs4.admin.plugins.updateC | Update a plugin through admin controls. |
| hs4.admin.plugins.removeC | Remove a plugin through admin controls. |
| hs4.admin.plugins.set_enabledB | Enable or disable a plugin through admin controls. |
| hs4.admin.plugins.restartB | Restart a plugin through admin controls. |
| hs4.admin.interfaces.listC | List interfaces derived from HS4 status metadata. |
| hs4.admin.interfaces.addC | Add an interface through admin controls. |
| hs4.admin.interfaces.updateC | Update an interface through admin controls. |
| hs4.admin.interfaces.removeB | Remove an interface through admin controls. |
| hs4.admin.interfaces.restartC | Restart an interface through admin controls. |
| hs4.admin.interfaces.diagnosticsC | Collect interface diagnostics through the admin namespace. |
| hs4.admin.system.backup.startC | Start a system backup workflow through admin controls. |
| hs4.admin.system.restore.startB | Start a system restore workflow through admin controls. |
| hs4.admin.system.service.restartC | Restart an HS4 service through admin controls. |
| hs4.admin.system.shutdownB | Issue a controlled system shutdown through admin controls. |
| hs4.admin.system.config.getB | Read system-level configuration state through the admin namespace. |
| hs4.admin.system.config.setC | Apply system-level config settings through admin controls. |
| hs4.admin.cameras.config.listC | List camera configuration state in the admin namespace. |
| hs4.admin.cameras.config.createC | Create a camera config through admin controls. |
| hs4.admin.cameras.config.updateC | Update a camera config through admin controls. |
| hs4.admin.cameras.config.deleteC | Delete a camera config through admin controls. |
| hs4.admin.cameras.stream_profile.setC | Set a camera stream profile through admin controls. |
| hs4.admin.cameras.recording.setB | Set a camera recording state through admin controls. |
| hs4.admin.events.createB | Create an event definition through admin controls. |
| hs4.admin.events.updateC | Update an event definition through admin controls. |
| hs4.admin.events.deleteB | Delete an event definition through admin controls. |
| hs4.admin.config.device_metadata.setC | Set a device metadata property through admin controls. |
| hs4.admin.config.categories.listC | List inferred category/room metadata through the admin namespace. |
| hs4.admin.config.category.upsertC | Create or update a category through admin controls. |
| hs4.admin.config.category.deleteB | Delete a category through admin controls. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| hs4_safe_control | Prompt template for guarded HS4 control operations. |
| hs4_scene_operator | Prompt template for event discovery and execution workflow. |
| hs4_diagnostics | Prompt template for troubleshooting MCP-HS4 connectivity and control issues. |
| hs4_agent_contract | Prompt contract for safe, deterministic LLM operation against HS4 MCP. |
| hs4_admin_change_control | Prompt template for maintenance-window-gated admin mutations. |
| hs4_admin_backup_restore | Prompt template for backup/restore runbooks in the admin namespace. |
| hs4_admin_plugin_lifecycle | Prompt template for plugin install/update/remove/restart lifecycle. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| hs4-devices-catalog | Thin normalized HS4 device catalog (raw fields excluded by default). |
| hs4-devices-catalog-full | Full normalized HS4 device catalog including raw fields. |
| hs4-devices-status | Thin current HS4 status snapshot (raw fields excluded by default). |
| hs4-devices-status-full | Full current HS4 status snapshot including raw fields. |
| hs4-events-catalog | Normalized list of events. |
| hs4-capability-matrix | Capability->device ref matrix inferred from status/control metadata. |
| hs4-audit-recent | Most recent MCP operations and mutation attempts. |
| hs4-state-summary | Compact, low-token state summary for LLM context loading. |
| hs4-catalog-aliases | Config+learned alias catalog used by hs4.resolve.* tools. |
| hs4-agent-contract | Operational contract for LLM agents using the HS4 MCP toolset. |
| hs4-admin-users | Current user/admin state from the admin namespace. |
| hs4-admin-interfaces | Interface-level summary derived for admin operations. |
| hs4-admin-plugins | Plugin catalog/install state used by admin lifecycle tools. |
| hs4-admin-cameras-config | Camera configuration payload for admin camera controls. |
| hs4-admin-policy-state | Policy/guard defaults that impact admin mutation gating. |
| hs4-admin-audit-diff | Recent admin audit entries with before/after/diff metadata. |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/dmanfx/mcp-hs4'
If you have feedback or need assistance with the MCP directory API, please join our Discord server