Token导航 LogoToken导航

MCP Server · 开发工具

Claw Windows Desk MCP

ClawDesk MCP Server 是一个遵循 Model Context Protocol (MCP) 标准协议的 Windows 本地能力服务,为 AI 助理提供安全、可控、可追溯的 Windows 系统操作能力,包括文件操作、剪贴板管理、截图、窗口和进程管理等。

未说明官方级别未说明来源级核验工具 14
本地服务ShellClaudeClaude Desktop

快速开始

公开资料没有提供安装命令,按仓库或官方文档接入。
作者 / 组织
ihugang
提供方
ihugang

工具数量

14

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

1

仓库热度

收录来源

1 个

MCP World

选型结论

Claw Windows Desk MCP 属于开发工具类 MCP Server,公开资料标注 14 个工具,通过传输方式未标注接入,适配 Claude Desktop、Claude,没有现成的安装命令;接入前要先准备 访问 Token。

分类

开发工具

传输方式

未说明

认证方式

访问 Token

部署方式

公开资料未说明

安装与配置

公开目录没有给出安装命令,需要按仓库 README安装;下面按同类条目的通用流程说明。

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    先确认运行方式

    公开资料没有标注传输方式,先看仓库 README,确认是本地进程还是远程地址。

  2. 2

    获取服务

    公开目录没有给出安装命令,按仓库 README里的步骤安装或获取服务。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 14 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

公开资料仍需确认:安装命令

详细介绍

ClawDesk MCP Server

ClawDesk MCP Server 是一个 Windows 本地能力服务,遵循 Model Context Protocol (MCP) 标准协议,为 AI 助理(如 OpenClaw、Claude Desktop)提供安全、可控、可追溯的 Windows 系统操作能力。

功能特性

  • MCP 协议支持: 实现 Model Context Protocol 标准协议
  • HTTP API: 提供 HTTP 接口用于远程控制
  • 实时监控: Dashboard 窗口实时显示请求和处理过程
  • 安全可控: 基于白名单的权限管理和风险分级
  • 审计追溯: 完整的操作日志记录
  • 系统托盘: 便捷的图形化管理界面
  • 灵活配置: 支持 0.0.0.0 或 127.0.0.1 监听地址切换
  • 文件操作: 磁盘枚举、目录列表、文件读取(支持行范围)、内容搜索
  • 剪贴板操作: 通过 HTTP API 读写剪贴板内容(支持文本、图片、文件)
  • 截图功能: 捕获屏幕截图并返回 Base64 编码的图像数据
  • 窗口管理: 获取所有打开窗口的列表和详细信息
  • 进程管理: 获取所有运行进程的列表和详细信息
  • 命令执行: 执行系统命令并捕获输出

系统要求

  • Windows 10/11 (x64, x86)
  • 无需额外运行时依赖

HTTP API

服务器启动后会在配置的端口(默认 35182)上监听 HTTP 请求。

⚠️ 重要:从 v0.2.0 开始,所有 API 请求都需要 Bearer Token 认证。

获取 Token

  1. 启动服务器后,会自动生成 config.json 文件
  2. 打开 config.json,找到 auth_token 字段
  3. 复制 Token 值(64 字符的十六进制字符串)

示例 config.json:

{
  "auth_token": "a1b2c3d4e5f6789012345678901234567890abcdefabcdefabcdefabcdefabcd",
  "server_port": 35182,
  "listen_address": "0.0.0.0",
  ...
}

使用 Token

在所有 HTTP 请求中添加 Authorization 头:

# 基本格式
curl -H "Authorization: Bearer YOUR_TOKEN" http://localhost:35182/status

# 实际示例
curl -H "Authorization: Bearer a1b2c3d4e5f6789012345678901234567890abcdefabcdefabcdefabcdefabcd" \
  http://192.168.31.3:35182/status

注意:

  • Token 必须以 Bearer 开头(注意空格)
  • CORS 预检请求(OPTIONS)无需 Token
  • 未授权请求返回 401 Unauthorized

详细说明请参考 Authentication Guide。

可用端点

1. API 列表
GET http://localhost:35182/

返回所有可用的 API 端点列表。

2. 健康检查
GET http://localhost:35182/health

响应:

{ "status": "ok" }
3. 获取状态
GET http://localhost:35182/status

响应:

{
    "status": "running",
    "version": "0.2.0",
    "port": 35182,
    "listen_address": "0.0.0.0",
    "local_ip": "192.168.31.3",
    "license": "free",
    "uptime_seconds": 1234
}
4. 获取磁盘列表
GET http://localhost:35182/disks

响应:

[
    {
        "drive": "C:",
        "type": "fixed",
        "label": "Windows",
        "filesystem": "NTFS",
        "total_bytes": 500000000000,
        "free_bytes": 100000000000,
        "used_bytes": 400000000000
    }
]
5. 列出目录内容
GET http://localhost:35182/list?path=C:\Users

响应:

[
    {
        "name": "Documents",
        "type": "directory",
        "size": 0,
        "modified": "2026-02-03 10:30:00"
    },
    {
        "name": "file.txt",
        "type": "file",
        "size": 1024,
        "modified": "2026-02-03 12:00:00"
    }
]
6. 读取文件内容
# 读取整个文件
GET http://localhost:35182/read?path=C:\test.txt

# 从第 10 行开始读取 20 行
GET http://localhost:35182/read?path=C:\test.txt&start=10&lines=20

# 读取最后 50 行
GET http://localhost:35182/read?path=C:\test.txt&tail=50

# 只获取行数
GET http://localhost:35182/read?path=C:\test.txt&count=true

响应:

{
    "path": "C:\\test.txt",
    "total_lines": 100,
    "start_line": 0,
    "returned_lines": 100,
    "file_size": 5120,
    "content": "文件内容..."
}
7. 搜索文件内容
# 区分大小写搜索
GET http://localhost:35182/search?path=C:\test.txt&query=keyword

# 不区分大小写搜索
GET http://localhost:35182/search?path=C:\test.txt&query=keyword&case=i

# 限制结果数量
GET http://localhost:35182/search?path=C:\test.txt&query=keyword&max=50

响应:

{
    "path": "C:\\test.txt",
    "query": "keyword",
    "total_lines": 100,
    "match_count": 5,
    "case_sensitive": true,
    "matches": [
        {
            "line_number": 10,
            "content": "This line contains keyword"
        }
    ]
}
8. 读取剪贴板

增强功能:支持文本、图片和文件三种类型!

GET http://localhost:35182/clipboard

响应类型 1 - 文本:

{
    "type": "text",
    "content": "剪贴板文本内容",
    "length": 15,
    "empty": false
}

响应类型 2 - 图片(截图或复制的图片):

{
    "type": "image",
    "format": "png",
    "url": "",
    "path": "/clipboard/image/clipboard_images/clipboard_20260203_223015.png"
}

响应类型 3 - 文件(从资源管理器复制的文件):

{
    "type": "files",
    "files": [
        {
            "name": "20260203_223015_0_document.pdf",
            "url": "http://192.168.31.3:35182/clipboard/file/20260203_223015_0_document.pdf",
            "path": "/clipboard/file/20260203_223015_0_document.pdf"
        }
    ]
}

下载剪贴板图片或文件:

# 下载图片
curl -H "Authorization: Bearer $TOKEN" \
  "" \
  -o clipboard_image.png

# 下载文件
curl -H "Authorization: Bearer $TOKEN" \
  "http://192.168.31.3:35182/clipboard/file/20260203_223015_0_document.pdf" \
  -o document.pdf
9. 写入剪贴板
PUT http://localhost:35182/clipboard
Content-Type: application/json

{
  "content": "要写入的内容"
}

响应:

{
    "success": true,
    "length": 18
}
10. 截图
# PNG 格式(默认)
GET http://localhost:35182/screenshot

# JPEG 格式
GET http://localhost:35182/screenshot?format=jpg

响应:

{
    "success": true,
    "format": "png",
    "width": 1920,
    "height": 1080,
    "data": "iVBORw0KGgoAAAANSUhEUgAA..."
}
11. 获取窗口列表
GET http://localhost:35182/windows

响应:

[
    {
        "hwnd": 123456,
        "title": "Google Chrome",
        "class": "Chrome_WidgetWin_1",
        "visible": true,
        "minimized": false,
        "maximized": false,
        "process_id": 1234,
        "x": 100,
        "y": 100,
        "width": 1280,
        "height": 720
    }
]
12. 获取进程列表
GET http://localhost:35182/processes

响应:

[
    {
        "pid": 1234,
        "name": "chrome.exe",
        "path": "C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe",
        "threads": 42,
        "parent_pid": 5678,
        "memory_kb": 102400
    }
]
13. 执行命令
POST http://localhost:35182/execute
Content-Type: application/json

{
  "command": "dir C:\\"
}

响应:

{
    "success": true,
    "exit_code": 0,
    "output": "Volume in drive C is Windows\\n..."
}
14. MCP 协议
初始化连接
POST http://localhost:35182/mcp/initialize
Content-Type: application/json

{
  "protocolVersion": "2024-11-05",
  "capabilities": {},
  "clientInfo": {
    "name": "test-client",
    "version": "1.0.0"
  }
}

响应:

{
    "protocolVersion": "2024-11-05",
    "capabilities": {
        "tools": {}
    },
    "serverInfo": {
        "name": "ClawDesk MCP Server",
        "version": "0.2.0"
    }
}
列出可用工具
POST http://localhost:35182/mcp/tools/list
Content-Type: application/json

{}

响应:

{
    "tools": [
        {
            "name": "read_file",
            "description": "Read file content",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "path": {
                        "type": "string"
                    }
                },
                "required": ["path"]
            }
        }
    ]
}
调用工具
POST http://localhost:35182/mcp/tools/call
Content-Type: application/json

{
  "name": "list_windows",
  "arguments": {}
}

响应:

{
    "content": [
        {
            "type": "text",
            "text": "[...]"
        }
    ],
    "isError": false
}
15. 退出服务器
GET http://localhost:35182/exit

响应:

{ "status": "shutting down" }

使用示例

重要:所有示例都需要添加 Authorization 头!

首先设置 Token 变量(从 config.json 获取):

# 设置 Token 变量
TOKEN="your-auth-token-from-config-json"

使用 curl 测试:

# 检查服务器状态
curl -H "Authorization: Bearer $TOKEN" http://localhost:35182/status

# 健康检查
curl -H "Authorization: Bearer $TOKEN" http://localhost:35182/health

# 获取磁盘列表
curl -H "Authorization: Bearer $TOKEN" http://localhost:35182/disks

# 列出目录
curl -H "Authorization: Bearer $TOKEN" "http://localhost:35182/list?path=C:\\"

# 读取文件
curl -H "Authorization: Bearer $TOKEN" "http://localhost:35182/read?path=C:\\test.txt"

# 搜索文件内容
curl -H "Authorization: Bearer $TOKEN" "http://localhost:35182/search?path=C:\\test.txt&query=keyword"

# 读取剪贴板
curl -H "Authorization: Bearer $TOKEN" http://localhost:35182/clipboard

# 写入剪贴板
curl -X PUT \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"content":"Hello World"}' \
  http://localhost:35182/clipboard

# 截图(PNG)
curl -H "Authorization: Bearer $TOKEN" \
  http://localhost:35182/screenshot | jq -r '.data' | base64 -d > screenshot.png

# 截图(JPEG)
curl -H "Authorization: Bearer $TOKEN" \
  "http://localhost:35182/screenshot?format=jpg" | jq -r '.data' | base64 -d > screenshot.jpg

# 获取窗口列表
curl -H "Authorization: Bearer $TOKEN" \
  http://localhost:35182/windows | jq '.[0:5]'

# 获取进程列表
curl -H "Authorization: Bearer $TOKEN" \
  http://localhost:35182/processes | jq '.[0:5]'

# 执行命令
curl -X POST \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"command":"echo Hello"}' \
  http://localhost:35182/execute | jq .

# MCP 协议:初始化
curl -X POST \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}' \
  http://localhost:35182/mcp/initialize | jq .

# MCP 协议:列出工具
curl -X POST \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}' \
  http://localhost:35182/mcp/tools/list | jq '.tools | length'

# MCP 协议:调用工具
curl -X POST \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name":"list_windows","arguments":{}}' \
  http://localhost:35182/mcp/tools/call | jq .

# 退出服务器
curl -H "Authorization: Bearer $TOKEN" http://localhost:35182/exit

使用 PowerShell:

# 设置 Token(从 config.json 获取)
$TOKEN = "your-auth-token-from-config-json"
$headers = @{
    "Authorization" = "Bearer $TOKEN"
}

# 检查状态
Invoke-WebRequest -Uri "http://localhost:35182/status" -Headers $headers

# 读取剪贴板
Invoke-WebRequest -Uri "http://localhost:35182/clipboard" -Headers $headers

# 写入剪贴板
$body = @{ content = "Hello World" } | ConvertTo-Json
Invoke-WebRequest -Uri "http://localhost:35182/clipboard" `
  -Method PUT -ContentType "application/json" -Body $body -Headers $headers

# 截图
$response = Invoke-RestMethod -Uri "http://localhost:35182/screenshot" -Headers $headers
[System.Convert]::FromBase64String($response.data) | Set-Content -Path "screenshot.png" -Encoding Byte

# 获取窗口列表
Invoke-RestMethod -Uri "http://localhost:35182/windows" -Headers $headers

# 获取进程列表
Invoke-RestMethod -Uri "http://localhost:35182/processes" -Headers $headers

# 执行命令
$body = @{ command = "dir C:\" } | ConvertTo-Json
Invoke-RestMethod -Uri "http://localhost:35182/execute" `
  -Method POST -ContentType "application/json" -Body $body -Headers $headers

# 退出服务器
Invoke-WebRequest -Uri "http://localhost:35182/exit" -Headers $headers

托盘菜单功能

右键点击系统托盘图标可以访问以下功能:

  • 状态信息: 显示服务器运行状态、端口、监听地址、许可证信息
  • Usage Statistics: 查看今日使用统计和配额
  • View Logs: 打开日志目录
  • Dashboard: 打开实时监控窗口(显示请求和处理过程)
  • Toggle Listen Address: 在 0.0.0.0 和 127.0.0.1 之间切换监听地址
  • Open Config: 用记事本打开配置文件
  • About: 显示关于信息
  • Exit: 退出服务器

Dashboard 实时监控

Dashboard 是一个置顶的浮动窗口,用于实时观察服务器的运行状态。

功能

  • 实时日志: 显示接收的请求、处理过程和执行结果
  • 日志类型:

- [REQ] - 接收到的请求 - [PRO] - 正在处理 - [OK ] - 成功完成 - [ERR] - 发生错误

  • 操作按钮:

- Clear Logs: 清空所有日志 - Copy All: 复制所有日志到剪贴板

  • 自动滚动: 新日志自动滚动到底部
  • 日志限制: 最多保留 1000 条日志

使用方法

  1. 右键点击托盘图标
  2. 选择 "Dashboard"
  3. Dashboard 窗口会弹出并置顶显示
  4. 再次点击 "Dashboard" 可以隐藏窗口

日志示例

[18:30:45.123] [REQ] HTTP - GET /status HTTP/1.1
[18:30:45.125] [PRO] status - Retrieving server status...
[18:30:45.128] [OK ] status - Status returned: port=35182, license=free

[18:31:02.456] [REQ] HTTP - POST /exit HTTP/1.1
[18:31:02.458] [PRO] exit - Shutting down server...
[18:31:02.460] [OK ] exit - Shutdown command sent

详细文档请参考 Dashboard.md。

配置说明

首次运行时,程序会自动生成 config.json 配置文件:

{
    "auth_token": "自动生成的认证令牌",
    "server_port": 35182,
    "auto_port": true,
    "listen_address": "0.0.0.0",
    "allowed_dirs": ["C:/Users", "C:/Temp", "C:/Windows/Temp"],
    "allowed_apps": {
        "notepad": "C:/Windows/System32/notepad.exe",
        "calc": "C:/Windows/System32/calc.exe"
    },
    "allowed_commands": ["npm", "git", "python", "node"],
    "license_key": ""
}

配置项说明

  • auth_token: Bearer Token,用于客户端认证(自动生成)
  • server_port: 服务器监听端口(默认 35182)
  • auto_port: 端口被占用时是否自动选择随机端口
  • listen_address: 监听地址

- "0.0.0.0": 允许网络访问(局域网内其他设备可访问) - "127.0.0.1": 仅本地访问

  • allowed_dirs: 允许访问的目录白名单
  • allowed_apps: 允许启动的应用程序白名单
  • allowed_commands: 允许执行的命令白名单
  • license_key: 许可证密钥(可选)

构建说明

开发环境

  • macOS (Apple Silicon 或 Intel)
  • CMake 3.20+
  • MinGW-w64 交叉编译工具链

安装依赖

# 安装 MinGW-w64
brew install mingw-w64

# 安装 CMake
brew install cmake

编译

# 编译所有架构(x64, x86)
./build.sh

# 或手动编译单个架构
mkdir -p build-x64
cd build-x64
cmake .. -DCMAKE_TOOLCHAIN_FILE=../toolchain-mingw-x64.cmake \
         -DCMAKE_BUILD_TYPE=Release
make -j$(sysctl -n hw.ncpu)

构建产物

  • build-x64/ClawDeskMCP.exe - Windows x64 版本
  • build-x86/ClawDeskMCP.exe - Windows x86 版本

编译完成后会自动复制到 /Volumes/Test/ClawDeskMCP/ 目录。

使用说明

  1. 运行程序:

- 双击 ClawDeskMCP-x64.exe(64位系统)或 ClawDeskMCP-x86.exe(32位系统) - 程序会在系统托盘显示图标

  1. 查看托盘图标:

- 图标会出现在任务栏右下角(系统托盘区) - 右键点击图标可以看到完整菜单

  1. 自动生成的文件:

- config.json - 配置文件(首次运行自动生成) - logs/audit-YYYY-MM-DD.log - 审计日志

  1. 网络访问:

- 本地访问: http://localhost:35182 - 局域网访问: http://192.168.x.x:35182(需要 listen_address 设置为 "0.0.0.0")

安全注意事项

  • 监听地址: 如果设置为 0.0.0.0,局域网内的其他设备可以访问服务器
  • 防火墙: Windows 防火墙可能会阻止网络访问,需要添加例外
  • 认证: 目前 HTTP API 未实现认证,建议仅在可信网络中使用
  • 白名单: 通过配置文件限制可访问的目录、应用和命令

许可证

Copyright © 2026 ClawDesk

版本历史

  • v0.2.0 - 当前版本

- ✅ 基础项目结构 - ✅ 交叉编译环境配置 - ✅ ConfigManager(配置管理) - ✅ AuditLogger(审计日志) - ✅ 系统托盘界面 - ✅ HTTP API(健康检查、状态、退出) - ✅ 监听地址切换(0.0.0.0 / 127.0.0.1) - ✅ Dashboard 实时监控窗口 - ✅ 自动防火墙配置 - ✅ 磁盘枚举和目录列表 - ✅ 文件读取(支持行范围、尾部读取、行数统计) - ✅ 文件内容搜索(支持大小写敏感/不敏感) - ✅ 剪贴板读写操作 - ✅ 屏幕截图(PNG/JPEG 格式,Base64 编码) - ✅ 窗口列表(标题、类名、位置、状态) - ✅ 进程列表(PID、名称、路径、内存使用) - ✅ 命令执行(捕获输出和退出代码) - ✅ MCP 协议(initialize、tools/list、tools/call) - ⏳ 工具功能实现(待完善)

工具与能力

工具数量

14

资源数量

0

提示词数量

0

能力标签

Shell本地部署Windows系统管理AI助理支持本地服务HTTPAPI安全可控

支持客户端

Claude DesktopClaude

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

让助手直接读代码

把仓库、提交记录和 issue 交给模型检索,补全和重构时不用来回复制文件。

在对话里跑命令

触发构建、测试和脚本,执行结果直接回到上下文,省去切终端。

接进开发流程

把 PR、CI 状态和代码审查接进助手,减少在几个工具之间跳。

选择建议

值得选的地方

  • 工具数量 14 个,一次接入能覆盖的操作比单点工具更全。
  • 已经适配 Claude Desktop、Claude,换客户端不用重新研究配置。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • 公开资料没有可直接复制的安装命令,第一次接入要自己找入口。
  • 需要自备访问 Token,没有凭据没法直接试。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在开发工具场景里让模型直接调用外部能力的人。
  • 已经在用 Claude Desktop 的用户,接入路径最短。
  • 愿意照着官方文档一步步配环境的人。

不太适合

  • 暂时拿不到访问 Token的人。
  • 希望一条命令就装好、不想看文档的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Claw Windows Desk MCP

MCP World · 本页

14未说明未标注1 个2026-05-17
Git 838e2ec1

MCP World

12stdio有2 个2026-05-17
Markitdown MCP 2c653a5f

MCP World

1stdio有1 个2026-05-17
Context7 MCP C671e75a

MCP World

0stdio有1 个2026-05-17
Context7 831acf40

MCP World

0stdio有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Claw Windows Desk MCP 怎么安装?

公开目录没有给出可以直接复制的安装命令,需要按仓库 README里的步骤安装;装好后写进客户端的 MCP 配置再重启。

Claw Windows Desk MCP 怎么在 Claude Desktop、Cursor 里配置?

它是传输方式未标注,客户端配置里要写启动命令和参数,运行环境是 未标注;保存后完全退出客户端再打开,配置才会生效。

Claw Windows Desk MCP 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Claw Windows Desk MCP 需要 API Key 吗?

公开资料标注的认证方式是访问 Token,也就是要先拿到凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

Claw Windows Desk MCP 支持哪些客户端?

公开资料标注支持 Claude Desktop、Claude;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP