Skip to main content
Glama

win-shell-mcp

KI-native, plattformübergreifende Befehlsabstraktionsebene – bietet 40 deterministische Tools als MCP-Server, ersetzt direkte Shell-Aufrufe, vereinheitlicht minimale JSON-Ausgabe und behandelt Windows-Pfad-/Kodierungs-/Anführungszeichenunterschiede.

CI

Warum

KI den Aufruf von Shell-Befehlen zu überlassen, ist gefährlich und unzuverlässig:

  • Plattforminkonsistenzen: Windows-Pfadtrennzeichen, Kodierung (GBK), Anführungszeichen, Befehlsnamen (del vs rm) unterscheiden sich stark von Unix

  • Schwer zu parsende Ausgabe: Die Ausgabe von Shell-Befehlen ist formlos, sodass KI schwer zuverlässig Informationen extrahieren kann

  • Sicherheitsrisiken: Die reine Shell erlaubt Pipes, Umleitungen und Befehlsinjektion

win-shell-mcp ersetzt gängige Shell-Befehle durch 40 deterministische Tools. Jedes Tool:

  • Akzeptiert strukturierte JSON-Parameter und gibt einheitliches { ok: true, ...data } oder { ok: false, error: { code, message } } zurück

  • Verhält sich plattformübergreifend konsistent (gleiche Konfiguration für Windows/macOS/Linux)

  • Minimale Ausgabe (standardmäßig nur die für KI-Entscheidungen notwendigen Felder), verbose-Schalter für vollständige Daten

  • Standardisierte Fehlercodes (ENOENT/EISDIR/ENOTDIR/EACCES/EINVAL/ETIMEOUT/EEXEC/EUNKNOWN/INVALID_URL/NET_TIMEOUT/NET_FAIL/PROC_NOT_FOUND/PROC_KILL_FAIL/EXEC_FAIL/EXEC_TIMEOUT/GIT_FAIL)

Related MCP server: Pare

Installation

# 全局安装
npm install -g win-shell-mcp

# 或一次性运行
npx win-shell-mcp

Erfordert Node.js ≥ 18.

Client-Konfiguration

Claude Desktop

Bearbeiten Sie claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\):

{
  "mcpServers": {
    "win-shell-mcp": {
      "command": "win-shell-mcp"
    }
  }
}

Wenn nicht global installiert, verwenden Sie npx:

{
  "mcpServers": {
    "win-shell-mcp": {
      "command": "npx",
      "args": ["win-shell-mcp"]
    }
  }
}

Allgemeiner MCP-Client

Jeder Client, der mit dem Model Context Protocol kompatibel ist, kann über stdio verbunden werden:

{
  "mcpServers": {
    "win-shell-mcp": {
      "command": "win-shell-mcp",
      "transport": "stdio"
    }
  }
}

Nach dem Start kommuniziert der Client über stdio mit dem Server und entdeckt automatisch alle 40 Tools.

Tool-Liste (40)

Gruppiert nach Domäne. Jedes Tool gibt einen einheitlichen Ausgabevertrag zurück: Erfolg { ok: true, ...data }, Fehler { ok: false, error: { code, message } }.

system (4)

Tool

Beschreibung

system_info

Systeminformationen (os, arch, platform, hostname, cwd, node); verbose enthält uptime, Speicher, CPU

system_disk

Festplattennutzung (total/free/used, in Bytes)

system_memory

Speicherinformationen (total/free); verbose enthält used, swap

system_path

Liste der PATH-Umgebungsvariablen-Einträge; verbose enthält count, existing

fs_read (3)

Tool

Beschreibung

fs_list

Verzeichnis auflisten; verbose mit Typ und Größe, recursive rekursiv

fs_read

Datei lesen; unterstützt Zeilenbereich, automatische Kodierungserkennung (GBK/UTF-8), Abschneiden

fs_stat

Datei-/Verzeichnisinformationen (type, size, mtime, birthtime)

fs_write (6)

Tool

Beschreibung

fs_write

Datei schreiben (unterstützt utf-8/gbk-Kodierung, anhängbar)

fs_mkdir

Verzeichnis erstellen (recursive standardmäßig true, ähnlich mkdir -p)

fs_rm

Datei/Verzeichnis löschen (recursive löscht Verzeichnisbaum, force ignoriert Nichtexistenz)

fs_cp

Datei/Verzeichnis kopieren (Verzeichnis benötigt recursive)

fs_mv

Verschieben/Umbenennen (schlägt fehl, wenn dest existiert, keine Überschreibung)

fs_touch

Leere Datei erstellen oder mtime aktualisieren

text (6)

Tool

Beschreibung

text_grep

Text mit Regex durchsuchen

text_head

Erste N Zeilen ausgeben

text_tail

Letzte N Zeilen ausgeben

text_wc

Zeilen/Wörter/Zeichen zählen

text_diff

Unterschiede zwischen zwei Textblöcken

text_replace

Text mit Regex ersetzen

search (3)

Tool

Beschreibung

search_glob

Dateipfade mit Glob-Muster finden

search_content

In Dateien nach Inhalt suchen

search_which

Ausführbare Datei finden (ähnlich which/where)

process (2)

Tool

Beschreibung

process_list

Prozesse auflisten

process_kill

Prozess beenden (nach PID)

shell_exec (1)

Tool

Beschreibung

shell_exec

Shell-Befehl ausführen (mit Timeout und Kodierungsbehandlung)

env (3)

Tool

Beschreibung

env_get

Umgebungsvariable lesen

env_set

Umgebungsvariable setzen

env_unset

Umgebungsvariable löschen

net (4)

Tool

Beschreibung

net_get

HTTP-GET-Anfrage

net_post

HTTP-POST-Anfrage

net_dns

DNS-Auflösung

net_tcp

TCP-Verbindungstest

pkg (2)

Tool

Beschreibung

pkg_detect

Paketmanager erkennen (npm/pnpm/yarn)

pkg_run

Paketskript ausführen

git (6)

Tool

Beschreibung

git_status

Arbeitsbereichsstatus

git_log

Commit-Verlauf

git_branch

Branch-Liste und -Wechsel

git_diff

Unterschiede

git_add

Staging

git_commit

Commit

⚠️ Sicherheitshinweis

Keine Sandbox, volle Berechtigungen.

Dieser Server führt alle Operationen mit den vollen Berechtigungen des ausführenden Benutzers aus, gleichwertig zur reinen Shell. fs_rm kann jede zugängliche Datei löschen, shell_exec kann jeden beliebigen Befehl ausführen, process_kill kann jeden zugänglichen Prozess beenden, fs_write kann jede zugängliche Datei überschreiben.

Verwenden Sie dies nur in vertrauenswürdigen Umgebungen:

  • Verbinden Sie sich nur mit KI-Clients, denen Sie vertrauen

  • Setzen Sie dies nicht in gemeinsam genutzten/Mandantenfähigen Umgebungen ein

  • Bestätigen Sie Operationen an sensiblen Verzeichnissen (Systemverzeichnisse, Benutzerhome) manuell

  • In Produktionsumgebungen wird die Kombination mit Betriebssystem-Berechtigungsisolierung empfohlen (dediziertes Konto mit niedrigen Rechten, Container, chroot usw.)

Dieses Projekt bietet keine Sandbox, Berechtigungsisolierung, Befehlsblacklist oder Pfadbeschränkungen. Die gesamte Zugriffskontrolle basiert auf den Betriebssystemberechtigungen.

Entwicklung

# 安装依赖
npm install

# 类型检查
npm run typecheck

# 测试
npm test

# 测试(watch 模式)
npm run test:watch

# 覆盖率(阈值:lines/functions/statements ≥ 85%,branches ≥ 70%)
npm run coverage

# 构建
npm run build

# 开发模式(watch 构建)
npm run dev

Das Build-Artefakt ist dist/index.js (tsup-Bundle, ESM).

Projektstruktur

src/
  index.ts          # 入口:启动 stdio server
  server.ts         # MCP Server 创建与工具分发
  registry.ts       # 工具注册表(注册全部 40 个工具)
  contract/         # 输出契约与错误码
  encoding/         # 编码检测(GBK/UTF-8)
  tools/            # 40 个工具实现,按域分文件
tests/
  server.test.ts    # server 单元测试
  integration/      # 集成测试(Client + InMemoryTransport)
  tools/            # 各工具单元测试
  contract/         # 契约测试
  encoding/         # 编码测试

Lizenz

MIT

A
license - permissive license
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    -
    quality
    C
    maintenance
    A unified MCP server with composable tools for GitHub operations, file management, shell execution, kanban boards, Discord messaging, and package management. Features role-based security, HTTP/stdio transports, and a web-based development UI.
  • A
    license
    -
    quality
    A
    maintenance
    Provides MCP servers that wrap common developer tools (git, npm, docker, etc.) returning structured JSON output, enabling AI agents to reliably interact with these tools without parsing fragile terminal text.
    1
    136
    MIT

View all related MCP servers

Related MCP Connectors

  • A MCP server built for developers enabling Git based project management with project and personal…

  • Personal assistant MCP server with search, execute, packages, jobs, secrets, and integrations.

  • Scans MCP servers for tool poisoning, prompt injection and supply chain risks.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/1072636071/win-shell-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server