invoiceninja_list_clients
List clients
List clients with balances and contacts, optionally searched by name, email or number. Invoice Ninja: GET /api/v1/clients.
namepagesortemailfilternumberstatusbalanceper_pageio.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
Hosted Invoice Ninja server that lets an assistant read and create clients, invoices, quotes, expenses, tasks and projects, and email invoices.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
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.Add this to your client's mcpServers config.
{
"mcpServers": {
"invoice-ninja-by-usefulapi": {
"type": "http",
"url": "https://invoice-ninja.usefulapi.io/mcp"
}
}
}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
https://invoice-ninja.usefulapi.io/mcp.claude mcp add --transport http invoice-ninja https://invoice-ninja.usefulapi.io/mcp, then run /mcp to log in.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.
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.
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].
MIT © usefulapi. Not affiliated with or endorsed by Invoice Ninja.
Source: servers/invoice-ninja/README.md at commit f22f848
List clients
List clients with balances and contacts, optionally searched by name, email or number. Invoice Ninja: GET /api/v1/clients.
namepagesortemailfilternumberstatusbalanceper_pageGet one client
Fetch one client by id, with contacts, address, balance and paid-to-date. Invoice Ninja: GET /api/v1/clients/{id}.
client_idrequiredList 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.
pagesortfilternumberstatusper_pageclient_iddate_rangeclient_statusGet one invoice
Fetch one invoice by id — line items, totals, balance, dates, status and invitations. Invoice Ninja: GET /api/v1/invoices/{id}.
invoice_idrequiredList quotes
List quotes (estimates), filterable by client and quote status. Invoice Ninja: GET /api/v1/quotes.
pagesortfilternumberstatusper_pageclient_idclient_statusGet 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}.
quote_idrequiredList products
List products / services in the catalog with price, cost and default taxes. Invoice Ninja: GET /api/v1/products.
pagesortfilterstatusper_pageproduct_keyList 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.
pagesortfilternumberstatusper_pageclient_idList expenses
List expenses, filterable by client and invoicing/payment state. Invoice Ninja: GET /api/v1/expenses.
pagesortfilternumberstatusper_pageclient_idclient_statusList vendors
List vendors (suppliers) with contacts and address. Invoice Ninja: GET /api/v1/vendors.
pagesortfilternumberstatusper_pageList tasks
List tasks / time entries with their time_log, duration, rate and linked client, project and invoice. Invoice Ninja: GET /api/v1/tasks.
pagesortfilternumberstatusper_pageclient_idclient_statusList projects
List projects with client, budgeted hours, task rate, current hours and due date. Invoice Ninja: GET /api/v1/projects.
pagesortfilternumberstatusper_pageclient_idList recurring invoices
List recurring invoice schedules with frequency, next send date and remaining cycles. Read-only. Invoice Ninja: GET /api/v1/recurring_invoices.
pagesortnumberstatusper_pageclient_idclient_statusCreate a client
Create a client, optionally with contacts. Give at least a name or one contact. Invoice Ninja: POST /api/v1/clients.
citynamephonestatewebsiteaddress1address2contactsid_numbercountry_idvat_numberpostal_code+2 moreUpdate 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}.
citynamephonestatewebsiteaddress1address2contactsclient_idrequiredid_numbercountry_idvat_number+3 moreCreate 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.
datetermsfooternumberpartialdiscountdue_dateclient_idrequiredpo_numbertax_name1tax_rate1line_items+5 moreUpdate 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}.
datetermsfooternumberpartialdiscountdue_datepo_numbertax_name1tax_rate1invoice_idrequiredline_items+5 moreMark 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.
invoice_idrequiredEmail 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.
email_typeinvoice_idrequiredCreate a quote
Create a DRAFT quote (estimate) for a client. Nothing is emailed. Invoice Ninja: POST /api/v1/quotes.
datetermsfooternumberpartialdiscountdue_dateclient_idrequiredpo_numbertax_name1tax_rate1line_items+5 moreConvert 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.
quote_idrequiredCreate 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.
dateamountrequiredclient_idtax_name1tax_rate1vendor_idproject_idcategory_idcurrency_idpayment_datepublic_notesprivate_notes+2 moreCreate a task / log time
Create a task, optionally with logged time entries, for a client or project. Invoice Ninja: POST /api/v1/tasks.
ratedue_datetime_logclient_idproject_iddescriptionrequiredCreate a project
Create a project for a client, with an optional hourly task rate, budget and due date. Invoice Ninja: POST /api/v1/projects.
namerequiredcolordue_dateclient_idrequiredtask_ratepublic_notesprivate_notesbudgeted_hours100% 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.
io.usefulapiOfficial publisher
Hosted MCP server for Ably that lets an assistant inspect realtime channels, presence and usage stats, publish messages, and review app configuration.
io.usefulapiOfficial publisher
Read-only access to ROLLER venue data: search bookings, check product availability, and look up guests, waivers, gift cards and daily reports.
io.usefulapiOfficial publisher
Hosted Planerio connector that lets an assistant read shifts, staffing requirements, staff, employees, absences and vacation days.
io.usefulapiOfficial publisher
Read-only access to Marmin UAE e-invoicing data: invoices, credit notes, UBL XML, Peppol status and business profiles.
io.usefulapiOfficial publisher
Remote MCP server for Oyster that lets an assistant read team, time off, expense, contract and invoice data and approve or decline requests.
{ "mcpServers": { "invoice-ninja": { "url": "https://invoice-ninja.usefulapi.io/mcp" } }}