Skip to main content
Glama
theasteve

InvoiceBloom MCP server

README.md
# InvoiceBloom MCP server

Create, send and track invoices from Claude, Cursor, or any [Model Context Protocol](https://modelcontextprotocol.io) client.

[InvoiceBloom](https://invoicebloom.io) is a free invoicing app for freelancers and small businesses. Its MCP server is **hosted**: there is nothing to install or run. Point your client at the endpoint with an API token and start invoicing.

- **Endpoint:** `https://invoicebloom.io/mcp` (Streamable HTTP, stateless)
- **Auth:** bearer API token, minted at [Settings › Security](https://invoicebloom.io/settings/security) (free account)
- **Docs:** https://invoicebloom.io/developers
- **REST API:** `https://invoicebloom.io/api/v1` with the same token

## Quick start

### Claude Code

```bash
claude mcp add --transport http invoicebloom https://invoicebloom.io/mcp \
  --header "Authorization: Bearer ib_YOUR_TOKEN"
```

### Cursor, Windsurf and other HTTP-capable clients

```json
{
  "mcpServers": {
    "invoicebloom": {
      "url": "https://invoicebloom.io/mcp",
      "headers": { "Authorization": "Bearer ib_YOUR_TOKEN" }
    }
  }
}
```

### Claude Desktop (via mcp-remote)

```json
{
  "mcpServers": {
    "invoicebloom": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://invoicebloom.io/mcp",
               "--header", "Authorization: Bearer ib_YOUR_TOKEN"]
    }
  }
}
```

Then ask things like *"Invoice Acme for 12 hours of consulting at $150 and send it"* or *"Which invoices are overdue?"*.

## Tools

| Tool | What it does |
|---|---|
| `get_account` | Your business details, email-confirmation and payment status |
| `list_clients` / `create_client` / `update_client` | Find or add the people you invoice |
| `list_invoices` / `get_invoice` | Filter by status, client or overdue; full detail with line items and a shareable link |
| `create_invoice` / `update_invoice` | Draft invoices with line items, tax and late fees; totals are computed server-side |
| `send_invoice` | Emails the PDF to the client, with a Stripe payment link if connected |
| `mark_invoice_paid` | Record a payment received outside the app |
| `delete_invoice` | Remove an invoice |

`send_invoice` and `delete_invoice` carry MCP annotations (`openWorldHint`, `destructiveHint`) so well-behaved assistants confirm with you before calling them.

## Safety and limits

- A token has the same rights as your account. Revoke it from Settings › Security the moment you think it leaked.
- 120 requests per minute per token.
- The same anti-abuse rules as the web app apply to sending: a confirmed email, at least one line item, and a daily send cap.
- Unauthenticated requests get a JSON `401`.

## Registry metadata

[`server.json`](./server.json) follows the official MCP Registry schema for remote servers.

## Support

Questions or a client you want supported: https://invoicebloom.io/contact