WinCC Unified MCP XT
An MCP server for interfacing with SIEMENS WinCC Unified SCADA systems via their GraphQL API.
WinCC Unified MCP XT
A Model Context Protocol (MCP) server designed to interface with SIEMENS WinCC Unified SCADA systems via their GraphQL API. This server exposes various WinCC Unified functionalities as MCP tools, enabling AI assistants and other MCP-compatible clients to interact programmatically with the SCADA system.
This project is based on the repository by Andreas Vogler
🔧 Features
- Connects to a WinCC Unified GraphQL endpoint.
- Provides MCP tools for:
- ✅ User authentication (
login-user) - 📂 Browsing SCADA objects (
browse-objects) - 📊 Reading current tag values (
get-tag-values) - 🕒 Querying historical/logged tag data (
get-logged-tag-values) - 🚨 Fetching active alarms (
get-active-alarms) - 📁 Fetching logged alarms (
get-logged-alarms) - ✍️ Writing values to tags (
write-tag-values) - 🟢 Acknowledging alarms (
acknowledge-alarms) - 🔄 Resetting alarms (
reset-alarms)
- ✅ User authentication (
- Optional automatic service account login with token refresh mechanism.
⚙️ Prerequisites
- Node.js (v18.x or newer recommended)
- npm (comes with Node.js)
- Access to a running WinCC Unified GraphQL server endpoint
⚙️ Configuration
this server uses a config.js file written in ES module syntax.
config.js (ESM) example:
export const config = {
URL: "https://your-wincc-server.example.com/graphql", // required
userName: "service_account_username", // optional
pwr: "service_account_password", // optional
};
🚀 How to Start
- Navigate to the project folder:
cd your-project-directory
- Install dependencies:
npm install
-
Edit config.js as shown above.
-
Start the server
node start
🖥️ Connecting with Claude Desktop
To use this MCP server with Claude AI (desktop version):
-
Find or create the claude_desktop_config.json file (typically in the Claude app config folder).
-
Add or update the following:
{
"mcpServers": {
"WinCC Unified": {
"command": "npx",
"args": ["mcp-remote", "http://localhost:3000/mcp"]
}
}
}
- Ensure @modelcontextprotocol/tools is installed:
npm install -g @modelcontextprotocol/tools
🧰 Available MCP Tools
| Tool | Description |
|---|---|
login-user | Logs in with username/password. |
browse-objects | Browses configured SCADA elements. |
get-tag-values | Retrieves live tag values. |
get-logged-tag-values | Gets historical tag data. |
get-active-alarms | Lists currently active alarms. |
get-logged-alarms | Shows previously triggered alarms. |
write-tag-values | Updates one or more tags. |
acknowledge-alarms | Acknowledges alarms. |
reset-alarms | Resets alarms. |
📝 Notes
-
If configured, a service account is automatically logged in and token refreshed every minute.
-
A user's manual login overrides the service session temporarily.
Related Servers
Scout Monitoring MCP
sponsorPut performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
sponsorAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Praison AI
AI Agents framework with 64+ built-in MCP tools for search, memory, workflows, code execution, and file operations. Install via `uvx praisonai-mcp`
Claude Code History
Retrieve and analyze Claude Code conversation history from local files.
Ref
Up-to-date documentation for your coding agent. Covers 1000s of public repos and sites. Built by ref.tools
ZenML
Interact with your MLOps and LLMOps pipelines through your ZenML MCP server
Remote MCP Server on Cloudflare
A customizable remote MCP server for deployment on Cloudflare Workers, operating without authentication.
Argo CD
Interact with Argo CD applications through natural language.
Cupertino
Apple Documentation MCP Server - Search Apple docs, Swift Evolution, and sample code
Bazel MCP Server
Exposes the Bazel build system to AI agents, enabling them to build, query, test, and manage dependencies.
Sequential Thinking Multi-Agent System (MAS)
An MCP agent that utilizes a Multi-Agent System (MAS) for sequential thinking and problem-solving.
Librarian
Persistent memory with semantic search, hit-based ranking, universal import, and a knowledge marketplace