win-shell-mcp
win-shell-mcp
Нативный кроссплатформенный слой абстракции команд для ИИ — предоставляет 40 детерминированных инструментов в виде MCP-сервера, заменяет вызовы голого shell, унифицирует минималистичный JSON-вывод, обрабатывает различия путей/кодировок/кавычек Windows.
Зачем
Вызов shell-команд через ИИ опасен и ненадёжен:
Кроссплатформенная несовместимость: разделители путей Windows, кодировки (GBK), кавычки, имена команд (
delvsrm) сильно отличаются от unixСложность парсинга вывода: формат вывода shell-команд произволен, ИИ сложно надёжно извлечь информацию
Риски безопасности: голый shell допускает конвейеры, перенаправления, инъекции команд
win-shell-mcp заменяет обычные shell-команды на 40 детерминированных инструментов, каждый из которых:
Принимает структурированные JSON-параметры, возвращает единый
{ ok: true, ...data }или{ ok: false, error: { code, message } }Ведёт себя одинаково на всех платформах (одна конфигурация для Windows/macOS/Linux)
Минималистичный вывод (по умолчанию только минимальные поля, необходимые для принятия решений ИИ), флаг
verboseдля получения полных данныхСтандартные коды ошибок (
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
Установка
# 全局安装
npm install -g win-shell-mcp
# 或一次性运行
npx win-shell-mcpТребуется Node.js ≥ 18.
Конфигурация клиента
Claude Desktop
Отредактируйте claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\):
{
"mcpServers": {
"win-shell-mcp": {
"command": "win-shell-mcp"
}
}
}Если не установлено глобально, используйте npx:
{
"mcpServers": {
"win-shell-mcp": {
"command": "npx",
"args": ["win-shell-mcp"]
}
}
}Универсальный MCP-клиент
Любой клиент, совместимый с Model Context Protocol, может подключаться через stdio:
{
"mcpServers": {
"win-shell-mcp": {
"command": "win-shell-mcp",
"transport": "stdio"
}
}
}После запуска клиент будет общаться с сервером через stdio и автоматически обнаружит все 40 инструментов.
Список инструментов (40)
Сгруппированы по доменам. Каждый инструмент возвращает единый контракт вывода: успех { ok: true, ...data }, ошибка { ok: false, error: { code, message } }.
system (4)
Инструмент | Описание |
| Информация о системе (os, arch, platform, hostname, cwd, node); |
| Использование диска (total/free/used, байты) |
| Информация о памяти (total/free); |
| Список записей переменной окружения PATH; |
fs_read (3)
Инструмент | Описание |
| Список содержимого каталога; |
| Чтение файла; поддержка диапазона строк, автоопределение кодировки (GBK/UTF-8), усечение |
| Информация о файле/каталоге (type, size, mtime, birthtime) |
fs_write (6)
Инструмент | Описание |
| Запись файла (поддержка кодировок utf-8/gbk, возможность добавления) |
| Создание каталога ( |
| Удаление файла/каталога ( |
| Копирование файла/каталога (для каталогов требуется |
| Перемещение/переименование (если dest существует, ошибка, без перезаписи) |
| Создание пустого файла или обновление mtime |
text (6)
Инструмент | Описание |
| Поиск текста по регулярному выражению |
| Взять первые N строк |
| Взять последние N строк |
| Подсчёт строк/слов/символов |
| Различия между двумя текстами |
| Замена текста по регулярному выражению |
search (3)
Инструмент | Описание |
| Поиск путей файлов по glob-шаблону |
| Поиск содержимого в файлах |
| Поиск пути к исполняемому файлу (аналог |
process (2)
Инструмент | Описание |
| Список процессов |
| Завершение процесса (по PID) |
shell_exec (1)
Инструмент | Описание |
| Выполнение shell-команды (с таймаутом и обработкой кодировки) |
env (3)
Инструмент | Описание |
| Чтение переменной окружения |
| Установка переменной окружения |
| Удаление переменной окружения |
net (4)
Инструмент | Описание |
| HTTP GET запрос |
| HTTP POST запрос |
| DNS разрешение |
| Проверка TCP-соединения |
pkg (2)
Инструмент | Описание |
| Определение менеджера пакетов (npm/pnpm/yarn) |
| Запуск скрипта пакета |
git (6)
Инструмент | Описание |
| Состояние рабочей директории |
| История коммитов |
| Список веток и переключение |
| Различия |
| Индексация |
| Коммит |
⚠️ Предупреждение безопасности
Нет песочницы, полные права.
Данный сервер выполняет все операции с полными правами запустившего его пользователя, эквивалентно голому shell.
fs_rmможет удалить любой доступный файл,shell_execможет выполнить любую команду,process_killможет завершить любой доступный процесс,fs_writeможет перезаписать любой доступный файл.Используйте только в доверенной среде:
Подключайтесь только к доверенному ИИ-клиенту
Не открывайте доступ в общей/многопользовательской среде
Перед операциями с чувствительными каталогами (системные, домашняя папка пользователя) требуйте подтверждения
В производственной среде рекомендуется изоляция на уровне ОС (выделенная учётная запись с низкими правами, контейнер, chroot и т.д.)
Этот проект не предоставляет никакой песочницы, изоляции прав, чёрных списков команд или ограничений путей. Весь контроль доступа зависит от прав операционной системы.
Разработка
# 安装依赖
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Сборка создает dist/index.js (упаковано с помощью tsup, ESM).
Структура проекта
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/ # 编码测试Лицензия
MIT
This server cannot be installed
Maintenance
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
- Flicense-qualityCmaintenanceA 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.
- Alicense-qualityAmaintenanceProvides 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.1136MIT
- Alicense-qualityCmaintenanceRemote execution layer for agentic systems exposing 64 production tools via MCP for file, network, system, text, git, crypto, and monitoring operations.MIT
- FlicenseCqualityCmaintenanceA security-first MCP server that provides LLMs with structured tools for filesystem, process, search, build/test/lint, IDE integration, and more.402
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.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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