Skip to main content
The NeetoInvoice MCP server lets your AI assistant manage billing and time tracking from plain-language requests. Ask it to log hours, create an invoice, list unbilled time entries, or generate a payroll report, and it works with your NeetoInvoice workspace for you. MCP (Model Context Protocol) is an open standard that connects AI assistants to tools such as NeetoInvoice. You describe the task; the assistant uses the right tool.

What you can do

Track time

Log hours, pull unbilled time entries, and check timesheets.

Manage invoices

Create invoices from unbilled entries and send them to recipients.

Manage the team

List, invite, update, and deactivate team members.

Hand off the busywork

Ask your assistant to bill a client for the month, chase down missing timesheets, or flag a PTO conflict for you.

MCP vs CLI: which should I use?

NeetoInvoice’s CLI reaches the same resources MCP does - clients, recipients, projects, project users, time entries, invoices, PTO, and the rest. Neither one can do more than the other, so choose on how the work reaches NeetoInvoice.

Reach for MCP when

  • The details live in your chat, not in your head. A client writes “we approved 6 hours of design on the 14th” and your assistant turns that message into the time entry. The same entry from the shell needs the client, project, and task ids, the date, and the hours all typed out, and the CLI cannot see the message at all.
  • You have not decided the steps yet. “Acme’s July hours look wrong - have a look” means reading what is there and choosing what to do about it. A command can only carry out a decision you have already made.
  • One request should cover several steps. “Bill Acme for July” finds the client, pulls its unbilled entries for the month, bills them, and emails the invoice to the recipients, with the ids carried from one call to the next. The same invoice from the shell needs a JSON file listing every entry with its ids, hours, and rate, plus a total you worked out yourself.
  • The person doing it does not use a terminal. The office manager chasing this week’s missing timesheets installs nothing: NeetoInvoice hosts the server, and their assistant is already open.

Reach for the CLI instead when

  • No AI assistant should be in the loop. A cron entry or a CI step runs neetoinvoice reports payroll-summary --month 8 --year 2026 with nothing but the binary and a workspace it is already signed in to - no assistant open, no model account, no tokens spent per run. Every MCP call needs something with model access running.
  • The output feeds another program. The CLI prints a bare identifier or raw JSON for jq, a spreadsheet, or your own script. Here you get prose you would have to copy out by hand.
  • You are working through thousands of records. Here every page is a separate tool call, and a year of time entries crowds out the assistant’s context. The CLI returns total_pages next to the entries, so a shell loop walks every page unattended and writes each one to a file or into jq - the size of the project’s history stops mattering.
  • The run has to be repeatable and reviewable. Month-end close is the same commands in the same order every month: the timesheet summary, then the payroll summary, then the invoices. A command is the artifact: it records exactly what ran and repeats identically. Ask twice here and the assistant may take a different route.
You can have both. Run neetoinvoice setup claude and the same assistant drives the CLI for you, so a plain-language request still ends in an exact command you can read, repeat, and paste into a script.
Ask your assistant to show you what it plans to do before it generates an invoice, deletes a time entry, or deactivates a team member. These tools act on your live workspace.

What you need

  • An AI assistant that supports MCP, such as Claude, ChatGPT, Claude Code, Codex, Cursor, Gemini CLI, VS Code with GitHub Copilot, Windsurf, or Antigravity.
  • A NeetoInvoice account. You need an API key only if the assistant must reach the whole workspace, or if you use Antigravity. See Authentication.
Connect your assistant to get started.