Provides tools to read, write, and fetch information for EPICS PV variables via an MCP stdio server.
Configuration
View docs{
"mcpServers": {
"jacky1-jiang-epics-mcp-server": {
"command": "python",
"args": [
"/path/server.py"
]
}
}
}You can run the EPICS MCP Server as a Python-based MCP endpoint that talks to EPICS process variables (PVs). It lets you read PV values, write new values, and fetch detailed PV information, all through an MCP client over a standard stdio interface. This makes it easy to integrate EPICS PVs into larger control workflows and automation.
You interact with the EPICS MCP Server using an MCP client that communicates over stdio. The server exposes three main tools that you can call to work with EPICS PVs:
Prerequisites: you need Python installed on your system and access to run Python scripts. You also need a Python package manager to install dependencies.
Steps to start using the EPICS MCP Server locally:
1) Create a Python environment (optional but recommended). 2) Install required dependencies. 3) Run the MCP server using the stdio interface.
Exact commands to run the server are shown below as an example flow. Replace /path/server.py with the absolute path to your server script when you deploy.
Configuration and usage notes: The server is designed to be used with an MCP client that can request PV operations. You can use the following concrete command to start the server locally in stdio mode, which the client can connect to.
Example runtime command to start the server locally using Python (adjust the path to your actual script):
python /path/server.pyRetrieve the current value of a specified PV. Returns a status and the PV value or an error message.
Update a specified PV with a new value. Returns a status and a confirmation message or an error message.
Fetch detailed information about a specified PV, including its connection state and data type. Returns a status and the PV information or an error message.