返回 MCP 目录
public公开dns本地运行

windowssandboxmcp

一个通过MCP协议管理Windows沙盒实例的.NET工具,支持沙盒生命周期管理、命令执行、文件夹共享和网络监控等功能。

article

README

🚀 Windows Sandbox MCP

Windows Sandbox MCP 是一个 .NET 工具,可通过模型 - 视图 - 控制器(MCP)协议管理 Windows 沙盒实例,为 Windows 沙盒的使用提供了便捷的编程控制方式。

Publish NuGet version

Demo Demo

⚠️ 重要提示

本项目目前处于实验阶段,可能存在漏洞和限制。我们欢迎反馈和测试,但不建议在生产环境中使用。请报告问题并提供反馈,以帮助改进项目!

🚀 快速开始

环境要求

⚠️ 重要提示:此工具需要 Windows 11 24H2 或更高版本,在 Windows 10 或早期版本的 Windows 11 上无法使用。

此 MCP 服务器依赖于新的 Windows 沙盒架构和 wsb.exe CLI 工具,这些仅在 Windows 11 24H2 及更高版本中可用。

构建项目

dotnet build

📦 安装指南

与 Claude Desktop 配合使用

1. 构建项目

dotnet build -c Release

2. AI 客户端配置

2.1. Claude Desktop

打开位于以下路径的 claude_desktop_config.json 文件: %AppData%\Claude\claude_desktop_config.json

日常使用时,按以下方式配置:

{
  "mcpServers": {
    "windows-sandbox": {
      "command": "dnx",
      "args": [
        "WindowsSandboxMcp",
        "--yes"
      ]
    }
  }
}

开发时,按以下方式配置:

{
  "mcpServers": {
    "windows-sandbox": {
      "command": "dotnet",
      "args": [
        "run",
        "--project",
        "D:\\projects\\WindowsSandboxMcp\\src\\WindowsSandboxMcp\\WindowsSandboxMcp.csproj"
      ]
    }
  }
}
2.2. Visual Studio Code

打开 VS Code 设置(Ctrl + ,)并搜索“MCP”,或直接编辑 settings.json

日常使用时,按以下方式配置:

{
  "servers": {
    "windows-sandbox": {
      "type": "stdio",
      "command": "dnx",
      "args": ["WindowsSandboxMcp", "--yes"]
    }
  }
}

开发时,按以下方式配置:

{
  "servers": {
    "windows-sandbox": {
      "type": "stdio",
      "command": "dotnet",
      "args": ["run", "--project", "D:\\projects\\WindowsSandboxMcp\\src\\WindowsSandboxMcp\\WindowsSandboxMcp.csproj"]
    }
  }
}

必须使用绝对路径。可以在 PowerShell 中使用 pwd 命令检查项目的绝对路径。

3. 重启 Claude Desktop

保存配置文件后,完全关闭 Claude Desktop 并重新启动。右键单击系统托盘中的 Claude 图标,然后选择“退出”。

✨ 主要特性

此 MCP 服务器通过以下功能对 Windows 沙盒进行编程控制:

  • 沙盒生命周期管理:使用自定义配置启动和停止 Windows 沙盒实例。
  • 命令执行:在沙盒环境中执行命令和脚本。
  • 共享文件夹:将主机目录映射到沙盒以实现文件共享。
  • 网络信息:检索网络配置和 IP 地址。
  • 会话管理:连接并监控沙盒会话。
  • 状态监控:检查沙盒当前是否正在运行。

⚠️ 重要提示:随着项目的发展,可用工具及其参数可能会发生变化。使用 MCP 客户端的工具发现功能查看当前可用工具列表及其规格。

💻 使用示例

你可以向 Claude Desktop 提出以下问题:

  • “启动一个新的 Windows 沙盒”
  • “在沙盒中执行记事本”
  • “获取沙盒的网络信息”
  • “停止沙盒”
  • “向沙盒添加共享文件夹”
  • “沙盒当前是否正在运行?”

🔧 技术细节

架构

此 MCP 服务器使用 Windows 11 24H2 中引入的新 Windows 沙盒架构,通过 wsb.exe CLI 工具提供编程控制。

依赖项

  • ModelContextProtocol(v0.4.0-preview.3) - 核心 MCP 实现
  • Microsoft.Extensions.Hosting(v10.0.0) - 应用程序托管基础设施
  • System.Management(v10.0.0) - 用于进程管理的 WMI 集成
  • wsb.exe - Windows 沙盒 CLI 工具(Windows 11 24H2+ 内置)

项目结构

  • Program.cs - 入口点和 MCP 服务器初始化
  • WindowsSandbox.cs - 高级 Windows 沙盒 API
  • WindowsSandboxCliRaw.cs - 低级 CLI 包装器
  • Tools/WindowsSandboxTools.cs - MCP 工具定义
  • Models/ - 配置和数据模型

关键特性

  • 单沙盒实例管理(防止多个沙盒同时运行)
  • 自动连接和就绪检测
  • 远程会话窗口管理
  • 基于 WMI 的活动会话进程检测

🤝 贡献

这是一个实验性项目,我们欢迎贡献!如果你遇到任何问题或有改进建议,请:

  • 在 GitHub 上打开一个问题
  • 提交拉取请求
  • 分享你的反馈和测试结果

你的贡献将帮助每个人更好地使用这个项目!

📄 许可证

本项目采用 Apache 许可证 2.0 - 详情请参阅 LICENSE 文件。

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端