LIFX LAN MCP について
LIFX LAN MCPは、クラウド接続なしでローカルネットワーク上のLIFXライトを操作するMCPサーバーです。ライトの状態確認や色の変更を行うLLMクライアント向けです。
主な機能
- 01LAN上のLIFXライトを検出
- 02ライトの状態とラベルを確認
- 03ライトのオン・オフ
- 04色と切り替え時間の設定
- 05stdioとHTTP/SSEに対応
活用シーン
- 01ライトを検出して状態を確認
- 02指定したライトのオン・オフ
- 03色、明るさ、色温度の調整
MCP 対応
LIFXライトの検出、状態取得、オン・オフ、色設定のツールを公開します。サーバーはライトと同じWi-Fiネットワーク上で動作する必要があります。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
5掲載時のツール一覧 · 3 週間前に更新
このツールにパラメーターはありません。
詳細
LIFX LAN MCP

Model Context Protocol(MCP) サーバーです。クラウドに接続せず、ローカルエリアネットワーク(LAN)経由で LLM が LIFX ライトを操作できるようにします。
注意: ツールを動作させるには、MCP サーバーを LIFX ライトと同じ Wi-Fi ネットワーク上で実行する必要があります。
機能
- ネットワーク上で利用可能なすべての LIFX ライトを一覧表示します
- ライトの現在の状態(色、オン/オフ、ラベル)を取得します
- ライトをオン/オフにします
- ライトの色を変更します
- ローカルネットワーク上で動作します(クラウドは不要です。サーバーは同じネットワーク上で実行する必要があります)
- トランスポートを設定できます(sse または stdio)
インストール
NPX(ローカル stdio 経由で設定)- デフォルト
LLM の MCP 設定ファイルに、以下または同様の設定を追加します(例:Claude Desktop の場合、claude_desktop_config.json です)。
{
"mcpServers": {
"lifx-lan-mcp": {
"command": "npx",
"args": [
"-y",
"lifx-lan-mcp"
]
}
}
}
サーバーの実行
サーバーは stdio(デフォルト)または HTTP サーバーモードの 2 つのモードで実行できます。サーバーは 2025-03-26 と 2024-11-05 の両方のプロトコルバージョンに対応しています。
Stdio モード(デフォルト)
stdio モードはサーバーを実行する最も簡単な方法です。標準入力/出力を通じて LLM と直接通信します。これはデフォルトのモードで、追加の設定は必要ありません。このモードでは、MCP サーバーは通信相手のクライアントによって直接起動されます。
# Run in stdio mode (default)
npx lifx-lan-mcp
# Or explicitly specify stdio mode
npx lifx-lan-mcp --mode stdio
HTTP サーバーモード
WARNING: HTTP サーバーモードは危険です。現在、認証に対応していないため、攻撃者が LLM をだましてデータを渡させたり、悪意のあるクライアントが LIFX ライトを操作できるようにしたりする可能性があります。認証に対応するまでは、自己責任で使用してください。
HTTP サーバーモードでは、HTTP 経由でアクセスできるスタンドアロンサービスとしてサーバーを実行できます。LLM クライアントとは別に、たとえばネットワーク経由でサーバーを実行したい場合に便利です。
# Run in HTTP server mode on default port (3000)
npx lifx-lan-mcp --mode sse
# Run in HTTP server mode on a specific port
npx lifx-lan-mcp --mode sse --port 8080
プロトコルバージョン
HTTP サーバーは 2 つのプロトコルバージョンに対応しています。
-
2025-04-21 プロトコル(最新)
- すべての操作に
/mcpエンドポイントを使用します - HTTP トランスポートと SSE トランスポートの両方に対応しています
- クライアント設定例:
{ "mcpServers": { "lifx-lan-mcp": { "url": "http://localhost:3000/mcp" } } } - すべての操作に
-
2025-03-26 プロトコル(レガシー)
- 接続の確立に
/sseエンドポイントを使用します - メッセージの送信に
/messageエンドポイントを使用します - クライアント設定例:
{ "mcpServers": { "lifx-lan-mcp": { "url": "http://localhost:3000/sse" } } } - 接続の確立に
ツール
-
lifx_lan_list_lights
- ユーザーのローカルエリアネットワーク(LAN)で現在利用可能なすべてのLifxライトを一覧表示します
- 各ライトは、一意の文字列ラベルで指定します
- グループや場所など、ライトに関する追加情報も含まれます
- 入力:不要
-
lifx_lan_get_lights_state
- 1つ以上のLIFXライトの現在の状態(色、オン/オフ状態、グループ、場所など)を取得します
- 入力:
labels(string[]): 状態を取得するライトラベルの配列
-
lifx_lan_set_lights_color
- 1つ以上のLifxライトの色を設定します
- 入力:
labels(string[]): 色を設定するライトラベルの配列color(object): 色の指定hue(number): 色相の値(0.0~1.0)saturation(number): 彩度の値(0.0~1.0)brightness(number): 明るさの値(0.0~1.0)kelvin(number, optional): ケルビン単位の色温度(1500~9000、デフォルトは3500)
duration(number, optional): ミリ秒単位の切り替え時間
-
lifx_lan_turn_on_lights
- 1つ以上のLifxライトをオンにします。必要に応じて色も指定できます
- 入力:
labels(string[]): オンにするライトラベルの配列color(object, optional): 色を変更する場合の色の指定hue(number, optional): 色相の値(0.0~1.0)saturation(number, optional): 彩度の値(0.0~1.0)brightness(number, optional): 明るさの値(0.0~1.0)kelvin(number, optional): ケルビン単位の色温度
duration(number, optional): ミリ秒単位の切り替え時間
-
lifx_lan_turn_off_lights
- 1つ以上のLifxライトをオフにします
- 入力:
labels(string[]): オフにするライトラベルの配列duration(number, optional): ミリ秒単位の切り替え時間
開発
前提条件
- Node.js
- TypeScript
- ローカルネットワーク上のLIFXライト
ソースからのビルド
- リポジトリをクローンします:
git clone https://github.com/simon-duchastel/lifx-lan-mcp.git
cd lifx-lan-mcp
- 依存関係をインストールします:
npm install
- プロジェクトをビルドします:
npm run build
MCP の定義は index.ts にあり、LLM で利用できるすべてのツールが含まれています。ツールが呼び出す API は src/ フォルダーにあります。
開発用スクリプト
npm run prepare- プロジェクトをコンパイルします(dist/index.jsをビルドします)
ライセンス
このプロジェクトはMIT Licenseのもとでライセンスされています。詳細は LICENSE ファイルをご覧ください。
お問い合わせ
[email protected] へのメール、またはGitHubのIssueを作成してお気軽にお問い合わせください。
このプロジェクトが役に立った場合は、コーヒーをおごっていただけると嬉しいです。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。