Skip to main content
Glama
Neal86
by Neal86

GPT Windows Connector

远程优先、多用户的 Windows 执行 MCP,适用于 ChatGPT、Claude、Gemini 及其他兼容 MCP 的 AI 客户端。

该产品通过 VPS 网关暴露本地项目文件、Shell、长时间运行的进程、Git、浏览器自动化以及 Windows 桌面/UI 自动化。Codex、Claude Code 和 Gemini CLI 不作为执行层使用。

最终架构

ChatGPT / Claude / Gemini / other Remote-MCP client
                    |
                    | HTTPS / MCP
                    v
              VPS Gateway
          account / projects / logs
                    |
                    | WSS
                    v
              Windows Node
                    |
        files / shell / git / browser / desktop

所有 AI 到 Windows 的流量均通过 VPS 中继。Windows 计算机会建立出站 WSS 连接,无需开放入站端口。

Related MCP server: windows-computer-use-mcp

用户体验

  1. 打开 VPS 网关网站。

  2. 使用邮箱/密码注册或通过 Google 登录。

  3. 从 Windows Nodes 绑定一台 Windows 计算机。

  4. 从 Projects 创建一个项目。

  5. 选择一台在线的 Windows 计算机。

  6. 浏览该计算机允许的文件夹树,选择工作区。

  7. 使用同一账号将远程 MCP 端点连接到 AI 客户端。

  8. AI 使用项目 ID;VPS 自动解析正确的用户、Windows 节点和工作区。

这里特意 没有会话绑定。

(user_id, project_id)
        |
        +-- node_id
        `-- workspace

内置 VPS 面板

运行 gwc-gateway 同时提供 Web 面板和远程 MCP 端点。

面板分区:

  • Dashboard — 项目/节点/活动概览

  • Projects — 项目 → Windows 计算机 → 文件夹绑定

  • Windows Nodes — 在线/离线节点及一次性配对码

  • Activity Logs — 用户范围的操作审计历史(可筛选)

  • Account & Security — 账号/提供商及安全信息

文件夹选择器从不读取 VPS 文件系统。它通过 VPS WebSocket 请求所选 Windows 节点的目录信息,仅暴露 GWC_ALLOWED_ROOTS 内的目录。

身份认证

支持的登录方式:

  • 邮箱/密码注册与登录

  • Google OAuth 2.0 / OpenID Connect

  • 供 MCP/API 客户端使用的 JWT 访问令牌

  • 供内置 Web 面板使用的 HttpOnly 登录 Cookie

密码使用 Argon2 进行哈希处理。用户/项目/节点/审计数据存储在 VPS 的 gateway.db SQLite 数据库中。如果省略 GWC_JWT_SECRET,则会生成一次随机密钥并持久化到 GWC_DATA_DIR 下。

Google 登录

创建一个 Google OAuth Web 应用并进行配置:

GWC_GOOGLE_CLIENT_ID=...
GWC_GOOGLE_CLIENT_SECRET=...
GWC_GOOGLE_REDIRECT_URI=https://gwc.example.com/auth/google/callback

如果在提供客户端 ID/密钥时省略了 GWC_GOOGLE_REDIRECT_URI,网关会从 GWC_PUBLIC_BASE_URL 推导而出。Google 登录默认返回内置面板。

项目绑定与文件夹选择器

Windows 节点仅广告已配置的允许根目录:

$env:GWC_ALLOWED_ROOTS = "G:\;D:\Projects"

VPS 面板可以浏览:

Office-PC
├─ G:\
│  ├─ NiceC-WMS
│  ├─ OpenAkita
│  └─ PartyGame
└─ D:\Projects
   └─ another-project

选定的项目绑定会持久化到 VPS:

user_id + "NiceC-WMS"
  -> Office-PC
  -> G:\NiceC-WMS

节点会在网关保存前验证所选文件夹。超出允许根目录的路径将被拒绝。

MCP 工具

项目与节点

  • project_bind

  • project_get

  • project_list

  • project_unbind

  • node_pair

  • node_list

  • control_acquire

  • control_status

  • control_release

文件

files_tool(project_id, action, params) 支持:

  • list

  • read

  • write

  • patch

  • search

  • stat

  • mkdir

  • move

  • copy

  • delete

直接文件操作被沙盒限定在项目绑定的工作区内。

Shell 与进程

  • shell_run — PowerShell/CMD,标准输出/标准错误/退出码,超时

  • process_tool — 启动/轮询/停止/列出,支持增量输出游标

Git

git_tool 支持 status、diff、log、branch、branch create/switch、add、commit、pull、push 和 show。

浏览器

browser_tool 支持浏览器发现、CDP 附加、持久化配置文件启动、标签页/页面、导航、DOM 检查、点击/输入/选择、工作区作用域的上传/下载、截图和关闭。

Windows 桌面

computer_tool 支持系统/进程信息、应用程序启动、窗口列表/激活、截图、鼠标/键盘、剪贴板以及 Windows UI 自动化检查/点击/文本输入。

活动日志

VPS 将用户范围的操作审计事件写入 gateway.db。面板仅公开已认证用户的记录。敏感字段(如密码、访问令牌、授权头、Cookie、剪贴板数据和完整内容值)会被 UI API 进行编辑。

多节点与控制锁定

一个账户可以有多台 Windows 计算机:

Gateway
├─ Office-PC
├─ Warehouse-PC
└─ Home-PC

交互式浏览器/桌面操作使用每节点项目租约,因此两个项目不会争夺同一个鼠标/窗口。

权限级别

在每个 Windows 节点上设置:

GWC_PERMISSION_LEVEL=read | operate | admin
  • read:仅限检查/读取方法

  • operate:正常的编码和自动化操作

  • admin:还允许直接删除文件和 Git push

GWC_ALLOWED_ROOTS 是连接器直接文件操作和工作区选择的硬边界。Shell 命令仍以普通 Windows 账户权限运行,因此在需要强 OS 级别隔离时,请使用专用低权限 Windows 用户或虚拟机。

在 VPS 上安装网关

Python 3.11+:

git clone https://github.com/Neal86/gpt-windows-connector.git
cd gpt-windows-connector
python -m venv .venv
source .venv/bin/activate
pip install -e .

配置:

export GWC_HOST=0.0.0.0
export GWC_PORT=8787
export GWC_DATA_DIR=./data
export GWC_PUBLIC_BASE_URL=https://gwc.example.com
gwc-gateway

公共端点:

Dashboard:   https://gwc.example.com/
Remote MCP:  https://gwc.example.com/mcp
Node WSS:    wss://gwc.example.com/ws/node
Health:      https://gwc.example.com/health

仓库中包含 Dockerfile 和 docker-compose.yml。在生产环境中,请在服务前放置 HTTPS/WSS。

安装 Windows 节点

在 Windows 上安装软件包,从 VPS 面板创建一次性配对码,然后运行:

$env:GWC_NODE_ID = "Office-PC"
$env:GWC_NODE_NAME = "Office PC"
$env:GWC_GATEWAY_WS = "wss://gwc.example.com/ws/node"
$env:GWC_PAIRING_CODE = "123456"
$env:GWC_ALLOWED_ROOTS = "G:\;D:\Projects"
$env:GWC_PERMISSION_LEVEL = "operate"
gwc-node

成功配对后,网关会颁发持久的随机节点令牌。节点将其存储在当前用户的本地应用数据目录中,并通过心跳+指数退避自动重新连接。

安全

  • 在生产环境中使用 HTTPS/WSS。

  • 限制 GWC_ALLOWED_ROOTS。

  • 优先使用 read 或 operate;仅在必要时授予 admin。

  • 将 JWT 和持久节点令牌视为机密。

  • 在可行的情况下,使用专用 Windows 账户运行 Windows 节点。

  • MCP Python SDK 锁定为 >=1.27.2,<2,并开启了显式的 Host/Origin 传输层安全。

  • Windows 节点仅出站;不要公开暴露本地 CDP、Shell 或节点端口。

预期的编码循环

AI -> VPS -> Windows Node
   read/search code
   -> patch/write
   -> build/test
   -> inspect errors
   -> patch again
   -> git diff/status
   -> commit/push when permitted
   -> VPS -> AI

该仓库独立于 CursorTouch/Windows-MCP。Windows-MCP 不作为执行层使用。

Maintenance

ActivityActive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    A Windows computer use agent — FastMCP server that gives AI assistants hands on the real desktop: windows, UI elements, mouse, keyboard, screenshots, OCR, shortcuts, dialogs, and outcome verification.
    48
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    A local, dependency-free MCP server that gives AI agents controlled access to the active Windows desktop, enabling automated interaction with applications through screenshots, clicks, typing, and window management.
    84 npm
    1
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI clients to securely control and interact with a local Windows machine through 218 configurable tools for files, Git, processes, Windows UI, browser automation, WSL, Office, recovery, skills, and child MCP servers.
    1 npm
    MIT