上記の記事で、HOME AssistantとLLMとの連携方法を調べた際、下表の「外部AI連携」というのがあり、ClaudeやCodexなどから、MCPを使ってHOME Assistantに問い合わせることによって情報を収集でき、自然言語または音声で、HOME Assistantに登録・公開された機器の状態を調べることができそうだったのでその方法を試してみた。
Home AssistantのLLM連携
| 系統 | 主な選択肢 | 特徴 | 向いている用途 |
|---|---|---|---|
| クラウドLLM | OpenAI / Anthropic / Google Gemini | 精度・会話力が高い | 音声操作、複雑な指示、通知要約 |
| ローカルLLM | Ollama | 自宅内処理・プライバシー重視 | ローカル運用、実験、クラウド依存を減らす |
| モデル仲介 | OpenRouter | 多数のモデルを切替可能 | モデル比較、低コスト運用、用途別モデル選択 |
| 外部AI連携 | MCP Server | Claude Desktop / Claude Code / CursorなどからHAを操作 | AI作業環境から家・タスク・センサー情報を使う |
(注)本記事の内容は正確性を保証するものではない。
(追記)2026年5月にHOME Assistantが大幅にバージョンアップされるようなので、その内容を本記事の最後に、
「2026年5月バージョンアップ内容」として追記した。
まず、どんなことができたかについて例を紹介する。
使用例(ターミナルでのClaude Codeチャット編)
最初にMacのClaude Desktopアプリで試した。
以下、ChatGPT 5.5 Thinkingとの会話。
どんなデバイスが登録されているか一覧で見せて
ユーザーのアクセス権限の制限を認識した。
The user is asking me to show them a list of devices registered in their Home Assistant. However, I don’t have access to their Home Assistant – they were asking Claude Code (in their terminal) to do this, not me (Claude in the web interface). I should clarify this.
完了
それはターミナルのClaude Code( claude コマンドの画面)で入力してください!
私(ブラウザ ? のClaude)はHome Assistantに接続していないので、デバイス一覧を取得できません。
整理すると
| MCP接続 | HA操作 | |
|---|---|---|
ターミナルの claude | ✅ あり | ✅ できる |
| ブラウザ ? のClaude(ここ) | ❌ なし | ❌ できない |
ターミナルに戻って同じ文を入力してみてください!
TerminalでClaude Codeを起動し、同じ質問をした。

❯ どんなデバイスが登録されているか一覧で見せて
⏺ Home Assistantのデバイス一覧を取得します。
Called HA (ctrl+o to expand)
⏺ 登録されているデバイスの一覧です(エリア別にまとめました):
寝室

—
スマートフォン・人物

—
システム・サービス

—
合計で約10台のデバイス(Apple TV、テレビ、アンプ、プリンタ、LaMetric、2台のスマートフォン)が主なデバイスとして登録されています。
✻ Baked for 14s
※ recap: Home AssistantのデバイスをMCP経由で取得・一覧表示した。次のアクションは特になし。 (disable recaps in /config)
デバイスの種類や状態が一覧表示され、この一覧を出力してみて初めて分かることがある。例えば、Apple TVが「リモコン」、プリンタが「センサー」、iPhoneなどのスマホが「デバイストラッカー」として登録されていることである。どのような種類のデバイスかが分かっていた方がデバイスの設定を行いやすい。
また、ユーザーやシステム・サービスもデバイス一覧に表示されるのは珍しい。
Sunというのは太陽光発電関係かと思っていたが、「日照」という種類に分類されているのも意外。こういう情報が必要なユーザーもいるのかもしれない。
使用例(Mac miniのCodexアプリでのチャット編)
以下、Codexアプリ(ChatGPT 5.5(中))との会話。
どんなデバイスが登録されているか一覧で見せて
29s作業しました
Home Assistant のデバイス登録一覧を読みます。エンティティではなく「デバイス」単位で、名前・メーカー・モデル・紐づくエリアが見える形にします。
1件の承認済みリクエスト、1 件のコマンドを実行
Home Assistant に登録されているデバイスは 18件です。
| デバイス | エリア | メーカー | モデル | エンティティ数 |
|---|---|---|---|---|
| Apple TV | 寝室 | Apple | Apple TV 4K (gen 3) | 2 |
| EPSON EW-M752T Series | 寝室 | EPSON | EW-M752T Series | 7 |
| My LaMetric | 寝室 | LaMetric Inc. | LM 37X8 | 10 |
| Theater | 寝室 | Marantz | NR1711 | 1 |
| Theater | 寝室 | Marantz | Marantz NR1711 | 1 |
| Pixel 8a | 未設定 | Pixel 8a | 133 | |
| iPhone17 | 未設定 | Apple | iPhone18,3(?) | 14 |
| ○○のMac mini | 未設定 | Apple | Macmini7,1(?) | 21 |
| Backup | 未設定 | Home Assistant | Home Assistant Backup | 5 |
| Forecast | 未設定 | Met.no | Forecast | 1 |
| Google Translate en com | 未設定 | Google Translate TTS | 1 | |
| Home Assistant Core | 未設定 | Home Assistant | Home Assistant Core | 3 |
| Home Assistant Host | 未設定 | Home Assistant | Home Assistant Host | 5 |
| Home Assistant Operating System | 未設定 | Home Assistant | Home Assistant Operating System | 3 |
| Home Assistant Supervisor | 未設定 | Home Assistant | Home Assistant Supervisor | 3 |
| Ollama Conversation | 未設定 | Ollama | llama3.2 | 1 |
| Studio Code Server (設定ファイル用 エディタ) | 未設定 | Home Assistant Community Apps | Home Assistant App | 7 |
| Sun | 未設定 | 9 |
気になる点として、Theater が2件あります。片方は Marantz 統合、もう片方は別経路で登録された同じAVアンプの可能性があります。
Apple TVのエンティティを表示してください
26s作業しました
Apple TVデバイスに紐づくエンティティだけを取り出します。状態も一緒に見えるようにします。
1件の承認済みリクエスト、1 件のコマンドを実行
Apple TV に紐づくエンティティは 2件です。
| エンティティ | 状態 | 公開先 |
|---|---|---|
| media_player.apple_tv | off | Assist / Alexa / Google Assistant |
| remote.apple_tv | on | Assist のみ |
デバイス情報:
- デバイス名: Apple TV
- エリア: 寝室
- モデル: Apple TV 4K (gen 3)
- ソフトウェア: 26.4
- 統合: apple_tv
Apple TVの状態を調べてください
23s作業しました
Apple TVまわりのエンティティだけをHome Assistantから読みます。状態・再生中のメディア情報・リモコン状態が分かる範囲でまとめます。
1件の承認済みリクエスト、1 件のコマンドを実行
Apple TVの現在状態を確認しました。
- media_player.apple_tv: off
- remote.apple_tv: on
- 最終状態変更:
- メディアプレイヤー: 2026-05-04 11:43:06 JSTごろに off
- リモコン: 2026-04-29 15:40:25 JSTごろから on
つまり、Home Assistantからは Apple TV本体/再生状態はオフ扱い、ただし リモコン接続エンティティは利用可能に見えています。現在再生中のタイトルやアプリ名は出ていません。
プリンタの電源は入っていますか
27s作業しました
プリンタ関連のエンティティをHome Assistantから確認します。EPSON本体の状態と低インクセンサーを見れば、少なくともHome Assistantから見えているかが分かります。
1件の承認済みリクエスト、1 件のコマンドを実行
はい、Home Assistant上ではプリンタは 電源が入っていて接続中に見えます。
- プリンタ: EPSON EW-M752T Series
- 状態: idle、つまり待機中
- 最終更新: 2026-05-04 23:43 JSTごろ
- インク残量も取得できています
シアン 81%、マゼンタ 82%、イエロー 84%、マットブラック 79%、フォトブラック 79%
少なくともHome Assistantからはプリンタがオンラインで、印刷待機状態として見えています。
デバイスには複数のエンティティがあり、どのエンティティを公開するかを設定しなければいけない。本記事執筆時は「HOME Assistant Cloud」サブスクのお試し期間(31日)中で、Alexaのスキル導入と、Google Assistantのサービス追加を行っているので、HOME Assistantの音声アシスタントAssistの他に、AlexaとGoogle Assistantが公開先としてなっている。このため、各デバイスで、制御・監視したいエンティティについて、どことどこに公開するかを手動で設定しなければいけない。デバイス数が多いと、どういう設定をしている状態なのか分かりにくくなるが、エンティティの公開先などを一覧表示させることによって、この管理が楽になり設定ミスを少なくすることができる。
また、エンティティが多いデバイスがあり、「remote.apple_tv」のように英語名称となっているが、このエンティティが何なのかを調べるのは非常に手間がかかる作業であるが、エンティティとその内容・状態・機能などをLLMが一覧表にしてくれれば、公開すべきエンティティを決める際に便利である。
各デバイスの詳細状態が、思った以上に出力されている。具体的には、Apple TVでは、本体の他にリモコンの状態が表示されたり、「最終状態変更」としていつ状態が変化したかが表示されている。プリンタでも、状態のほか、最終更新日時やインク残量も表示された。
外出時にリモートアクセスで、LLMから同様の質問を行ったが、このMCPを使った問い合わせはできなかった。しかし、「HOME Assistant Cloud」サブスクのお試し期間(31日)中なので、外出先でも、スマホのHOME Assistantアプリでデバイスの状態は確認できている。
CodexとClaude Codeに同じ質問「どんなデバイスが登録されているか一覧で見せて」を行ったのに、回答された情報は異なっていた。これはユーザーの意図を、それぞれのLLMがどのように推論したかによるが、裏を返せば、欲しい情報を具体的に指示しなければ回答されないということになりそうだ。逆に、指定しなかったからこそ、想定していなかった有用な情報が得られるということもある。そういう可能性も考えておくべきということか。
MCP接続要領(Codex編、抜粋)
CodexからHOME AssistantをMCPで制御できますか
はい、CodexからHome AssistantをMCPで制御できます。
ただし、前提は 「CodexがMCPクライアントとしてHome Assistant MCP Serverに接続できる環境」 を作ることです。
結論
| 構成 | 可否 | 説明 |
|---|---|---|
| Codex CLI / Codex IDE拡張から、自宅LAN内のHome Assistantへ接続 (今回実施した方法) | 可能 | いちばん現実的です。 CodexはMCPのStreamable HTTPとBearer token認証に対応しています。(OpenAI Developers) |
| Codex Cloudなど、クラウド側から自宅LAN内のHome Assistantへ直接接続 | そのままでは難しい | 192.168.x.xなどのローカルURLには外部から届かないためです。 外部公開URL、VPN、トンネル等が必要になります。 |
| ChatGPTアプリからHome Assistant MCPへ接続 | 可能だが外部公開URLが必要 | Home Assistant公式ドキュメントでは、ChatGPTは現時点でリモート接続のみ対応で、Home Assistantをインターネットから到達可能にする必要があると説明されています。(Home Assistant) |
仕組み
Home Assistant側には Model Context Protocol Server 統合があります。
これは、LLMクライアントにHome Assistantの情報や操作ツールを提供する機能です。
Home Assistantの機器制御はAssist API経由で行われ、操作できる対象は「公開したエンティティ」に限定できます。(Home Assistant)
つまり、流れはこうです。
Codex
↓ MCP
Home Assistant MCP Server
↓ Assist API
公開されたエンティティ
↓
照明・センサー・プリンタ・シーン・スクリプト等
Codexで使う場合の基本イメージ
Home Assistant側で次を確認します。
- 設定 → デバイスとサービス → 統合を追加
- Model Context Protocol Server を追加
- Control Home Assistant を有効化
- Assistに公開するエンティティを絞る
Home AssistantのMCP Serverは /api/mcp で公開され、クライアントには認証トークンが必要です。
OAuthまたは長期アクセストークンを使えます。(Home Assistant)
Codex側は ~/.codex/config.toml にMCPサーバー設定を入れます。
Codex CLIとIDE拡張は同じ設定を共有します。(OpenAI Developers)
例として、自宅LAN内のHome AssistantにCodex CLIからつなぐ場合は、考え方としては以下です。
[mcp_servers.homeassistant]
url = "http://192.168.x.x:8123/api/mcp"
bearer_token_env_var = "HOMEASSISTANT_TOKEN"
そしてMacのターミナルなどで、Home Assistantの長期アクセストークンを環境変数に入れます。
export HOMEASSISTANT_TOKEN="Home Assistantで作成した長期アクセストークン"
codex
CodexはStreamable HTTP形式のMCPサーバー、Bearer token認証、OAuth認証に対応しています。(OpenAI Developers)
注意点
特に重要なのは、Codexに何でも操作させないことです。
おすすめは、最初は次のような安全な対象だけ公開することです。
| 公開する対象 | 理由 |
|---|---|
| 照明のオン・オフ | 失敗しても危険が小さい |
| プリンタ状態センサー | 読み取り中心で安全 |
| 温湿度センサー | 読み取り中心で安全 |
| テスト用スクリプト | 動作確認に向く |
逆に、最初から以下は公開しない方が安全です。
| 対象 | 理由 |
|---|---|
| 玄関ロック | 誤操作リスクが大きい |
| 暖房・ヒーター | 火災・高温リスク |
| 防犯系オートメーション | 誤作動時の影響が大きい |
| 家全体の一括制御スクリプト | 影響範囲が広い |
あなたの環境でのおすすめ
これまでの話からすると、まずは ChatGPTから直接MCP接続 よりも、次の構成が安全で試しやすいです。
Mac または Windows上の Codex CLI
↓
自宅LAN内の Home Assistant
↓
Assistに公開した一部エンティティだけ操作
この構成なら、自宅のHome Assistantを無理に外部公開しなくても試せます。
まずは「照明を1つだけ公開」して、Codexから状態確認とオン・オフができるかを確認するのがよいです。
具体的に、HOME Assistant側と、Codex側の設定手順を教えてください
はい。おすすめは、Codex CLI / Codex IDE拡張を動かすMacまたはWindowsから、自宅LAN内のHome Assistantへ直接MCP接続する構成です。
Home Assistant側のMCP Serverは /api/mcp で公開され、Codex側は ~/.codex/config.toml にMCPサーバーとして登録します。
Home AssistantのMCP Server統合はHome Assistant 2025.2以降で使えます。(Home Assistant)
全体像
Codex CLI / Codex IDE拡張
↓ MCP / Streamable HTTP
http://HomeAssistantのIP:8123/api/mcp
↓
Home Assistant MCP Server
↓ Assist API
Assistに公開したエンティティだけ操作
Home Assistant公式ドキュメントでは、MCPクライアントからの制御はAssist API経由で行われ、操作できる対象は「公開されたエンティティ」に限定されると説明されています。(Home Assistant)
1. Home Assistant側の設定
手順1:MCP Server統合を追加する
Home Assistantの画面で、次の順に進みます。
設定
→ デバイスとサービス
→ 統合を追加
→ Model Context Protocol Server
公式手順でも、Settings > Devices & services > Add Integration > Model Context Protocol Server から追加すると説明されています。(Home Assistant)
追加後、統合カードに Model Context Protocol Server が表示されればOKです。
手順2:「Control Home Assistant」を有効にする
MCP Server統合の設定またはオプションで、次を有効にします。
Control Home Assistant:有効
これは、MCPクライアントからHome Assistantを操作できるようにする設定です。
ただし、有効にしても、操作できるのはAssistに公開したエンティティだけです。(Home Assistant)
手順3:Codexに操作させるエンティティだけ公開する
次に、Codexから見える機器を絞ります。
設定
→ 音声アシスタント
→ 公開 / Expose
ここで、最初は安全なものだけ公開してください。
おすすめの初期公開対象は次です。
| 種類 | 例 | 理由 |
|---|---|---|
| 照明 | Hue電球、Nanoleaf電球 | 誤操作しても危険が小さい |
| センサー | 温度、湿度、プリンタ状態 | 読み取り中心で安全 |
| スクリプト | テスト用スクリプト | 動作確認に向く |
| シーン | 「テスト照明オン」など | 範囲を限定できる |
Home Assistant公式も、音声アシスタントに公開するエンティティは最小限にすることを推奨しています。
公開数が多いと処理が遅くなり、LLM利用時はコンテキスト量も増えるためです。(Home Assistant)
最初は、例えば次のようなものだけで十分です。
light.hue_lamp_1
sensor.epson_printer_status
sensor.epson_black_ink
script.test_light_on
逆に、最初は以下を公開しない方が安全です。
| 公開しない方がよいもの | 理由 |
|---|---|
| 玄関ロック | 誤操作の影響が大きい |
| ガレージドア | 誤開閉リスク |
| ヒーター、暖房、電気ストーブ | 火災・高温リスク |
| 家全体の一括オフ/一括オン | 影響範囲が広い |
Home Assistantも、ロックやガレージドアのような機器が意図せず音声制御されないよう、エンティティ公開制御を使う設計になっています。(Home Assistant)
手順4:長期アクセストークンを作成する
CodexからHome Assistant MCP Serverへ接続するには、認証トークンが必要です。
Home Assistant公式では、OAuthに対応しない、またはトークン認証を使うMCPクライアント向けに、Long-Lived Access Token を作成して使えると説明されています。(Home Assistant)
Home Assistantで次の順に進みます。
左下のユーザー名をクリック
→ プロフィール
→ セキュリティ
→ 長期アクセストークン
→ トークンを作成
名前は分かりやすく、例えば以下にします。
codex-homeassistant-mcp
作成後、表示されたトークンをコピーします。
このトークンは後で再表示できないため、安全な場所に一時保存してください。
手順5:Home AssistantのMCP URLを確認する
ローカルLANで使う場合、URLは基本的に次の形です。
http://<Home AssistantのIPアドレス>:8123/api/mcp
例:
http://192.168.1.50:8123/api/mcp
または、名前解決できる場合は次でもよいです。
http://homeassistant.local:8123/api/mcp
Home Assistant公式ドキュメントでも、MCP Serverは /api/mcp で公開され、認証トークンが必要と説明されています。(Home Assistant)
2. Codex側の設定
ここでは、MacでCodex CLIを使う前提で説明します。Windowsでも考え方は同じです。
Codexは、MCP設定を config.toml に保存します。
ユーザー全体の設定ファイルは通常 ~/.codex/config.toml です。
Codex CLIとIDE拡張はこの設定を共有します。(OpenAI Developers)
手順1:Home Assistantトークンを環境変数に入れる
Macのターミナルで、まず設定ファイルを開きます。
nano ~/.zshrc
末尾に次を追加します。
export HOMEASSISTANT_TOKEN='ここにHome Assistantの長期アクセストークンを貼る'
保存します。
Ctrl + O
Enter
Ctrl + X
反映します。
source ~/.zshrc
確認します。
echo $HOMEASSISTANT_TOKEN
トークンらしき長い文字列が表示されればOKです。
Windows PowerShellの場合は、現在のセッションだけなら次です。
$env:HOMEASSISTANT_TOKEN="ここにHome Assistantの長期アクセストークンを貼る"
恒久的に保存する場合は次です。
setx HOMEASSISTANT_TOKEN "ここにHome Assistantの長期アクセストークンを貼る"
手順2:Codexの設定ファイルを開く
Macの場合:
mkdir -p ~/.codex
nano ~/.codex/config.toml
Codex IDE拡張を使っている場合は、歯車メニューから Codex Settings > Open config.toml を開けます。(OpenAI Developers)
手順3:Home Assistant MCP Serverを登録する
~/.codex/config.toml に、次を追加します。
[mcp_servers.homeassistant]
url = "http://192.168.1.50:8123/api/mcp"
bearer_token_env_var = "HOMEASSISTANT_TOKEN"
enabled = true
tool_timeout_sec = 60
192.168.1.50 の部分は、あなたのHome AssistantサーバーのIPアドレスに置き換えてください。
CodexのMCP設定では、Streamable HTTPサーバーに対して url を指定し、Bearer tokenは bearer_token_env_var で指定した環境変数から読み込めます。(OpenAI Developers)
homeassistant.local で接続できる環境なら、次でも構いません。
[mcp_servers.homeassistant]
url = "http://homeassistant.local:8123/api/mcp"
bearer_token_env_var = "HOMEASSISTANT_TOKEN"
enabled = true
tool_timeout_sec = 60
手順4:Codexを起動してMCP接続を確認する
ターミナルでCodexを起動します。
codex
CodexのTUI画面で、次を入力します。
/mcp
Codex公式ドキュメントでは、TUI上で /mcp を使うと有効なMCPサーバーを確認できると説明されています。(OpenAI Developers)
一覧に、例えば次のように表示されれば成功です。
homeassistant
3. 最初のテスト指示
いきなり機器を操作するより、最初は状態確認だけにしてください。
Codexに、例えば次のように依頼します。
Home Assistantで公開されているエンティティを確認してください。
または、
Home Assistantでプリンタの状態を確認してください。
照明を1つだけ公開している場合は、次のように試します。
Home Assistantでリビングの照明の状態を確認してください。
状態確認ができたら、次に操作を試します。
Home Assistantでリビングの照明をオンにしてください。
4. うまくいかない場合の確認ポイント
| 症状 | 原因候補 | 対処 |
|---|---|---|
Codexの /mcp に出ない | config.toml の場所が違う | ~/.codex/config.toml を確認 |
| 接続できない | Home AssistantのIPが違う | ブラウザで http://IP:8123 が開けるか確認 |
404 Not Found | Home Assistant側にMCP Server統合が入っていない | MCP Server統合を追加 |
401 Unauthorized | トークンが間違っている | 長期アクセストークンを作り直す |
| 状態は見えるが操作できない | Control Home Assistant が無効 | MCP Server統合のオプションを確認 |
| 操作対象が見つからない | Assistにエンティティを公開していない | 音声アシスタントの「公開」で追加 |
Home Assistant公式のトラブルシューティングでも、404 Not Found はMCP Server統合が未設定、401 Unauthorized は長期アクセストークンが正しくない場合の例として説明されています。(Home Assistant)
5. 最初に作るなら、この構成がおすすめです
あなたの環境では、まずこの形が安全です。
Mac または Windows上の Codex
↓
自宅LAN内の Home Assistant
↓
Assistに公開した照明・センサーだけ
ポイントは、外部公開せず、自宅LAN内だけで試すことです。
CodexはStreamable HTTP形式のMCPサーバーに対応しているので、Home Assistantの /api/mcp に直接接続できます。(OpenAI Developers)
まずは、以下の3つだけ公開して試すのがよいです。
照明 1個
プリンタ状態センサー
インク残量センサー
これで動作確認できてから、シーンやスクリプトを少しずつ追加するのが安全です。
MCP接続要領(Claude Code Sonnet 4.6 編、抜粋)
Claude CodeからもMCPを使って同様の問い合わせができますか
ChatGPT 5.5 Thinking の回答
はい、できます。むしろ今なら Home Assistant公式の MCP Server 統合を使うのが一番きれいです。
Claude Code からは、Home Assistant の MCP endpoint に接続します。
claude mcp add-json "HA" '{
"type": "http",
"url": "http://homeassistant.local:8123/api/mcp",
"oauth": {
"clientId": "http://localhost:12345",
"callbackPort": 12345
}
}' --client-secret
その後 Claude Code を起動して:
/mcp
から HA を選び、Authenticate します。これで Claude Code から「プリンタの状態は?」「Apple TVはオン?」のように聞けるようになります。
注意点は2つあります。
- Home Assistant 側で
Settings → Devices & services → Add Integration → Model Context Protocol Serverを追加しておく必要があります。 - Claude Code が触れる範囲は、Home Assistant の「公開エンティティ」設定に依存します。つまり、前に確認した
should_expose: trueのエンティティが対象になります。
長期アクセストークンを直接使う方式もありますが、Claude Code + 公式MCPなら OAuth 認証のほうが扱いやすく、安全寄りです。
参考: Claude Code MCP docs, Home Assistant MCP Server
以下、Claude Codeアプリとの会話。
CodexからMCPを使ってHOME Assistantにできるようになりました。 Codexに、Claude Codeからも接続したいので、その方法を教えてと質問したところ、下記をターミナルで実行するとのことでした。これでいいですか。
claude mcp add-json “HA” ‘{ “type”: “http”, “url”: “http://homeassistant.local:8123/api/mcp”, “oauth”: { “clientId”: “http://localhost:12345”, “callbackPort”: 12345 } }’ –client-secret
claude mcp add-json コマンドで問題ありません
手動で ~/.claude.json を直接編集するより、CLIコマンドを使う方が断然おすすめです。
理由:
- JSONの構文ミスによる設定ファイル破損リスクがない
- Claude Codeが内部でバリデーションしてから書き込む
--client-secretフラグにより、シークレットをコマンド履歴に残さず対話入力できる(セキュリティ面で◎)
実行前に確認しておきたい点
① --client-secret は必要か?
Home AssistantのMCPはOAuthを使いますが、clientSecret が不要なケース(PKCE フローのみ)も多いです。
Codexがなぜこのフラグをつけたか確認を。不要な場合は外して実行した方が余計なプロンプトが出ません:
claude mcp add-json "HA" '{
"type": "http",
"url": "http://homeassistant.local:8123/api/mcp",
"oauth": {
"clientId": "http://localhost:12345",
"callbackPort": 12345
}
}'
② スコープはグローバルでいいか?
デフォルトはグローバル設定(~/.claude.json)に書かれます。
特定プロジェクトだけで使いたい場合は --scope project を追加。
HA操作は普段使いなのでグローバルで問題なし。
③ 実行後の確認コマンド
claude mcp list
HA が表示されればOK。また ~/.claude.json を開いて mcpServers に追記されているか目視確認するのもアリ。
まとめ
CodexのコマンドをそのままコピペでOK。
ただし --client-secret が必要かだけ先に確認するとスムーズです。(省略した)
HAのMCP設定画面(設定 → デバイスとサービス → MCP)にclientSecretの記載があるかチェックしてみてください。
listで下記のように表示されました。
HA: http://homeassistant.local:8123/api/mcp (HTTP) – ! Needs authentication
登録成功!あとは認証するだけです
Needs authentication は正常な状態です。OAuth認証をまだ済ませていないというサインです。
認証手順
Claude Codeを起動して、HAのツールを呼び出すと自動でOAuthフローが始まります:
claude
起動後、チャットで例えば:
Home Assistantのライトの一覧を見せて
と入力すると、ブラウザが開いてHome Assistantのログイン画面が表示されます。
HAにログインして「許可」すると認証完了、以降は自動でトークンが使われます。
うまくいかない場合
ブラウザが開かない・エラーが出る場合は、HAの設定側でMCPのOAuthクライアントが正しく登録されているか確認してください(http://localhost:12345 がリダイレクトURIとして登録されているか)。
認証後に claude mcp list を再実行すると ! Needs authentication の表示が消えているはずです!
ブラウザで下記のように表示されました。
Authentication Successful
認証完了です!🎉
これでClaude CodeからHome AssistantをMCP経由で操作できます。
ターミナルのClaudeチャットに戻って、試しに話しかけてみてください:
リビングの電気をつけて
現在の室温を教えて
どんなデバイスが登録されているか一覧で見せて
うまく動いたらぜひroompineの記事ネタになりそうですね。「Claude CodeでHome Assistantを自然言語操作」はシニアオタク読者にもウケそうなテーマです!
下記の記事では、ローカルLLMとクラウドLLMを使い分け、高度な相談や自動化支援が必要な時だけ、HOME AssistantからクラウドLLMに問い合わせる方法を紹介したが、今回のMCPを使った方法(クラウドLLMからHOME Assistantに問い合わせる方法)を使えば、クラウドLLMのAPIを利用せずに、それらの用件の一部に対応することができそうなので、追加費用の発生を防ぐ、または、低減することができる。
2026年5月バージョンアップ内容
ChatGPT 5.5 Thinking の回答
2026年5月のHome Assistant更新は、Home Assistant 2026.5です。
現時点で確認できる公式情報は、2026.5 Beta / リリースノートで、Home Assistantは通常「毎月第1水曜日」に新バージョンを出す運用です。
なお、公式ページでは「ベータ版の内容は作業中で、最終版では一部機能が変わる可能性がある」とされています。(Home Assistant) (Home Assistant)
主な変更点
1. RF、無線リモコン系が正式な仕組みとして追加
今回の目玉は、Radio Frequency、つまりRF機器の扱いがHome Assistant本体側の正式な仕組みになることです。赤外線リモコン対応に続いて、RFリモコン式のブラインド、ガレージドア、シーリングファン、無線スイッチ、RFコンセント、ドアベルなどをHome Assistantに取り込みやすくなります。(Home Assistant)
新しいRFプラットフォームでは、ESPHome機器にCC1101などのサブGHz送信モジュールを付けたものや、Broadlink RM4 ProをRF送信機として利用できます。対応周波数としては315 / 433 / 868 / 915 MHz帯が想定され、Broadlink RM4 Proは433 MHz帯に限定されます。(Home Assistant)
ただし、これは「何でもすぐ操作できる」という意味ではなく、RF送信機側の対応と、操作対象機器ごとの統合が必要です。最初の対応例として、Honeywell String LightsとNovy Cooker Hoodが挙げられています。(Home Assistant)
2. ESPHome経由でシリアルポートをネットワーク越しに使える
ESPHomeの新しいserial proxy対応により、ESPHomeデバイスに接続したシリアル機器を、Home Assistant本体に直接USB接続しているように扱えるようになります。
たとえば、電力量計のP1ポート、RS232対応のAVアンプ、計測機器などを、Home Assistantサーバーの近くではなく、機器の近くに置いたESPHome経由で扱えるようになります。(Home Assistant)
これは、以前からあるBluetooth Proxyに近い考え方です。
Mac miniやNAS上のHome Assistant本体まで長いUSBケーブルを引く必要が減るため、設置自由度が上がります。
3. 新しい「Maintenance」ダッシュボード
内蔵ダッシュボードに、Maintenanceダッシュボードが追加されます。
特にバッテリー管理に重点が置かれており、Home Assistant内のバッテリー系エンティティを自動検出し、エリアごとに表示し、残量が少ないものを目立たせる仕組みです。(Home Assistant)
これは、電池式の人感センサー、温湿度センサー、ドアセンサーなどを多く使っている場合に便利です。
従来のようにエンティティ一覧を探したり、自作ダッシュボードを作ったりしなくても、電池切れ前の確認がしやすくなります。
4. Securityダッシュボードにアクティビティログ追加
Securityダッシュボードには、過去24時間のセキュリティ関連イベントを表示するActivityサイドバーが追加されます。
対象には、カメラ、鍵、アラーム、カバー、ドア・窓センサー、人の在宅・外出などが含まれます。(Home Assistant)
防犯カメラやドアセンサーを使っている場合、「いつドアが開いたか」「誰が帰宅したか」「カメラが動きを検知したか」を一覧で見やすくなります。
5. ダッシュボード用のShortcutカード追加
新しくShortcutカードが追加されます。これは通常のエンティティ操作カードではなく、ダッシュボード、ビュー、エリア、デバイスページ、URL、Assist起動、任意アクションなどへワンタップで移動・実行できるカードです。(Home Assistant)
たとえば、次のような使い方ができます。
| 使い方 | 例 |
|---|---|
| 画面移動 | エネルギーダッシュボードへ移動 |
| 外部URL | ルーターやNASの管理画面を開く |
| Assist起動 | 音声アシスタントをワンタップ起動 |
| 一括操作 | 外出時に全照明をオフ |
あなたのようにHome Assistantをスマホ、CarPlay、ダッシュボードから使う構成を考えている場合、このShortcutカードはかなり実用的です。
6. メディアプレイヤー用Tileカードが強化
メディアプレイヤー向けのTileカードでは、入力ソース選択とサウンドモード選択がカード上でできるようになります。
また、再生・停止・前へ・次へ・電源など、表示するボタンを選んで並べ替えられるようになります。(Home Assistant)
Apple TV、Sonos、AVアンプ、Music Assistantなどを使っている場合、リモコン風のダッシュボードを作りやすくなります。
7. オートメーションの「一定時間続いたら」が作りやすくなる
Home Assistant Labsの機能として進んでいる目的別トリガー・条件に、duration、つまり「一定時間その状態が続いたら」という指定が入りました。
たとえば「玄関ドアが2分以上開いたまま」「人感センサーが15分間反応しない」「ガレージドアが日没後30分以上開いている」といった条件を、より自然に設定できます。(Home Assistant)
これはかなり実用的です。
従来はYAMLやテンプレートで書いていたような条件が、UI中心で作りやすくなります。
8. 新しい統合が追加
2026.5では、Denon RS232、Duco、EARN-E P1 Meter、Eurotronic Comet Blue、Fumis、Honeywell String Lights、Kiosker、Novy Cooker Hood、OMIE、Radio Frequency、Teleinfo、Victron GXなどの新しい統合が追加されています。(Home Assistant)
特に注目しやすいのは、Denon RS232、Radio Frequency、Victron GXあたりです。ローカル制御、エネルギー管理、RF機器統合の方向に強化されています。
9. 既存統合の改善
既存統合では、Matter、ESPHome、Shelly、Sonos、Apple TV、Music Assistant、Roborock、WLED、Broadlink、SwitchBot、Tado、SolarEdge、OpenAI Conversation、Anthropicなどに改善が入っています。(Home Assistant)
あなたの環境に関係しそうなものでは、次が目立ちます。
| 統合 | 変更内容 |
|---|---|
| Matter | Matter対応ラドンセンサー対応 |
| ESPHome | 給湯器エンティティのaway mode対応 |
| Apple TV | Home AssistantからApple TVへキーボード文字入力サービス対応 |
| Broadlink | 赤外線プラットフォームの送信機として利用可能に |
| SwitchBot | 空気清浄機の風量割合制御、内蔵照度センサー切替ボタン |
| OpenAI Conversation | GPT-5.5 conversation modelとgpt-image-2対応 |
| Anthropic | Claude Opus 4.7対応 |
OpenAI Conversation統合の更新は、クラウドLLMやHome Assistant連携を調べているあなたには特に関係があります。
ただし、これは「Home AssistantのOpenAI Conversation統合が新しいモデルに対応する」という話であり、MCP連携そのものの追加とは別です。(Home Assistant)
10. 通知、検索、テンプレート周りも改善
Mobile app通知がエンティティとして扱えるようになり、複数のスマホ・タブレットをグループ化して一括通知しやすくなります。
また、統合詳細ページに検索バーが追加され、Z-Wave、Zigbee、ESPHomeなど多数の機器がある環境で探しやすくなります。(Home Assistant)
テンプレート関連では、ドキュメントが大幅に再構成され、学習ページ、チュートリアル、200以上の関数・フィルター・テストの解説、エラー解説ページが整備されています。(Home Assistant)
さらに、コードエディタではJinja2テンプレートやYAMLの補完が強化され、states()、is_state()、state_attr()などでエンティティID候補が出るようになります。(Home Assistant)
注意点:互換性に影響する変更
更新前に注意すべき点もあります。
Ringではドアベルイベントが従来のdingから標準化されたringに変わるため、Ringドアベルの自動化を使っている場合は修正が必要です。
Supervisorのアクションは失敗時にエラーを返すようになり、必要ならcontinue_on_error: trueを設定する必要があります。
Webhookではlocal_onlyをtrueまたはfalseの真偽値で書く必要があります。(Home Assistant)
また、pilight統合は依存ライブラリの問題で無効化され、LANnouncerは削除されています。(Home Assistant) (Home Assistant)
あなたの環境で特に見るべきポイント
今回の2026.5は、あなたの関心から見ると、特に次の4点が重要です。
| 注目点 | 理由 |
|---|---|
| RF対応 | SwitchBotや赤外線・無線リモコン系の話と近く、今後の機器統合の幅が広がる |
| ESPHome Serial Proxy | Mac mini上のHome Assistantと離れた場所のシリアル機器をつなぎやすくなる |
| Shortcutカード | スマホ、CarPlay、タブレットダッシュボードで操作入口を作りやすい |
| OpenAI Conversation更新 | Home AssistantとクラウドLLM連携の調査に関係する |
更新するなら
ベータ版を試す目的でなければ、正式リリース後に、バックアップを取ってから更新するのが安全です。
特にRing、Webhook、Supervisor、pilight、LANnouncerを使っている場合は、更新前に自分の環境で該当する自動化や設定がないか確認した方がよいです。
かなり大きなバージョンアップのようだ。すでにベータ版に関するYouTube動画も出ており、RS232C関連のシリアル機器が繋がるようになること、対応LLMの種類が増えること、「一定時間続いたら」という条件追加、overviewをはじめとするダッシュボードの自由度向上・新規ボード追加などが発表されている。


