内容
# 超重力 MCP

一个 MCP 服务器,允许克劳德代码(或任何 MCP 客户端)将任务委托给 **谷歌反重力** 桌面应用程序 — 通过驱动其真实的、已经登录的 UI。
无需反向工程,无需提取凭证,无需非官方 API 调用。
## 为什么存在
反重力提供了一个 CLI (`agy`) 用于无头脚本编写 — 但在较旧的英特尔 Mac 上,即使桌面 **应用程序** 运行正常(在 2015 年 MacBook Pro、macOS Monterey、英特尔上确认),该 CLI 也不可用。本项目是针对这种情况的缺失桥梁:它自动执行应用程序的操作,就像人类使用它一样,因此在应用程序本身可以运行的任何地方都可以使用。
## 工作原理
1. 反重力使用 Chrome 的远程调试标志重新启动( `--remote-debugging-port` ),与 Playwright 等浏览器测试工具用于驱动 Electron 应用程序的机制相同。
2. 脚本连接到该调试端口并:通过模拟粘贴事件将您的任务输入聊天框(Antigravity 的输入是一个富文本编辑器,而不是一个纯文本区域,因此需要真正的粘贴,而不是简单地将文本插入 DOM),点击发送,并在完成后读取回复。
3. 所有操作都通过您自己的现有登录进行。此工具永远不会触及 Antigravity 的存储凭证、内部代码或私有 API。
## 设置
必须安装 Antigravity 并已经登录。默认情况下,工具在 `/Applications/Antigravity.app` 或 `~/Desktop/Antigravity.app` 处查找它;如果它位于其他位置,请设置 `ANTIGRAVITY_APP_PATH`。
### 最简单:安装插件(MCP 服务器 + 技能)
```bash
claude plugin marketplace add presidentrice/supergravity-mcp
claude plugin install supergravity@supergravity-mcp
```
这为您提供了 `delegate_to_antigravity` / `get_antigravity_quota` 工具和 `supergravity:delegate` 技能,该技能教导克劳德如何将自然请求(“使用 gemini”,“询问 antigravity”,“检查 antigravity 的配额”)路由到正确的工具调用和模型。
### 或者:仅 MCP 服务器,无技能
```bash
claude mcp add supergravity -- npx -y supergravity-mcp
```
在没有技能的情况下也能正常工作 — 克劳德仍然拥有这些工具,只是内置指导较少,如何选择模型或处理配额耗尽错误。
### 从源代码构建
```bash
npm install
npm run build
```
## 工具
### `delegate_to_antigravity(task, model?, timeoutMs?)`
- `task` — 请求 Antigravity 执行的操作。
- `model` — 可选。Antigravity 选择器中的一个模型(参见 `src/antigravity-client.ts` 中的 `AVAILABLE_MODELS`)。
- `timeoutMs` — 可选,默认 120000(2 分钟)。
如果任务生成文件(图像、文档等),结果还包括实际文件系统路径 — Antigravity 将每个对话的文件存储在 `~/.gemini/antigravity/brain/<conversation-id>/` 磁盘上,直接确认(未在任何地方由谷歌记录)。无需通过 Antigravity 的本地服务器获取任何内容;只需读取文件。
### `delegate_to_antigravity_batch(tasks)`
一次运行多个独立任务,每个任务在自己的 Antigravity 窗口中 — 真正并发,而不是排队。确认了两个同时进行的约 200 字生成的任务,它们都在大约 16 秒的窗口期内正确完成。按需自动打开额外的窗口(macOS 的“新建窗口”菜单命令,通过系统事件,当没有打开任何窗口时使用备用方案)。
需要运行此程序的进程的无障碍权限(系统设置 > 隐私和安全 > 无障碍)。macOS 独有。不要在此期间运行单独的 `delegate_to_antigravity` 调用;窗口分配在两者之间未协调。
```ts
delegateToAntigravityBatch([
{ task: "..." },
{ task: "...", model: "Claude Sonnet 4.6 (Thinking)" },
]);
```
### `list_antigravity_files(limit?)`
Antigravity 生成的所有文件,按时间倒序排列 — 不限于单个委托调用。有助于查找在此会话或过去的某个会话中生成的某些内容。
### `get_antigravity_quota()`
读取 Antigravity 的设置 > 模型面板并返回剩余配额 — Gemini 模型和 Claude+GPT 模型分别从 **独立池** 中扣除,每个池都有每周限额和 5 小时限额。有助于在委托之前检查,或解释“发送按钮已禁用”错误(通常意味着该池已耗尽,而不是模型不可用)。
### 选择模型
Antigravity 不显示每条消息的 token 成本,仅显示池化配额 %。`model` 参数的描述包含一个粗略的成本/功能表(`MODEL_GUIDE` 在 `src/antigravity-client.ts` 中),基于第三方 API 列表价格和公开基准,调研于 2026 年中旬 — 比该工具自己的训练数据更新,但将其视为起点而非权威:
| 模型 | ~价格(每 100 万个 token 输入/输出) | 知名于 |
| --- | --- | --- |
| Gemini 3.5 Flash | $1.50 / $9 | 最快、最便宜的前沿选项;强大的编码/代理基准 |
| Gemini 3.1 Pro | $2 / $12 | 用于更复杂的推理的“思考”模式(ARC-AGI-2 ~77%) |
| Claude Sonnet 4.6 | $3 / $15 | 编码质量、计算机使用、代理工作流(SWE-bench ~80%) |
| Claude Opus 4.6 | $5 / $25 | 最强的复杂/模糊推理;法律/财务/研究级分析 |
| GPT-OSS 120B | ~$0.03–0.09 / $0.10–0.40 | 开放权重,接近 o4-mini 推理,远比其他便宜 |
这些是底层模型通过其自己的 API 在其他地方的成本 — Antigravity 本身不按 token 计费,而是扣除上述池化配额。
## 已知限制
- **模型的配额可能会用完。** 如果非默认模型(例如 Claude Opus)已达到其使用限制,Antigravity 的发送按钮将保持禁用,即使它仍可在下拉菜单中选择。工具在此情况下快速失败并显示清晰的错误,而不是挂起直到超时 — 稍后重试或选择不同的模型即可。
- **UI 自动化,而非 API。** 如果谷歌更改 Antigravity 的屏幕布局,此工具依赖的 CSS 选择器(`data-testid="send-button"`、消息输入的 `aria-label` 等)可能需要更新。这是与 Antigravity 的使用条款保持一致的权衡 — 参见下文。
- **回复提取是文本启发式,** 而不是结构化读取。它查找 Antigravity 渲染的“思考 Ns”标记,并在其后获取内容。在测试中可靠运行,但最有可能在 UI 重构时出现问题。
- **单窗口假设。** 仅在打开一个 Antigravity 窗口时测试。
## 本工具不会做的事
不解包 Antigravity 的 `app.asar`,不读取存储的身份验证令牌,不调用内部/未公开的端点。这里的一切都通过与人类相同的界面进行,这就是为什么它不承担反向工程方法所带来的法律风险。
## 许可证
MIT