execute_commandLABSCO SUMMARY
The smallest surface there is: one tool, a command, and a directory to run it in.
There is nothing to learn — the interface is a command string and where to run it — which makes this the general-purpose fallback for the many jobs that have no dedicated server. The tool describes security restrictions without enumerating which, so treat the boundary as yours to establish before pointing an agent at a machine that matters.
What it is
A one-tool server that executes a terminal command in a specified working directory, with security restrictions applied by the server.
What you get
- Any shell command executed on the machine running the server, through a single call
- A workingDir argument on that call, so the command runs where you meant it to rather than wherever the server started
Requirements
No account and no key. What it does need is a machine you are content to let it run commands on: the tool takes a command and a workingDir and executes them locally.
Setup effort
Build from source — git clone https://github.com/weidwonder/terminal-mcp-server.git
USE CASES
Running the build or the tests without leaving the conversation
Give the command and the directory it belongs in, and read the output where you were already working rather than switching to a shell and back.
Checking the state of a machine before you change anything on it
Run the read-only commands you would run by hand — what is installed, what is running, what is in this directory — with workingDir pinning each one to the right place.
1 tool
Listed in project docs. Your client may show a different list.
BEFORE YOU INSTALL
What to know first
Tools you get
1 tool named in the project's documentation. execute_command has no allowlist: it runs any command as the user who started the server, or on a remote machine over SSH. A session keeps terminal state for 20 minutes.
INSTALLATION
Connect your client
You clone and build this one yourself.
Server setup
git clone https://github.com/weidwonder/terminal-mcp-server.git
cd terminal-mcp-server
npm install
npm run buildAdd the stdio mcpServers block to your client's settings file (Roo Code: ~/Library/Application Support/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json; Cline: ~/.cline/config.json; Claude Desktop: ~/Library/Application Support/Claude/claude_desktop_config.json), pointing args at your built build/index.js.
For remote command execution, SSH key-based authentication must be set up in advance
MCP Clients
Claude Desktop, Roo Code, Cline
{
"mcpServers": {
"terminal-mcp": {
"command": "node",
"args": [
"<YOUR_PATH_TO_TERMINAL_MCP_SERVER>/build/index.js"
],
"env": {}
}
}
}Roo Code — SSE, Cline — SSE
Start the server in SSE mode from your built clone:
node build/index.js --sseThen add this block. 8080 and /sse are the defaults; change them if you started the server with --port or --endpoint:
{
"mcpServers": {
"terminal-mcp-sse": {
"type": "sse",
"url": "http://localhost:8080/sse",
"headers": {}
}
}
}