mcpField
I
Ignition MCP

Ignition MCP

ローカル
github.comその他116 週間前に更新

Ignition MCP について

Ignition MCPは、AIアシスタントや他のMCPクライアントをInductive Automation Ignitionゲートウェイに接続します。タグ、アラーム、履歴、プロジェクト、ゲートウェイ管理、データベース、Perspectiveのツールを提供し、書き込みは既定で無効です。

主な機能

  1. 01タグの参照と読み取り
  2. 02履歴とアラームの検索
  3. 03プロジェクトとゲートウェイ設定の管理
  4. 04Perspectiveビューの作成とデプロイ
  5. 05名前付きおよび直接のDBクエリ
  6. 06設定と確認が必要な書き込み制御

活用シーン

  1. 01ライブタグ値とアラーム状態の確認
  2. 02タグの履歴データの確認
  3. 03Perspectiveダッシュボードのデプロイ
  4. 04許可されたパスへのタグ書き込み制限

MCP 対応

IgnitionゲートウェイのツールとPerspective作成用リソースをMCPクライアントに提供します。ゲートウェイREST APIと任意のブリッジを利用し、変更には書き込み有効化と確認が必要です。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"jsgorana-ignition": {
"command": "uvx",
"args": [
"ignition-mcp"
],
"env": {
"IGNITION_URL": "<IGNITION_URL>",
"IGNITION_API_TOKEN": "<IGNITION_API_TOKEN>",
"IGNITION_BRIDGE_SECRET": "<IGNITION_BRIDGE_SECRET>",
"IGNITION_ALLOW_WRITES": "<IGNITION_ALLOW_WRITES>"
}
}
}
}
起動コマンドuvx ignition-mcp
設定が必要な環境変数
IGNITION_URLGateway base URL, e.g. http://localhost:8088
IGNITION_API_TOKENシークレットIgnition API key in 'name:secret' form
IGNITION_BRIDGE_SECRETシークレットHMAC secret shared with the mcp-bridge WebDev project; enables live tag/alarm/history/Perspective tools
IGNITION_ALLOW_WRITESSet to 'true' to enable mutating tools (each call still requires confirm=true)

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

パッケージ
pypiignition-mcp0.1.3

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

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/v1 API を 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
Perspectiveperspective_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 の商標であり、ここでは互換性の説明のみに使用しています。重要な環境に接続する前に、書き込み可能なツールは本番環境以外のゲートウェイでテストしてください。

コメント

MCP は初めてですか?

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

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