ThinkPLC-MCP

by mrwan84

Not rated
GitHub

About

Interface with SIEMENS PLC S7-1500/1200 using their JSON-RPC 2.0 API, exposing PLC functionalities as MCP tools for programmatic interaction.

Details

Author
mrwan84
Categories
Other, Infrastructure

Setup

Install ThinkPLC-MCP in your MCP client (Claude Desktop, Cursor, Windsurf, and others).

Repository: https://github.com/mrwan84/ThinkPLC-MCP

Follow the installation instructions in the repository README, then restart your MCP client.

ThinkPLC-MCPis a server designed to interface withSIEMENS PLC S7-1500/1200using theirJSON-RPC 2.0 API. It exposes API functionalities asMCP tools, enabling AI assistants and other MCP-compatible clients to interact with the PLC programmatically.

- Connects to aSIEMENS PLC API (Webserver)endpoint
- Provides MCP tools for:

- ✅ User authentication (login,logout,ChangePassword-user)
- ✅ Check PLC connectivity (ping)
- ✅ Retrieve user permissions viaApi-GetPermissionsafter login
- ✅ Get API version withApi-Version
- ✅ List available API methods usingApi-Browse
- ✅ Retrieve structure information withApi-GetQuantityStructures
- ✅ Get password security policies withApi-GetPasswordPolicy
- ✅ Browse tags and metadata usingPlcProgram-Browse
- ✅ Read single variables viaPlcProgram-Read
- ✅ Write Boolean, Number, or String tags withPlcProgram-Write-*
- ✅ Read the current CPU operating mode withPlc-ReadOperatingMode
- ✅ Request a change of operating mode usingPlc-RequestChangeOperatingMode
- ✅ Read the CPU system time (Plc-ReadSystemTime)
- ✅ Set the CPU system time (Plc-SetSystemTime)
- ✅ Read available project languages (Project-ReadLanguages)
- ✅ Browse active alarms (Alarms-Browse)
- ✅ Acknowledge alarms (Alarms-Acknowledge)
- ✅ Browse diagnostic buffer entries (DiagnosticBuffer-Browse)

- Node.js(v18.x or later recommended)
- npm (comes bundled with Node.js)
- Access to a runningSIEMENS PLC API (Webserver)

This server uses aconfig.jsfile written inES Modulesyntax.

export const config = { URL: "https://<PLC-IP-Address>/api/jsonrpc", // required userName: "your-username", // optional pwr: "your-password", // optional };

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).

{ "mcpServers": { "ThinkPLC-MCP": { "command": "npx", "args": ["mcp-remote", "http://localhost:5000/mcp"] } } }

- Ensure @modelcontextprotocol/tools is installed:

npm install -g @modelcontextprotocol/tools

Digi Remote Manager MCP allows users to connect Ai Agents to their Digi Remote Manager account for analyzing fleet data and help with troubleshooting.

A read-only API for querying and retrieving contextual information about devices and fleets using the Flight Control MCP server.

AI-powered industrial fault diagnosis MCP server. 313 fault codes across Allen-Bradley, Siemens, ABB, Mitsubishi, Fanuc. 8 diagnostic tools for Claude Code.

Enables LLMs and intelligent systems to interact with Litmus Edge for device configuration, monitoring, and management.

A 3D Printing MCP server that allows for querying for live state, webcam snapshots, and 3D printer control.

An unofficial and fully featured Model Context Protocol (MCP) server for the Action1 RMM REST API

Monitor air quality with Airthings devices.

Model Context Protocol server for secure AsusWRT router administration via SSH. Provides 42+ read-only monitoring tools and guarded mutation tools for managing AsusWRT/Merlin routers.

Monitor backup status and query Prometheus metrics from a Duplicacy exporter

Civilian situational awareness for AI deployments — real-time risk dashboards, multi-source threat correlation, anomaly detection, and automated alerting for critical infrastructure and enterprise AI systems.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.