Skip to content

Integration · Accounting

harpoonapp.com

Connect Claude & ChatGPT to Harpoon

Ask your AI to log three hours on a project, draft an invoice for a client or show which invoices are still open in Harpoon. It can create and update clients, contacts and projects, record expenses and create estimates. Payments received on invoices and time entries can be looked up without clicking through the app.

Connect Harpoon free

Free plan, no credit card. Takes about a minute.

Try asking

  • “Log 3 hours on the Acme website project for today: homepage design.”

    The AI finds the project and a task, then creates a time entry with date, hours and description.

  • “Create an invoice for Holm Logistics for 12 hours of consulting at 950 an hour.”

    It gets the next invoice number and creates the invoice with the line item in Harpoon. It does not email it.

  • “Which invoices are still unpaid this year?”

    It searches invoices by year and status and lists them with client, total and due date.

What your AI can do

Time and projects

Search, create and update projects with budgets, dates and task rates, and log, edit or delete time entries against projects and tasks.

Invoices and estimates

Search and read invoices and estimates, create them with the next free document number, update invoices and list payments received.

Clients and expenses

Create and update clients and contacts, record and update expenses by category, and add notes to clients or projects.

  • “Make an estimate for Nordic Foods: new webshop, 40 hours.”

    It gets the next estimate number and creates the estimate with client, subject and line items.

  • “Record a 450 expense from Adobe for software on the Acme project.”

    It finds the category and project and records the expense with date, amount and vendor.

  • “Delete my time entry from yesterday on the internal project.”

    It finds the entry and deletes it. Deleting a time entry is permanent.

89 tools for Harpoon

These tools are switched on when you connect. You can switch any of them off, or require your approval before it runs.

  • add_noteChanges dataAdd a note with body to a record, identified by notable_type and notable_id (e.g. a client or project).
  • create_a_recurring_invoiceChanges dataCreate a new invoice. Required: client id, frequency, start date, delivery, payment due or line items. Search invoices first to avoid duplicates. API summary: Create a recurring invoice.
  • create_categoryChanges dataCreate a new category. Required: name. API summary: Create an expense category.
  • create_clientChanges dataCreate a client with client_name, plus optional address, contacts, language and tax details.
  • create_contactChanges dataAdd a contact person to a client with client_id, first_name and email (optional last_name, phone).
  • create_creditChanges dataCreate a new credit. Required: client id, amount or date. API summary: Create a credit entry.
  • create_estimateChanges dataCreate an estimate with issue_date and document_id, plus client_id, subject, line_items, due_date and project_id.
  • create_expected_revenueChanges dataCreate a new expected revenue. Required: amount or date. API summary: Create expected revenue.
  • create_expenseChanges dataRecord an expense with date, amount and vendor, plus optional client, project, category and description.
  • create_invoiceChanges dataCreate an invoice with client_id, issue_date and document_id, plus line_items, due_date, discount, shipping and project_id. It is saved in Harpoon; this does not email it.
  • create_invoice_2Changes dataCreate a new invoice. Required: vendor, amount or frequency. Search invoices first to avoid duplicates. API summary: Create a recurring expense.
  • create_leadChanges dataCreate a new lead. Required: name. API summary: Create a lead source.
  • create_mileage_purposeChanges dataCreate a new mileage purpose. Required: name. API summary: Create a mileage purpose.
  • create_other_incomeChanges dataCreate a new other income. Required: amount, source or date. API summary: Create other income.
  • create_projectChanges dataCreate a project with project_name, client_id and type, plus optional budget, start/end dates, status and custom task rates.
  • create_teamChanges dataCreate a new team.
  • create_time_entryChanges dataLog time with date and hours (optional seconds, project_id, task_id, description, timer_status).
  • delete_a_recurring_invoiceDeletesPermanently delete a invoice by invoice id. Destructive action; may require approval. API summary: Delete a recurring invoice.
  • delete_an_invoiceDeletesPermanently delete a invoice by invoice id. Destructive action; may require approval. API summary: Delete an invoice.
  • delete_customerDeletesPermanently delete a customer by customer id. Destructive action; may require approval. API summary: Delete a client.
  • delete_expected_revenueDeletesPermanently delete a expected revenue by expected revenue id. Destructive action; may require approval. API summary: Delete expected revenue.
  • delete_invoiceDeletesPermanently delete a invoice by invoice id. Destructive action; may require approval. API summary: Delete a recurring expense.
  • delete_leadDeletesPermanently delete a lead by lead id. Destructive action; may require approval. API summary: Delete a lead source.
  • delete_messageDeletesPermanently delete a message by message id. Destructive action; may require approval. API summary: Delete a note.
  • delete_mileage_purposeDeletesPermanently delete a mileage purpose by mileage purpose id. Destructive action; may require approval.
  • delete_other_incomeDeletesPermanently delete a other income by other income id. Destructive action; may require approval. API summary: Delete other income.
  • delete_quoteDeletesPermanently delete a quote by quote id. Destructive action; may require approval. API summary: Delete an estimate.
  • delete_time_entryDeletesPermanently delete a time entry by page_id.
  • get_a_recurring_invoiceGet one invoice by invoice id. API summary: Get a recurring invoice.
  • get_categoryGet one category by category id. API summary: Get an expense category.
  • get_clientGet one client by customer_id, with address, contacts, language and tax details.
  • get_contactGet one contact by contact id. API summary: Get a contact.
  • get_creditGet one credit by client id. API summary: Get credit entries for a client.
  • get_estimateGet one estimate by quote_id, with line items and totals.
  • get_expected_revenueGet one expected revenue by expected revenue id. API summary: Get expected revenue.
  • get_expenseGet one expense by expense id. API summary: Get an expense.
  • get_invoiceGet one invoice by invoice_id, with line items, totals, due date and status.
  • get_invoice_2Get one invoice by invoice id. API summary: Get a recurring expense.
  • get_leadGet one lead by lead id. API summary: Get a lead source.
  • get_messageGet one message by message id. API summary: Get a note.
  • get_mileage_purposeGet one mileage purpose by mileage purpose id. API summary: Get a mileage purpose.
  • get_next_estimate_numberGet the next free estimate document number to use as document_id when creating an estimate.
  • get_next_invoice_numberGet the next free invoice document number to use as document_id when creating an invoice.
  • get_other_incomeGet one other income by other income id. API summary: Get other income.
  • get_pageGet one page by page id. API summary: Get a time entry.
  • get_paymentGet one payment by payment id. API summary: Get a payment.
  • get_projectGet one project by project_id, with client, budget, dates and status.
  • get_project_status_countsGet the current status of a project. API summary: Get project status counts.
  • get_rateGet one rate by client id. API summary: Get task rates for a client.
  • get_taskGet one task by task id. API summary: Get a task.
  • get_teamGet one team by team id. API summary: Get a team.
  • get_yearly_goalGet one yearly goal by year. API summary: Get yearly goal.
  • list_budgetsList budgets. Optional filters: month or year. API summary: Get expense budget data.
  • list_clientsList all clients, with their IDs.
  • list_contactsList client contacts, optionally filtered by team_id.
  • list_creditsList credits. API summary: List clients with credits.
  • list_expected_revenuesList expected revenues. Optional filters: team id, project id or select.
  • list_expense_categoriesList expense categories with their IDs.
  • list_invoicesList invoices. Optional filters: sort or direction. API summary: List recurring expenses.
  • list_leadsList leads. API summary: List lead sources.
  • list_messagesList messages. API summary: List notes.
  • list_mileage_purposesList mileage purposes.
  • list_other_incomesList other incomes. Optional filters: team id, client id, start date, end date or sources.
  • list_paymentsList payments received on invoices.
  • list_recurring_invoicesList invoices. Optional filters: clients, projects or frequencies. API summary: List recurring invoices.
  • list_runningsList runnings. API summary: Running timer count for the current user.
  • list_sourcesList sources. API summary: List other income sources.
  • list_suppliersList suppliers. API summary: List previously used vendor names.
  • list_tasksList the tasks that time can be logged against, with their IDs.
  • list_teamsList teams.
  • list_time_entriesList time entries, filtered by clients, projects, tasks, status or date range. Paginated.
  • search_estimatesSearch estimates by search text, client_id, year, projects or status.
  • search_expensesSearch expenses by date range, clients, projects, categories or status.
  • search_invoicesSearch invoices by search text, client_id, year, projects or statuses. Paginated. Use to find an invoice's ID.
  • search_projectsSearch projects by search text, client_id, status or type, with sorting and paging. Use to find a project's ID.
  • submit_pageVisible to othersClone a page (time entry id). Has effects visible outside this system. API summary: Clone a time entry.
  • update_categoriesVisible to othersUpdate an existing category identified by expense category id. Only the fields you pass are changed. Has effects visible outside this system. API summary: Update expense category budget.
  • update_categoryChanges dataUpdate an existing category identified by category id. API summary: Update an expense category.
  • update_clientChanges dataUpdate a client's name, address, contacts, language or tax details by customer_id.
  • update_expected_revenueChanges dataUpdate an existing expected revenue identified by expected revenue id. API summary: Update expected revenue.
  • update_expenseChanges dataUpdate an expense by expense_id: date, amount, vendor, category, project or description.
  • update_invoiceChanges dataUpdate an invoice by invoice_id: line items, dates, status, discount or shipping.
  • update_invoice_2Changes dataUpdate an existing invoice identified by invoice id. API summary: Update a recurring expense.
  • update_messageChanges dataUpdate an existing message identified by message id. API summary: Update a note.
  • update_other_incomeChanges dataUpdate an existing other income identified by other income id. API summary: Update other income.
  • update_projectChanges dataUpdate a project by project_id: name, budget, dates, status or task rates.
  • update_quoteChanges dataUpdate an existing quote identified by quote id. API summary: Update an estimate.
  • update_time_entryChanges dataUpdate a time entry by page_id: date, hours, project, task, description, timer or billed status.
  • update_yearly_goalChanges dataUpdate an existing yearly goal identified by year. API summary: Set yearly goal.

Set up in three steps

  1. 1

    Pick the app

    Create a free HeyMyApps account and choose Harpoon from the app list.

  2. 2

    Paste your key

    Paste a Harpoon personal access token. In Harpoon open your Account's API page, create a personal access token and paste it here without the word Bearer.

  3. 3

    Add the link to your AI

    You get a personal MCP link. Add it to Claude, ChatGPT or Cursor:

    1. Click your name, then Settings › Connectors › Add custom connector.
    2. Paste your link as the Remote MCP server URL.
    3. Switch it on from the + menu in a chat.

Questions

What can the AI do in Harpoon?

The AI can read and search clients, contacts, projects, tasks, time entries, invoices, estimates, expenses, expense categories and payments. It can create and update clients, projects, time entries, invoices and expenses, create contacts and estimates, add notes and delete time entries.

Does the AI see my Harpoon access token?

No. Your Harpoon credentials are encrypted at rest and never shown to the AI. After you save them, they are not shown again, not even to you. The AI only sees the results of the tools it calls.

Can I control what the AI is allowed to do?

Yes. You choose which tools are switched on, so you can start read-only. Deleting a time entry is permanent and can require your approval before it runs, as can creating invoices or changing projects. Every tool call is logged.

Does it work with ChatGPT?

Yes. In ChatGPT go to Settings › Apps & Connectors › Advanced and turn on Developer mode, then add your HeyMyApps link. Developer mode needs a paid ChatGPT plan: Plus, Pro, Business or Enterprise. The same link also works in Claude (Settings › Connectors › Add custom connector), Cursor and other MCP clients.

What does it cost?

HeyMyApps has a free plan with no credit card required. Paid plans bill per completed task. You also need your own Harpoon account.

Can the AI send invoices to my clients?

No. The AI can create and update invoices and estimates, but they are saved in Harpoon only. Creating an invoice does not email it, so you review and send it from Harpoon yourself.

Let your AI work in Harpoon today.

Start free. Your key stays encrypted, and you decide what the AI may do.

Connect Harpoon free

HeyMyApps is not affiliated with Harpoon. Product names are trademarks of their owners.