mcpField
C
capsulate

capsulate

本地服务
capsulate.dev云与基础设施02 周前更新

关于 capsulate

capsulate 是供 Claude Code、Claude Desktop、Cursor、Windsurf、Antigravity 等 MCP 客户端使用的服务,可启动并操作隔离的云端 Linux 和 Windows 计算机。它结合命令与文件操作、桌面及浏览器控制、人工接管和可复用技能。

主要功能

  1. 01启动、检查和销毁云端计算机
  2. 02运行命令、代码并读写文件
  3. 03控制桌面并检查界面元素
  4. 04通过浏览器工具操作 Chrome
  5. 05共享实时屏幕并交接控制权
  6. 06记录、保存和运行技能

适用场景

  1. 01在隔离环境中运行测试套件
  2. 02通过图形界面操作 Windows 或 Linux 应用
  3. 03需要登录时将屏幕交给人工处理
  4. 04将重复的桌面任务保存为技能

MCP 相关

作为 MCP 服务,capsulate 向客户端提供云端计算机的启动、执行、文件、桌面、浏览器、实时协作及技能管理工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"capsulatedev-capsulate": {
"command": "npx",
"args": [
"-y",
"@capsulate/mcp"
],
"env": {
"CAPSULATE_API_KEY": "<CAPSULATE_API_KEY>",
"CAPSULATE_BASE_URL": "<CAPSULATE_BASE_URL>",
"CAPSULATE_TEAM_ID": "<CAPSULATE_TEAM_ID>"
}
}
}
}
启动命令npx -y @capsulate/mcp
需要配置的环境变量
CAPSULATE_API_KEY密钥A cap_live_ API key from the dashboard (Settings → API & Keys).
CAPSULATE_BASE_URLAPI base URL. Defaults to https://api.capsulate.dev.
CAPSULATE_TEAM_IDTeam to bill. Defaults to the API key's team.

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@capsulate/mcp0.7.0

工具

49

收录的工具列表 · 更新于 2 周前

参数类型必填说明
envobject否要注入的环境变量
sizestring否资源规格,例如 '2c4g'(默认值)
waitboolean否等待至 ACTIVE(默认值为 true)
bundlestring否用于启动的软件包(Bucket B)ID
regionstring否区域提示;省略则自动分配
snapshotstring否用于还原的快照/模板 ID
templatestring是模板/操作系统/软件包 ID,例如 'ubuntu-22.04-headless'

详细介绍

@capsulate/mcp

Capsulate 的 Model Context Protocol 服务。 让 Claude Code、Claude Desktop、Cursor、Windsurf、Antigravity 及任何 MCP 客户端都能启动和操控隔离的云端计算机(“capsule”),包括可供用户实时观看并接管操作的真实 Linux 和 Windows 桌面。

设置

  1. 在 Capsulate 控制面板中创建 API 密钥:Settings → API & Keys。
  2. 将服务添加到 MCP 客户端配置中。
Claude Code
claude mcp add capsulate -e CAPSULATE_API_KEY=cap_live_... -- npx -y @capsulate/mcp
Claude Desktop / Cursor
{
  "mcpServers": {
    "capsulate": {
      "command": "npx",
      "args": ["-y", "@capsulate/mcp"],
      "env": {
        "CAPSULATE_API_KEY": "cap_live_…"
      }
    }
  }
}

要避免将密钥放在配置文件中,可将密钥存入文件,并通过 CAPSULATE_API_KEY_FILE 指向该文件。文件中可以只有密钥,也可以包含 CAPSULATE_API_KEY=cap_live_... 这一行。

若使用可自托管或非默认部署,还需设置 "CAPSULATE_BASE_URL": "https://api.your-domain"。

工具

工具功能
capsulate_launch启动一个 capsule,并等待其就绪
capsulate_list / capsulate_get查看 capsule
capsulate_destroy销毁一个 capsule
capsulate_exec运行命令(argv 数组)
capsulate_run_code运行 python/node/bash 代码片段
capsulate_write_file / capsulate_read_file文件读写
capsulate_set_env设置环境变量
capsulate_snapshot为 capsule 创建快照
capsulate_catalog查找可启动的模板和套件
桌面计算机操作
工具功能
capsulate_screenshot查看屏幕(返回图像;设置 format: "jpeg"、scale 或区域参数可缩小图像)
capsulate_screen_info获取屏幕大小、指针位置和活动窗口
capsulate_click / capsulate_move / capsulate_drag / capsulate_scroll操作指针
capsulate_type / capsulate_key操作键盘
capsulate_ui_tree读取无障碍树(Linux 上使用 AT-SPI,Windows 上使用 UI Automation),并获取可点击元素的中心位置
capsulate_find_element / capsulate_wait_element按角色、名称或文本查找或等待元素
capsulate_click_element查找并点击元素:可靠地按下指定名称的按钮
capsulate_clipboard读取或设置剪贴板(粘贴长文本,而不是输入文本)
capsulate_element无需坐标即可操作元素:设置其值、清空、切换、展开或折叠、调用、按名称选择选项、聚焦,或滚动至可见位置
capsulate_windows列出窗口或将窗口置于前台
capsulate_window最小化、最大化、还原、关闭、移动或调整窗口大小
capsulate_open按名称打开 URL、文件或应用,并等待其窗口出现
capsulate_wait_for等待元素出现、消失、启用或显示文本,等待窗口出现,或等待屏幕稳定
capsulate_ocr在 UI 树没有标签时读取屏幕上的文字
capsulate_run_actions在一次调用中连续执行多个步骤;在首个失败步骤处停止,并在结束时查看结果

输入操作支持设置 screenshot: true(以及 screenshotDelayMs),以在操作后返回画面。 所有工具在 Linux 和 Windows 桌面上的用法相同;多行编辑器在 Windows 上是 document, 在 Linux 上是 text。

浏览器快捷方式

使用 capsule 自带的 Chrome,以页面结构和页面速度驱动浏览器,同时显示在用户正在观看的同一屏幕上:capsulate_browser_open、_navigate、_tabs、_snapshot(包含 refs 的大纲)、_click、_fill(不会回显输入的值)、_select、_press、_scroll、_wait、_text、 _eval 和 _screenshot。

实时操作:人员观看、接管并交还控制权

桌面 Capsule 共用一个屏幕。AI 通过上述工具操作屏幕,而人员在浏览器中观看同一屏幕,看到 AI 的指针、点击和按键叠加显示在屏幕上,阅读 AI 的旁白,并可随时接管屏幕。

工具功能
capsulate_console_link生成一个签名且会过期的 URL,可在任何浏览器中打开实时屏幕,无需登录(control 或 view)
capsulate_say在实时控制台上显示一行旁白
capsulate_control指定由谁操作:free、agent(AI)或 human;take 或 release 屏幕;设置人员观看时的 pace(natural 或 presentation)
capsulate_handoff将屏幕交给人员并附上备注(“请登录”),等待对方交还屏幕,并获取对方的备注
capsulate_wait_for_handback持续等待人员交还屏幕

人员控制屏幕时,AI 的输入动词会返回 human_in_control,不会有任何操作发送到 Capsule;工具结果会提示使用 capsulate_wait_for_handback 等待。读取屏幕(截图、UI 树、OCR)仍可继续。每次 AI 输入都会让 AI 控制屏幕 45 秒;在此期间,其他人只能查看控制台。当 AI 停止操作或释放屏幕后,控制台会重新允许交互。

技能:学习一次,几分钟内重放
工具功能
capsulate_lesson在 Capsule 上学习一项任务:人员可在共享屏幕上进行教学(点击、按键和输入,并记录其操作的元素;密码会被遮蔽;还可选择视频和语音),也可由 AI 朝着目标自学;get 用于读取摘要
capsulate_skills团队的技能:从课程摘要保存技能、管理版本、审批、保存环境、排练和安排每周排练
capsulate_skill_run在后台运行技能的步骤;如果技能中有未作出决定的环节,会询问你如何处理
capsulate_inbox查看等待处理的运行、待审批的版本、失败的排练,以及软件发生变化的技能

服务端的说明包含学习流程:带着目标进行探索,记录学到的内容,完成学习,阅读摘要并保存技能;下次使用时,启动对应环境并运行步骤。

试试看

“启动一个 ubuntu-22.04-headless Capsule,运行我的测试套件,并展示输出。”

模型会调用 capsulate_launch,然后调用 capsulate_exec,并向你报告结果。

“启动一个 ubuntu-22.04-desktop Capsule,给我一个实时链接,并查找最新的 Firefox 发行说明。如果需要登录,就交给我处理。”

模型会启动桌面环境,调用 capsulate_console_link 并提供 URL,在操作过程中通过 capsulate_say 播报进度;需要你协助时则调用 capsulate_handoff。你完成后,在实时控制台中点击 Done, hand back,模型便会继续操作。

开发

npm run build                          # from the repo root: sdk, ai-tools, cli, mcp
node apps/mcp/scripts/smoke-live.mjs   # live tools end to end against a fake API

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。