Use NeetoInvoice in Devin

Connect Devin to the NeetoInvoice MCP server and work with your time entries and invoices from your editor or terminal, with your NeetoInvoice sign-in or an API key.

Collega NeetoInvoice a Devin

  1. 11. Add the server to ~/.config/devin/mcp_config.json. 2. Run devin mcp login neetoinvoice in your terminal. 3. Sign in to NeetoInvoice in your browser.
{
  "mcpServers": {
    "neetoinvoice": {
      "url": "https://connect.neetoinvoice.com/mcp/messages"
    }
  }
}
Devin

> Which NeetoInvoice invoices are overdue?

● neetoinvoice - ListInvoices · 3 found

3 invoices are overdue, for $9,820.00 in total. The oldest is 21 days past due.

>

NeetoInvoice

Check requirements

  • Devin Desktop installed on your computer. Devin Desktop is the new name for Windsurf.
  • A NeetoInvoice account.

Connect NeetoInvoice to Devin

  1. Add the server to ~/.config/devin/mcp_config.json.
  2. Run devin mcp login neetoinvoice in your terminal and sign in to NeetoInvoice in your browser. The devin command ships with Devin Desktop at /Applications/Devin.app/Contents/Resources/app/extensions/windsurf/devin/bin/devin.
  3. Run devin mcp list to check that neetoinvoice is listed.
{
  "mcpServers": {
    "neetoinvoice": {
      "url": "https://connect.neetoinvoice.com/mcp/messages"
    }
  }
}

Then ask Devin in a Local session. Devin asks before each NeetoInvoice tool call. Choose Allow, or pick the option that allows every NeetoInvoice tool for the session:

Screen recording of Devin Desktop connected to NeetoInvoice. Devin is asked which clients have unbilled hours. It reads the clients, projects and time entries, and shows the unbilled hours for each client.
Devin answers from your NeetoInvoice data and asks before it uses each tool.

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 to ~/.config/devin/mcp_config.json. Devin uses the key on its next session.

{
  "mcpServers": {
    "neetoinvoice": {
      "url": "https://connect.neetoinvoice.com/mcp/messages",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}

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

Devin or Antigravity connects but the tools are missing

Enable the server after saving the config. In Devin, open the ... menu at the top of a Devin chat in the IDE view and turn the server on, then run devin mcp login <name>. In Antigravity, go to Settings → Customizations. Turn off servers you are not using and reload.

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:

  1. The config key. Claude Code, Cursor, Devin, Antigravity, and Antigravity CLI use mcpServers. VS Code uses servers. Codex uses a [mcp_servers.<name>] section in TOML. A server under the wrong key is ignored silently.
  2. The URL key. Antigravity and Antigravity CLI expect serverUrl. Claude Code, Codex, Cursor, Devin, and VS Code expect url.
  3. The endpoint. It is https://connect.neetoinvoice.com/mcp/messages, with no trailing slash.
  4. 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

Prefer the terminal? The NeetoInvoice CLI reaches the same data from your shell, your scripts and your coding agent.

Pronto a semplificare il tracciamento del tempo e la fatturazione ?

Inizia subito con NeetoInvoice.