DocsMCP Integration

MCP Tools

Actions Claude can perform through the MCP integration.

MCP Tools

Claude can perform these actions in Zenaris, grouped by domain. Most workflows should start with list_clients to resolve a clientId before creating or filtering anything else.

Clients

`list_clients` — List your clients, optionally filtered by a name/company search.

  • search: Optional case-insensitive name/company match

`create_client` — Create a new client.

  • name (required), company, email, phone, defaultHourlyRate

Tasks

`log_task` — Create a new task for a client.

Example prompt:

"Create a task for Acme Corp: Design landing page mockups"
  • clientId (required, from list_clients), title, description, dueDate, billable (default true)

`list_tasks` — List tasks, optionally filtered by status, client, or billable flag.

  • status, clientId, billable, limit

`complete_task` — Mark a task as complete.

  • taskId (required, from list_tasks)

Time Entries

`log_time_entry` — Log time against an existing task.

Example prompt:

"Log 2.5 hours to the landing page mockups task"
  • taskId (required, from list_tasks), hours, description, date, billable (default true)

`list_time_entries` — List logged time entries with total/billable hours and amount.

  • from, to, clientId, taskId, limit

Expenses

`log_expense` — Log a business expense.

  • merchant (required), amount (required), date, category, description, clientId, billable

`list_expenses` — List logged expenses, optionally filtered by date range, client, or unbilled status.

  • from, to, clientId, unbilled

To-dos

Personal (unbillable) to-dos — a separate concept from billable Tasks.

`add_todo` — Add a personal to-do.

  • title (required), notes, dueDate, priority

`list_todos` — List to-dos, optionally filtered by completion status or due date.

  • completed, dueBefore

`complete_todo` — Mark a to-do as complete.

  • todoId (required, from list_todos)

Notes

`create_note` — Create a new note in your knowledge base.

  • title (required), content, tags, clientId

`append_to_note` — Append content to an existing note.

  • noteId (required), content (required)

`get_note` — Get the full content of a note by ID.

`list_notes` — List notes (compact — title/tags only), optionally filtered by tag or client.

`search_notes` — Semantically search notes by meaning, with a plain-text fallback.

  • query (required), clientId, limit

Invoices

`list_invoices` — List invoices, optionally filtered by status, client, or issue date range.

  • status (draft/sent/paid/overdue/cancelled — overdue is computed: a sent invoice past its due date), clientId, from, to, limit

`get_invoice` — Get full invoice details, including line items and totals.

  • invoiceId (required, from list_invoices)

`create_draft_invoice` — Create a new draft invoice from line items. Always creates as draft — never sends the invoice or emails the client.

Example prompt:

"Draft an invoice for Acme Corp: 4 hours of design work at $100/hr, due in 30 days"
  • clientId (required), dueDate (required), lineItems (required — description, quantity, rate), issueDate, tax, discount, notes, paymentTerms

Quotes

`list_quotes` — List quotes, optionally filtered by status or client.

  • status, clientId, limit

`get_quote` — Get full quote details, including line items and totals.

  • quoteId (required, from list_quotes)

Search

`search_documents` — Semantically search invoices and quotes by meaning (e.g. "the logo redesign project for Acme"), with a plain text/number fallback.

  • query (required), sourceType (invoice or quote, omit to search both), limit

Business Summary

`get_business_summary` — A single structured snapshot of the business: outstanding/overdue invoices, this period's invoiced and paid totals, unbilled expenses, unbilled billable task hours, and to-dos due this week.

Example prompt:

"What's still unpaid from this quarter?"
  • from, to (optional — defaults to the current calendar month)

Example Conversations

Creating a task:

You: "I just had a meeting with Acme Corp about their website. Create a task for the redesign project."

Claude: "I've created a new task 'Website Redesign Project' for Acme Corp. Would you like me to log any time for today's meeting?"

Logging time:

You: "I spent 3 hours on the Acme website today, mostly on the homepage layout."

Claude: "I've logged 3 hours to 'Website Redesign Project' with the note 'Homepage layout work'. Your total time on this task is now 5.5 hours."

Checking the books:

You: "What's still unpaid from Q2?"

Claude calls get_business_summary and reports the outstanding total, which invoices are overdue and by how many days, and how much was invoiced and collected in the period.

Guardrails

  • All tools require authentication and are scoped to your own data — nothing crosses between accounts
  • Client, task, invoice, and quote ownership is verified before every read or write
  • No tool ever sends email or changes an invoice's sent/paid status — create_draft_invoice always creates a draft, and there is no "send invoice" or "mark paid" tool
  • There are no delete tools exposed over MCP
MCP Tools - Documentation