Firma lets you add legally binding e-signatures to anything you build with Google Antigravity. Connect Firma’s MCP servers to Antigravity CLI or Antigravity Desktop and the agent can generate accurate Firma integration code, manage your signing requests, and operate on your Firma data directly from the terminal or the IDE. This guide covers two ways to use Firma with Antigravity:Documentation Index
Fetch the complete documentation index at: https://docs.firma.dev/llms.txt
Use this file to discover all available pages before exploring further.
- Antigravity CLI - Terminal-based agent with MCP support. Best for developers who work in the terminal.
- Antigravity Desktop - Standalone IDE with the same MCP configuration. Best for developers who prefer a visual editor.
Prerequisites
- A Firma account with an API key
- Antigravity CLI or Antigravity Desktop installed
- At least one Firma template with signing fields configured
Firma uses the raw API key as the
Authorization header value - do not prefix it with Bearer. This differs from many other APIs.Getting started
- Antigravity CLI
- Antigravity Desktop
Antigravity CLI (On Windows (PowerShell):The binary installs as List your signing requests:Send a signing request:Add embedded signing to a React app:Wire up webhooks:Referencing “the Firma docs” explicitly tells the agent to query the
agy) is a terminal-based AI agent that supports MCP servers for external tool integration. Connecting Firma’s MCP servers lets the agent build Firma integrations and operate on your Firma data.Step 1: Install Antigravity CLI
If you haven’t already, install the CLI:agy. You may need to add ~/.local/bin to your PATH.Step 2: Add the Firma MCP servers
Create or edit~/.gemini/antigravity/mcp_config.json and add both Firma servers:- firma-api gives Antigravity direct access to the Firma API - 84 tools across signing requests, templates, workspaces, and webhooks.
- firma-docs gives Antigravity access to Firma’s full documentation so it generates accurate integration code.
When to use which server:
firma-api is for doing things (sending signing requests, managing templates). firma-docs is for building things (generating integration code with accurate API details). Most developers want both connected.Step 3: Use Firma from the CLI
Once connected, you can ask Antigravity to build Firma integrations or operate on your data:Generate a backend integration:firma-docs MCP server before writing code. Without that, it may fall back to general knowledge and miss endpoint or auth details.What the agent generates
When you ask Antigravity to build a Firma integration, the generated backend code should look like this:create-and-send endpoint creates the signing request and sends it to recipients atomically. If you need to review or modify the request before sending, use POST /signing-requests to create a draft, then POST /signing-requests/{id}/send separately.
Webhook integration
To track signing events in real time, ask Antigravity to add a webhook handler:Embedded signing
For apps where signers complete documents inside your UI instead of opening a Firma-hosted page, thecreate-and-send response includes first_signer.id (the signing_request_user_id) and a ready-made first_signer.signing_link. Load the signer URL in an iframe:
Migrating from Gemini CLI
If you previously used Firma with Gemini CLI, here is what changed:| Gemini CLI | Antigravity CLI |
|---|---|
~/.gemini/settings.json | ~/.gemini/antigravity/mcp_config.json |
httpUrl for remote servers | serverUrl for remote servers |
gemini binary | agy binary |
Gemini CLI stops serving for individual-tier users on June 18, 2026. If you are on a Gemini Code Assist Standard/Enterprise license, the Gemini CLI IDE extensions continue to work.
Tips
- Use
firma-docswhen building,firma-apiwhen operating. The docs server helps the agent write correct integration code. The API server lets the agent manage signing requests, templates, and workspaces directly. - Pass
template_idexplicitly. Templates are the safest way to constrain what the agent can send. Let the agent pick a template ID from a short, named list you control. - Validate before sending. For higher-stakes documents, ask the agent to create a draft with
POST /signing-requests, then confirm before callingPOST /signing-requests/{id}/send. - Workspaces for multi-tenant apps. If you are building a SaaS product, give each end customer their own Firma workspace so templates and usage stay isolated.
Next steps
- API authentication - API keys and workspace scoping
- Webhooks guide - Event types, payloads, and signature verification
- Embedded signing - In-app signing experience
- Creating workspaces - Multi-tenant setups for SaaS apps
- MCP integration - Full MCP server reference with all 84 tools
- Complete setup guide - End-to-end Firma integration walkthrough
- API reference - Full endpoint documentation