Integration · Payroll & HR
Connect Claude & ChatGPT to Buddy Punch
Ask your AI who is missing a punch, how many hours someone worked this pay period, or to approve a time-off request in Buddy Punch. It can read employees, time cards, punches and schedules, clock people in and out, fix punch times, and create and publish shifts. Timesheet questions get answered without opening each card.
Free plan, no credit card. Takes about a minute.
Try asking
“How many hours did Emma work in the current pay period?”
The AI finds the pay period and Emma's time card, and reads the totals and approval status.
“Jonas forgot to clock out yesterday. Set his punch-out to 17:00.”
It finds his time card and punch, then changes the punch-out time.
“Approve Sara's time-off request for next Friday.”
It lists her time-off requests for that date and approves the matching one.
What your AI can do
Time cards and punches
List time cards per pay period, read punches and entries, clock employees in and out, add, fix or delete punches, and approve time cards.
Time off
List requests and balances, request time off for an employee, and approve or reject requests.
Employees and schedules
Create and update employees, list locations and positions, and create, update, delete and publish shifts.
“Schedule Anna and Mikkel for the morning shift at the warehouse, Monday to Friday next week.”
It looks up the location and employees and creates the shifts with start and end times.
“Publish next week's schedule and notify everyone.”
It publishes the schedule for that date range and can notify employees by email or push.
“How much PTO does Lars have left?”
It reads Lars's time-off accrual balances.
99 tools for Buddy Punch
These tools are switched on when you connect. You can switch any of them off, or require your approval before it runs.
approve_time_cardVisible to othersApprove (or set the approval `status` of) a time card by `time_card_id`, with an optional note.approve_time_offVisible to othersApprove a time-off request by `time_off_id`.attach_department_code_to_addressVisible to othersAttach a department code (location id). Has effects visible outside this system. API summary: Assign Location Department Codes.attach_employeeVisible to othersAttach a employee (geofence id). Has effects visible outside this system. API summary: Assign Geofence Employee Settings.attach_employee_to_addressVisible to othersAttach a employee (location id). Has effects visible outside this system. API summary: Assign Location Employees.attach_employee_to_department_codeVisible to othersAttach a employee (department code id). Has effects visible outside this system. API summary: Assign Department Code Employees.attach_employee_to_geofenceVisible to othersAttach a employee (geofence id). Has effects visible outside this system. API summary: Assign Geofence Employees.clock_inChanges dataClock an employee in by `employee_id`, optionally with location, position, department, note and time.clock_outChanges dataClock an employee out by `employee_id`, optionally with a note and time.create_addressChanges dataCreate a new address. Required: name. API summary: Create a Location.create_department_codeChanges dataCreate a new department code. Required: name. API summary: Create a Department Code.create_employeeChanges dataAdd an employee with `first_name`, `last_name`, `email` and `username`, plus optional phone and employee number.create_employee_pageChanges dataCreate a new page for a employee. Required: time off type id, hours or entry date. API summary: Create a Time Off Accrual Entry.create_event_redeliverChanges dataCreate a new redeliver for a event. API summary: Redeliver a Webhook Event.create_geofenceChanges dataCreate a new geofence. Required: name. API summary: Create a Geofence.create_groupChanges dataCreate a new group. API summary: Create a Group.create_pageChanges dataCreate a new page. Required: time card id or entries. API summary: Create Time Entries.create_positionChanges dataCreate a new position. Required: name. API summary: Create a Position.create_punchChanges dataAdd a manual punch to a time card: `employee_id`, `time_card_id`, `punch_in_datetime` and optional punch-out time, location, position and note.create_punch_breakChanges dataCreate a new break for a punch. Required: start datetime or break rule id. API summary: Add a Manual Break.create_punch_rest_attestationChanges dataCreate a new rest attestation for a punch. Required: rest breaks taken. API summary: Record Rest-Break Verification.create_shiftChanges dataCreate a scheduled shift for `staff_ids` with start and end times, location, position, notes and optional repeat rules.create_time_offChanges dataRequest time off for an employee with hours per date (`pto_hours_tuples`).create_webhook_endpointDeletesCreate a new webhook endpoint. Required: url or enabled events. Destructive action; may require approval. API summary: Create a Webhook Endpoint.create_webhook_endpoint_pingDeletesCreate a new ping for a webhook endpoint. Destructive action; may require approval. API summary: Send a test ping to a Webhook Endpoint.delete_addressDeletesPermanently delete a address by address id. Destructive action; may require approval. API summary: Delete a Location.delete_address_department_codesMoves moneyPermanently delete a department code by location id. Financial or irreversible action; may require approval. API summary: Remove Location Department Codes.delete_address_employeesMoves moneyPermanently delete a employee by location id. Financial or irreversible action; may require approval. API summary: Remove Location Employees.delete_automaticsMoves moneyPermanently delete a automatic by punch id. Financial or irreversible action; may require approval. API summary: Delete Automatic Break.delete_department_codeDeletesPermanently delete a department code by department code id. Destructive action; may require approval.delete_department_code_employeesMoves moneyPermanently delete a employee by department code id. Financial or irreversible action; may require approval. API summary: Remove Department Code Employees.delete_geofenceDeletesPermanently delete a geofence by geofence id. Destructive action; may require approval.delete_geofence_employeesMoves moneyPermanently delete a employee by geofence id. Financial or irreversible action; may require approval. API summary: Remove Geofence Employees.delete_groupDeletesPermanently delete a group by group id. Destructive action; may require approval.delete_pageDeletesPermanently delete a page by page id. Destructive action; may require approval. API summary: Delete a Time Entry.delete_positionDeletesPermanently delete a position by position id. Destructive action; may require approval.delete_punchDeletesPermanently delete a punch by `punch_id`.delete_punch_breakDeletesPermanently delete a break by break id. Destructive action; may require approval. API summary: Delete a Manual Break.delete_shiftDeletesDelete a scheduled shift by `shift_id`.delete_time_offDeletesPermanently delete a time off by time off id. Destructive action; may require approval. API summary: Delete Time Off.delete_webhook_endpointDeletesPermanently delete a webhook endpoint by webhook endpoint id. Destructive action; may require approval.end_breakChanges dataEnd the current break for an employee.get_addressGet one address by address id. API summary: Get a Location.get_department_codeGet one department code by department code id. API summary: Get a Department Code.get_employeeGet one employee by `employee_id`.get_eventGet one event by event id. API summary: Get a Webhook Event.get_geofenceGet one geofence by geofence id. API summary: Get a Geofence.get_groupGet one group by group id. API summary: Get a Group.get_pageGet one page by page id. API summary: Get a Time Entry.get_positionGet one position by position id. API summary: Get a Position.get_punchGet one punch by punch id. API summary: Get a Punch.get_shiftGet one shift by shift id. API summary: Get a Shift.get_time_cardGet one time card by `time_card_id`, including totals and approval status.get_time_offGet one time off by time off id. API summary: Get a Time Off Entry.get_time_off_balancesGet an employee's time-off accrual balances by `employee_id`.get_webhook_endpointGet one webhook endpoint by webhook endpoint id. API summary: Get a Webhook Endpoint.list_address_employeesList employees for a address. API summary: Get Location Employees.list_department_code_employeesList employees for a department code. API summary: Get Department Code Employees.list_department_codesList department codes. Optional filters: starting after, ending before, sort or order. Results are paginated.list_employee_clock_out_promptsList clock out prompts for a employee. API summary: Get Clock-Out Prompts.list_employee_compliance_policiesList compliance policies for a employee. API summary: Get Compliance Policy.list_employee_pagesList pages for a employee. Optional filters: starting after, ending before, sort or order. Results are paginated. API summary: List Time Off Accrual Entries.list_employee_payratesList payrates for a employee. API summary: Get Employee Pay Rates.list_employeesList employees, with sorting and cursor paging. Use to find an employee ID.list_eventsList events. Optional filters: starting after, ending before, sort, order or type. Results are paginated.list_geofence_employeesList employees for a geofence. API summary: Get Geofence Employees.list_geofencesList geofences. Optional filters: starting after, ending before, sort or order. Results are paginated.list_groupsList groups. Optional filters: starting after, ending before, sort or order. Results are paginated.list_locationsList locations employees can clock in at.list_pagesList pages. Optional filters: time card id, starting after, ending before, sort or order. Results are paginated. API summary: List Time Entries.list_pay_period_timesList times for a pay period. API summary: Get Pay Period Times.list_pay_periodsMoves moneyList pay periods. A pay period ID is needed to list time cards.list_pay_rates_all_employeesList employees. Optional filters: starting after, ending before, sort or order. Results are paginated. API summary: List Pay Rates (all employees).list_positionsList positions (roles) used on punches and shifts.list_punch_breaksList breaks for a punch.list_punchesList punches on a time card by `time_card_id`.list_scheduleList scheduled shifts, filtered by end date, employees, locations or positions.list_time_card_detailsList details for a time card. API summary: Get Time Card Details.list_time_card_entriesList the time rows (punches, breaks, time off) on a time card by `time_card_id`.list_time_cardsList time cards in a pay period by `pay_period_id`.list_time_offList time-off requests, filtered by employee and date range.list_time_off_typesList time off types. Optional filters: starting after, ending before, sort or order. Results are paginated.list_webhook_endpointsList webhook endpoints. Optional filters: starting after, ending before, sort or order. Results are paginated.publish_scheduleVisible to othersPublish the schedule for a date range (`start_date`, `end_date`), optionally for certain employees; can notify employees by email or push.reject_time_offVisible to othersReject a time-off request by `time_off_id` with an optional note; `send_email` controls whether the employee is emailed.start_breakChanges dataStart a break for an employee with a `break_rule_id`.update_addressChanges dataUpdate an existing address identified by address id. API summary: Update a Location.update_department_codeChanges dataUpdate an existing department code identified by department code id. API summary: Update a Department Code.update_employeeChanges dataUpdate an employee's name, email, phone, manager flag or active status by `employee_id`.update_geofenceChanges dataUpdate an existing geofence identified by geofence id. API summary: Update a Geofence.update_groupChanges dataUpdate an existing group identified by group id. API summary: Update a Group.update_pageChanges dataUpdate an existing page identified by page id. API summary: Update a Time Entry.update_pay_periodMoves moneyUpdate an existing pay period identified by pay period id. Financial or irreversible action; may require approval. API summary: Update a Pay Period.update_positionChanges dataUpdate an existing position identified by position id. API summary: Update a Position.update_punch_breakChanges dataUpdate an existing break identified by break id. API summary: Update a Manual Break.update_punch_inVisible to othersChange the punch-in time (and optionally location, position or note) of a punch by `punch_id`.update_punch_outVisible to othersChange the punch-out time of a punch by `punch_id`.update_shiftChanges dataUpdate a scheduled shift by `shift_id` (times, staff, location, position, notes, repeats).update_webhook_endpointDeletesUpdate an existing webhook endpoint identified by webhook endpoint id. Destructive action; may require approval. API summary: Update a Webhook Endpoint.
Set up in three steps
- 1
Pick the app
Create a free HeyMyApps account and choose Buddy Punch from the app list.
- 2
Paste your key
Paste a Buddy Punch API key (starts with bp_live_). It needs the Pro or Advanced plan and an Administrator login. In Buddy Punch go to Settings → Integrations, find the Developer API card and click Manage API Keys, then Create New API Key. Pick Read or Write permission per resource and copy the key, which is shown only once. If the card is missing, ask Buddy Punch support to enable the Developer API.
- 3
Add the link to your AI
You get a personal MCP link. Add it to Claude, ChatGPT or Cursor:
- Click your name, then Settings › Connectors › Add custom connector.
- Paste your link as the Remote MCP server URL.
- Switch it on from the + menu in a chat.
Questions
What can the AI do in Buddy Punch?
The AI can read employees, pay periods, time cards, punches, time-off requests and balances, schedules, locations and positions. It can create and update employees, clock people in and out, start and end breaks, add, change or delete punches, approve time cards, handle time off, and create, change, delete and publish shifts.
Does the AI see my Buddy Punch API key?
No. Your Buddy Punch API key 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 time cards and time off, changing punch times, publishing the schedule and deleting punches or shifts 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 Buddy Punch account on a plan with the Developer API.
Can I limit the Buddy Punch key itself?
Yes. When you create the key in Buddy Punch, you pick Read or Write permission for each resource. Buddy Punch then blocks anything outside those permissions, on top of the tools you switch on in HeyMyApps.
Related integrations
Let your AI work in Buddy Punch today.
Start free. Your key stays encrypted, and you decide what the AI may do.
Connect Buddy Punch freeHeyMyApps is not affiliated with Buddy Punch. Product names are trademarks of their owners.






