A Model Context Protocol (MCP) server for process management.
A Model Context Protocol (MCP) server for process management.
Using these features, LLMs start processes like development servers, docker-compose, or test watchers and check their outputs to fix bugs automatically.
npm i -D procm-mcp
.mcp.json
{
"mcpServers": {
"procm-mcp": {
"command": "node",
"args": ["./node_modules/procm-mcp/build/index.js"],
"env": {}
}
}
}
You can permit LLMs to use start-process tool without confirmation, because procm-mcp only allow whitelisted process creations.
LLMs will ask you to use allow-start-process tool to add specific process creation to the whitelist.
Once you allow a process creation, you don't have to confirming it anymore as long as the command and the working directory are the same.
I call it "allow-x pattern", which can balances security and usability in MCP.
Warning: Do not permit LLMs to use allow-start-process without confirmation.That means "Do anything you want to".
allow-start-process Allow specific processes to be created
script (required): The script/command to allowargs (optional): Array of argumentscwd (optional): Working directorystart-process Start a new process with specified script and arguments
script (required): The script/command to executename (optional): A friendly name for the processargs (optional): Array of arguments to pass to the scriptcwd (required): Working directory for the processenvs (optional): Environment variables to set for the processdelete-process Stop and remove a process by ID.The default signal is SIGTERM, but SIGKILL(force killing) will be sent after 10 seconds unless the process exits.
id (required): The process IDrestart-process Restart an existing process by ID
id (required): The process IDget-process-info Get detailed information about a process
id (required): The process IDlist-processes List all currently managed processes
get-process-stdout Retrieve stdout logs from a process
id (required): The process IDchunkCount (optional): Number of recent log entries to retrieve (default: 10)get-process-stderr Retrieve stderr logs from a process
id (required): The process IDchunkCount (optional): Number of recent log entries to retrieve (default: 10)MIT
Source-derived launch command. Check the maintainer’s required arguments and credentials before running:
npx -y procm-mcpMerge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.
{
"mcpServers": {
"io-github-coder-ka-procm-mcp": {
"command": "npx",
"args": [
"-y",
"procm-mcp"
]
}
}
}Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.
Claude Desktop setup referenceprocm-mcpnpmProcm works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.
~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.~/.cursor/mcp.jsonRestart Cursor for changes to take effect..vscode/mcp.jsonReload VS Code window for changes to take effect.~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect..mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.