{
  "schemaVersion": "1.0",
  "item": {
    "slug": "mcp-hass",
    "name": "🏠 Home Assistant via MCP protocol",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/al-one/mcp-hass",
    "canonicalUrl": "https://clawhub.ai/al-one/mcp-hass",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/mcp-hass",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=mcp-hass",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-07T17:22:31.273Z",
      "expiresAt": "2026-05-14T17:22:31.273Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
        "contentDisposition": "attachment; filename=\"afrexai-annual-report-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/mcp-hass"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/mcp-hass",
    "agentPageUrl": "https://openagent3.xyz/skills/mcp-hass/agent",
    "manifestUrl": "https://openagent3.xyz/skills/mcp-hass/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/mcp-hass/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Home Assistant",
        "body": "Control Home Assistant smart home and query states using MCP protocol."
      },
      {
        "title": "Prerequisites",
        "body": "Enable MCP server in Home Assistant:\n\nBrowse to your Home Assistant instance.\nGo to  Settings > Devices & services.\nIn the bottom right corner, select the + Add Integration button.\nFrom the list, select Model Context Protocol.\nFollow the instructions on screen to complete the setup."
      },
      {
        "title": "Usage",
        "body": "# Get states\nmcporter call home-assistant.GetLiveContext\n\n# Turn on the device\nmcporter call home-assistant.HassTurnOn(name: \"Bedroom Light\")\nmcporter call home-assistant.HassTurnOn(name: \"Light\", area: \"Bedroom\")\n\n# Turn off the device\nmcporter call home-assistant.HassTurnOff(name: \"Bedroom Light\")\nmcporter call home-assistant.HassTurnOff(area: \"Bedroom\", domain: [\"light\"])\n\n# Control light\n# brightness: The percentage of the light, where 0 is off and 100 is fully lit.\n# color: Name of color\nmcporter call home-assistant.HassLightSet(name: \"Bedroom Light\", brightness: 50)\n\n# Control fan\n# percentage: The percentage of the fan, where 0 is off and 100 is full speed.\nmcporter call home-assistant.HassFanSetSpeed(name: \"Fan\", area: \"Bedroom\", percentage: 80)\n\nExecute the following command to learn about specific usage methods:\n\nmcporter list home-assistant --schema --all-parameters"
      },
      {
        "title": "Config",
        "body": "When prompted that the MCP server does not exist, remind the user to configure the HASS_BASE_URL and HASS_ACCESS_TOKEN environment variables by executing the following command to add the configuration:\n\nmcporter config add home-assistant \\\n  --transport http \\\n  --url \"${HASS_BASE_URL:-http://homeassistant.local:8123}/api/mcp\" \\\n  --header \"Authorization=Bearer \\${HASS_ACCESS_TOKEN}\""
      },
      {
        "title": "About mcporter",
        "body": "When command mcporter does not exist, use npx -y mcporter instead.\nhttps://github.com/steipete/mcporter/raw/refs/heads/main/docs/call-syntax.md\nhttps://github.com/steipete/mcporter/raw/refs/heads/main/docs/cli-reference.md"
      }
    ],
    "body": "Home Assistant\n\nControl Home Assistant smart home and query states using MCP protocol.\n\nPrerequisites\n\nEnable MCP server in Home Assistant:\n\nBrowse to your Home Assistant instance.\nGo to Settings > Devices & services.\nIn the bottom right corner, select the + Add Integration button.\nFrom the list, select Model Context Protocol.\nFollow the instructions on screen to complete the setup.\nUsage\n# Get states\nmcporter call home-assistant.GetLiveContext\n\n# Turn on the device\nmcporter call home-assistant.HassTurnOn(name: \"Bedroom Light\")\nmcporter call home-assistant.HassTurnOn(name: \"Light\", area: \"Bedroom\")\n\n# Turn off the device\nmcporter call home-assistant.HassTurnOff(name: \"Bedroom Light\")\nmcporter call home-assistant.HassTurnOff(area: \"Bedroom\", domain: [\"light\"])\n\n# Control light\n# brightness: The percentage of the light, where 0 is off and 100 is fully lit.\n# color: Name of color\nmcporter call home-assistant.HassLightSet(name: \"Bedroom Light\", brightness: 50)\n\n# Control fan\n# percentage: The percentage of the fan, where 0 is off and 100 is full speed.\nmcporter call home-assistant.HassFanSetSpeed(name: \"Fan\", area: \"Bedroom\", percentage: 80)\n\n\nExecute the following command to learn about specific usage methods:\n\nmcporter list home-assistant --schema --all-parameters\nConfig\n\nWhen prompted that the MCP server does not exist, remind the user to configure the HASS_BASE_URL and HASS_ACCESS_TOKEN environment variables by executing the following command to add the configuration:\n\nmcporter config add home-assistant \\\n  --transport http \\\n  --url \"${HASS_BASE_URL:-http://homeassistant.local:8123}/api/mcp\" \\\n  --header \"Authorization=Bearer \\${HASS_ACCESS_TOKEN}\"\n\nAbout mcporter\nWhen command mcporter does not exist, use npx -y mcporter instead.\nhttps://github.com/steipete/mcporter/raw/refs/heads/main/docs/call-syntax.md\nhttps://github.com/steipete/mcporter/raw/refs/heads/main/docs/cli-reference.md"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/al-one/mcp-hass",
    "publisherUrl": "https://clawhub.ai/al-one/mcp-hass",
    "owner": "al-one",
    "version": "1.0.1",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/mcp-hass",
    "downloadUrl": "https://openagent3.xyz/downloads/mcp-hass",
    "agentUrl": "https://openagent3.xyz/skills/mcp-hass/agent",
    "manifestUrl": "https://openagent3.xyz/skills/mcp-hass/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/mcp-hass/agent.md"
  }
}