add_processLABSCO SUMMARY
Structured process state instead of parsed supervisorctl output.
Every call returns a status field and a message rather than terminal text an agent has to interpret, which is the whole reason to use it over shelling out. add_process is the one tool that stops short — it hands back a configuration block for you to paste into supervisord.conf and reload.
What it is
A Python server that talks to a Supervisord daemon over XML-RPC. Nine tools covering process control, status, logs and system information, with a CLI offering the same operations.
What you get
- Processes started, stopped and restarted by name — start_process, stop_process, restart_process
- Every configured process listed with state, PID and uptime, and one process in detail — list_processes, get_process_status
- Process logs read, with a line count and an option for stderr instead of stdout — get_logs
- Supervisord's own state: API version, supervisor version, server URL — get_system_info
- Configuration reloaded — reload_config
- A new process configuration prepared for you to add to supervisord.conf — add_process
- The same operations as a CLI: supervisord-mcp start, stop, restart, list-processes, status, logs, info and reload
Requirements
A running Supervisord daemon with its XML-RPC interface reachable — the default is http://localhost:9001/RPC2, overridable with --server-url. Install with uv add supervisord-mcp and run supervisord-mcp mcp over stdio, with the working directory set to the project holding your supervisord.conf. Processes must already exist in supervisord.conf.
Setup effort
One command — uv add supervisord-mcp
USE CASES
Restarting a service after a deploy
Restart by name and read the state back, instead of running supervisorctl and interpreting whatever it printed.
Finding out why something is down
List every process with its state and PID, then pull the last lines of stderr for the one that is not running.
Managing a development stack
Several services configured in supervisord.conf can be started, stopped and checked individually from the same conversation.
Applying a configuration change
Prepare the new process block, add it to supervisord.conf yourself, then reload the configuration through the tool.
9 tools
Listed in project docs. Your client may show a different list.
start_processstop_processrestart_processlist_processesget_process_statusget_logsget_system_inforeload_configBEFORE YOU INSTALL
What to know first
Tools you get
9 tools named in the project's documentation.
Requires
- uv on PATH
- Python 3.10 or later
INSTALLATION
Connect your client
Server setup
Configuration file
{
"mcpServers": {
"supervisord-mcp": {
"command": "uv",
"args": [
"run",
"supervisord-mcp",
"mcp"
],
"cwd": "<YOUR_PATH_TO_PROJECT>"
}
}
}Set cwd to your own project directory — the uv project you ran uv add supervisord-mcp in, so uv run can find it. Supervisord must be running with [inet_http_server] enabled; the server cannot use a Unix socket.
uv
uv add supervisord-mcp