run_scriptLABSCO SUMMARY
The allow-list is a file, so the agent cannot run anything you did not write down.
Every script has an entry with its path, arguments and a timeout, and the run call can only reach what is in there. The information call tells the agent what a script expects before it calls, and the reload call picks up new entries without a restart.
What it is
A runner for developer-defined bash scripts. Each script is declared in a configuration file with its path, description, arguments and timeout, and runs either inside the project's Docker container or directly on your host.
What you get
- list_scripts — the scripts currently declared
- get_script_info — one script's description and the arguments it accepts, so a call can be formed correctly first time
- run_script — runs a declared script with arguments, honouring the timeout set for it and returning errors rather than hanging
- get_working_directory and set_working_directory — the directory scripts run in, read and changed, for moving between project contexts
- reload_config — picks up configuration changes without restarting the server
Requirements
Python, and a configuration file listing each script with its path, description, arguments and timeout. Docker if you want the containerised setup the project ships with; otherwise it runs against your own shell.
Setup effort
Run a container — build the image from the repository, then point your client at it
USE CASES
Giving an agent a build command without giving it a shell
Declare the build script once, and let the agent discover it, read its arguments and run it.
Running the same task across several checkouts
Move the working directory between projects and run the same declared script in each.
Adding a script mid-session
Reload the configuration and confirm the new entry is visible, without restarting the client.
Letting the agent work out what a script needs
Read the argument list first, so the call is formed correctly instead of failing and being retried.
6 tools
Listed in project docs. Your client may show a different list.
list_scriptsget_script_infoget_working_directoryset_working_directoryreload_configBEFORE YOU INSTALL
What to know first
Tools you get
6 tools named in the project's documentation.
Requires
Docker with Docker Compose
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
Server setup
# Clone and build with Docker
git clone https://github.com/ceyhunkoc/script_wrapper_mcp_server.git
cd script_wrapper_mcp_server
docker compose up --build -dMCP Clients
Claude Desktop
{
"mcpServers": {
"script-runner": {
"command": "docker",
"args": [
"compose",
"-f",
"<YOUR_PATH_TO_SCRIPT_WRAPPER_MCP_SERVER>/docker-compose.yml",
"run",
"--rm",
"mcp-script-runner"
]
}
}
}