Skip to content

Integration · Payroll & HR

worksuite.com

Connect Claude & ChatGPT to Worksuite

Ask your AI which freelancer contracts end soon, which timesheets wait for review, or to approve an expense in Worksuite. It can create contracts from templates, set up projects and tasks for freelancers, and submit, approve or reject expenses. It can also read payments, job openings and users.

Connect Worksuite free

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

Try asking

  • “Which contracts are ending soon?”

    The AI lists contracts filtered on ending soon, with dates, budget and freelancer.

  • “Show timesheets waiting for review this week.”

    It lists timesheets with status under review in the date range.

  • “Approve Maria's timesheet for last week.”

    It finds the timesheet and sets its status to approved.

What your AI can do

Contracts

List, read, create and update contracts, using contract templates and filters like freelancer, status or ending soon.

Projects, tasks and timesheets

Create and update projects and tasks for freelancers, and list, approve, reject or change timesheets.

Expenses and payments

Submit, search, approve and reject expenses by category, and read payments with amount, status and line items.

  • “Create a contract for Jonas from our standard consulting template.”

    It looks up the contract template and creates the contract with Jonas as the partner.

  • “Set up a Website Redesign project and a design task for Jonas at 600 per hour.”

    It creates the project, then a task assigned to Jonas with the rate you gave.

  • “Which expenses are pending, and reject the one without a receipt.”

    It searches expenses by status and rejects the one you choose with a reason.

69 tools for Worksuite

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

  • approve_expenseVisible to othersApprove an expense by `expense_id`.
  • archive_contractVisible to othersArchive a contract (contract id). Has effects visible outside this system.
  • cancel_contractDeletesCancel a contract (contract id). Destructive action; may require approval.
  • create_contractChanges dataCreate a contract from a template. Requires `name` and `template_id` (see list_contract_templates); optionally `partner_id`, `start_date`, `end_date`, `budget`, `currency` and `description`.
  • create_expenseChanges dataSubmit an expense for a freelancer. Requires `name`, `amount`, `partner_id`, `category_id` (see list_expense_categories) and `expense_date`; optionally `currency`, `task_id`, `approver_id` and `note`.
  • create_expense_undo_rejectChanges dataCreate a new undo reject for a expense.
  • create_expense_unmark_paidChanges dataCreate a new unmark paid for a expense.
  • create_paymentChanges dataCreate a new payment. Required: description or line items.
  • create_payment_productChanges dataCreate a new product for a payment. Required: item, category or price.
  • create_projectChanges dataCreate a project with a `name`, and optionally `budget`, `currency`, `start_date`, `end_date`, `status`, `teams` and `description`.
  • create_project_2Changes dataCreate a new project. Required: title.
  • create_project_applicantChanges dataCreate a new applicant for a project. Required: partner id.
  • create_taskChanges dataCreate a task in a project and assign it to a freelancer. Requires `project_id` and `partner_id`; optionally `name`, `description`, `budget`, `rate_type`, `rate_per_unit`, `start_date`, `end_date` and `managers`.
  • create_userChanges dataCreate a new user. Required: email. Search users first to avoid duplicates.
  • delete_contractDeletesPermanently delete a contract by contract id. Destructive action; may require approval.
  • delete_expenseDeletesPermanently delete a expense by expense id. Destructive action; may require approval.
  • delete_paymentDeletesPermanently delete a payment by payment id. Destructive action; may require approval.
  • delete_payment_productDeletesPermanently delete a product by product id. Destructive action; may require approval.
  • delete_projectDeletesPermanently delete a project by project id. Destructive action; may require approval.
  • delete_userDeletesPermanently delete a user by user id. Destructive action; may require approval.
  • export_payments_pdfExport payments.
  • get_contractGet one contract by `contract_id`, with dates, budget, partner and status.
  • get_contract_invoiceGet one invoice for a contract by invoice id.
  • get_contract_taskGet one task for a contract by task id.
  • get_contract_templateGet one contract template by contract template id.
  • get_direct_integrationGet one direct integration by linked account id.
  • get_expenseGet one expense by `expense_id`.
  • get_job_openingGet one job opening by `project_id` (the job opening ID).
  • get_paymentGet one payment by `payment_id`, with amount, status and line items.
  • get_projectGet one project by `project_id`, with budget, dates, status and teams.
  • get_project_taskGet one task for a project by task id.
  • get_project_timesheetGet one timesheet for a project by timesheet id.
  • get_taskGet one task by `task_id`, with its budget, rate, dates and assigned freelancer.
  • get_task_timesheetGet one timesheet for a task by timesheet id.
  • get_userGet one user by `user_id`.
  • list_approversList approvers.
  • list_contract_invoicesList invoices for a contract. Results are paginated.
  • list_contract_tasksList tasks for a contract. Results are paginated.
  • list_contract_templatesList contract templates, filtered by `status` or `contract_type`. Use to get a `template_id` for create_contract.
  • list_contractsList contracts, filtered by `status`, `partner_id` (freelancer), `template`, `contract_type`, `archived`, `ending_soon` or start/end date ranges.
  • list_expense_categoriesList expense categories. Use to get a `category_id` for create_expense.
  • list_expense_documentsList documents for a expense.
  • list_partner_bank_detailsList bank details for a partner.
  • list_partner_typesList partner types. Optional filters: default, enabled, is company, is supplier or is worker. Results are paginated.
  • list_payment_productsList products for a payment.
  • list_project_applicantsList applicants for a project. Optional filters: ordering or status. Results are paginated.
  • list_project_timesheetsList timesheets for a project. Optional filters: date from or date to. Results are paginated.
  • list_task_timesheetsList timesheets for a task. Optional filters: date from or date to. Results are paginated.
  • list_timesheetsList timesheets, filtered by `status`, `partner_id` or `date_from`/`date_to`.
  • reject_expenseVisible to othersReject an expense by `expense_id`, with an optional `reason`.
  • restore_contractChanges dataRestore a contract (contract id).
  • search_applicationsSearch applications by ordering or search. Use this to find existing applications before creating a new application. Results are paginated.
  • search_changesSearch changes by ordering or search. Use this to find existing changes before creating a new change. Results are paginated.
  • search_direct_integrationsSearch direct integrations by ordering or search. Use this to find existing direct integrations before creating a new direct integration.
  • search_expensesSearch expenses by text `query` or filter by `status`, `partner_id`, `task_id`, `category_id`, `approver_id` or expense date range.
  • search_usersList users in your Worksuite account, filtered by `email`, `role` or `team`.
  • submit_contractVisible to othersDuplicate a contract (contract id). Has effects visible outside this system.
  • submit_expenseVisible to othersMark as paid a expense (expense id). Has effects visible outside this system.
  • update_contractChanges dataUpdate a contract by `contract_id`: name, dates, budget, currency, partner or description. Only the fields you pass change.
  • update_contract_initiatesVisible to othersUpdate an existing initiate identified by contract id. Only the fields you pass are changed. Has effects visible outside this system.
  • update_expenseChanges dataUpdate an existing expense identified by expense id. Only the fields you pass are changed.
  • update_paymentChanges dataUpdate an existing payment identified by payment id. Only the fields you pass are changed.
  • update_payment_productChanges dataUpdate an existing product identified by product id. Only the fields you pass are changed.
  • update_projectChanges dataUpdate a project by `project_id`: budget, dates, status or description. `name` is required, so pass the current name if it is not changing.
  • update_project_2Changes dataUpdate an existing project identified by project id. Only the fields you pass are changed.
  • update_project_applicantChanges dataUpdate an existing applicant identified by applicant id. Only the fields you pass are changed.
  • update_taskChanges dataUpdate a task by `project_id` and `task_id` (also requires `partner_id`): name, status, budget, rate, dates or units worked.
  • update_timesheetChanges dataApprove, reject or change a timesheet by `timesheet_id`. Requires `date_start` and `date_end`; set `status` (under_review, approved, rejected, unsubmitted), `minutes_total` or a `rejection_reason`.
  • update_userChanges dataUpdate an existing user identified by user id. Only the fields you pass are changed.

Set up in three steps

  1. 1

    Pick the app

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

  2. 2

    Paste your key

    Fill in your Worksuite subdomain (the "acme" in acme.worksuite.com), your Client ID and your Client secret. API access requires a Worksuite Enterprise account: ask your Worksuite Account Manager or Customer Success to enable API usage, and they send you the client ID and client secret. The extra headers field takes one "Name: value" per line.

  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 Worksuite?

The AI can read and search contracts, contract templates, projects, tasks, timesheets, expenses, expense categories, payments, job openings and users. It can create and update contracts, projects and tasks, submit expenses, approve or reject expenses and update timesheets.

Does the AI see my Worksuite client secret?

No. Your Worksuite client secret is encrypted at rest and never shown to the AI. After you save it, it is 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. Approving or rejecting expenses and timesheets, and changing contracts, can require your approval before they run. 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 Worksuite account.

Why do I need to contact Worksuite first?

Worksuite API access requires an Enterprise account and has to be enabled by Worksuite. Your Account Manager or Customer Success sends you a client ID and client secret, which you then paste into HeyMyApps together with your subdomain.

Let your AI work in Worksuite today.

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

Connect Worksuite free

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