For Developers & AI Agents

Give your AI agent
an accountant.

WeeKeeper exposes 83 MCP tools and a full REST API. Your agent can query books, categorize transactions, create invoices, and generate reports — with human-in-the-loop safety built in.

🤖

MCP Server — for AI agents

Connect Claude, GPT, or any MCP-compatible agent to WeeKeeper. Your agent gets tools it can call directly — no REST plumbing needed.

Server: https://mcp.weekeeper.com
Transport: SSE (Server-Sent Events)
Auth: Bearer pk_live_...
🔌

REST API — for custom integrations

Standard JSON API with cursor-based pagination, idempotency keys, and webhook subscriptions. Works with any HTTP client.

Base URL: https://api.weekeeper.com
Auth: Bearer pk_live_... or JWT
Format: JSON, cursor-based pagination

83 MCP Tools

The core tools are listed below. Your agent discovers the full catalog — customers, time tracking, services and recurring invoices included — when it connects.

ToolDescriptionScope
get_cash_positionCurrent cash balance across all accountsread
list_transactionsTransactions with date/category/status filtersread
categorize_transactionSet or change a transaction's categorycategorize
batch_categorizeCategorize up to 500 transactions at oncecategorize
get_profit_and_lossP&L report for any date rangereport
get_balance_sheetBalance sheet as of any datereport
get_tax_estimateEstimated quarterly tax (GST/HST)report
create_invoiceCreate a new invoice with line itemsinvoice
list_invoicesList invoices with status filterread
send_invoiceSend invoice to client via emailinvoice
scan_receiptOCR a receipt image and match to transactionwrite
ask_questionNatural language query about financesread
list_uncategorizedTransactions needing human reviewread
propose_actionRequest human approval for an actionwrite
list_connectionsConnected bank accounts with sync status and last sync timeread
check_sync_statusSync status and last sync time for one bank connectionread
trigger_syncStart an on-demand transaction sync for a bank connectionwrite

See it in action

An AI agent asks WeeKeeper for a financial summary — and gets structured data back.

agent-interaction.txt
# Agent calls get_profit_and_loss tool
Agent: What were my expenses last quarter?

# WeeKeeper MCP Server responds
Tool call: get_profit_and_loss
Parameters: {
  "start_date": "2026-01-01",
  "end_date": "2026-03-31"
}

Response: {
  "revenue": 24500.00,
  "expenses": 18200.00,
  "net_income": 6300.00,
  "currency": "CAD",
  "top_expenses": [
    {"category": "Office Supplies", "amount": 3200.00},
    {"category": "Software", "amount": 2800.00},
    {"category": "Meals & Entertainment", "amount": 1950.00}
  ]
}

Agent: Your total expenses last quarter were
  $18,200 CAD. Top categories: Office Supplies
  ($3,200), Software ($2,800), and Meals ($1,950).
  Net income was $6,300.

REST API

Standard JSON API for custom integrations. Same data, same auth, different transport.

# Get cash position
curl -H "Authorization: Bearer pk_live_abc123" \
  https://api.weekeeper.com/api/cash-position

# List uncategorized transactions
curl -H "Authorization: Bearer pk_live_abc123" \
  "https://api.weekeeper.com/api/transactions?status=uncategorized&limit=50"

# Create an invoice
curl -X POST \
  -H "Authorization: Bearer pk_live_abc123" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: inv-2026-001" \
  -d '{
    "client_email": "client@example.com",
    "items": [{"description": "Consulting", "amount": 2500.00}],
    "due_date": "2026-04-15",
    "currency": "CAD"
  }' \
  https://api.weekeeper.com/api/invoices

API Key Scopes

Fine-grained permissions. Give your agent only the access it needs.

ScopeAllowsExample Tools
readView transactions, balances, invoicesget_cash_position, list_transactions
writeCreate and modify recordsscan_receipt, propose_action
categorizeCategorize transactionscategorize_transaction, batch_categorize
invoiceCreate and send invoicescreate_invoice, send_invoice
reportGenerate financial reportsget_profit_and_loss, get_tax_estimate
adminFull access including settingsAll tools

Human-in-the-loop safety

Your agent can propose actions. Humans approve. Every action is audited.

Proposals API

Agents call propose_action for sensitive operations. The user gets a push notification and approves or rejects in the app.

Configurable policies

Users set approval policies per action type. Auto-approve categorizations but require approval for invoices over $1,000. You define the defaults; users customize.

Full audit trail

Every action records who did it — user, agent, or system. Agent identity (API key name) is logged. Users can review all agent activity in the app.

Machine-readable agent discovery

Our agents.md file gives AI agents everything they need to discover and connect to WeeKeeper.

View agents.md →