AI assistant
Log time and check reports right from a chat with your AI assistant — in plain words, without opening Trello. Tacto speaks MCP, the open protocol supported by Claude, Cursor, Windsurf, Zed, VS Code with Copilot, ChatGPT connectors and custom agents.
Without a key: claude.ai, ChatGPT, Claude Code
Assistants that support OAuth sign-in connect with one address — https://chrono.customapp.tech/mcp. No key needed: when you connect, a Tacto page opens, you sign in with Trello and press Allow.
- claude.ai, Claude Desktop and mobile: Settings → Connectors → Add custom connector → paste the address. The free plan allows one custom connector.
- ChatGPT: in the desktop app — Settings → Plugins → Add → add an MCP server → type Streamable HTTP, a name and the address → Save. On chatgpt.com — Plugins → + → Add custom MCP server. It can’t be added in the mobile app; in Business and Enterprise workspaces an admin does it. If ChatGPT then blocks an entry or says access was denied, that is its own permission, not Tacto: choose the “Always ask” mode for Tacto and ask it to prepare the entry again.
- Claude Code:
claude mcp add --transport http tacto https://chrono.customapp.tech/mcp, then/mcp→ sign in.
Connected apps are listed in Settings → AI assistant (the Tacto menu on the board or the Power-Up menu), where you can also disconnect them.
With a key: Cursor, Windsurf, Zed, VS Code and scripts
Assistants without OAuth sign-in need a key. It takes three steps.
1. Create a key
In Trello: Settings in the Tacto menu on the board (or the Power-Up menu) → AI assistant → Create key. The key starts with catt_ and is shown once — copy it right away. Right below, Tacto shows ready-made commands with your key already filled in.
2. Connect your assistant
Claude Code
claude mcp add --transport http tacto https://chrono.customapp.tech/mcp --header "Authorization: Bearer catt_your_key"
Cursor, Windsurf, Zed, VS Code
Add a server of type HTTP in the MCP settings. In Cursor it's ~/.cursor/mcp.json:
{
"mcpServers": {
"tacto": {
"url": "https://chrono.customapp.tech/mcp",
"headers": { "Authorization": "Bearer catt_your_key" }
}
}
}
Claude Desktop with a key
It is easier to connect Claude Desktop without a key, like claude.ai. If you need a key, use a small bridge. Add this to ~/Library/Application Support/Claude/claude_desktop_config.json and restart the app:
{
"mcpServers": {
"tacto": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://chrono.customapp.tech/mcp",
"--header", "Authorization:Bearer catt_your_key"]
}
}
}
Any other assistant
Two things are needed: the address https://chrono.customapp.tech/mcp (streamable HTTP) and the header Authorization: Bearer catt_your_key.
3. Check it
Open a new chat and ask: “which boards do I have in Tacto?” If it answers with a list, you're all set.
What to say
| You want | Say |
|---|---|
| Log time | “log 2h 30m on calls for yesterday” |
| See a total | “how much did I track this week?” |
| Recent cards | “what have I been working on lately?” |
| List entries | “show my entries for last month” |
| Find a card | “find the card about the import” |
| Create a card | “create a card in Backlog and log 2 hours to it” |
| Move a card | “move it to Done” |
| Rename a card | “rename the login card to ‘Login: fixes after review’” |
| Fix an entry | “set entry #114395 to 3 hours” |
| Delete | “delete entry #114395” |
| Bring back a deleted entry | “restore the entry I deleted yesterday” |
| Non-billable time | “log 1h on the internal sync, non-billable” |
| Log in bulk | “log my week: Mon 3h on login, Tue 2h on review” |
| Analytics | “compare this month with last month by board and person” — admins see the team, everyone else their own time |
| Billable amounts | “how much did we bill Northwind in October?” — admins only, when finance is set up |
| Confirmation mode | “confirm everything” |
| Estimate a card | “estimate the login card: backend 5h, iOS 8h” |
Durations: 2h 30m, 1.5, 90m, 1:30. Dates: today, yesterday, day before yesterday, 19.08, Aug 19, 2026-08-19 14:00. Periods: week, last month, 2026-08-01..2026-08-19. Any language works.
By default, before any change the assistant shows exactly what it will do — card, time, date, and for edits “before → after” — and waits for your “yes”. Change this in Settings → AI assistant → Assistant confirmations — Always ask, Only before edits and deletions, or Don’t ask. In chat the mode can only be tightened, with “confirm everything”: it can be loosened only in Settings, so text from a card or comment can't turn confirmations off. With “only before edits and deletions” the assistant asks before editing, deleting, moving or renaming a card and restoring an entry. If several cards have similar names, it lists them and asks.
Creating, moving and renaming cards needs Trello access granted once in the Power-Up. Timers are managed in Trello only.
If something goes wrong
- “Card not found” — the Power-Up is probably not enabled on that card's board. Add Tacto to the board.
- “The key was not accepted” — the key was revoked or copied incompletely. Create a new one.
- “Key paused” — Trello hasn't confirmed for 30 days that you're still on the team. Open any board with Tacto in Trello and the key works again.
- The date is off by a day — Tacto takes your time zone from the browser. Open the reports in Trello once so it remembers it.
- The key leaked — press Revoke next to it in Settings → AI assistant. Everything logged stays.
A key acts only on your behalf and only on boards you can see. Don't share it — let everyone create their own. One person can have up to 20 keys.
