Tallied

Tallied documentation

Tallied tracks time and invoices clients from inside your AI chat. Tell it what you worked on; it logs the hours to the right client. Ask what's unbilled; it drafts the invoice. Nothing is sent to a client until you say so.

Connect

Claude (claude.ai or the desktop app)

  1. Settings → Connectors → Add custom connector.
  2. Paste https://withtallied.com/mcp as the server URL.
  3. Click Connect, sign in with Google or an email magic link, then click Allow on the consent screen.

ChatGPT

  1. Settings → Connectors → Advanced → Developer mode (enable it if you haven't).
  2. Create a connector using the same URL, https://withtallied.com/mcp.
  3. Sign in and approve access the same way.

Claude Code

claude mcp add --transport http tally https://withtallied.com/mcp

The first tool call opens the sign-in flow in your browser.

Signing in for the first time creates your free Tallied workspace automatically — there's nothing to set up beforehand.

What you can say

Log time

Catch up on forgotten time

Reports

Invoices

Clients & projects

The assistant asks when a project is ambiguous; it never guesses, and it never creates a client or project without you confirming first. Invoices are only sent when you say so — creating a draft never notifies your client.

How dates and durations are interpreted

"Today" always means today in your workspace timezone, not the assistant's guess or your device's clock — the workspace timezone is set once, on signup, and can be changed in Settings.

Durations are read leniently. All of these are understood: 2h30m, 2h 30m, 2.5, 150, 1:45, 90 min, half an hour. For a bare number with no unit: a decimal is read as hours (2.5 → 2.5 hours), and a whole number is read as hours if it's 12 or less, otherwise minutes — so 8 means 8 hours, but 90 means 90 minutes. If you want to be unambiguous, say the unit (8h, 90m).

Rates

The hourly rate used for a time entry is resolved in this order, first match wins:

  1. A rate set directly on that entry (rare — an explicit override).
  2. The project's rate.
  3. The client's default rate.
  4. Your workspace default rate.

Invoices

An invoice moves through: draft → sent → viewed → paid, or void at any point before payment.

Importing from Toggl, Harvest, or Clockify

  1. Export your time entries as a detailed CSV from Toggl, Harvest, or Clockify.
  2. Upload it at https://withtallied.com/app/import.
  3. Re-uploading the same export (or an overlapping one) won't create duplicate entries — imported rows are matched by source, date, and duration, so importing twice is safe.

CSV import is a Pro feature.

Plans and limits

PlanPriceClientsInvoices/monthImportBranding
Free$012NoNo
Pro$12/monthUnlimitedUnlimitedYesYes
Team$8/seat/monthUnlimitedUnlimitedYesYes

Hitting a plan limit doesn't fail silently — the assistant will tell you what limit you hit and share a link to upgrade.

Bundled skills

Tallied ships five workflows as Claude skills. Where your host supports MCP prompts or slash commands, the same workflows are available that way too:

Privacy & revoking access

Tallied only sees what you tell it to log, and the arguments of the tools an assistant calls on your behalf — never the rest of your conversation. See the privacy policy for details on what's collected and how to delete it.

To revoke an assistant's access, remove the connector from that app (Claude, ChatGPT, etc.) — this immediately invalidates its tokens. You can reconnect at any time; nothing about your workspace or data is lost.

Tool reference

ToolUse whenType
time.list_entriesListing individual time entries for a day, week, project, or clientRead
time.reportTotals and breakdowns: hours by day/project/client, unbilled amountRead
workspace.list_projectsListing clients, projects, aliases, and ratesRead
time.propose_entriesReconstructing time from calendar/commits/tickets (proposes only, saves nothing)Read
invoice.listListing invoices by status, client, or date rangeRead
invoice.getViewing one invoice's lines, total, and payment statusRead
invoice.preview_draftPreviewing what an invoice would contain before creating itRead
time.log_entryLogging one time entry with a known durationWrite
time.log_entries_batchLogging several entries at once (a recap, or confirmed proposals)Write
time.update_entryCorrecting an existing entry's duration, project, date, etc.Write
time.delete_entryRemoving an entry (requires confirmation)Write
workspace.create_clientAdding a new clientWrite
workspace.create_projectAdding a new projectWrite
invoice.create_draftTurning unbilled hours into a draft invoiceWrite
invoice.record_paymentRecording a payment made outside StripeWrite
invoice.sendEmailing a reviewed draft to the client with a payment linkWrite (external)
invoice.voidCancelling an invoice and releasing its entries (requires confirmation)Write (external)