Selora MCP Skill
Purpose
Use Selora MCP tools to move from read-only context to validated and explicitly approved home automation changes.
Preconditions
- Selora MCP server is reachable at
/api/selora_ai/mcp.
- A valid Home Assistant Bearer token is configured.
- For admin-gated or mutating tools, caller has Home Assistant admin privileges.
If preconditions fail, stop and report what is missing.
Trigger Phrases
Activate this skill when requests include language such as:
- "analyze my home"
- "show/list my Selora automations"
- "validate this automation YAML"
- "create/enable/delete this automation"
- "list suggestions" or "show proactive suggestions"
- "list patterns" or "show detected patterns"
- "accept/dismiss this suggestion"
- "run/trigger a Selora scan"
- "continue my Selora chat/session"
Do Not Trigger For
Do not activate this skill when the request is primarily about:
- Generic Home Assistant troubleshooting unrelated to Selora MCP tools
- Frontend/UI styling, dashboard layout, or Lovelace card design changes
- Non-Selora automation management unless explicitly requested to migrate into Selora flow
- Pure documentation writing that does not require MCP tool execution
Read/context tools:
selora_get_home_snapshot
selora_list_automations
selora_get_automation
selora_validate_automation
selora_list_sessions
selora_chat (admin-gated, stateful)
selora_list_patterns
selora_get_pattern
selora_list_suggestions
Mutating/admin-gated tools:
selora_create_automation
selora_accept_automation
selora_delete_automation
selora_accept_suggestion
selora_dismiss_suggestion
selora_trigger_scan
Identifier Integrity Rules
- Never invent
automation_id, session_id, pattern_id, or suggestion_id values.
- Resolve IDs from tool output only.
- If target identity is ambiguous, ask for clarification before mutating calls.
Safe Call Sequencing
A) Home context and discovery
- Call
selora_get_home_snapshot first.
- Use
selora_list_automations / selora_get_automation for automation context.
B) YAML-first automation flow
- Call
selora_validate_automation with external YAML.
- If invalid, return errors and stop.
- If valid, show normalized YAML + risk.
- Ask explicit confirmation.
- Call
selora_create_automation with enabled=false unless user explicitly requests immediate enablement.
- Optionally call
selora_accept_automation after explicit approval.
C) Natural-language automation flow
- Call
selora_chat with message (and session_id if continuing).
- If automation YAML is returned, summarize risk and ask for explicit approval.
- Only then call
selora_create_automation or selora_accept_automation.
D) Pattern/suggestion flow
- Optionally call
selora_trigger_scan when user asks for fresh results.
- Call
selora_list_suggestions and/or selora_list_patterns.
- If needed, call
selora_get_pattern for full detail.
- Ask explicit confirmation before
selora_accept_suggestion or selora_dismiss_suggestion.
Admin and Write Boundaries
Rules:
- Never execute mutating tools without clear user authorization in the current thread.
- For create/accept operations, default to disabled-by-default unless explicitly requested otherwise.
- For delete/dismiss operations, require explicit confirmation.
- If auth/admin checks fail, stop and report.
Confirmation Protocol
Use explicit confirmations such as:
Yes, create automation <automation_id or alias>.
Yes, enable automation <automation_id>.
Yes, delete automation <automation_id>.
Yes, accept suggestion <suggestion_id>.
Yes, dismiss suggestion <suggestion_id>.
If intent is implied but not explicit, ask and wait.
Risk-Gated Policy
- Always surface
risk_assessment before mutating automation or suggestion actions when available.
- If risk is high or safety flags are present, require a second confirmation.
- If risk data is missing, state that and require confirmation.
Don't Do This
- Do not skip validation for externally provided YAML.
- Do not invent IDs.
- Do not bulk-mutate without explicit user request.
- Do not silently enable automations after create.
- Do not mutate non-Selora automations through Selora lifecycle tools.
Output Contract for Agents
After tool calls:
- State what was read or changed.
- Include key IDs.
- Include risk summary for any proposed or accepted automation.
- Before mutating calls, provide a concise confirmation prompt.
- Compatible with Claude Code, Codex, OpenClaw, Cursor, and Windsurf.
- If runtime supports
allowed-tools, align it with this skill’s read-first and confirmation-gated mutation policy.
Synchronization Source of Truth
Canonical source file:
.claude/skills/selora-mcp/SKILL.md
Mirror targets that must remain identical:
.codex/skills/selora-mcp/SKILL.md
.openclaw/skills/selora-mcp/SKILL.md
.cursor/skills/selora-mcp/SKILL.md
.windsurf/skills/selora-mcp/SKILL.md