by cafeTechne
MCP server + mobile companion for Google's Antigravity IDE. Mirror AI sessions on your phone, send messages, stop generation, automate via 9 MCP tools or OpenAPI.
# Add to your Claude Code skills
git clone https://github.com/cafeTechne/antigravity-link-extensionRead this in your language: 日本語 · 中文(简体) · 中文(繁體) · 한국어 · Deutsch · Français · Español · Português · Русский · Italiano · Polski · Türkçe · Tiếng Việt · Bahasa Indonesia · العربية
GitHub repo: https://github.com/cafeTechne/antigravity-link-extension
Open VSX: https://open-vsx.org/extension/cafetechne/antigravity-link-extension
Bring your Antigravity sessions to your phone. Upload files, dictate prompts, stop generation, and control multiple active Antigravity chats from a mobile-friendly interface — or automate them via MCP or the local HTTP API.
Antigravity Link provides two automation surfaces for agent workflows:
mcp-server.mjs) for MCP-compatible clientsopenapi.yaml) for direct integrationsThis allows agents and automation tools to interact with live Antigravity IDE sessions for snapshot retrieval, prompt submission, stop generation, instance switching, and plan/task/walkthrough access.
If you want to integrate quickly, use this sequence:
?token=...).mcp-server.mjs) or direct HTTP calls against https://localhost:3000./snapshot, /send, and /stop.OpenAPI example:
curl -k https://localhost:3000/snapshot \
-H "Authorization: Bearer <token>"
MCP client configuration example:
{
"antigravity-link": {
"command": "node",
"args": ["/path/to/antigravity-link-extension/mcp-server.mjs"],
"env": {
"AG_BRIDGE_URL": "https://localhost:3000",
"AG_BRIDGE_TOKEN": "<token>"
}
}
}
| | | |
| --- | --- | --- |
|
|
|
|
|
|
|
|
|
| | |
Example (Windows, Start Menu shortcut path):
& "C:\Users\<username>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Antigravity\Antigravity.lnk" --remote-debugging-port=9000
Replace <username> with your Windows username. Multiple Antigravity sessions are supported, but every window must be launched with this command.
In VS Code, run:
Antigravity Link: Start Server
Then run:
Antigravity Link: Show QR Code
Scan the QR code with your phone. Your mobile UI is ready.
Your phone may warn that the connection is unsafe because the certificate is self-signed. This is expected for local HTTPS. Use your browser's "Advanced" or similar option to proceed (wording differs between Safari/Chrome/Firefox).
| Command | Description | | --- | --- | | Antigravity Link: Start Server | Starts the local bridge server. | | Antigravity Link: Stop Server | Stops the server. | | Antigravity Link: Show QR Code | Displays the connection QR code. | | Antigravity Link: Select Network Interface | Choose which network interface the QR URL advertises. |
| Setting | Default | Description |
| --- | --- | --- |
| antigravityLink.port | 3000 | Port for the local bridge server. |
| antigravityLink.autoStart | false | Start the server on VS Code launch. |
| antigravityLink.useHttps | true | Serve over HTTPS for mic access. |
| antigravityLink.preferredHost | "" | Optional LAN IPv4 to advertise in QR URL (example: 192.168.1.101). |
| antigravityLink.strictWorkbenchOnly | true | Only bind to workbench.html CDP targets for stability. |
| antigravityLink.includeFallbackTargets | false | Allow jetski/launchpad fallback targets when strict mode is disabled. |
The extension exposes a local HTTP API at https://localhost:3000 (or your configured port). All endpoints except /ping require an Authorization: Bearer <token> header. The token is the value after ?token= in the QR code URL.
| Method | Endpoint | Description |
| --- | --- | --- |
| GET | /ping | Health check — returns pong. No auth required. |
| GET | /snapshot | Current chat surface: HTML, CSS, mode/model, isGenerating. |
| GET | /instances | List active Antigravity windows. |
| POST | /instance | Switch active window. Body: { "targetId": "..." } |
| POST | /send | Send a message. Body: { "message": "..." } |
| POST | /click | Click a UI element. Body: { "selector"?, "text"?, "x"?, "y"? } |
| POST | /stop | Stop AI generation. |
| POST | /upload | Upload a file (multipart/form-data, field name file). |
| GET | /task | Read the current task document. |
| GET | /walkthrough | Read the current walkthrough document. |
| GET | /plan | Read the current implementation plan. |
Full schema: openapi.yaml
Antigravity Link ships an MCP (Model Context Protocol) server that lets AI assistants drive your Antigravity session directly.
Setup
Add the following to your MCP client configuration (e.g. claude_desktop_config.json):
{
"antigravity-link": {
"command": "node",
"args": ["/path/to/antigravity-link-extension/mcp-server.mjs"],
"env": {
"AG_BRIDGE_URL": "https://localhost:3000",
"AG_BRIDGE_TOKEN": "<your-token>"
}
}
}
The token is the value after ?token= in the QR code URL. The extension server must be running before the MCP client connects.
Available tools
| Tool | Description |
| --- | --- |
| get_snapshot | Get current chat state, mode, model, and generation status. |
| send_message | Send a message to the active chat. |
| stop_generation | Cancel active AI generation. |
| get_instances | List available Antigravity windows. |
| switch_instance | Switch to a different Antigravity window. |
| click_element | Click a UI element by selector, text, or coordinates. |
| get_task | Read the current task document. |
| get_walkthrough | Read the current walkthrough document. |
| get_plan | Read the current implementation plan. |
This extension is self-contained. It ships its own public/ assets and uploads/ folder and does not require the parent npm run dev build.
If your workspace contains public/ or uploads/, the extension will prefer those paths automatically. This makes it easy to customize the mobile UI or keep uploads in your project root, but it also means behavior can differ between workspaces.
uploads/.--remote-debugging-port command shown above.No comments yet. Be the first to share your thoughts!