使用说明
mcp-wsl执行官
一种模型上下文协议(MCP)服务器 Windows+Claude桌面 用户 与Windows Linux子系统(WSL)交互。提供 只读信息收集和安全命令执行 能力。
⚠️ 重要提示:谁应该使用这个?
✅ 在以下情况下,你应该使用这个:
- 您正在使用 Windows上的克劳德桌面
- 您需要与WSL环境进行交互
- 您想向Claude提供WSL上下文(系统信息、进程、, 文件等)
❌ 在以下情况下,您不需要这个:
- 您正在使用 克劳德代码 (它具有本机bash访问权限)
- 您使用的是Linux/macOS(请改用本机工具)
- 您只需要Windows PowerShell/CMD(使用其他MCP服务器)
特征
📊 信息收集(只读)
- 🖥️ 获取系统信息(操作系统、内核、主机名)
- 📁 浏览目录内容
- 💾 检查磁盘使用情况
- ⚙️ 列出环境变量
- 🔄 监控正在运行的进程
🔧 命令执行(安全)
- 🔒 WSL环境中的安全命令执行
- ⚡ 内置安全功能:
- 危险指令检测
- 命令确认系统
- 路径遍历预防
- 命令清理
- 📁 工作目录支持
- ⏱️ 命令超时功能
- 🛡️ 防止外壳注射
配置
此服务器需要通过MCP客户端进行配置。这是 不同环境的示例:
临床配置
将此添加到您的Cline MCP设置中:
{
"mcpServers": {
"mcp-wsl-exec": {
"command": "npx",
"args": ["-y", "mcp-wsl-exec"]
}
}
}
Claude桌面配置
将此添加到您的Claude Desktop配置中:
{
"mcpServers": {
"mcp-wsl-exec": {
"command": "npx",
"args": ["-y", "mcp-wsl-exec"]
}
}
}
API
服务器提供7个MCP工具:
信息收集(只读)📊
这些工具提供有关WSL环境的上下文,而无需 变化:
get_system_info
获取系统信息(操作系统版本、内核、主机名)。
参数: 无
get_directory_info
获取目录内容和文件信息。
参数:
path(字符串,可选):目录路径(默认为当前路径 目录)details(布尔值,可选):显示详细信息 (权限、大小等)
get_disk_usage
获取磁盘空间信息。
参数:
path(字符串,可选):要检查的特定路径(默认为全部 文件系统)
get_environment
获取环境变量。
参数:
filter(字符串,可选):用于搜索特定内容的过滤模式 变量
列表_流程
列出正在运行的进程。
参数:
filter(字符串,可选):按进程名称筛选
命令执行(潜在破坏性)🔧
当您需要进行更改或运行自定义命令时,请使用这些工具:
execute_命令
在WSL中执行带有安全检查和验证的命令。
参数:
command(string,必填):要执行的命令working_dir(string,可选):命令的工作目录 执行timeout(数字,可选):超时时间(毫秒)
注: 危险命令需要通过以下方式确认
confirm_command.
confirm_命令
确认执行安全标记的危险命令 检查。
参数:
confirmation_id(字符串,必填):从收到的确认ID execute_命令confirm(boolean,必填):是否继续执行命令 执行
安全特性
危险指令检测
服务器维护一个潜在危险命令列表 执行前需要明确确认,包括:
- 文件系统操作(rm、rmdir、mv)
- 系统命令(关机、重启)
- 包管理(apt、yum、dnf)
- 文件重定向(>,>>)
- 权限更改(chmod、chown)
- 还有更多。..
命令验证
命令通过以下方式执行 bash -c,所以正常的shell语法如下
因为管道、引号、重定向和命令链都被保留了下来。这
服务器验证空/null字节输入,引用
内置工具,需要确认是否存在潜在危险
命令。
发展
设置
- 克隆仓库
- 安装依赖项:
pnpm install
- 构建项目:
pnpm build
- 在开发模式下运行:
pnpm dev
出版
该项目使用变更集进行版本管理。要发布,请执行以下操作:
- 创建变更集:
pnpm changeset
- 版本包:
pnpm changeset version
- 发布到npm:
pnpm release
贡献
欢迎投稿!请随时提交拉取请求。
许可证
MIT许可证-请参阅 许可证 文件以获取详细信息。
致谢
- 建立在 模型上下文协议
- 专为安全执行WSL命令而设计
