Prototyp · Vorschau: alle Server aus der offiziellen Registry, alle 30 Minuten synchronisiert. Bewertungen und Benutzerkonten folgen in einem späteren Schritt.
PopNx MCPMCP-Server für alle, die KI nutzen · in einfachen Worten erklärt

bash-mcp

von nickw8Version 5.0.1i★ –iLäuft auf deinem Computer
Name in der Registryio.github.nickw8/bash-mcp

Installieren

Überblick

Beschreibung vom Entwickler (englisches Original)

Structured JSON wrappers for git, kubectl, terraform, helm, argocd, gh, glab and other CLIs.

Die drei Säulen von PopNx MCP

Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.

Was du damit machen kannst

Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.

  • Verbindung: Läuft auf deinem Computer
  • Transport: stdio
  • Kategorie: Entwicklertools

Installation

Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.

Bevor du installierst

  • Basischecks: 1 von 1 bestanden
  • Läuft auf deinem Computer mit den Rechten deines Benutzerkontos (Dateien, Netzwerk, Apps).
  • Das trägst du selbst ein: BASH_MCP_MODE, BASH_MCP_PROFILE, BASH_MCP_RESPONSE_MODE

Du brauchst

  • npmNode.js installiert (für den Befehl npx)

Welche App nutzt du?

Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.

Öffne Claude Desktop → Settings → Developer → Edit Config und füge dies in claude_desktop_config.json ein

{
  "mcpServers": {
    "bash": {
      "command": "npx",
      "args": [
        "-y",
        "@nickw8/bash-mcp"
      ],
      "env": {
        "BASH_MCP_MODE": "your-value",
        "BASH_MCP_PROFILE": "your-value",
        "BASH_MCP_RESPONSE_MODE": "your-value"
      }
    }
  }
}

Führe das in deinem Terminal aus

claude mcp add bash --env BASH_MCP_MODE=your-value --env BASH_MCP_PROFILE=your-value --env BASH_MCP_RESPONSE_MODE=your-value -- npx -y @nickw8/bash-mcp

Trag die leeren Werte ein, bevor du ihn startest.

In Cursor öffnen

Oder kopier die Einstellungen selbst

In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen

{
  "mcpServers": {
    "bash": {
      "command": "npx",
      "args": [
        "-y",
        "@nickw8/bash-mcp"
      ],
      "env": {
        "BASH_MCP_MODE": "your-value",
        "BASH_MCP_PROFILE": "your-value",
        "BASH_MCP_RESPONSE_MODE": "your-value"
      }
    }
  }
}

Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.

In VS Code öffnen

Oder kopier die Einstellungen selbst

In .vscode/mcp.json in deinem Projekt einfügen

{
  "servers": {
    "bash": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@nickw8/bash-mcp"
      ],
      "env": {
        "BASH_MCP_MODE": "your-value",
        "BASH_MCP_PROFILE": "your-value",
        "BASH_MCP_RESPONSE_MODE": "your-value"
      }
    }
  }
}

Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.

Dieser Server läuft auf deinem Computer, und ChatGPT kann sich nur mit Servern im Internet verbinden. Wähle eine andere App.

Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.

Werte, die du selbst einträgst

  • BASH_MCP_MODE env
    Write gate for run/batch: readOnly (default), confirmWrites, off
  • BASH_MCP_PROFILE env
    Tool set to register: core, development, infrastructure, all (default)
  • BASH_MCP_RESPONSE_MODE env
    Response budget: auto (default), summary, compact, full

Diese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.

Was er kann

Läuft auf deinem Computer; die Tool-Liste erscheint nach der Installation in deiner KI-App.

Basischecksi

Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 6. Nov. 2026

  • ✓ Bestanden

    Entwickler passt zum Repo

    Der Registry-Name wurde mit dem GitHub-Konto nickw8 bestätigt, dem das Repo gehört

  • … Noch nicht geprüft

    Wird noch gepflegt

    Dieses Repo haben wir noch nicht von GitHub gelesen

  • … Noch nicht geprüft

    Hat eine Lizenz

    Dieses Repo haben wir noch nicht von GitHub gelesen

  • – Nicht zutreffend

    Endpunkt antwortet

    Dieser Server läuft auf deinem Computer; es gibt keinen Endpunkt im Internet

  • – Nicht zutreffend

    Anmeldung mit OAuth

    Läuft auf deinem Computer und nutzt stattdessen lokale Einstellungen

  • … Noch nicht geprüft

    Keine versteckten Anweisungen in Tool-Beschreibungen

    Läuft auf deinem Computer; Tool-Listen können wir nur von Endpunkten im Internet lesen

Im Vergleich mit anderen in Entwicklertoolsi

  • Mehr Sterne als 0 % der anderen 1389 Server in dieser Kategorie
  • Neuer in der Registry veröffentlicht als 76 % der anderen 1389 Server in dieser Kategorie
  • Basischecks gleich gut wie oder besser als bei 100 % der anderen 1389 Server in dieser Kategorie

Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.

Häufige Fragen

Ist bash-mcp sicher?

Er hat 1 von 1 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.

Welche Schlüssel oder Codes braucht er?

Die Registry nennt keinen erforderlichen Schlüssel, manche Server bitten dich aber bei der ersten Nutzung, dich anzumelden.

Läuft er auf meinem Computer oder in der Cloud?

Er läuft auf deinem Computer. Deine KI-App startet ihn bei Bedarf, und die Daten laufen nicht über die Server des Entwicklers (außer der Server ruft selbst einen Onlinedienst auf).

Wird er noch gepflegt?

Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (5.0.1) kam vor 14 Tagen in die Registry.

Welche Apps können ihn nutzen?

Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Außerdem brauchst du Node.js auf deinem Computer.

Was kann ich stattdessen nutzen?

In derselben Kategorie: GitHub, Desktop Commander, Cloudflare MCP

Alternativen

Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.

So liest du eine Karte:★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti

GitHub

von github

Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.

Computer oder Cloud★ 34.245MITAktualisiert vor 3 Tagen
Installieren

Desktop Commander

von wonderwhy-er

MCP server for terminal commands, file operations, and process management

Läuft auf deinem Computer★ 10.225MITAktualisiert vor 15 Tagen
Installieren

Cloudflare MCP

von cloudflare

Cloudflare MCP servers

Läuft in der Cloud★ 4.446Apache-2.0Aktualisiert vor 14 Monaten
Installieren

README vom Entwickler

README öffnen

Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.

bash-mcp

An MCP server that wraps common CLI tools (kubectl, terraform, helm, git, argocd, jq, yq, ripgrep, etc.) and returns structured JSON instead of raw text output.

Designed for AI agents and LLM-powered workflows where parsing human-readable CLI output wastes tokens and breaks easily.

Created with the help of Claude since it is the main consumer of the structured data.

Quick Start

Option 1: Zero-install with npx

No installation needed — just add the MCP config and npx will fetch it on first use.

Option 2: Global install
npm install -g @nickw8/bash-mcp
Option 3: Install from source
git clone https://github.com/nickw8/bash-mcp.git

cd bash-mcp npm install && npm run build npm link

Verify your setup

Run the built-in preflight check before wiring bash-mcp into a client:

npx -y @nickw8/bash-mcp --doctor   # or: bash-mcp --doctor (global install)

It reports your Node version, whether the MCP SDK loads, which CLIs are available (versions included), and the resolved BASH_MCP_MODE — then exits non-zero if a critical check fails (Node too old or the SDK can't load). Missing CLIs are advisory, not failures. Without --doctor, the binary starts the MCP server as usual.

Claude Code Setup

Add bash-mcp to your Claude Code settings. For all projects (recommended), edit ~/.claude/settings.json. For a single project, edit .claude/settings.json in the project root.

With npx (no install required):

{

"mcpServers": { "bash-mcp": { "command": "npx", "args": ["-y", "@nickw8/bash-mcp"], "env": { "BASH_MCP_MODE": "readOnly" } } } }

Safe by default: an unset BASH_MCP_MODE resolves to readOnly, which

blocks mutating run/batch commands. The examples set it explicitly for

clarity. For trusted local use, set BASH_MCP_MODE=off to allow writes.

With global install:

{

"mcpServers": { "bash-mcp": { "command": "bash-mcp", "env": { "BASH_MCP_MODE": "readOnly" } } } }

To verify it's working, start Claude Code and check that bash-mcp tools (like cat, rg, git_status) appear in the tool list.

You can also add it from the CLI:

claude mcp add bash-mcp -e BASH_MCP_MODE=readOnly -- npx -y @nickw8/bash-mcp
Steer agents toward the structured tools (optional)

Registering the server exposes the tools, but agents still reach for raw Bash out of habit. Two assets fix that: a rules file (~/.claude/rules/bash-mcp-tools.md, auto-loaded into every session — the tool inventory) and a PreToolUse(Bash) redirect hook. Install both with:

npx -y @nickw8/bash-mcp --install-claude        # copy into ~/.claude

npx -y @nickw8/bash-mcp --install-claude --check # report drift, write nothing

It prints the settings.json hook block to paste in (the rules file needs no settings — Claude Code auto-loads ~/.claude/rules/*.md). See hooks/README.md for details and the clone-time npm run claude:install equivalent. --uninstall-claude removes both files again.

Or install the Claude Code plugin, which bundles the server and the hook (in warn mode — it never blocks unless BASH_MCP_HOOK=block):

/plugin install bash-mcp --marketplace nickw8/bash-mcp

Every other client (VS Code/Copilot, Codex, generic stdio) and pinned versions: docs/guides/installation.md.

Claude Desktop Setup

Edit claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\) and add the same mcpServers entry:

{

"mcpServers": { "bash-mcp": { "command": "npx", "args": ["-y", "@nickw8/bash-mcp"], "env": { "BASH_MCP_MODE": "readOnly" } } } }

Restart Claude Desktop after editing.

Cursor Setup

Add bash-mcp to ~/.cursor/mcp.json (global) or .cursor/mcp.json (per-project):

{

"mcpServers": { "bash-mcp": { "command": "npx", "args": ["-y", "@nickw8/bash-mcp"], "env": { "BASH_MCP_MODE": "readOnly" } } } }

(Use "command": "bash-mcp" with no args if you installed globally.) Any MCP-aware client works the same way — point it at the bash-mcp binary or npx -y @nickw8/bash-mcp.

Recommended Hooks

Optional Claude Code hooks in hooks/ steer agents toward the structured tools by blocking raw shell commands (git status, kubectl get, cat, …) that have a bash-mcp equivalent, while letting write commands (git commit, kubectl apply) pass through. BASH_MCP_HOOK=warn makes every block advisory; off disables the hook.

See docs/runbooks/hooks-setup.md for setup.

Why Structured Output?

Raw CLI tools return text meant for humans. AI agents waste tokens parsing tables, aligning columns, and guessing field boundaries. bash-mcp runs the same CLI tools but returns structured JSON with typed schemas, so the agent gets exactly the data it needs.

# Raw kubectl output: 148 tokens to parse a table

NAME READY STATUS RESTARTS AGE nginx-7c5b8d6c88-abc12 1/1 Running 0 3d

bash-mcp output: typed, compact, ready to use

{ "name": "nginx-7c5b8d6c88-abc12", "status": "Running", "age": "3d", ... }

See docs/guides/token-benchmarks.md for measured savings (e.g. kubectl describe pod → kube_diagnose_pod is ~64% fewer tokens).

Philosophy: structured tools first, run is the escape hatch

  1. Reach for a structured tool first. Every wrapper returns typed JSON the agent can use directly — no column-counting, no re-parsing on a format change.
  2. Prefer a diagnostic over a chain of raw commands. Tools like kube_diagnose_pod, helm_release_triage, and argo_app_health_summary answer an *operational question* in one call — { status, likelyCauses, suggestedNextCommands, evidence } — instead of making the agent run get, then logs, then reason across both.
  3. `run` / `batch` are the escape hatch. For commands without a dedicated wrapper, run executes anything with smart truncation. Optional hooks actively steer agents back to the structured tool when a raw equivalent is invoked.

Read-only tools carry the MCP readOnlyHint annotation. run/batch can be gated with BASH_MCP_MODE (see Configuration).

Which tool should I use?

Pick the structured tool that matches your intent instead of reaching for a raw command. The list_guidance tool returns this same index as JSON (filter by intent or category), so agents can self-select without the README.

I want to…Use thisInstead of
diagnose a crashing or failing Kubernetes podkube_diagnose_podkubectl describe pod, kubectl logs
find all not-ready or failing pods in a namespacekube_pod_failure_summarykubectl get pods, `kubectl get pods \grep`
check a deployment's rollout healthkube_deployment_statuskubectl rollout status, kubectl get deployment
understand recent cluster eventskube_events_summarykubectl get events
summarize the changes in a Terraform plantf_plan_summaryterraform plan, terraform show
review the current feature branch before a PRgit_pr_contextgit diff, git log, git status
understand the overall state of a repositoryrepo_health_summarygit status, git log --oneline
read a file's structure without loading the full bodyoutlinecat (entire file), cat
read one region of a large filecatcat (whole file), sed -n '10,40p'
keep a broad search from flooding the contextrg`rg \head`
search for exact code references or symbolsrggrep -r, rg
check whether a pull request's CI checks passgh_pr_checksgh pr checks, gh pr view
find out why a CI / GitHub Actions run failedgh_run_failure_summarygh run view --log-failed, gh run list
check whether a GitLab pipeline or merge request's jobs passglab_ci_statusglab ci get, glab ci status
find out why a GitLab CI pipeline failedglab_pipeline_failure_summaryglab ci trace, glab ci view
triage why a Helm release is unhealthyhelm_release_triagehelm status, helm get values
check whether an ArgoCD app is healthy and in syncargo_app_health_summaryargocd app get, argocd app list
validate a Liquibase changelog for errorsliquibase_validateliquibase validate
preview the SQL Liquibase would run for pending changesetsliquibase_update_sqlliquibase updateSQL, `liquibase updateSQL \grep`
list Liquibase changesets not yet applied to the databaseliquibase_statusliquibase status --verbose
lint a shell script for bugs and quoting issuesbash_lintshellcheck, shellcheck -f json1
run a bats or shell test suitebash_testbats, bash test.sh
discover which CLIs are installed before calling a toolcheck_environmentwhich, --version

Tools

📖 [Full tool reference → `docs/tools.md`](docs/tools.md) — generated from the

registered tools (inputs, outputs, and the raw command each one approximates).

Regenerate with npm run docs:tools.

Environment
ToolDescription
check_environmentReport which CLIs are installed (and their versions) so you can pick the right tool before calling it.
list_guidanceReturn an intent → preferred-tool index so you can pick the right bash-mcp tool for a goal.
Filesystem
ToolDescription
lsList files in a directory.
treeShow directory structure as a compact tree.
duShow disk usage for paths.
find_filesFind files by name pattern, type, or modification time.
Search
ToolDescription
rgSearch file contents with ripgrep.
globFind files matching a glob pattern.
File
ToolDescription
catRead one or more files with line numbers and smart truncation.
outlineShow the structural outline of a file — function/class names, top-level comments, imports.
Git
ToolDescription
git_statusStructured git status: branch, staged/unstaged/untracked files.
git_logStructured git log: commit hash, author, date, message.
git_diffStructured git diff: files changed with insertions/deletions counts.
git_branchesList git branches.
repo_health_summaryOne-call snapshot of a git working tree: branch, ahead/behind vs upstream, staged/unstaged/untracked counts, recent commits, and the uncommitted diffstat.
git_pr_contextCollect the commits and file changes of a branch vs a base ref (for writing a PR description): commit list, changed files with status, and a diffstat over base...head.
git_diff_contentShow git diff with structured patch content.
GitHub
ToolDescription
gh_pr_checksReport a pull request's CI checks as counts per state plus the failing and pending checks.
gh_run_failure_summaryDiagnose a GitHub Actions run in one call: status, the failed jobs and steps, and the ##[error] lines from the failed log as evidence.
GitLab
ToolDescription
glab_ci_statusReport a GitLab pipeline's jobs as counts per status plus the failed, running and pending jobs.

| glab_pipeline_failure_summary | Diagnose a GitLab pipeline in one call: status, the failed jobs and why GitLab says they failed, and the last script li

Nur der Anfang wird gezeigt; den Rest findest du im Repo

PopNx fragen