Connect Claude, n8n, Make, or any AI tool to your Self Employment Toolkit data. Ask questions in plain English, log expenses by voice, check unpaid invoices without opening the app. No coding required to get started.
The MCP server is included on the Pro tier ($6 a month or $48 a year). Free-tier accounts can use the web dashboard, but cannot issue API keys or hit the /mcp endpoint. See pricing →
Get Your API Key →You already use Self Employment Toolkit to track mileage, log expenses, and send invoices. With an integration, your AI assistant can read and update that same data just by having a conversation with you.
Think of it like giving Claude a read/write connection to your bookkeeping. You can ask it anything: "How much did I spend on travel last quarter?" or "Log a $47 lunch expense with Acme Corp." No copy-pasting, no switching apps.
How you connect depends on which Claude (or other AI tool) you use. The web app uses OAuth and doesn't need an API key; the desktop and CLI use a long-lived API key in an Authorization header. Pick the section that matches your setup.
This is the simplest path. claude.ai handles authentication via OAuth, so you do not need to generate or paste an API key. Sign-in happens in a popup.
https://selfemploymenttoolkit.com/mcpBehind the scenes claude.ai is doing OAuth 2.1 with Dynamic Client Registration — it discovers the authorization server from a metadata document, registers itself, and exchanges a one-time code (with PKCE) for a short-lived bearer token that auto-refreshes. You can revoke access at any time from your Settings page.
If you use the claude CLI, register the toolkit with the mcp add command. Generate an API key first from your Settings page → API Keys & Integrations.
claude mcp add selfemploymenttoolkit https://selfemploymenttoolkit.com/mcp \
--transport http \
--header "Authorization: Bearer skt_your_api_key_here"
Then in any Claude Code session, type /mcp to see the tool list and confirm the connection.
Claude Desktop is a free app from Anthropic for Mac and Windows. Edit claude_desktop_config.json (Settings → Developer → Edit Config) and add an entry to mcpServers. Generate an API key from your Settings page first.
{
"mcpServers": {
"selfemploymenttoolkit": {
"type": "http",
"url": "https://selfemploymenttoolkit.com/mcp",
"headers": {
"Authorization": "Bearer skt_your_api_key_here"
}
}
}
}
Restart Claude Desktop. The toolkit shows up in the connector list and all 20 tools become available.
Once connected, try things like:
For no-code automation workflows, use n8n's HTTP Request node or Make's HTTP module with an API key in the Authorization header. A common pattern: a Google Calendar event fires, n8n reads the event details and automatically logs a mileage trip in your account, no manual entry needed.
https://selfemploymenttoolkit.com/mcpAuthorization: Bearer skt_your_api_key_hereCreate, name, and revoke API keys from your Settings page under API Keys & Integrations. You can have up to 10 active keys, so it's easy to keep separate keys for Claude, n8n, and any other tools you use.
Everything below is for developers and power users who want to go deeper.
The Self Employment Toolkit implements the Model Context Protocol (MCP) Streamable HTTP transport (spec version 2025-03-26). The endpoint is a stateless HTTP server that accepts JSON-RPC 2.0 requests and returns either application/json or text/event-stream responses depending on the client's Accept header.
Authentication uses a Bearer token in the Authorization header. Tokens have the prefix skt_ followed by 64 hex characters (32 random bytes). The raw token is shown once at creation time; only a one-way hash is stored server-side. Tokens can be revoked at any time from Settings.
Six read tools return JSON arrays or summary objects. Five write tools create or update records and return the new record's ID.
| Tool | Type | Description | Parameters |
|---|---|---|---|
get_overview |
Read | YTD summary: revenue, mileage, trip count, active clients. | none |
list_clients |
Read | All clients: name, address, hourly rate, notes. Up to 200. | none |
list_expenses |
Read | Expenses filtered by date range or category. Up to 200. | start (YYYY-MM-DD), end, category |
list_trips |
Read | Mileage trips with distance, category, addresses. Up to 200. | start, end, client_id |
list_invoices |
Read | Invoices with status, total, client, due date. Up to 200. | status (draft | sent | paid | void), client_id |
list_time_entries |
Read | Time entries with client, date, clock-in/out. Up to 200. | start, end, client_id |
log_expense |
Write | Creates an expense record. Amount in integer cents. | amount_cents*, date* (YYYY-MM-DD), category*, vendor, notes, client_id |
log_trip |
Write | Creates a mileage trip record. | start_time* (ISO 8601), end_time*, distance_miles*, start_address, end_address, category, client_id |
log_time |
Write | Creates a time entry (HH:MM 24-hour clock). | date* (YYYY-MM-DD), clock_in* (HH:MM), clock_out*, notes, client_id |
create_draft_invoice |
Write | Creates a draft invoice with line items. | client_id*, issued_date*, line_items* (array), due_date, notes |
mark_invoice_paid |
Write | Transitions a sent invoice to paid status. | invoice_id*, paid_at (YYYY-MM-DD, defaults to today) |
* Required parameter.
All calls (read and write) count toward the 120/min limit. Write operations are not separately rate-limited beyond the overall cap. Rate limit windows are fixed (not sliding). Exceeding a limit returns HTTP 429.
All requests are JSON-RPC 2.0 POST to https://selfemploymenttoolkit.com/mcp. Set Authorization: Bearer skt_... and Content-Type: application/json. Include Accept: application/json, text/event-stream for MCP-compliant clients.
List expenses with date filter:
Log an expense (amount in cents):
Discover available tools:
API keys are hashed with SHA-256 before storage. The raw key is shown exactly once at creation time. Every response is scoped exclusively to the authenticated account; no tool can access another user's data regardless of the arguments passed. Rate limits are enforced per key, so a runaway workflow on one key does not affect others on the same account.
The MCP endpoint runs behind the same DDoS protection and TLS termination as the rest of the service. All data in transit is encrypted.
get_overview tool returns a combined year-to-date summary in one call.Generate an API key in Settings and connect your first tool in under two minutes.
Go to Settings →