OPC UA MCP サーバー
OPC UA 対応の産業システムに接続し、AI エージェントが運用データをリアルタイムで監視、分析、制御できるようにする MCP サーバー。
このプロジェクトは、AI 主導のワークフローと産業オートメーション システムを結び付けたいと考えている開発者やエンジニアに最適です。



特徴
- OPC UA ノードの読み取り: 産業用デバイスからリアルタイムの値を取得します。
- OPC UA ノードへの書き込み: 指定されたノードに値を書き込むことでデバイスを制御します。
- シームレスな統合: Claude Desktop などの MCP クライアントと連携して自然言語による対話を実現します。
ツール
サーバーは 2 つのツールを公開します。
read_opcua_node
:- 説明: 特定の OPC UA ノードの値を読み取ります。
- パラメータ:
node_id
(str): OPC UA ノード ID (例: ns=2;i=2
)。
- 戻り値: ノード ID とその値を含む文字列 (例: "Node ns=2;i=2 value: 42")。
write_opcua_node
:- 説明: 特定の OPC UA ノードに値を書き込みます。
- パラメータ:
node_id
(str): OPC UA ノード ID (例: ns=2;i=3
)。value
(str): 書き込む値(ノード タイプに基づいて変換されます)。
- 戻り値: 成功またはエラー メッセージ (例: 「ノード ns=2;i=3 に 100 を正常に書き込みました」)。
プロンプトの例
- 「ノード ns=2;i=2 の値は何ですか?」 → 現在の値を返します。
- 「ノード ns=2;i=3 を 100 に設定します。」→ ノードに 100 を書き込みます。
インストール
前提条件
- Python 3.10以上
- OPC UA サーバー (シミュレーターや実際の産業用デバイスなど)
依存関係をインストールする
リポジトリをクローンし、必要な Python パッケージをインストールします。
git clone https://github.com/kukapay/opcua-mcp.git
cd opcua-mcp
pip install asyncua mcp[cli]
MCP クライアント構成
{
"mcpServers": {
"opcua-mcp": {
"command": "python",
"args": ["path/to/opcua_mcp/main.py"],
"env": {
"OPCUA_SERVER_URL": "your-opc-ua-server-url"
}
}
}
}
ライセンス
このプロジェクトはMITライセンスの下で提供されています。詳細はLICENSEファイルをご覧ください。