
一次截图 18 万 tokenWorkBuddy 的 windows-control MCP 为什么这么烧如果你最近在 WorkBuddy 里挂上了 windows-control 这个 MCP大概率经历过这样的场景只是让 AI 截个屏看看当前桌面结果一轮对话下来积分掉得比写代码还快。原文里那句“MCP 积分消耗是 Codex 的 50 倍”不是夸张——一张 2560×1440 的 PNG 截图base64 编码后塞进文本模型tokenizer 一切就是大约 18 万个 token。这不是模型实现质量问题而是“文本模型读图片”这条路径的架构限制。这篇不重复讲那 36 个工具怎么开发也不碰 uiautomation、ctypes、win32gui 那 5 个 Bug 的修复。我们只做一件事在你去 WorkBuddy 连接器管理里点 Trust 之前先把模型通道准备好。打开 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_end 注册并创建一个 Key然后在 WorkBuddy 的模型/密钥设置里把 Base URL 填成 https://taotoken.net/api让窗口对话和 windows-control 的工具轮次统一走同一条通道。这样截图、observe_screen、list_processes 这些高耗调用才能在一个用量视图里看清各自到底吃了多少。一、原问题与场景截图为什么变成 token 黑洞先把账算清楚。windows-control 的 take_screenshot 默认返回 PNG 全分辨率一张 2560×1440 的桌面截图约 528KB。MCP 协议要把二进制图片通过 JSON-RPC 传回客户端标准做法是 base64 编码528KB 变成约 704KB 的 ASCII 文本。文本模型不认识“图片”它只看到一长串字符tokenizer 按字符切分后大约产生 18 万个 token。对比一下 Codex 的 Computer Use它是多模态 VLM截图作为像素直接进入视觉编码器不经过文本 tokenizer单次操作总消耗约 5000 token。WorkBuddy 走的是文本模型通道MCP 把图片 base64 后当文本喂进去于是同一件事的消耗差了 40 到 50 倍。原文第六节把这个差异拆得很细Codex 是“看”屏幕WorkBuddy 是“读”屏幕。读的方式决定了截图 token 高不是 bug而是路径决定的。你能优化的是让这条路径上的每一次调用都可见、可控、可对比。二、TaoToken 前置先把模型通道统一在动 windows-control 的任何参数之前先处理模型侧。WorkBuddy 的窗口对话和 MCP 工具轮次如果走不同通道用量就是两本账你根本不知道截图到底花了多少。步骤很直接打开 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_end 注册账号。进入控制台创建一个 API Key。地址是 https://taotoken.net/api-keys Key 形如 YOUR_API_KEY。回到 WorkBuddy找到模型/密钥设置页。不同版本入口略有差异一般在设置里的“模型服务”或“API 配置”区域。把 Base URL 填成 https://taotoken.net/api 。注意两点不带 /v1 后缀不加任何 UTM 参数。填错这两处是最常见的连不通原因。API Key 填你刚创建的那串。模型 ID 按你实际要用的填WorkBuddy 侧一般有下拉或手动输入。这里要说明边界TaoToken 只提供 Key 和 Base URL不参与截图压缩也不碰 windows-control 服务端那 5 个 Bug 的修复。截图 token 高仍然是“文本模型读 base64”的架构限制。TaoToken 解决的是“你看不清消耗”和“通道不统一”这两个问题。如果你还想在命令行侧验证通道可以装 CLInpm i -g taotoken/taotoken taotoken cc -k YOUR_API_KEY -u https://taotoken.net/api -m MODEL_ID这条命令适合快速确认 Key 和 Base URL 是否配对不替代 WorkBuddy 里的配置。三、可复制配置WorkBuddy 模型侧与截图参数模型通道配好后再动 windows-control 的截图默认参数。原文第九节 A 项给的方向是 scale0.5、quality60这里把它落到可复制的层面。WorkBuddy 的模型配置核心就三项Base URL: https://taotoken.net/api API Key: YOUR_API_KEY Model: 按实际模型 ID 填写截图参数在 windows-control 的 take_screenshot 实现里改。原文的 take_screenshot 签名是def take_screenshot(regionNone, hwndNone, quality60, scale1.0):把默认值改成def take_screenshot(regionNone, hwndNone, quality60, scale0.5):这样每次截图先缩放到一半分辨率再存 JPEG Q60。原文实测数据全分辨率 PNG 528KB 约 18 万 token半分辨率 JPEG Q60 约 127KB对应约 4.3 万 token降幅约 76%。如果你不想改服务端代码也可以在调用侧显式传参让 AI 在调 screenshot 时带上 scale 和 quality。但默认值改掉更稳因为不是每次 AI 都会记得传。另外两个高耗工具也建议在默认参数上收一收list_windows默认返回全部窗口和完整信息改成 max_results10。list_processes默认列出所有进程约 104KB改成默认带 name_filter不传就截断。observe_screen默认截图加完整 UI 树改成 modelight 跳过 UI 树。get_ui_tree默认全控件树改成 depth2、max_children20。这些改动不涉及 TaoToken纯粹是 MCP 服务端的返回量控制。但只有模型通道统一了你才能在用量页看到改前改后的真实降幅。四、验证请求与成功结果配置完成后怎么确认真的通了、真的降了第一步在 WorkBuddy 里发一句最简单的对话比如“你好”确认模型通道能返回。如果报 401 或连接失败先回第二节检查 Base URL 是否带了 /v1 或 UTM。第二步让 AI 调一次 screenshot。观察返回是否正常同时打开 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_end 的用量页看这次调用对应的 token 消耗。改参数前应该是十几万量级改完后应该落到几万量级。第三步依次调 observe_screen、list_processes、list_windows在用量页里对照 36 个工具各自的消耗。原文第七节的在线测试结果可以作为参照screenshot 返回 2560×1440 PNG 约 595KBget_screen_size 返回 2560×1440list_windows 返回 26 个窗口observe_screen 返回 Desktop 加 UI 树加光标。这些工具在用量页里应该各有独立的消耗记录而不是混在一起。第四步确认 windows-control 的 36 个工具全部可用。原文在线测试是 36/36 通过UI Automation 能正确解析 WorkBuddy 的 Electron 应用结构。模型通道的改动不影响工具本身工具照挂、照调。成功的结果是窗口对话和 MCP 工具轮次在同一个用量视图里截图消耗从 18 万降到 4 万左右你能清楚看到每个工具吃了多少。五、本篇常见错排查Base URL 填成 https://taotoken.net/api/v1这是最高频的错。TaoToken 的 API 地址不带 /v1填了会 404 或路径不匹配。改回 https://taotoken.net/api 。Base URL 后面带了 UTM 参数有人从推广链接复制地址把 ?utm_source... 一起粘进去了。Base URL 只保留 https://taotoken.net/api 参数全部去掉。Key 填错或过期去 https://taotoken.net/api-keys 重新生成一个确认复制完整没有多余空格。改了截图参数但消耗没降先确认改的是服务端 take_screenshot 的默认值不是调用侧临时传参。再确认模型通道确实走了 TaoToken否则用量页看不到这次调用。用量页看不到 MCP 工具消耗说明窗口对话和 MCP 轮次没走同一通道。回第二节确认 WorkBuddy 的模型设置里 Base URL 和 Key 都指向 TaoToken。截图仍然很慢或超时token 降了但传输量还在base64 后的文本仍然不小。这是文本模型读图的固有限制只能靠继续降分辨率或引入本地视觉推理层缓解不是通道配置能解决的。CLI 验证通过但 WorkBuddy 不通CLI 和 WorkBuddy 是两套配置。CLI 通了只说明 Key 和 Base URL 有效WorkBuddy 侧还要单独填一遍。六、语义一致 CTA如果你正在排障或刚接入先去 https://taotoken.net/api-keys 拿 Key再对照 https://taotoken.net/doc 的接入文档把 Base URL 填对。这两步是通道能通的前提。如果你想先验证模型本身是否正常去 https://taotoken.net/chat 用模型对话发一条消息确认返回无误再回 WorkBuddy 配置。如果你打算长期跑编码或 Agent 类任务包括 windows-control 这种多轮工具调用场景可以看 https://taotoken.net/coding-plan 把用量和通道统一管理起来。回到最初的问题windows-control 截图一次 18 万 token不是 TaoToken 能直接压下去的它压的是“你看不清消耗”这件事。真正把 token 降下来的是 scale0.5、quality60 这些截图参数以及 list_windows、list_processes、observe_screen 的返回量控制。TaoToken 在这里的角色是让你在同一个用量视图里看清 36 个工具各自的消耗降幅然后决定下一个该优化谁。