bash-command MCP server
✓ VerifiziertFührt Shell-Commands mit fortschrittlicher Orchestrierung von Hintergrundprozessen und Observability für AI Agents aus.
Auch bekannt als mrorigo/bash-command-mcp
- Stars
- 3
- Tools
- 6
- Downloads, 30 Tage
- —
- Neueste Version
- 1.0.0
- Letzter Commit
- 21. Mai 2026
- Lizenz
- MIT
Was ist bash-command MCP?
bash-command ist ein MCP server. Führt Shell-Commands mit fortschrittlicher Orchestrierung von Hintergrundprozessen und Observability für AI Agents aus. Er stellt 6 Tools bereit, etwa run, run_background, list_background.
Zusammenfassung generiert aus dem README des Projekts
Über bash-command MCP server
Das Ausführen von Shell-Commands inklusive Management von Hintergrundprozessen ist das Kernfeature, das dieser Server für AI Agents bietet. Er ermöglicht eine strukturierte Art, Commands im Vordergrund auszuführen oder langlaufende Tasks über spezifische Lifecycle-Controls zu verwalten. Entwickler können ihn lokal via stdio oder remote über Streamable HTTP nutzen, indem sie die entsprechenden Host- und Port-Environment-Variablen konfigurieren.
Nutzer können komplexe Workflows mit Tools wie run_background, list_background und kill_background steuern. Der Server bietet integrierte Observability durch OpenTelemetry, wodurch Traces und Metrics via OTLP HTTP exportiert werden können. Zudem werden pro Prozess stdout- und stderr-Logfiles zur Überwachung vorgehalten. Um die Sicherheit zu gewährleisten, empfiehlt die Dokumentation, den Server innerhalb von Docker auszuführen, um die Command-Ausführung von deinem Host-System zu isolieren.
Ein präziser Ausführungskontext wird durch die Möglichkeit gewahrt, für jeden Command cwd- und env-Overrides bereitzustellen. Der Server verwaltet Timeouts für Foreground- und Background-Tasks mit einem Standardwert von 60 Sekunden. Er ist für Entwickler konzipiert, die eine hochpräzise Shell-Execution mit klaren Exit-Code-Semantiken und Production-Grade-Visibility in die Aktionen ihrer Agents benötigen.
Was du damit machen kannst
- 1Langlaufende Hintergrundtasks verwaltenStarte einen Prozess im Hintergrund und überwache dessen Fortschritt über Logfiles.
- 2Agent-Performance beobachtenVerfolge die Dauer und Fehler von Tool-Calls mithilfe der OpenTelemetry-Instrumentierung.
- 3Command-Ausführung isolierenFühre Shell-Commands innerhalb eines Containers aus, um zu verhindern, dass sie dein Host-System beeinflussen.
Geschrieben aus dem README des Projekts. Jeder Use Case wurde gegen ein Zitat daraus geprüft.
So installierst du bash-command MCP
Formate geprüft am 10. Nov. 2026Zu Cursor hinzufügenZu Goose hinzufügenbash-command MCP in Claude Code installieren
$ claude mcp add bash-command-mcp -- npx -y bash-command-mcpbash-command MCP in Cursor installieren
~/.cursor/mcp.json
{
"mcpServers": {
"bash-command-mcp": {
"command": "npx",
"args": [
"-y",
"bash-command-mcp"
]
}
}
}bash-command MCP in VS Code installieren
.vscode/mcp.json
{
"servers": {
"bash-command-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"bash-command-mcp"
]
}
}
}bash-command MCP in VS Code CLI installieren
$ code --add-mcp '{"name":"bash-command-mcp","type":"stdio","command":"npx","args":["-y","bash-command-mcp"]}'bash-command MCP in Claude Desktop installieren
claude_desktop_config.json
{
"mcpServers": {
"bash-command-mcp": {
"command": "npx",
"args": [
"-y",
"bash-command-mcp"
]
}
}
}bash-command MCP in Codex installieren
$ codex mcp add bash-command-mcp -- npx -y bash-command-mcpbash-command MCP in Codex config.toml installieren
~/.codex/config.toml
[mcp_servers.bash-command-mcp] command = "npx" args = ["-y", "bash-command-mcp"]
bash-command MCP in Gemini CLI installieren
$ gemini mcp add -s user bash-command-mcp npx -- -y bash-command-mcpbash-command MCP in Gemini settings.json installieren
~/.gemini/settings.json
{
"mcpServers": {
"bash-command-mcp": {
"command": "npx",
"args": [
"-y",
"bash-command-mcp"
]
}
}
}bash-command MCP tools 6
Erkannt aus dem READMErunrun_backgroundlist_backgroundkill_backgroundtail_backgroundwait_background
| run | — | |
| run_background | — | |
| list_background | — | |
| kill_background | — | |
| tail_background | — | |
| wait_background | — |
Konfiguration
BASH_COMMAND_MCP_HOSTBASH_COMMAND_MCP_LOG_DIRDirectory used to store background process stdout/stderr log files.
BASH_COMMAND_MCP_PORTBASH_COMMAND_MCP_TRANSPORTOTEL_ENABLEDEnable or disable OpenTelemetry instrumentation (`true` or `false`).
OTEL_EXPORTER_OTLP_ENDPOINTOTLP HTTP endpoint for exporting OpenTelemetry traces and metrics (for example `http://localhost:4318`).
OTEL_METRIC_EXPORT_INTERVAL_MSOpenTelemetry metrics export interval in milliseconds.
OTEL_SERVICE_NAMEOpenTelemetry service name override.
OTEL_SERVICE_VERSIONOpenTelemetry service version override.
| Name | Beschreibung | Typ |
|---|---|---|
| BASH_COMMAND_MCP_HOST | — | |
| BASH_COMMAND_MCP_LOG_DIR | Directory used to store background process stdout/stderr log files. | |
| BASH_COMMAND_MCP_PORT | — | |
| BASH_COMMAND_MCP_TRANSPORT | — | |
| OTEL_ENABLED | Enable or disable OpenTelemetry instrumentation (`true` or `false`). | |
| OTEL_EXPORTER_OTLP_ENDPOINT | OTLP HTTP endpoint for exporting OpenTelemetry traces and metrics (for example `http://localhost:4318`). | |
| OTEL_METRIC_EXPORT_INTERVAL_MS | OpenTelemetry metrics export interval in milliseconds. | |
| OTEL_SERVICE_NAME | OpenTelemetry service name override. | |
| OTEL_SERVICE_VERSION | OpenTelemetry service version override. |
Automatisierte Checks
Geluften am 14. Nov. 2026Vollständiger Bericht →Unsere automatisierten Checks bestanden. Das ist kein Security-Audit: Lies den Code und gib dem Server nur den minimal notwendigen Zugriff. Wie die Checks funktionieren
- Source Repository verknüpft und erreichbarmrorigo/bash-command-mcp is public and reachablegithub.com/mrorigo/bash-command-mcp ↗Bestanden
- Paket nennt dieses Repository als QuelleNicht geprüft
- Build-Provenienz (Sigstore-Attestierung)Nicht geprüft
- Open Source Lizenz (OSI)MITspdx.org/licenses/MIT.html ↗Bestanden
- Commit oder Release im letzten JahrLast commit or release 2026-05-21github.com/mrorigo/bash-command-mcp ↗Bestanden
- OpenSSF ScorecardNicht geprüft
- Package-Name ähnelt keinem populären PackageNo popular package one edit away from bash-command-mcpBestanden
- Keine kritischen Advisories im Paket oder seinen Abhängigkeitenthe package checked; no critical advisoryosv.dev ↗Bestanden
- Keine versteckten Anweisungen an das Modell6 tool descriptions and the README read; no override phrases, credential paths or hidden charactersBestanden
- Destruktive Tools sind markiertNicht geprüft
- Remote-Endpoint beantwortet den MCP-HandshakeNicht geprüft
README
Auf GitHub ansehenbash-command-mcp
A highly sophisticated Bash MCP server for safe, structured command execution with first-class background job orchestration.
Important Security Warning
This server executes shell commands on the machine where it is running.
If you run bun run index.ts directly on your host, commands run on your host with your user permissions.
Use Docker to isolate execution unless you fully trust the MCP client and prompts.
To install dependencies:
bun install
To run over stdio:
bun run index.ts
To run over Streamable HTTP:
BASH_COMMAND_MCP_TRANSPORT=http \
BASH_COMMAND_MCP_HOST=127.0.0.1 \
BASH_COMMAND_MCP_PORT=3000 \
bun run index.ts
To run via npm/npx (published package):
npx -y bash-command-mcp
Why This Server
- High-fidelity shell execution with clear exit-code semantics.
- Advanced background process lifecycle controls (
run_background,wait_background,kill_background). - Built-in observability via per-process stdout/stderr log files.
- OpenTelemetry traces and metrics for production visibility.
- Agent-friendly ergonomics with
cwdandenvoverrides for precise execution context.
Tool Behavior
Tools:
run: run command in foreground. Args:commandorcmd,timeoutSeconds(default60, min1; values above86400are capped with a hint), optionalcwd, optionalenv.run_background: start command in background with stdout/stderr written to log files. Args:commandorcmd, optionalcwd, optionalenv.list_background: list tracked background processes, including log file paths.kill_background: stop tracked background process bypid.tail_background: show last N lines from background process logs. Args:pid, optionallines(default200, max5000).wait_background: wait for background process completion and return final status/output. Args:pid, optionaltimeoutSeconds(default60, min1; values above86400are capped with a hint).
OpenTelemetry
This server includes built-in OpenTelemetry instrumentation for traces and metrics.
- OpenTelemetry packages are installed with the server package.
- Telemetry initializes unless
OTEL_ENABLED=false. - If
OTEL_EXPORTER_OTLP_ENDPOINTis set, traces/metrics are exported via OTLP HTTP. - If no OTLP endpoint is configured, console exporters are used.
Instrumented operations:
- Tool call spans for
run,run_background,list_background,tail_background,wait_background, andkill_background. - Background lifecycle spans/counters (
started,ended). - Metrics for tool calls, failures, timeouts, and duration histograms.
Common env vars:
OTEL_ENABLED=true|falseOTEL_SERVICE_NAME=bash-command-mcpOTEL_SERVICE_VERSION=1.0.0OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4318OTEL_METRIC_EXPORT_INTERVAL_MS=10000BASH_COMMAND_MCP_LOG_DIR=/path/to/log-dir
Example (OTLP Collector on localhost):
OTEL_ENABLED=true \
OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4318 \
OTEL_SERVICE_NAME=bash-command-mcp \
npx -y bash-command-mcp
Transports
This server supports two transports:
stdiofor local, process-spawned integrations.httpfor remote or network-accessible MCP clients using Streamable HTTP.
Default behavior remains stdio so existing desktop and CLI setups keep working.
Environment variables for HTTP mode:
BASH_COMMAND_MCP_TRANSPORT=http|stdioBASH_COMMAND_MCP_HOST=127.0.0.1BASH_COMMAND_MCP_PORT=3000BASH_COMMAND_MCP_ALLOWED_HOSTS=localhost,127.0.0.1,[::1]
HTTP mode uses host-header validation by default when bound to a loopback address. If you bind to 0.0.0.0 or ::, provide an explicit allow-list in BASH_COMMAND_MCP_ALLOWED_HOSTS.
Docker
Build the image:
docker build -t bash-command-mcp .
Run with a local folder mounted at /workspace:
docker run --rm -i -v "$(pwd):/workspace" bash-command-mcp
Run over Streamable HTTP:
docker run --rm -p 3000:3000 \
-e BASH_COMMAND_MCP_TRANSPORT=http \
-e BASH_COMMAND_MCP_HOST=0.0.0.0 \
-e BASH_COMMAND_MCP_PORT=3000 \
bash-command-mcp
/workspace mapping explained:
- Left side (
$(pwd)) is a folder on your host machine. - Right side (
/workspace) is the path inside the container. - Commands run by this MCP server should target files under
/workspace; those changes are written back to the mapped host folder.
For HTTP mode in Docker, bind to 0.0.0.0 and publish the port with -p. If you expose the container beyond localhost, set BASH_COMMAND_MCP_ALLOWED_HOSTS to the hostnames you want to permit.
Example:
- If your host has
./project/file.txtand you run the container from./project, the same file is available in the container at/workspace/file.txt.
bash-command MCP Fragen
Wie füge ich bash-command MCP zu Claude Code hinzu?
Führe claude mcp add bash-command-mcp -- npx -y bash-command-mcp in deinem Terminal aus. Füge --scope user hinzu, damit der Server in jedem Projekt verfügbar ist.
Wie füge ich bash-command MCP zu Cursor hinzu?
Öffne ~/.cursor/mcp.json und füge den Server unter mcpServers hinzu, mit der Cursor-Config aus dem Installationsabschnitt oben.
Welche Tools bietet bash-command MCP?
Er stellt 6 Tools bereit, darunter run, run_background, list_background, kill_background, tail_background.
Ist es sicher, diesen Server auf meinem Host-Rechner auszuführen?
Es wird empfohlen, Docker zu verwenden, um die Ausführung zu isolieren, da der Server Shell-Commands mit deinen Benutzerberechtigungen ausführt.
Kann ich Commands im Hintergrund ausführen?
Ja, der Server bietet Tools, um Hintergrundprozesse zu starten, aufzulisten, zu killen, zu tailen und auf sie zu warten.
Wie kann ich die Performance und Traces des Servers überwachen?
Der Server enthält integrierte OpenTelemetry-Instrumentierung für Traces und Metrics.
Welche Transportmethoden werden unterstützt?
Der Server unterstützt stdio für lokale Integrationen und Streamable HTTP für Remote- oder netzwerkzugängliche Clients.