Check requirements
- Antigravity CLI installed. Install it with
brew install --cask antigravity-cli, or withcurl -fsSL https://antigravity.google/cli/install.sh | bash. - A Google account to sign in to Antigravity CLI. Run
agyonce and sign in when it asks. - A NeetoInvoice account.
Connect NeetoInvoice to Antigravity CLI
Run this in your terminal:
agy mcp add neetoinvoice https://connect.neetoinvoice.com/mcp/messages
Run agy mcp list to check that neetoinvoice shows as enabled. Start agy, type /mcp, select neetoinvoice and choose Authenticate. Sign in to NeetoInvoice in your browser, then paste the code it shows back into Antigravity CLI.
Then ask from your terminal:

Connect with an API key
An API key is not tied to a person. Every tool call reaches the whole workspace, and role checks do not run. Use a key for automation that must see every time entry. Do not use one on a machine where the person should see only their own entries.
The key is the same one the REST API uses. Learn how to get one in the API keys article. Send it in this header:
Authorization: Bearer YOUR_API_KEY
In Claude Code, Codex, Cursor, Antigravity CLI, VS Code, and Devin, leave the key out of the config to sign in with OAuth. Put the key in to use the API key.
Add the server with the key in a header:
agy mcp add --header "Authorization: Bearer YOUR_API_KEY" neetoinvoice https://connect.neetoinvoice.com/mcp/messages
The command saves the server to ~/.gemini/config/mcp_config.json. If you edit that file by hand, use serverUrl, not url.
Try these prompts
Clients, projects, and recipients
Get details for client Acme Corp.
Which projects is oliver@example.com on?
Add accounts@example.com as an invoice recipient for Acme Corp.
Invoices
Email the last invoice to Acme Corp's recipients.
Reports, PTO, and team
Show the payroll summary for July 2026.
Show the monthly PTO report for July 2026.
List all active team members.
Work across workspaces
Which NeetoInvoice workspaces can you see?
Troubleshooting
Your AI assistant shows no NeetoInvoice tools
Restart the client first. Every client reads its MCP config at startup. On Claude or ChatGPT, confirm that you added the connector and finished the sign-in. In ChatGPT, the plugin is created only after you tick I understand and want to continue.
On Claude Code, Cursor, Codex, VS Code, Devin, Antigravity, or Antigravity CLI, check these:
- The config key. Claude Code, Cursor, Devin, Antigravity, and Antigravity CLI use
mcpServers. VS Code usesservers. Codex uses a[mcp_servers.<name>]section in TOML. A server under the wrong key is ignored silently. - The URL key. Antigravity and Antigravity CLI expect
serverUrl. Claude Code, Codex, Cursor, Devin, and VS Code expecturl. - The endpoint. It is
https://connect.neetoinvoice.com/mcp/messages, with no trailing slash. - The syntax. In JSON, a trailing comma or an unclosed brace makes the whole file unreadable.
The connection is refused or unauthorized
With an API key, the Authorization header must read Bearer YOUR_API_KEY, with the word Bearer and a single space before the key. Confirm the key is not revoked and belongs to the workspace you expect. A key from one workspace does not work in another. With OAuth, remove the connector and add it again to run the sign-in from the start.
More fixes are in the NeetoInvoice MCP troubleshooting guide.
Use NeetoInvoice in other AI assistants
| AI assistant | Setup guide |
|---|---|
| Claude | Use NeetoInvoice in Claude |
| ChatGPT | Use NeetoInvoice in ChatGPT |
| Claude Code | Use NeetoInvoice in Claude Code |
| Cursor | Use NeetoInvoice in Cursor |
| Codex | Use NeetoInvoice in Codex |
| VS Code | Use NeetoInvoice in VS Code |
| Devin | Use NeetoInvoice in Devin |
| Antigravity | Use NeetoInvoice in Antigravity |
| Any other MCP client | NeetoInvoice MCP server |
Prefer the terminal? The NeetoInvoice CLI reaches the same data from your shell, your scripts and your coding agent.