AI & MCP Integration
Connect your favourite AI assistant to TikTak and manage your entire workspace through natural conversation. Setup takes under a minute.
Overview
TikTak ships an official MCP server (Model Context Protocol) that gives AI assistants direct access to your time tracking and invoicing data. MCP is the open standard that lets AI tools call external APIs safely and with your permission.
Once connected, your AI can:
- Create and manage customers, services, and contacts
- Start, stop, and continue timers
- Log time entries (manually or from parsed data)
- Generate draft invoices from logged hours
- Export invoices as PDF, Excel, or UBL
- View your dashboard and statistics
- Bulk import from photos, CSVs, PDFs, or plain text
The MCP server is open-source, published on npm and GitHub, and works with any MCP-compatible AI tool.
Step 1: Get your API key
Before connecting any AI tool, you need an API key. This is how TikTak knows which account the AI is acting on.
- Open TikTak and go to Settings → API
- Click Create Key
- Give it a name (e.g. "Claude Desktop", "ChatGPT")
- Copy the key — it starts with
tk_
Your key is always visible on the API settings page, so you can copy it again anytime. You can create multiple keys for different tools and revoke them individually.
Claude (Anthropic)
Claude supports MCP natively in Claude Desktop, Claude Code (CLI), and the Claude mobile app.
Claude Desktop
- Open Claude Desktop
- Go to Settings → Developer → Edit Config
- Add TikTak to the
mcpServerssection:
{
"mcpServers": {
"tiktak": {
"command": "npx",
"args": ["-y", "tiktak-mcp-server"],
"env": {
"TIKTAK_API_KEY": "tk_your_key_here"
}
}
}
}
- Save and restart Claude Desktop
- You should see the TikTak tools icon (hammer) in the chat input
Claude Code (CLI)
Run this command in your terminal:
claude mcp add tiktak -e TIKTAK_API_KEY=tk_your_key_here -- npx -y tiktak-mcp-server
That's it. Start a new Claude Code session and the TikTak tools are available.
Claude mobile app
MCP servers configured in Claude Desktop sync to the mobile app automatically. No extra setup needed.
ChatGPT (OpenAI)
ChatGPT supports MCP through its plugin/tool system and through the ChatGPT desktop app.
ChatGPT Desktop
- Open ChatGPT Desktop
- Go to Settings → Tools & Integrations → Add MCP Server
- Choose "Add manually"
- Enter:
Command: npx
Args: -y tiktak-mcp-server
Env: TIKTAK_API_KEY = tk_your_key_here
- Save and start a new conversation
ChatGPT via API (custom GPTs)
If you're building a custom GPT or using the OpenAI API with function calling, you can use TikTak's REST API directly. See the Developer API guide for endpoint details.
Gemini (Google)
Google Gemini supports MCP through Gemini CLI and compatible desktop clients.
Gemini CLI
gemini mcp add tiktak -- npx -y tiktak-mcp-server
Set the environment variable before running:
# macOS / Linux
export TIKTAK_API_KEY=tk_your_key_here
# Windows (PowerShell)
$env:TIKTAK_API_KEY = "tk_your_key_here"
Gemini in Google AI Studio
Google AI Studio supports MCP tool connections. Add TikTak as a stdio MCP server with the same command and environment variable as above.
GitHub Copilot
GitHub Copilot in VS Code supports MCP servers for agent mode.
- Open VS Code with GitHub Copilot installed
- Open your VS Code settings (
Ctrl/Cmd + ,) - Search for "mcp" and find GitHub Copilot → MCP Servers
- Click "Edit in settings.json" and add:
"github.copilot.chat.mcpServers": {
"tiktak": {
"command": "npx",
"args": ["-y", "tiktak-mcp-server"],
"env": {
"TIKTAK_API_KEY": "tk_your_key_here"
}
}
}
- In Copilot Chat, switch to Agent mode (the robot icon)
- Ask Copilot to interact with TikTak
Cursor & other IDEs
Cursor, Windsurf, and other AI-powered IDEs support MCP servers through their settings.
Cursor
- Open Cursor Settings → MCP
- Click Add new MCP server
- Set type to stdio, command to
npx -y tiktak-mcp-server - Add environment variable
TIKTAK_API_KEYwith your key
Windsurf
Add to your ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"tiktak": {
"command": "npx",
"args": ["-y", "tiktak-mcp-server"],
"env": {
"TIKTAK_API_KEY": "tk_your_key_here"
}
}
}
}
Other MCP clients
TikTak's MCP server works with any MCP-compatible client. The setup is always the same:
| Setting | Value |
|---|---|
| Type | stdio |
| Command | npx |
| Arguments | -y tiktak-mcp-server |
| Environment | TIKTAK_API_KEY = your key |
Alternatively, if you prefer to run from source:
# Install globally
npm install -g tiktak-mcp-server
# Or run from GitHub
npx github:ideaCompany/tiktak-mcp-server
TIKTAK_API_URL environment variable alongside your API key. Default: https://api.tiktakme.com
What you can do
The MCP server exposes 33 tools covering every major feature in TikTak. Here's the full list:
Customers (6 tools)
| Tool | What it does |
|---|---|
list_customers | List all customers, optionally filter by search query |
get_customer | Get full details for a specific customer |
create_customer | Create a new customer (company or individual) |
create_customers_bulk | Create up to 50 customers at once |
update_customer | Update an existing customer's details |
archive_customer | Archive (soft-delete) a customer |
Services (6 tools)
| Tool | What it does |
|---|---|
list_services | List all services with rates |
get_service | Get full details for a specific service |
create_service | Create a new service with hourly or fixed rate |
create_services_bulk | Create up to 50 services at once |
update_service | Update an existing service |
archive_service | Archive (soft-delete) a service |
Time tracking (9 tools)
| Tool | What it does |
|---|---|
list_log_entries | List time entries with date, customer, and service filters |
get_log_entry | Get full details for a specific time entry |
create_log_entry | Create a manual time entry |
update_log_entry | Update an existing time entry |
delete_log_entry | Delete a time entry |
start_timer | Start a live timer for a customer and service |
stop_timer | Stop a running timer and save as time entry |
continue_timer | Continue a previously stopped timer |
get_running_timers | List all currently running timers |
Invoices (8 tools)
| Tool | What it does |
|---|---|
list_invoices | List invoices with status and date filters |
get_invoice | Get full invoice details with line items |
get_uninvoiced_entries | Find billable hours not yet invoiced |
create_invoice | Create a draft invoice from time entries |
update_invoice | Update invoice details |
update_invoice_status | Mark as sent, paid, or void |
get_invoice_source_entries | See which time entries are on an invoice |
archive_invoice | Archive (soft-delete) an invoice |
Other (4 tools)
| Tool | What it does |
|---|---|
get_dashboard_stats | Get summary stats (hours, revenue, active timers) |
export_log_entries | Export time entries as CSV or Excel |
export_invoice | Export an invoice as PDF, UBL, or Factur-X |
get_settings | Read workspace settings (company info, invoice defaults) |
Use cases
Here's what people actually do with TikTak + AI. These are real prompts you can try.
Import from a business card photo
Take a photo of a business card and paste it into your AI conversation:
"Here's a photo of a business card I received at a conference.
Create this person as a customer in TikTak."
Your AI reads the card (name, company, VAT number, email, phone) and creates the customer automatically.
Bulk import from CSV or spreadsheet
"Here's a CSV with my client list. Import all of them as customers in TikTak:
Name,Company,VAT,Email
Jan De Smet,Acme Corp,BE0123456789,jan@acme.be
Sophie Martin,Globex Ltd,BE0987654321,sophie@globex.com
..."
The AI uses create_customers_bulk to import them all at once, reporting any failures.
Parse a timesheet PDF
"Attached is a PDF timesheet from our contractor.
Parse it and log all the time entries in TikTak under the
customer 'Acme Corp' and service 'Consulting'."
Natural time logging
"I worked on the Globex website redesign today from 9am to 12:30pm,
then had a meeting with Acme Corp from 2pm to 3:30pm. Log both."
Timer control
"Start a timer for Acme Corp, web development."
...later...
"Stop my timer."
Invoice generation
"Create an invoice for everything I did for Globex Industries in March."
The AI finds uninvoiced entries for that customer and period, creates a draft invoice, and shows you the total.
Weekly summary
"How many hours did I work this week? Break it down by customer."
Let AI agents track their own time
This is where it gets interesting. If you have AI agents doing work — coding, writing, research, support — they can log their own hours:
"You are an AI development assistant. Before you start working on this task,
start a timer in TikTak under customer 'Internal' and service 'AI Development'.
When you're done, stop the timer and add notes about what you accomplished."
This works with any agent framework. Your AI assistant becomes a billable team member with accurate time records.
Full workspace setup
"I'm a freelance designer. Set up my TikTak workspace:
- Customers: Acme Corp (BE0123456789), Globex Ltd, Sarah Connor (individual)
- Services: Logo Design (€85/hr), Brand Identity (€95/hr), Consultation (€75/hr)
Create everything."
Tips & best practices
- Be specific with dates. Say "March 2026" or "last week" instead of vague references. The AI maps this to exact date ranges.
- Use customer names naturally. The AI searches by name, so "Acme" will find "Acme Corporation". You don't need IDs.
- Create separate API keys for each AI tool. This way you can revoke one without affecting others, and track which tool is making requests.
- Invoices are created as drafts. The AI won't accidentally send an invoice to a client. You always review and send manually.
- Bulk operations report partial successes. If you import 50 customers and 3 fail validation, you'll get the 47 successes and clear error messages for the failures.
- The AI can read your data too. Ask it to summarize your week, find unbilled hours, or check which invoices are overdue. It has full read access to your workspace.
Troubleshooting
The AI says it can't find TikTak tools
- Make sure you restarted the AI tool after adding the MCP config
- Check that Node.js 18+ is installed: run
node --versionin your terminal - Verify the API key is correct and not revoked
"Failed to connect to TikTak API"
- Check your internet connection
- Verify the API key starts with
tk_ - If using a custom API URL, make sure it's reachable
Rate limit errors (429)
The free plan allows 100 API requests per hour. If you hit the limit, wait or upgrade to Pro (1,000/hr) or Business (5,000/hr). The AI handles rate limiting automatically and will retry.
Something else?
Check the GitHub issues or email hello@tiktakme.com.