mcpField
A
aiseg2-mcp

aiseg2-mcp

ローカル
github.com/chanyou0311データ・分析0今日更新

aiseg2-mcp について

aiseg2-mcpは、Panasonic AiSEG2家庭用エネルギー管理コントローラー向けの非公式な読み取り専用MCPサーバーです。クライアントは回路別の使用量や費用履歴などを取得できますが、対応状況は機種とファームウェアによって異なります。

主な機能

  1. 01リアルタイムの電力フローと電池状態を取得
  2. 02回路別の瞬時電力と名称を表示
  3. 03日ごとの発電量と消費量を取得
  4. 04SDカード出力のエネルギー履歴を取得
  5. 05長期的なエネルギー費用履歴を取得

活用シーン

  1. 01家庭の現在の発電量と消費量を確認
  2. 02電力使用量の多い回路を特定
  3. 03日付や粒度別に使用量と費用を分析

MCP 対応

MCPクライアントに、AiSEG2のリアルタイムデータと履歴データを読み取るツールを提供します。ツールは読み取り専用で、履歴の取得には機器へのSDカード挿入が必要です。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"chanyou0311-aiseg2": {
"command": "uvx",
"args": [
"aiseg2-mcp"
],
"env": {
"AISEG_URL": "<AISEG_URL>",
"AISEG_PASSWORD": "<AISEG_PASSWORD>",
"AISEG_TRANSPORT": "<AISEG_TRANSPORT>"
}
}
}
}
起動コマンドuvx aiseg2-mcp
設定が必要な環境変数
AISEG_URLAiSEG2 base URL, e.g. http://192.168.0.216 (http only).
AISEG_PASSWORDシークレットHTTP Digest password for the AiSEG2 web UI.
AISEG_TRANSPORTTransport. Forced to stdio here so the container matches this stdio package declaration; the image's own default is streamable-http for a standalone `docker run`.

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypiaiseg2-mcp0.1.0
ocighcr.io/chanyou0311/aiseg2-mcp:0.1.0

ツール

6

掲載時のツール一覧 · 2 週間前に更新

このツールにパラメーターはありません。

詳細

aiseg2-mcp

日本語版は README.ja.md をご覧ください。

非公式で読み取り専用の Model Context Protocol サーバーです。Panasonic AiSEG2 ホームエネルギー管理(HEMS)コントローラーに対応しています。MCP クライアント(例:Claude)から、AiSEG2 のローカル Web インターフェースを通じて、ご家庭のリアルタイムな電力の流れ、回路ごとの消費量、回路名、日ごとのエネルギー合計を読み取れます。

このプロジェクトは Panasonic と提携・承認を受けていません。「AiSEG」は Panasonic の商標です。

検証済み環境

以下の環境で開発・テストされています。

  • AiSEG2 モデル MKN713 シリーズ
  • ファームウェア Ver.2.97I-01

AiSEG2 の Web インターフェースはドキュメント化されておらず、ファームウェアのバージョンによって異なります。別のモデルやファームウェアでは、このサーバーがスクレイピングするページが異なり、一部のツールが動作しない場合があります。 解析エラーが発生した場合は、お使いのモデル/ファームウェアのバージョンを添えて issue を作成してください。

ツール

すべてのツールは読み取り専用(readOnlyHint が注釈され、非破壊で、人が読める title を備えています)です。サーバーは GET と、Web UI 自体が使用する表示専用の更新 POST のみを実行し、設定や /action/ エンドポイントには一切アクセスしません。

すべての結果には as_of(ISO 8601、UTC)が含まれます。これはサーバーが AiSEG2 から値を読み取った時刻、または 2 つの履歴ツールの場合は、それらの元となる SD カードのエクスポートをダウンロードした時刻です。

ツールタイトル戻り値
get_power_flow現在の電力の流れ発電量/消費量(kW)、買電/売電の状態、バッテリーの状態、発電源、消費量の多い回路
get_circuit_breakdown回路ごとの現在の電力測定対象の全回路について、瞬時消費電力(W)を大きい順に表示し、合計も含みます
list_circuits登録済み回路登録済みの回路 ID と名前(正式な名称の参照元)
get_daily_totals今日のエネルギー合計今日の累積発電量/消費量/買電量/売電量(kWh)
get_historyエネルギー履歴SD カードのエクスポートから取得した長期エネルギー履歴(Wh)、詳細形式のデータポイント。引数:granularity(30min/hour/day/month/year)、start/end(粒度に応じて YYYY-MM-DD、YYYY-MM、または YYYY)、任意の metrics/circuits フィルター、limit/offset によるページング
get_cost_historyエネルギー料金履歴SD カードのエクスポートから取得した長期エネルギー料金履歴(JPY)。引数:granularity(day/month/year)、start/end、limit/offset

2 つの履歴ツールを使用するには、AiSEG2 に SD カードを挿入する必要があります — デバイスの SD カード CSV エクスポートを読み取ります。エクスポートは一度ダウンロードされてキャッシュされます(AISEG_CACHE_DIR/AISEG_CACHE_TTL を参照)。そのため、初回の呼び出しは遅く、2 回目以降は速くなります。

インストールと実行

環境に応じて、3 つの実行方法があります。

1. uvx(PyPI — 公開後)

ローカルの(stdio)MCP クライアントに最も簡単な方法です。uv が必要です。

AISEG_URL=http://192.168.0.216 AISEG_PASSWORD=... uvx aiseg2-mcp

Claude Code に追加します。

claude mcp add aiseg2 \
  --env AISEG_URL=http://192.168.0.216 \
  --env AISEG_PASSWORD=your-digest-password \
  -- uvx aiseg2-mcp
2. docker run(GHCR)

コンテナーはデフォルトで streamable-http トランスポート(長時間稼働するネットワークサービス)を使用します。認証プロキシの背後でのみ公開してください — セキュリティを参照してください。

docker run --rm -p 8000:8000 \
  -e AISEG_URL=http://192.168.0.216 \
  -e AISEG_PASSWORD=your-digest-password \
  ghcr.io/chanyou0311/aiseg2-mcp:latest
3. ソースから実行

Python 3.12 以降と uv が必要です。

uv sync
AISEG_URL=http://192.168.0.216 AISEG_PASSWORD=... uv run aiseg2-mcp
リモート(認証付き claude.ai Custom Connector)

AiSEG2 を LAN 内に置いたまま claude.ai からサーバーに接続する方法については、examples/remote/ をご覧ください — Docker Compose スタック(MCP + GitHub-OAuth プロキシ + Cloudflare Tunnel)です。

イメージの実行

このリポジトリの役割は、イメージを GHCR にプッシュするところまでです。実際にどこでどのように実行するか(Kubernetes マニフェストなど)は別の場所で定義されています。メンテナー自身のデプロイでは、fumo-infraで定義しています。以下の表は、別のシステムがこのイメージを実行する際に準拠する仕様です。

イメージとタグmainへのプッシュごとにghcr.io/chanyou0311/aiseg2-mcp:sha-<7hex>を公開します(作成日時はビルド時刻ではなく、ソースコミットの時刻です)。vX.Y.Zリリースタグでは、追加でX.Y.Z、X.Y、latestも公開します
リッスンポート8000/tcp — /mcpのストリーミング可能な HTTP MCP エンドポイント
ヘルスチェックライブネス:GET /health、レディネス:ポート8000への TCP 接続
必須の環境変数AISEG_URL、AISEG_PASSWORD(シークレット)
任意の環境変数(デフォルト)AISEG_USER(aiseg)、AISEG_TRANSPORT(streamable-http — イメージレベルのENVとして設定。uvx経由で実行する場合など、パッケージ自体のデフォルトはstdioです)、AISEG_HOST(0.0.0.0)、AISEG_PORT(8000)、AISEG_DISABLE_DNS_REBINDING_PROTECTION(false)、AISEG_CACHE_DIR(<tempdir>/aiseg2-mcp-cache)、AISEG_CACHE_TTL(3600)、LOG_LEVEL(info) — 詳細は以下の設定を参照してください

このリポジトリにはデプロイ定義(Kubernetes マニフェスト)はありません。

設定(環境変数)

変数必須デフォルト説明
AISEG_URLはい—AiSEG2 のベース URL。例:http://192.168.0.216(http のみ)
AISEG_PASSWORDはい—AiSEG2 ウェブ UI の HTTP Digest パスワード
AISEG_USERいいえaisegHTTP Digest ユーザー
AISEG_TRANSPORTいいえstdiostdioまたはstreamable-http
AISEG_HOSTいいえ0.0.0.0バインドするホスト(streamable-http のみ)
AISEG_PORTいいえ8000バインドするポート(streamable-http のみ)
AISEG_DISABLE_DNS_REBINDING_PROTECTIONいいえfalseHost 許可リストを無効にします(デフォルトではlocalhost/127.0.0.1/[::1]の Host ヘッダーのみ受け付けます) — 信頼できる認証プロキシの背後でのみ使用してください
AISEG_CACHE_DIRいいえ<tempdir>/aiseg2-mcp-cacheSD カードの履歴エクスポートをキャッシュする場所
AISEG_CACHE_TTLいいえ3600履歴エクスポートを再ダウンロードするまでキャッシュを再利用する秒数
LOG_LEVELいいえinfoログレベル

セキュリティ

  • 設計上、LAN 内のみでの利用を想定しています。 AiSEG2 は Digest 認証を使用した平文 HTTP で通信するため、AiSEG2 とこのサーバーは信頼できるローカルネットワーク内に置いてください。パスワードは環境変数から読み込まれ、ログに記録されることはありません。
  • 読み取り専用です。 デバイスの設定を変更するツールはありません。ツールの提供範囲は、テスト(登録済みツールの許可リスト、ツール名ガード、/action/のソーススキャン、読み取り専用アノテーションのチェック)によって強制されています。
  • 認証なしで、信頼できないネットワークにstreamable-httpトランスポートを公開しないでください。 このサーバー自体には認証機能がありません。ネットワークサービスとして実行する場合は、認証を行うリバースプロキシを前段に配置してください。AISEG_DISABLE_DNS_REBINDING_PROTECTION=trueを設定してよいのは、そのプロキシ構成の場合のみです。

謝辞

AiSEG2 のウェブインターフェースは文書化されていません。このプロジェクトは、先行プロジェクトで共有されたリバースエンジニアリングの知見を基にしています。

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。