Snap7
FreeNot checkedEnables MCP clients to connect to and interact with Siemens PLCs via python-snap7, supporting read/write operations on data blocks, memory, timers, counters, an
About
Enables MCP clients to connect to and interact with Siemens PLCs via python-snap7, supporting read/write operations on data blocks, memory, timers, counters, and CPU management.
README
MCP server for python-snap7, enabling MCP clients to interact with Siemens PLCs
Install
pip install mcp-snap7
Requirements
- python-snap7 requires the libsnap7 library to be installed on your system. See python-snap7 documentation for installation instructions.
Usage
As MCP Server
Configure your MCP client to use mcp-snap7 as a stdio server:
{
"mcpServers": {
"mcp-snap7": {
"command": "mcp-snap7"
}
}
}
Available Tools
connect_plc- Connect to a Siemens PLCdisconnect_plc- Disconnect from PLCget_connected- Check connection statusdb_read/db_write- Read/write data blocksmb_read/mb_write- Read/write memory bytestm_read/tm_write- Read/write timersct_read/ct_write- Read/write counterseb_read/eb_write- Read/write edge inputsab_read/ab_write- Read/write absolute bytesget_cpu_info- Get CPU informationget_cpu_state- Get CPU stateget_protection- Get PLC protection levelplc_cold_start- Trigger cold startplc_hot_start- Trigger hot startplc_stop- Stop PLCget_error_text- Get error description
Development
git clone https://github.com/daedalus/mcp-snap7.git
cd mcp-snap7
pip install -e ".[test]"
# run tests
pytest
# format
ruff format src/ tests/
# lint
ruff check src/ tests/
# type check
mypy src/
Install Snap7 in Claude Desktop, Claude Code & Cursor
unyly install mcp-snap7Installs into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.
First time? Get the CLI: curl -fsSL https://unyly.org/install | sh
Or configure manually
Run in your terminal:
claude mcp add mcp-snap7 -- uvx mcp-snap7FAQ
Is Snap7 MCP free?
Yes, Snap7 MCP is free — one-click install via Unyly at no cost.
Does Snap7 need an API key?
No, Snap7 runs without API keys or environment variables.
Is Snap7 hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Snap7 in Claude Desktop, Claude Code or Cursor?
Open Snap7 on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectCompare Snap7 with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
