Invoice Ninja MCP by usefulapi

io.usefulapiPublished by usefulapi.ioOfficial publisherv1.39.2Updated Nov 14, 2026

Manage Invoice Ninja clients, invoices, quotes, expenses, tasks and projects.

The publisher's own server: Ably MCP by usefulapi

VerifiedStreamable HTTPWeb executableProductivity & WorkflowFinanceBusiness & Commerce

Overview

AI-generated overview

Hosted Invoice Ninja server that lets an assistant read and create clients, invoices, quotes, expenses, tasks and projects, and email invoices.

What you can do
  • List and fetch clients, with contacts, balances and paid-to-date
  • List and fetch invoices and quotes, filterable by client and status, plus recurring invoice schedules
  • List products, payments, expenses, vendors, tasks and projects
  • Create and update clients and invoices, and create draft quotes, expenses, tasks and projects
  • Convert a quote into an invoice, mark an invoice sent, or email it to the client
  • Check usage, request a feature, upgrade or cancel the subscription
When to use it
Useful when you want an assistant to answer billing questions such as which invoices are overdue or what each client owes, and to draft invoices, quotes, expenses and tasks in Invoice Ninja without leaving the chat.
Requirements
Remote MCP endpoint, no local install. Sign-in is by OAuth; the login page asks for your Invoice Ninja API token and, for self-hosted instances, your instance URL. Credentials are stored per user by the provider. A free plan allows 50 tool calls per month; paid plans are billed per user.
Before you install
Write tools change Invoice Ninja data, and email_invoice sends a real email to the client's contacts that cannot be unsent. Marking an invoice sent adds its amount to the client's balance. Passing contacts on a client update replaces the contact list, and passing line_items on an invoice update replaces all lines. Your Invoice Ninja API token is given to a third-party host, and upgrade tools lead to paid Stripe checkout.

Installation

In SourceWeft

  1. Open Invoice Ninja MCP by usefulapi in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.usefulapi%2Finvoice-ninja/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "invoice-ninja-by-usefulapi": {
      "type": "http",
      "url": "https://invoice-ninja.usefulapi.io/mcp"
    }
  }
}

README

Invoice Ninja MCP by usefulapi

Use Invoice Ninja from Claude, Cursor, or any MCP client — read and create clients, invoices, quotes, expenses, tasks and projects, convert quotes, and email invoices. Hosted, no local install: connect with your own Invoice Ninja credentials.

Live endpoint: https://invoice-ninja.usefulapi.io/mcp · Homepage: https://usefulapi.io/invoice-ninja

Connect

  • Claude (claude.ai, Desktop): open Customize → Connectors, click + Add → Add custom connector, and paste https://invoice-ninja.usefulapi.io/mcp.
  • Claude Code: claude mcp add --transport http invoice-ninja https://invoice-ninja.usefulapi.io/mcp, then run /mcp to log in.
  • VS Code: Add to VS Code.
  • Cursor and other clients: add the URL as a remote MCP server:
json
{  "mcpServers": {    "invoice-ninja": {      "url": "https://invoice-ninja.usefulapi.io/mcp"    }  }}

Add only the URL. Do not add an Authorization header or an API key to the client config: the server signs you in with OAuth, and the login page asks for your Invoice Ninja credentials.

Step-by-step setup, where to find your credentials, and FAQ: https://usefulapi.io/invoice-ninja/

On first connect you'll provide your Invoice Ninja API token (Settings → Account Management → Integrations → API tokens), plus your instance URL if you self-host. They're validated, stored per-user, and scoped to you — no keys in config files.

Tools

ToolTypeWhat it does
invoiceninja_list_clientsreadList clients
invoiceninja_get_clientreadGet one client
invoiceninja_list_invoicesreadList invoices
invoiceninja_get_invoicereadGet one invoice
invoiceninja_list_quotesreadList quotes
invoiceninja_get_quotereadGet one quote
invoiceninja_list_productsreadList products
invoiceninja_list_paymentsreadList payments
invoiceninja_list_expensesreadList expenses
invoiceninja_list_vendorsreadList vendors
invoiceninja_list_tasksreadList tasks
invoiceninja_list_projectsreadList projects
invoiceninja_list_recurring_invoicesreadList recurring invoices
invoiceninja_create_clientwriteCreate a client
invoiceninja_update_clientwriteUpdate a client
invoiceninja_create_invoicewriteCreate an invoice
invoiceninja_update_invoicewriteUpdate an invoice
invoiceninja_mark_invoice_sentwriteMark an invoice sent
invoiceninja_email_invoicewriteEmail an invoice to the client
invoiceninja_create_quotewriteCreate a quote
invoiceninja_convert_quote_to_invoicewriteConvert a quote to an invoice
invoiceninja_create_expensewriteCreate an expense
invoiceninja_create_taskwriteCreate a task / log time
invoiceninja_create_projectwriteCreate a project
invoiceninja_usage_statusmetaUsage status (free-tier meter)
invoiceninja_request_featuremetaRequest a missing feature
invoiceninja_upgrademetaUpgrade to Pro or Pro+
invoiceninja_cancel_subscriptionmetaCancel the Pro subscription

read tools are read-only; write tools mutate data (clients should confirm them); meta tools report usage, manage your subscription or send a feature request.

Pricing

PlanPriceLimit
Free$050 tool calls / month
Pro (per user)$9/mo or $90/yr (2 months free)10,000 tool calls / month
Pro+ (per user)$39/mo or $390/yr (2 months free)100,000 tool calls / month

Each paid plan covers this server only. Ask your AI to run invoiceninja_upgrade and choose Pro or Pro+, billed monthly or yearly (it returns a Stripe Checkout link). If you already have Pro, ask to change it to Pro+. The change requires your confirmation, keeps your billing interval and charges the price difference for the rest of the period immediately. Cancel any time with invoiceninja_cancel_subscription: your paid plan continues to the end of the paid period, with no refund for the current period, and asking to resume the same plan with invoiceninja_upgrade before then undoes the cancel. Or write to [email protected].

License

MIT © usefulapi. Not affiliated with or endorsed by Invoice Ninja.

Source: servers/invoice-ninja/README.md at commit f22f848

Tools

24

invoiceninja_list_clients

List clients

List clients with balances and contacts, optionally searched by name, email or number. Invoice Ninja: GET /api/v1/clients.

Parametersnamepagesortemailfilternumberstatusbalanceper_page

invoiceninja_get_client

Get one client

Fetch one client by id, with contacts, address, balance and paid-to-date. Invoice Ninja: GET /api/v1/clients/{id}.

Parametersclient_idrequired

invoiceninja_list_invoices

List invoices

List invoices, filterable by client and payment status (paid / unpaid / overdue). status_id on each invoice: 1 draft, 2 sent, 3 partial, 4 paid, 5 cancelled, 6 reversed. Invoice Ninja: GET /api/v1/invoices.

Parameterspagesortfilternumberstatusper_pageclient_iddate_rangeclient_status

invoiceninja_get_invoice

Get one invoice

Fetch one invoice by id — line items, totals, balance, dates, status and invitations. Invoice Ninja: GET /api/v1/invoices/{id}.

Parametersinvoice_idrequired

invoiceninja_list_quotes

List quotes

List quotes (estimates), filterable by client and quote status. Invoice Ninja: GET /api/v1/quotes.

Parameterspagesortfilternumberstatusper_pageclient_idclient_status

invoiceninja_get_quote

Get one quote

Fetch one quote by id — line items, totals, status and the invoice it was converted to (invoice_id), if any. Invoice Ninja: GET /api/v1/quotes/{id}.

Parametersquote_idrequired

invoiceninja_list_products

List products

List products / services in the catalog with price, cost and default taxes. Invoice Ninja: GET /api/v1/products.

Parameterspagesortfilterstatusper_pageproduct_key

invoiceninja_list_payments

List payments

List payments received, with amount, date, refunded/applied totals and the invoices each was applied to (paymentables). Read-only: this server never records or refunds payments. Invoice Ninja: GET /api/v1/payments.

Parameterspagesortfilternumberstatusper_pageclient_id

invoiceninja_list_expenses

List expenses

List expenses, filterable by client and invoicing/payment state. Invoice Ninja: GET /api/v1/expenses.

Parameterspagesortfilternumberstatusper_pageclient_idclient_status

invoiceninja_list_vendors

List vendors

List vendors (suppliers) with contacts and address. Invoice Ninja: GET /api/v1/vendors.

Parameterspagesortfilternumberstatusper_page

invoiceninja_list_tasks

List tasks

List tasks / time entries with their time_log, duration, rate and linked client, project and invoice. Invoice Ninja: GET /api/v1/tasks.

Parameterspagesortfilternumberstatusper_pageclient_idclient_status

invoiceninja_list_projects

List projects

List projects with client, budgeted hours, task rate, current hours and due date. Invoice Ninja: GET /api/v1/projects.

Parameterspagesortfilternumberstatusper_pageclient_id

invoiceninja_list_recurring_invoices

List recurring invoices

List recurring invoice schedules with frequency, next send date and remaining cycles. Read-only. Invoice Ninja: GET /api/v1/recurring_invoices.

Parameterspagesortnumberstatusper_pageclient_idclient_status

invoiceninja_create_client

Create a client

Create a client, optionally with contacts. Give at least a name or one contact. Invoice Ninja: POST /api/v1/clients.

Parameterscitynamephonestatewebsiteaddress1address2contactsid_numbercountry_idvat_numberpostal_code+2 more

invoiceninja_update_client

Update a client

Update a client's details; only the fields you pass change. Passing contacts replaces the contact list. Invoice Ninja: PUT /api/v1/clients/{id}.

Parameterscitynamephonestatewebsiteaddress1address2contactsclient_idrequiredid_numbercountry_idvat_number+3 more

invoiceninja_create_invoice

Create an invoice

Create a DRAFT invoice for a client. It is not sent or emailed — use invoiceninja_mark_invoice_sent or invoiceninja_email_invoice afterwards. Invoice Ninja: POST /api/v1/invoices.

Parametersdatetermsfooternumberpartialdiscountdue_dateclient_idrequiredpo_numbertax_name1tax_rate1line_items+5 more

invoiceninja_update_invoice

Update an invoice

Edit an invoice; only the fields you pass change, but line_items (if passed) replace every existing line. Does not send anything. Invoice Ninja: PUT /api/v1/invoices/{id}.

Parametersdatetermsfooternumberpartialdiscountdue_datepo_numbertax_name1tax_rate1invoice_idrequiredline_items+5 more

invoiceninja_mark_invoice_sent

Mark an invoice sent

Mark a draft invoice as sent WITHOUT emailing it. This moves it out of draft and adds its amount to the client's balance. Invoice Ninja: GET /api/v1/invoices/{id}/mark_sent.

Parametersinvoice_idrequired

invoiceninja_email_invoice

Email an invoice to the client

OUTWARD-FACING: sends a real email with the invoice to the client's invited contacts, and marks the invoice sent. Cannot be unsent — confirm with the user first. Invoice Ninja: POST /api/v1/invoices/bulk with action=email.

Parametersemail_typeinvoice_idrequired

invoiceninja_create_quote

Create a quote

Create a DRAFT quote (estimate) for a client. Nothing is emailed. Invoice Ninja: POST /api/v1/quotes.

Parametersdatetermsfooternumberpartialdiscountdue_dateclient_idrequiredpo_numbertax_name1tax_rate1line_items+5 more

invoiceninja_convert_quote_to_invoice

Convert a quote to an invoice

Convert a quote into a new invoice (the quote is marked converted and links to it). Returns the new invoice. Invoice Ninja: GET /api/v1/quotes/{id}/convert_to_invoice.

Parametersquote_idrequired

invoiceninja_create_expense

Create an expense

Log an expense, optionally tied to a vendor, client or project and flagged to be re-invoiced. Invoice Ninja: POST /api/v1/expenses.

Parametersdateamountrequiredclient_idtax_name1tax_rate1vendor_idproject_idcategory_idcurrency_idpayment_datepublic_notesprivate_notes+2 more

invoiceninja_create_task

Create a task / log time

Create a task, optionally with logged time entries, for a client or project. Invoice Ninja: POST /api/v1/tasks.

Parametersratedue_datetime_logclient_idproject_iddescriptionrequired

invoiceninja_create_project

Create a project

Create a project for a client, with an optional hourly task rate, budget and due date. Invoice Ninja: POST /api/v1/projects.

Parametersnamerequiredcolordue_dateclient_idrequiredtask_ratepublic_notesprivate_notesbudgeted_hours

Version history

26
  1. v1.39.2LatestNov 14, 2026
  2. v1.39.1Nov 13, 2026
  3. v1.38.0Nov 12, 2026
  4. v1.37.3Nov 11, 2026
  5. v1.36.5Nov 8, 2026
  6. v1.36.4Nov 7, 2026
  7. v1.35.3Nov 5, 2026
  8. v1.35.2Nov 5, 2026
  9. v1.35.1Nov 4, 2026
  10. v1.35.0Nov 3, 2026
  11. v1.34.1Nov 3, 2026
  12. v1.33.0Nov 1, 2026
  13. v1.31.0Oct 31, 2026
  14. v1.30.0Oct 31, 2026
  15. v1.29.2Oct 30, 2026
  16. v1.29.0Oct 30, 2026
  17. v1.24.0Oct 26, 2026
  18. v1.21.3Oct 25, 2026
  19. v1.21.0Oct 25, 2026
  20. v1.20.0Oct 24, 2026
  21. v1.17.0Oct 23, 2026
  22. v1.16.4Oct 22, 2026
  23. v1.16.3Oct 21, 2026
  24. v1.11.1Oct 9, 2026
  25. v1.10.0Oct 9, 2026
  26. v1.0.0Sep 29, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Usefulapi integrations