Ignition MCP について
Ignition MCPは、AIアシスタントや他のMCPクライアントをInductive Automation Ignitionゲートウェイに接続します。タグ、アラーム、履歴、プロジェクト、ゲートウェイ管理、データベース、Perspectiveのツールを提供し、書き込みは既定で無効です。
主な機能
- 01タグの参照と読み取り
- 02履歴とアラームの検索
- 03プロジェクトとゲートウェイ設定の管理
- 04Perspectiveビューの作成とデプロイ
- 05名前付きおよび直接のDBクエリ
- 06設定と確認が必要な書き込み制御
活用シーン
- 01ライブタグ値とアラーム状態の確認
- 02タグの履歴データの確認
- 03Perspectiveダッシュボードのデプロイ
- 04許可されたパスへのタグ書き込み制限
MCP 対応
IgnitionゲートウェイのツールとPerspective作成用リソースをMCPクライアントに提供します。ゲートウェイREST APIと任意のブリッジを利用し、変更には書き込み有効化と確認が必要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
uvx ignition-mcpIGNITION_URLGateway base URL, e.g. http://localhost:8088IGNITION_API_TOKENシークレットIgnition API key in 'name:secret' formIGNITION_BRIDGE_SECRETシークレットHMAC secret shared with the mcp-bridge WebDev project; enables live tag/alarm/history/Perspective toolsIGNITION_ALLOW_WRITESSet to 'true' to enable mutating tools (each call still requires confirm=true)ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
ignition-mcp
Inductive Automation Ignition 用の MCP(Model Context Protocol)サーバーです。AI アシスタント、Claude Desktop、Claude Code、または任意の MCP クライアントに、Ignition ゲートウェイへの構造化されたアクセスを提供します。タグの参照と書き込み、履歴とアラームのクエリ、プロジェクトの管理、Perspective ビューの一括デプロイが可能です。
Ignition 8.3 でテスト済みです。タグ、履歴、アラーム、プロジェクト、ゲートウェイ管理、Perspective にまたがる 43 個のツールを備えています。サーバーはデフォルトで読み取り専用です。書き込みはすべて、明示的なオプトインがないと実行できません。
You: "Deploy a Perspective dashboard to a new project called LineOverview with a
gauge bound to [default]Line1/Speed."
Claude: (bootstraps the project, writes the view, wires the tag binding, triggers a scan)
-> https://gateway:8088/data/perspective/client/LineOverview
2 つの通信経路の理由
Ignition 8.3 にはネイティブの REST API が付属していますが、ライブのタグ値、タグ履歴、アラームのクエリ、Perspective ビューのリソースは公開されていません。ignition-mcp は、次の 2 つの通信経路でこの不足を補います。
- REST 通信経路。 ゲートウェイのネイティブ
/data/api/v1API を API キーで認証して使用します。プロジェクト、ゲートウェイ構成、モジュール、ログ、バックアップ、Perspective セッションの診断に使用します。 - ブリッジ通信経路。 ゲートウェイに一度だけインストールする小規模な WebDev プロジェクト(
mcp-bridge)です。HMAC 署名付き HTTP リクエストを介して、ゲートウェイのスクリプト機能(system.tag.*、system.alarm.*、system.db.*、プロジェクトのファイル I/O)を公開します。
ブリッジを必要とするツールは、ブリッジがインストールされていない場合、明確なメッセージを表示して機能を制限します。いつでも ignition_diagnose を実行して、構成済みの項目と不足している項目を確認できます。
クイックスタート
1. ゲートウェイで API キーを作成する
ゲートウェイのウェブ UI -> Config -> Security -> API Keys -> Create を選択します。claude などの名前を付けます。
トークン全体をコピーします。形式は claude:AbCd... のようになります。
キーとともに自動作成されるセキュリティレベル(Authenticated/<key-name>)には、Config -> Security -> General -> Gateway Read/Write Permissions でゲートウェイの読み取り/書き込みアクセスを付与する必要があります。この手順を省略すると呼び出しで HTTP 403 が返されます。ignition_diagnose が問題を通知し、正確な修正方法を示します。
2. ignition-mcp をインストールする
pipx install ignition-mcp
# or: uvx ignition-mcp
# or: pip install ignition-mcp
3. MCP クライアントを設定する
Claude Desktop(claude_desktop_config.json)または Claude Code(.mcp.json)を設定します。
{
"mcpServers": {
"ignition": {
"command": "ignition-mcp",
"env": {
"IGNITION_URL": "http://localhost:8088",
"IGNITION_API_TOKEN": "claude:YOUR_SECRET_HERE"
}
}
}
}
クライアントを再起動し、ignition_diagnose を実行するよう依頼します。次の手順で設定するブリッジに関する警告を除き、すべて緑色のチェックリストが表示されます。
4. ブリッジをインストールする(推奨。ライブデータと Perspective のデプロイに必要です)
ランダムなシークレットを生成して書き込みを有効にし、サーバーにブリッジをインストールさせます。
"env": {
"IGNITION_URL": "http://localhost:8088",
"IGNITION_API_TOKEN": "claude:YOUR_SECRET_HERE",
"IGNITION_BRIDGE_SECRET": "a-long-random-string",
"IGNITION_ALLOW_WRITES": "true"
}
アシスタントにブリッジのインストールを依頼します(bridge_install ツールが実行されます)。その後、もう一度 ignition_diagnose を実行して、ブリッジのチェックが緑色になっていることを確認します。手動でのインストール方法とトラブルシューティングについては、docs/bridge.md を参照してください。
構成
| 変数 | 必須 | デフォルト | 説明 |
|---|---|---|---|
IGNITION_URL | はい | なし | ゲートウェイのベース URL。例:http://localhost:8088 |
IGNITION_API_TOKEN | はい | なし | API キー。name:secret 形式 |
IGNITION_BRIDGE_SECRET | いいえ | 未設定 | ブリッジ用の HMAC シークレット。設定されていない場合、ブリッジツールは無効になります |
IGNITION_ALLOW_WRITES | いいえ | false | すべての変更ツールを制御するマスタースイッチ |
IGNITION_TLS_VERIFY | いいえ | true | 自己署名の開発用ゲートウェイでは false に設定します |
IGNITION_TIMEOUT_S | いいえ | 30 | リクエストごとのタイムアウト(秒) |
IGNITION_TAG_WRITE_ALLOWLIST | いいえ | 未設定 | カンマ区切りの glob パターン。対象外のタグへの書き込みは拒否されます |
安全性の仕組み
- デフォルトでは読み取り専用です。変更ツールは
IGNITION_ALLOW_WRITES=trueが設定され、呼び出しにconfirm=trueが含まれていない限り、実行を拒否します。アシスタントは、ユーザーが操作を承認した後にconfirmを設定します。 - 破壊的な操作では対象名を再入力します。プロジェクトやビューを削除するには、その正確な名前を再送信する必要があります。
- タグ書き込み許可リストを使って、書き込み可能なタグを特定のパス glob に制限できます。
- REST 経由の変更では API キーの識別情報が Ignition 自体の監査ログに記録されます。ブリッジ経由の変更は
mcp-bridgeロガーに記録されます。シークレットがログに記録されたり、応答に含まれたりすることはありません。 - ブリッジのファイルエンドポイントは
data/projects/内に限定されます。このディレクトリツリー外にはアクセスできません。
ツールカタログ
| 分野 | ツール |
|---|---|
| 診断 | ignition_diagnose, gateway_info, gateway_trial_status, gateway_trial_reset |
| タグ | tag_browse, tag_read, tag_write, tag_create, tag_config_export, tag_config_import |
| 履歴 | history_query, history_providers |
| アラーム | alarm_status, alarm_journal, alarm_acknowledge |
| プロジェクト | project_list, project_get, project_create, project_delete, project_export, project_import, project_scan |
| Perspective | perspective_bootstrap_project, perspective_list_views, perspective_get_view, perspective_upsert_view, perspective_delete_view, perspective_validate_view, perspective_page_config_get/set, perspective_session_props_get, perspective_style_upsert, perspective_list_sessions |
| Gateway 管理 | gateway_modules, gateway_logs_query, gateway_logger_set_level, gateway_backup, gateway_performance, config_resource_list |
| データベース | db_run_named_query, db_query |
| ブリッジ | bridge_install, bridge_status |
サーバーは、アシスタントが有効な Perspective ビューを作成するために読み取れる MCP リソースも公開しています。
ignition://docs/view-schema と ignition://templates/view/{flex-basic,coordinate-basic,tag-bound-dashboard}。
Perspective ビューの構築
詳しい説明はdocs/perspective-authoring.mdをご覧ください。
要約すると、アシスタントは view-schema リソースを読み取り、テンプレートを基に作成し、perspective_validate_view でオフライン検証した後、perspective_upsert_view でデプロイします。このツールは再度検証し、ビューを書き込み、プロジェクトのスキャンを実行します。一連の操作例は
examples/deploy-dashboard.mdにあります。
開発
git clone https://github.com/jsgorana/ignition-mcp
cd ignition-mcp
python -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
ruff check src tests # lint
ruff format --check src tests # format check
mypy src # type check
pytest tests/unit # unit tests, no gateway needed
python bridge/build_zip.py # rebuild the bridge project archive
# Live integration suite (needs a real 8.3 gateway with the bridge installed):
IGNITION_URL=... IGNITION_API_TOKEN=... IGNITION_BRIDGE_SECRET=... \
IGNITION_ALLOW_WRITES=true python tests/live/live_check.py
謝辞
Model Context Protocol とその Python SDKを基盤とし、HTTP には httpxを使用しています。 ignition-sdk-examplesリポジトリは、Ignition のモジュール API とスクリプティング API の連携方法を理解するうえで役立ちました。
ライセンス
MIT。LICENSEをご覧ください。
免責事項
このプロジェクトは独立したコミュニティによって構築されています。Inductive Automation とは提携、承認、後援の関係にありません。「Ignition」と「Perspective」は Inductive Automation, LLC の商標であり、ここでは互換性の説明のみに使用しています。重要な環境に接続する前に、書き込み可能なツールは本番環境以外のゲートウェイでテストしてください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。