Invoice2go MCP server Let your AI agent send and chase Invoice2go invoices.

Your AI agent writes invoices from your job notes, reminds clients who are late, sends estimates and records the checks. Sign in to Invoice2go once in your own Cloud Browser. No API, no Zapier setup.

  • Free 7-day trial, no card
  • Unofficial, not affiliated with Invoice2go
Invoice2go logo Invoice2go Cloud Browser

10 tools Read and write

Job to payment

What can your AI agent do in Invoice2go? The paperwork between the finished job and the payment.

  • Create invoices from job notes

  • Remind clients about overdue invoices

  • Send estimates from site notes

  • Record checks and transfers

  • List what is unpaid

  • See what each client owes

No public API

Does Invoice2go have an MCP server or an API? No public API, and no MCP server.

Invoice2go has no MCP server, no ChatGPT or Claude app and no public API: its integrations site lists a REST API only as "Request this integration" (checked 8 Nov 2026). Cotlet runs 10 Invoice2go tools hosted, over MCP for agents and REST for scripts, in your own Invoice2go login.

  • Invoice2go offers built-in integrations and a Zapier app, with no API keys for customers.
  • Zapier's app runs fixed workflows; it does not let an agent work in your account.
  • Invoice2go has no connector in the ChatGPT apps directory or in Claude.
The Invoice2go API, other options and Cotlet compared
What you need Invoice2go APIZapier appCotlet
Create an invoice No API Fixed workflows Yes
Send invoices and estimates No API Fixed workflows Yes, after your OK
Remind late payers No API Fixed workflows Yes, after your OK
Ask in ChatGPT or Claude No Through Zapier MCP Yes

Checked 8 Nov 2026. Sources: Invoice2go: REST API integration (request only) · Invoice2go integrations · Zapier: Invoice2go integrations · Invoice2go pricing

Set up once

How does the Invoice2go MCP server work? Your agent works in your own Invoice2go login.

  1. 1Sign in to Invoice2go

    Once, in a browser we host for you.

  2. 2Connect your AI agent

    One address in its settings.

  3. 3Hand it the busywork

    It drafts the work, you OK what customers get.

We never keep your Invoice2go password, and no invoice, reminder, estimate or payment goes through until you approve it. Who can see your session

Any MCP client

How to connect Invoice2go to your AI agent

  1. 1

    Sign in to Invoice2go in a Cloud Browser. Create a Cotlet account, open Invoice2go in its Cloud Browser, sign in with your Invoice2go account and press Enable for agents.

  2. 2

    Add the Cotlet address. Enter https://cotlet.dev/mcp/v1 as the MCP server or connector URL in your agent.

  3. 3

    Let the agent in. Chat apps open a Cotlet sign-in page. Editors, n8n and scripts send an API key made in the console.

Invoice2go shares the address https://cotlet.dev/mcp/v1 with every other app you enable, so one connector covers them all. Turned Invoice2go on after connecting? Refresh the connector and the 10 tools appear.

Claude
Settings > Connectors > Add custom connector
URL: https://cotlet.dev/mcp/v1/connect

Claude Code:
claude mcp add --transport http cotlet \
  https://cotlet.dev/mcp/v1 \
  --header "Authorization: Bearer $COTLET_API_KEY"
ChatGPT
Settings > Apps & Connectors > Create
MCP server URL: https://cotlet.dev/mcp/v1/connect
Authentication: OAuth
Cursor
// ~/.cursor/mcp.json
{
  "mcpServers": {
    "cotlet": {
      "url": "https://cotlet.dev/mcp/v1",
      "headers": { "Authorization": "Bearer ${env:COTLET_API_KEY}" }
    }
  }
}
Codex
# ~/.codex/config.toml
[mcp_servers.cotlet]
url = "https://cotlet.dev/mcp/v1"
bearer_token_env_var = "COTLET_API_KEY"
n8n
MCP Client Tool (inside an AI Agent)
Transport: HTTP Streamable
URL: https://cotlet.dev/mcp/v1
Auth: Bearer, <your key>
Tool: invoice2go_read
Make, Zapier
Make: MCP Client > Call a tool
Zapier: MCP Client by Zapier > Run Tool
Server URL: https://cotlet.dev/mcp/v1
Token: <your key>
Tool: invoice2go_write
4 read, 6 write

All 10 Invoice2go MCP tools

Invoices and reminders6

New invoices start as drafts with your default terms. Sending, reminders and payments wait for your OK.

  • list_invoices Invoices by status, client or date, with balances. read

    Returns invoices with client, total, balance, due date and status (Draft, Sent, Overdue, Paid). Newest first.

    MCP callinvoice2go_read → list_invoices

    REST endpointGET https://cotlet.dev/api/v1/invoice2go/invoices

    Parameters

    Parameters: list_invoices
    NameTypeDescription
    status string string draft, sent, overdue, paid or all. Default: all.
    client string string Client name.
    page integer integer Page number. Default: 1.

    Example response

    {
      "invoices": [
        {
          "invoice_number": "1084",
          "client": "Rivera Dental",
          "total": "1,450.00",
          "balance": "1,450.00",
          "due": "2026-10-30",
          "status": "Overdue"
        }
      ],
      "page": 1
    }
  • get_invoice One invoice with lines, payments and activity. read

    Returns the lines, tax, deposit, payments recorded and the activity: sent, opened, reminded.

    MCP callinvoice2go_read → get_invoice

    REST endpointGET https://cotlet.dev/api/v1/invoice2go/invoices/{invoice_number}

    Parameters

    Parameters: get_invoice
    NameTypeDescription
    invoice_number string required string Invoice number from list_invoices.

    Example input

    {
      "invoice_number": "invoice number"
    }

    Example response

    {
      "invoice_number": "1084",
      "client": "Rivera Dental",
      "items": [
        {
          "description": "Electrical panel upgrade",
          "quantity": 1,
          "unit_price": "1,450.00"
        }
      ],
      "payments": [],
      "activity": [
        "Sent 2026-10-16",
        "Opened 2026-10-17"
      ]
    }
  • create_invoice Creates a draft invoice for a client. write

    Creates the invoice with your default terms, tax and payment options. It stays a draft until send_invoice, so it runs at once.

    MCP callinvoice2go_write → create_invoice

    REST endpointPOST https://cotlet.dev/api/v1/invoice2go/invoices

    Parameters

    Parameters: create_invoice
    NameTypeDescription
    client string required string Client name; a new name creates the client.
    items object[] required object[] Lines: description, quantity, unit price.
    due_date string string ISO date. Default: your terms.
    notes string string Notes shown on the invoice.

    Example input

    {
      "client": "client",
      "items": [
        "items"
      ]
    }

    Example response

    {
      "invoice_number": "1092",
      "client": "Sam Okafor",
      "total": "640.00",
      "status": "Draft"
    }
  • send_invoice Emails an invoice to the client. writeasks first

    Sends the invoice with your payment options to the client's email or the addresses you pass. By default you confirm each call; you can switch that off for this tool.

    MCP callinvoice2go_write → send_invoice

    REST endpointPOST https://cotlet.dev/api/v1/invoice2go/invoices/{invoice_number}

    Parameters

    Parameters: send_invoice
    NameTypeDescription
    invoice_number string required string Invoice number from list_invoices.
    to string[] string[] Recipient emails. Default: the client's email.
    message string string Email message.

    Example input

    {
      "invoice_number": "invoice number"
    }

    Example response

    {
      "invoice_number": "1092",
      "status": "Sent",
      "sent_to": [
        "sam@example.com"
      ]
    }
  • send_reminder Emails a payment reminder for an unpaid invoice. writeasks first

    Sends a reminder for the invoice to the client, with your message if you pass one. By default you confirm each call; you can switch that off for this tool.

    MCP callinvoice2go_write → send_reminder

    REST endpointPOST https://cotlet.dev/api/v1/invoice2go/invoices/{invoice_number}/reminders

    Parameters

    Parameters: send_reminder
    NameTypeDescription
    invoice_number string required string Invoice number from list_invoices.
    message string string Reminder message.

    Example input

    {
      "invoice_number": "1084",
      "message": "A friendly reminder that invoice 1084 is now past due."
    }

    Example response

    {
      "invoice_number": "1084",
      "reminded": "rivera@example.com",
      "days_overdue": 9
    }
  • record_payment Records a payment received outside Invoice2go. writeasks first

    Adds a cash, check or bank transfer payment and updates the balance. No card is charged. By default you confirm each call; you can switch that off for this tool.

    MCP callinvoice2go_write → record_payment

    REST endpointPOST https://cotlet.dev/api/v1/invoice2go/invoices/{invoice_number}/payments

    Parameters

    Parameters: record_payment
    NameTypeDescription
    invoice_number string required string Invoice number from list_invoices.
    amount string required string Amount, e.g. 1450.00.
    method string string cash, check, bank_transfer or other.

    Example input

    {
      "invoice_number": "invoice number",
      "amount": "amount"
    }

    Example response

    {
      "invoice_number": "1084",
      "payment": {
        "method": "Check",
        "amount": "1,450.00"
      },
      "balance": "0.00",
      "status": "Paid"
    }

Estimates3

Estimates start as drafts and go out only after your OK.

  • list_estimates Estimates by status or client. read

    Returns estimates with client, total and status, so the agent can follow up on open ones.

    MCP callinvoice2go_read → list_estimates

    REST endpointGET https://cotlet.dev/api/v1/invoice2go/estimates

    Parameters

    Parameters: list_estimates
    NameTypeDescription
    status string string draft, sent, approved or all. Default: all.
    page integer integer Page number. Default: 1.

    Example response

    {
      "estimates": [
        {
          "estimate_number": "E-0231",
          "client": "Sam Okafor",
          "total": "2,980.00",
          "status": "Sent",
          "date": "2026-10-29"
        }
      ],
      "page": 1
    }
  • create_estimate Creates a draft estimate for a client. write

    Creates the estimate from your lines. It stays a draft until send_estimate, so it runs at once.

    MCP callinvoice2go_write → create_estimate

    REST endpointPOST https://cotlet.dev/api/v1/invoice2go/estimates

    Parameters

    Parameters: create_estimate
    NameTypeDescription
    client string required string Client name.
    items object[] required object[] Lines: description, quantity, unit price.
    notes string string Notes shown on the estimate.

    Example input

    {
      "client": "client",
      "items": [
        "items"
      ]
    }

    Example response

    {
      "estimate_number": "E-0236",
      "client": "Grace Lin",
      "total": "3,400.00",
      "status": "Draft"
    }
  • send_estimate Emails an estimate to the client. writeasks first

    Sends the estimate to the client's email or the addresses you pass. By default you confirm each call; you can switch that off for this tool.

    MCP callinvoice2go_write → send_estimate

    REST endpointPOST https://cotlet.dev/api/v1/invoice2go/estimates/{estimate_number}

    Parameters

    Parameters: send_estimate
    NameTypeDescription
    estimate_number string required string Estimate number from list_estimates.
    to string[] string[] Recipient emails. Default: the client's email.

    Example input

    {
      "estimate_number": "estimate number"
    }

    Example response

    {
      "estimate_number": "E-0236",
      "status": "Sent",
      "sent_to": [
        "grace@example.com"
      ]
    }

Clients1

Clients with contact details and the total of their unpaid invoices.

  • list_clients Clients with contact details and what they owe. read

    Returns clients with email, phone and the total of their unpaid invoices.

    MCP callinvoice2go_read → list_clients

    REST endpointGET https://cotlet.dev/api/v1/invoice2go/clients

    Parameters

    Parameters: list_clients
    NameTypeDescription
    query string string Name, email or phone.
    page integer integer Page number. Default: 1.

    Example response

    {
      "clients": [
        {
          "name": "Rivera Dental",
          "email": "rivera@example.com",
          "phone": "555-0177",
          "owing": "1,450.00"
        }
      ],
      "page": 1
    }
Encrypted, revocable

Who can see my Invoice2go session, and how do I revoke it?

  • What we store

    Your signed-in Invoice2go profile, AES-256-GCM encrypted, in Finland. No password.

  • What your agent gets

    The 10 Invoice2go tools, never the session cookie.

  • What the session sees

    What your login sees: clients, invoices, estimates, payments.

  • What no tool touches

    Card charges, payouts, payment settings, subscription, deletes.

  • If Invoice2go signs you out

    You sign in again yourself, in the same Cloud Browser.

  • How to cut access

    Disable for agents, reset the browser, or change your Invoice2go password.

Cotlet never types your password: you sign in yourself, and the agent only uses the session. Our site scores A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory (live results).

Tested every 12 h

What happens when Invoice2go changes? We repair the tool; your prompts stay the same.

between tests of the Invoice2go reads
12 h
between tests of sends a customer would notice
24 h
for a call to a Invoice2go tool paused for repair
$0

When Invoice2go moves the Send button or renames an invoice status, we fix the tool and your agent calls it the same way. status.cotlet.dev checks the site, console and API every 3 minutes.

4 tools ask first

Approvals, undo and mistakes Customers get nothing until you say so.

  1. 01 Reads unpaid invoices With their due dates and activity.
  2. 02 Picks the overdue ones Past the number of days you set.
  3. 03 Drafts one reminder each With the invoice number and amount.
  4. 04 Waits, then sends The batch shows up in your Cotlet console first.
Which Invoice2go actions can be undone
ActionUndo
Create an invoice or estimateYes, edit or delete the draft
Record a paymentRemove the payment in Invoice2go
Send an invoice, estimate or reminderNo

4 of 10 tools ask first: send_invoice, send_reminder, record_payment, send_estimate. Draft invoices and draft estimates reach no customer, so they run at once. You can turn the wait off per tool once you trust a routine.

MCP call
{
  "name": "send_reminder",
  "arguments": {
    "invoice_number": "1084",
    "message": "A friendly reminder that invoice 1084 is now past due."
  }
}
REST
curl -X POST https://cotlet.dev/api/v1/invoice2go/invoices/1084/reminders \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"message":"A friendly reminder that invoice 1084 is now past due."}'
Response
{
  "invoice_number": "1084",
  "reminded": "rivera@example.com",
  "days_overdue": 9
}

A cron job or n8n flow can call the same tools over REST at /api/v1/invoice2go with the same key and price, in JSON. Failed calls are free. Each tool row above shows its REST path.

Pay per call

How much does the Invoice2go MCP server cost?

About $20 a monthfor a two-person electrical business, 3,500 credits. Your Invoice2go plan stays as it is.

A month of Invoice2go paperwork for a two-person electrical business, in credits
JobCallsCredits
Invoice from job notes, sent3 × 401,200
Overdue reminders, weekly (4)5 × 4200
Estimate built and sent2 × 15300
Payment recorded1 × 30300
Cloud Browser, 30 days1,500
Total3,500
  • Free 7-day trial, no card
  • 10 credits per successful call, MCP or REST
  • 50 credits a day for the Cloud Browser
  • Works on your current Invoice2go plan

Invoice2go publishes no invoice counts, so the month is our example. Dollars at the $29 pack rate.

Cotlet credit packs: price, credits and calls at 10 credits each
Credits Price, one time Calls at 10 credits Per 1,000 credits
5,000 $29 500 $5.80
15,000 $79 1,500 $5.27
32,000 $149 3,200 $4.66
60,000 $249 6,000 $4.15

Only successful calls use credits; failed calls and timeouts cost nothing. At a balance of 0 calls pause, never a surprise charge. Authenticate with the Authorization: Bearer header.

Other options

Invoice2go MCP server on GitHub, Zapier or hosted: which to use No API; Zapier runs fixed workflows.

Other ways to connect Invoice2go, checked 8 Nov 2026
OptionWhat it doesWhere it stops
Zapier: Invoice2goFixed workflows between Invoice2go and other apps.A Zapier plan; the workflow does what you built, not what you ask.
Invoice2go REST APIListed on the integrations site.Only as "Request this integration"; no keys to use today.
By handEvery screen of Invoice2go, one invoice at a time.Your evenings.

If a fixed Zapier workflow covers your need, use it. To write, send and chase invoices by asking in ChatGPT or Claude, Cotlet works in the Invoice2go account you already have.

Invoice2go MCP setup on GitHub and PyPI

Prefer code? Our public repo has a ready Invoice2go MCP config for Claude Code, ChatGPT and Cursor, an agent skill and a small command-line tool. Add your Cotlet API key and your agent works in your own Invoice2go account.

cotlet-connect/invoice2go-mcp
  • MCP config for Claude Code, Cursor and Codex
  • Agent skill and Cursor rules for Invoice2go
  • Clone it and run, Python standard library only
  • Elastic License 2.0, free in your own business
EU company, since 2019

Who runs Cotlet A company you can look up.

Take Group sp. z o.o. runs Cotlet. It is a software company registered in Poland, EU (VAT PL6342984273), in business since 2019, led by its founders Bart Krawczyk (Co-founder, CTO) and Jake Slugocki (Co-founder, SEO, sales and marketing). Questions about the Invoice2go tools go to contact@cotlet.dev.

Invoice2go MCP server: questions

How do I get access?

Sign up free at https://cotlet.dev, open Invoice2go under Integrations in the console and sign in to Invoice2go in its Cloud Browser. The trial starts with your first app and asks for no card.

How do I connect Invoice2go to ChatGPT or Claude?

Sign up at cotlet.dev, log in to Invoice2go once in its Cloud Browser and add Cotlet to ChatGPT or Claude, following the steps in your console. No API key is needed. ChatGPT and Claude then work in your Invoice2go account through Cotlet, in their phone apps too.

What can ChatGPT do in Invoice2go?

With Cotlet, ChatGPT, Claude and other AI agents handle jobs like these in Invoice2go: create invoices from job notes; remind clients about overdue invoices; send estimates from site visit notes. You ask in plain words, and anything that reaches other people waits for your OK first.

Is there an official ChatGPT or Claude app for Invoice2go?

No. Invoice2go has no ChatGPT or Claude connector of its own and Invoice2go has no official MCP server (checked 8 Nov 2026). Cotlet is an independent one that works in ChatGPT, Claude, Cursor and any MCP client, on your signed-in account.

Can ChatGPT create invoices in Invoice2go?

Yes, with Cotlet. Tell ChatGPT the client, lines and due date and it creates the invoice as a draft, then sends it after your OK.

Can ChatGPT send payment reminders in Invoice2go?

Yes, with Cotlet. ChatGPT finds overdue invoices and sends a reminder for each one after your OK, then tells you what is still outstanding.

Can ChatGPT send estimates in Invoice2go?

Yes, with Cotlet. ChatGPT builds the estimate from your site notes and sends it to the client after your OK.

Does Invoice2go have an API?

No public one. Invoice2go lists a REST API only as an integration you can request (checked 8 Nov 2026). Cotlet works through your own Invoice2go sign-in instead.

Can it charge a client's card?

No. record_payment only records a payment you already received, such as cash or a check. Online payments stay in Invoice2go.

Is the MCP server different from the REST API?

Only in how it is called. Both carry the same 10 tools, inputs, answers, API key and price. Agents use MCP; scripts and HTTP steps use REST.

Is Cotlet affiliated with Invoice2go?

No. Cotlet is independent and not affiliated with Invoice2go.

Hand the Invoice2go paperwork to your agent.

Free 7-day trial with 2,000 credits, no card needed.