---
title: "BambooHR MCP server for AI agents - actionlake"
description: "Give Claude 256 BambooHR actions through one MCP server: goals, time off requests, holidays. Your agent never holds the credential. 100,000 calls a month free."
canonical: https://actionlake.com/connectors/bamboohr
updated: 2026-10-22
---

Connectors · Accounting & finance

# BambooHR MCP server for AI agents.

actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to BambooHR and the rest of your systems. It gives your agent 256 BambooHR actions (129 reads, 97 writes and 30 that wait for a confirmation) and holds the BambooHR credential itself, so the agent never does. It paces BambooHR's limits and records every call.

[Connect BambooHR free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.

`claude mcp add --transport http actionlake https://connect.actionlake.com/mcp`

the first call

```
do {
  action: "bamboohr.employees.list",
  intent: "check which BambooHR account is connected"
}
# List Employees · read · 1 upstream call
```

- 256 actions in one signed file
- 129 read look, never change
- 97 write create and update
- 30 wait for a yes destructive, confirmed first

Set up

## Connect BambooHR in three steps.

1. 01
   ### Add actionlake to Claude.
   Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.
   `https://connect.actionlake.com/mcp`
2. 02
   ### Connect BambooHR.
   Username and secret. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead. actionlake stores what you paste write-only, sealed under your tenant's key.
   - `api_key` BambooHR API key: in BambooHR click your name (lower left) > API Keys > Add New Key
   - `host` Where your BambooHR lives: your host
   ```
   account { op: "connections.requirements", service: "bamboohr" }
   # free: exactly what to paste, and what is found for you
   ```
3. 03
   ### Make the first call. Check before a write.
   Ask in plain words; Claude picks the action. Before anything changes, `check` validates the call and prices it, for free.
   ```
   do    { action: "bamboohr.employees.list" }
   # list employees · read · 1 upstream call
   check { action: "bamboohr.employees.create", input: { … } }
   # free: inputs, permissions, cost and confirmations, nothing sent
   ```

BambooHR at a glance

**Sign-in**

Username and secret. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead.

**You provide**

`api_key`

**Setup fields**

`host`

**Limits we pace to**

10 calls a second, per connection

**API covered**

BambooHR API 1.0 (OpenAPI 3.1, public-openapi.yaml), at your BambooHR instance's API base URL, which you enter when connecting

**Built from**

BambooHR's documentation, read 22 October 2026[openapi.bamboohr.io](https://openapi.bamboohr.io/main/latest/docs/openapi/public-openapi.yaml) [documentation.bamboohr.com](https://documentation.bamboohr.com/reference)

**Service file**

Version 1.0.0, signed (Ed25519)

**Cached reads**

129 of 129 reads, for up to 5 minutes; a write clears what it affects

**Shared entities**

4, so ask can line BambooHR up with your other systems

**Data**

Processed and stored in Sydney, Australia. No US region yet

Capabilities

## What an AI agent can do in BambooHR.

256 actions in 116 areas. Every one carries its effect, so a key can allow the reads and hold the rest.

- **129** read look, never change
- **97** write create and update
- **30** destructive wait for a confirmation

1. ### Goals
   11
   4 read · 6 write · 1 destructive
   Create Goal · List Goals · Get Goals Aggregate (v1) · Get Goal Creation Permission
2. ### Time off requests
   7
   2 read · 4 write · 1 destructive
   Create Time Off Request · List Time Off Requests · Get Time Off Request · Update Time Off Request
3. ### Holidays
   6
   2 read · 3 write · 1 destructive
   Bulk Create Company Holidays · Create Company Holiday · List Company Holidays · Get Company Holiday
4. ### Scheduling shifts
   6
   2 read · 3 write · 1 destructive
   List Shifts · Create Shift · Get Shift · Update Shift
5. ### Hour records
   5
   1 read · 3 write · 1 destructive
   Create or Update Hour Records · Create Hour Record · Update Hour Record · Get Time Tracking Record
6. ### Scheduling schedules
   5
   2 read · 2 write · 1 destructive
   List Schedules · Create Schedule · Update Schedule · Get Schedule
7. ### Time off policies
   5
   2 read · 2 write · 1 destructive
   Create Time Off Policy · List Time Off Policies · Get Time Off Policy · Update Time Off Policy
8. ### Time tracking break policies
   5
   2 read · 2 write · 1 destructive
   Create Break Policy · List Break Policies · Get Break Policy · Update Break Policy

**108 more areas · 206 actions**

- Time tracking clock entries **5**
- Time tracking configurations **5**
- Time tracking hour entries **5**
- Time tracking shift differentials **5**
- Webhooks **5**
- Break policies **4**
- Employee dependents **4**
- Employee table rows **4**
- Employee time off policy assignments **4**
- Employees **4**
- Goal comments **4**
- Time off categories **4**
- Time tracking employees **4**
- Time tracking imports **4**
- Time tracking kiosks **4**
- Time tracking projects **4**
- Training categories **4**
- Training records **4**
- Training types **4**
- Applicant tracking applications **3**
- Break policy breaks **3**
- Company files **3**
- Employee files **3**
- Scheduling shift claims **3**
- Time tracking breaks **3**
- Time tracking import rows **3**
- Time tracking tasks **3**
- Time tracking time clocks **3**
- Time tracking timesheets **3**
- Clock entries **2**
- Custom reports **2**
- Datasets **2**
- Employee clock **2**
- Employee photos **2**
- Employee table rows V1 1 **2**
- Employee time off policies **2**
- Employee time off policies V1 1 **2**
- Goals V1 1 **2**
- Holidays catalog **2**
- Reports **2**
- Time off request comments **2**
- Time off requests legacy **2**
- Time tracking project tasks **2**
- Timesheet clock entries **2**
- Timesheet hour entries **2**
- Applicant tracking application comments **1**
- Applicant tracking hiring leads **1**
- Applicant tracking jobs **1**
- Applicant tracking locations **1**
- Applicant tracking statuses **1**
- Benefit coverages **1**
- Benefit deduction types **1**
- Billed standard contractors **1**
- Break policy employees **1**
- Break policy suggestions **1**
- Calendar events **1**
- Company benefits **1**
- Company file categories **1**
- Company information **1**
- Company profile integrations **1**
- Dataset data V2 **1**
- Dataset field options **1**
- Dataset field options V1 2 **1**
- Dataset fields **1**
- Dataset fields V1 2 **1**
- Datasets V1 2 **1**
- Employee break availabilities **1**
- Employee break policies **1**
- Employee directory **1**
- Employee file categories **1**
- Employee table changes **1**
- Employee time off balance adjustments **1**
- Employee time off balances **1**
- Employee time off history **1**
- Employee time off requests **1**
- Employees changed **1**
- Goal alignment options **1**
- Goal filters **1**
- Goal filters V1 1 **1**
- Goal filters V1 2 **1**
- Goal milestones **1**
- Goal share options **1**
- Goals V1 2 **1**
- Member benefit events **1**
- Member benefits **1**
- Meta countries **1**
- Meta currency types **1**
- Meta fields **1**
- Meta list options **1**
- Meta lists **1**
- Meta provinces **1**
- Meta tables **1**
- Meta timezones **1**
- Scheduling open shifts **1**
- Scheduling shift assessments **1**
- Scheduling timezones **1**
- Time off policies meta **1**
- Time off policy versions **1**
- Time off types **1**
- Time tracking break assessments **1**
- Timesheet entries **1**
- Timesheets **1**
- Users **1**
- Webhook logs **1**
- Webhook monitor fields **1**
- Webhook post fields **1**
- Whos out **1**
- Whos out legacy **1**

Top actions

## The BambooHR API, shaped for agents.

The ids your agent types, what each does, and the one name it shares with other systems. 59 of BambooHR's 60 action names are shared with at least one other connector, so an agent learns them once.

| Action | What it does | Effect | Same name in |
| --- | --- | --- | --- |
| `bamboohr.employees.list` List Employees | List Employees. | read | `hr.employee.list` 61 connectors |
| `bamboohr.employees.create` Create Employee | Create Employee. | write | `hr.employee.create` 51 connectors |
| `bamboohr.time_tracking_hour_entries.list` List Hour Entries | List Hour Entries. | read | `work.time_entry.list` 59 connectors |
| `bamboohr.applicant_tracking_applications.list` Get Job Applications | Get Job Applications. | read | `hr.application.list` 15 connectors |
| `bamboohr.time_tracking_hour_entries.create` Create Hour Entry | Create Hour Entry. | write | `work.time_entry.create` 56 connectors |
| `bamboohr.time_off_requests.create` Create Time Off Request | Create Time Off Request. | write | `hr.leave_request.create` 32 connectors |
| `bamboohr.users.list` List Users | List Users. | read | `identity.user.list` 474 connectors |
| `bamboohr.time_off_requests.list` List Time Off Requests | List Time Off Requests. | read | `hr.leave_request.list` 29 connectors |
| `bamboohr.applicant_tracking_jobs.list` Get Job Summaries | Get Job Summaries. | read | `hr.job_opening.list` 24 connectors |
| `bamboohr.time_off_types.list` List Time Off Types | List Time Off Types. | read | `hr.leave_type.list` 23 connectors |
| `bamboohr.scheduling_shifts.create` Create Shift | Create Shift. | write | `hr.shift.create` 18 connectors |
| `bamboohr.time_tracking_hour_entries.delete` Delete Hour Entry | Delete Hour Entry. | destructive | `work.time_entry.delete` 51 connectors |

Try it

## Prompts to paste into Claude.

Each one names the BambooHR actions it will call, so you know what it reads and what it changes before you send it.

1. Read read
   List everyone in BambooHR with their department and start date.
   calls `bamboohr.employee_directory.list`
2. Write write
   Create Employee in BambooHR. Show me exactly what you will send before you save it.
   calls `bamboohr.employees.create`

Governance for BambooHR

## Destructive actions wait for a yes.

30 BambooHR actions are destructive. These are all of them:

- Delete Hour Entry `bamboohr.time_tracking_hour_entries.delete`
- Delete Shift `bamboohr.scheduling_shifts.delete`
- Delete Clock Entry `bamboohr.time_tracking_clock_entries.delete`
- Delete Webhook `bamboohr.webhooks.delete`
- Delete Time Off Category `bamboohr.time_off_categories.delete`
- Delete Training Type `bamboohr.training_types.delete`
- Delete Schedule `bamboohr.scheduling_schedules.delete`
- Cancel Time Off Request `bamboohr.time_off_requests.cancel`
- Delete Employee Training Record `bamboohr.training_records.delete`
- Withdraw a Shift Claim `bamboohr.scheduling_shift_claims.withdraw`
- Delete Goal `bamboohr.goals.delete`
- Delete Company Holiday `bamboohr.holidays.delete`
- Delete Hour Record `bamboohr.hour_records.delete`
- Delete Company File `bamboohr.company_files.delete`
- Delete Goal Comment `bamboohr.goal_comments.delete`
- Delete Employee File `bamboohr.employee_files.delete`
- Delete Time Off Policy `bamboohr.time_off_policies.delete`
- Delete Employee Table Row `bamboohr.employee_table_rows.delete`
- Delete Time Tracking Task `bamboohr.time_tracking_tasks.delete`
- Delete Training Category `bamboohr.training_categories.delete`
- Delete Break `bamboohr.time_tracking_breaks.delete`
- Delete Time Tracking Kiosk `bamboohr.time_tracking_kiosks.delete`
- Delete Time Tracking Import `bamboohr.time_tracking_imports.delete`
- Delete Time Tracking Project `bamboohr.time_tracking_projects.delete`
- Delete Timesheet Hour Entries `bamboohr.timesheet_hour_entries.delete`
- Delete Timesheet Clock Entries `bamboohr.timesheet_clock_entries.delete`
- Delete Break Policy `bamboohr.time_tracking_break_policies.delete`
- Delete Configuration `bamboohr.time_tracking_configurations.delete`
- Delete Time Tracking Shift Differential `bamboohr.time_tracking_shift_differentials.delete`
- Unassign Employee Time Off Policy `bamboohr.employee_time_off_policy_assignments.delete`

A destructive action runs only with `confirm: true`. Under the `human` policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.

do bamboohr.time_tracking_hour_entries.delete confirm_policy: **human**

Delete Hour Entry?

**intent:** the user asked me to delete Hour Entry

run suspended · waiting for a named person · key _bamboohr-agent_ cannot confirm itself

In the console, or from an emailed signed link.

a key for this connector

```
account {
  op: "keys.create", name: "bamboohr-agent",
  allowed_actions: ["bamboohr.*"], cap_calls: 2000,
  confirm_policy: "human_for_writes",
  approval_rules: [
    { match: "bamboohr.time_tracking_hour_entries.delete", approver: "lead@example.com" },
    { match: "bamboohr.scheduling_shifts.delete", approver: "lead@example.com" },
    { match: "bamboohr.time_tracking_clock_entries.delete", approver: "lead@example.com" }
  ]
}
```

Illustrative. Scoped to BambooHR only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

Cost

## What BambooHR costs on actionlake.

Every BambooHR action is one upstream call, the only thing actionlake bills. Searching, `check`, `cost`, `account` and any call BambooHR refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

- 1 upstream call per action all 256 BambooHR actions
- 256 actions page each page of a long list is one call
- 129 reads can be cached a cache hit costs nothing
- 100,000 calls a month, free paid plans from US$49 a month for 250,000

[See pricing](https://actionlake.com/pricing)

Action index

## Every BambooHR action.

256 actions by area: the id your agent calls, what it does, and its effect.

**Goals 11**

- `bamboohr.goals.aggregate` Get Goals Aggregate (v1) read
- `bamboohr.goals.can_create` Get Goal Creation Permission read
- `bamboohr.goals.create` Create Goal write
- `bamboohr.goals.list` List Goals read
- `bamboohr.goals.close` Close Goal write
- `bamboohr.goals.delete` Delete Goal destructive
- and 5 more in this area

**Time off requests 7**

- `bamboohr.time_off_requests.create` Create Time Off Request write
- `bamboohr.time_off_requests.get` Get Time Off Request read
- `bamboohr.time_off_requests.list` List Time Off Requests read
- `bamboohr.time_off_requests.update` Update Time Off Request write
- `bamboohr.time_off_requests.approve` Approve Time Off Request write
- `bamboohr.time_off_requests.cancel` Cancel Time Off Request destructive
- and 1 more in this area

**Holidays 6**

- `bamboohr.holidays.bulk_create` Bulk Create Company Holidays write
- `bamboohr.holidays.create` Create Company Holiday write
- `bamboohr.holidays.get` Get Company Holiday read
- `bamboohr.holidays.list` List Company Holidays read
- `bamboohr.holidays.delete` Delete Company Holiday destructive
- `bamboohr.holidays.update` Update Company Holiday write

**Scheduling shifts 6**

- `bamboohr.scheduling_shifts.create` Create Shift write
- `bamboohr.scheduling_shifts.get` Get Shift read
- `bamboohr.scheduling_shifts.list` List Shifts read
- `bamboohr.scheduling_shifts.update` Update Shift write
- `bamboohr.scheduling_shifts.delete` Delete Shift destructive
- `bamboohr.scheduling_shifts.publish` Publish Shifts write

**Hour records 5**

- `bamboohr.hour_records.adjust` Update Hour Record write
- `bamboohr.hour_records.bulk_create` Create or Update Hour Records write
- `bamboohr.hour_records.create` Create Hour Record write
- `bamboohr.hour_records.get` Get Time Tracking Record read
- `bamboohr.hour_records.delete` Delete Hour Record destructive

**Scheduling schedules 5**

- `bamboohr.scheduling_schedules.create` Create Schedule write
- `bamboohr.scheduling_schedules.get` Get Schedule read
- `bamboohr.scheduling_schedules.list` List Schedules read
- `bamboohr.scheduling_schedules.update` Update Schedule write
- `bamboohr.scheduling_schedules.delete` Delete Schedule destructive

**Time off policies 5**

- `bamboohr.time_off_policies.create` Create Time Off Policy write
- `bamboohr.time_off_policies.get` Get Time Off Policy read
- `bamboohr.time_off_policies.list` List Time Off Policies read
- `bamboohr.time_off_policies.update` Update Time Off Policy write
- `bamboohr.time_off_policies.delete` Delete Time Off Policy destructive

**Time tracking break policies 5**

- `bamboohr.time_tracking_break_policies.create` Create Break Policy write
- `bamboohr.time_tracking_break_policies.get` Get Break Policy read
- `bamboohr.time_tracking_break_policies.list` List Break Policies read
- `bamboohr.time_tracking_break_policies.update` Update Break Policy write
- `bamboohr.time_tracking_break_policies.delete` Delete Break Policy destructive

**Time tracking clock entries 5**

- `bamboohr.time_tracking_clock_entries.create` Create Clock Entry write
- `bamboohr.time_tracking_clock_entries.get` Get Clock Entry read
- `bamboohr.time_tracking_clock_entries.list` List Clock Entries read
- `bamboohr.time_tracking_clock_entries.update` Update Clock Entry write
- `bamboohr.time_tracking_clock_entries.delete` Delete Clock Entry destructive

**Time tracking configurations 5**

- `bamboohr.time_tracking_configurations.create` Create Configuration write
- `bamboohr.time_tracking_configurations.get` Get Configuration read
- `bamboohr.time_tracking_configurations.list` List Configurations read
- `bamboohr.time_tracking_configurations.update` Update Configuration write
- `bamboohr.time_tracking_configurations.delete` Delete Configuration destructive

**Time tracking hour entries 5**

- `bamboohr.time_tracking_hour_entries.create` Create Hour Entry write
- `bamboohr.time_tracking_hour_entries.get` Get Hour Entry read
- `bamboohr.time_tracking_hour_entries.list` List Hour Entries read
- `bamboohr.time_tracking_hour_entries.update` Update Hour Entry write
- `bamboohr.time_tracking_hour_entries.delete` Delete Hour Entry destructive

**Time tracking shift differentials 5**

- `bamboohr.time_tracking_shift_differentials.create` Create Time Tracking Shift Differential write
- `bamboohr.time_tracking_shift_differentials.get` Get Time Tracking Shift Differential read
- `bamboohr.time_tracking_shift_differentials.list` List Time Tracking Shift Differentials read
- `bamboohr.time_tracking_shift_differentials.update` Update Time Tracking Shift Differential write
- `bamboohr.time_tracking_shift_differentials.delete` Delete Time Tracking Shift Differential destructive

**Webhooks 5**

- `bamboohr.webhooks.create` Create Webhook write
- `bamboohr.webhooks.get` Get Webhook read
- `bamboohr.webhooks.list` List Webhooks read
- `bamboohr.webhooks.update` Update Webhook write
- `bamboohr.webhooks.delete` Delete Webhook destructive

**Break policies 4**

- `bamboohr.break_policies.assign` Assign Employees to Break Policy write
- `bamboohr.break_policies.set_assignments` Set Employees for Break Policy write
- `bamboohr.break_policies.sync` Sync Break Policy write
- `bamboohr.break_policies.unassign` Unassign Employees from Break Policy write

**Employee dependents 4**

- `bamboohr.employee_dependents.create` Create Employee Dependent write
- `bamboohr.employee_dependents.get` Get Employee Dependent read
- `bamboohr.employee_dependents.list` List Employee Dependents read
- `bamboohr.employee_dependents.update` Update Employee Dependent write

**Employee table rows 4**

- `bamboohr.employee_table_rows.create` Create Table Row (v1) write
- `bamboohr.employee_table_rows.delete` Delete Employee Table Row destructive
- `bamboohr.employee_table_rows.list` Get Employee Table Data read
- `bamboohr.employee_table_rows.update` Update Table Row (v1) write

**Employee time off policy assignments 4**

- `bamboohr.employee_time_off_policy_assignments.create` Assign Employee Time Off Policy write
- `bamboohr.employee_time_off_policy_assignments.delete` Unassign Employee Time Off Policy destructive
- `bamboohr.employee_time_off_policy_assignments.list` List Employee Time Off Policies read
- `bamboohr.employee_time_off_policy_assignments.update` Update Employee Time Off Policy Assignment write

**Employees 4**

- `bamboohr.employees.create` Create Employee write
- `bamboohr.employees.get` Get Employee read
- `bamboohr.employees.list` List Employees read
- `bamboohr.employees.update` Update Employee write

**Goal comments 4**

- `bamboohr.goal_comments.create` Create Goal Comment write
- `bamboohr.goal_comments.delete` Delete Goal Comment destructive
- `bamboohr.goal_comments.list` List Goal Comments read
- `bamboohr.goal_comments.update` Update Goal Comment write

**Time off categories 4**

- `bamboohr.time_off_categories.create` Create Time Off Category write
- `bamboohr.time_off_categories.delete` Delete Time Off Category destructive
- `bamboohr.time_off_categories.get` Get Time Off Category read
- `bamboohr.time_off_categories.update` Update Time Off Category write

**Time tracking employees 4**

- `bamboohr.time_tracking_employees.bulk_upsert` Bulk Upsert Employee Enrollments write
- `bamboohr.time_tracking_employees.get` Get Employee Enrollment read
- `bamboohr.time_tracking_employees.list` List Enrolled Employees read
- `bamboohr.time_tracking_employees.update` Update Employee Enrollment write

**Time tracking imports 4**

- `bamboohr.time_tracking_imports.delete` Delete Time Tracking Import destructive
- `bamboohr.time_tracking_imports.execute` Execute Time Tracking Import write
- `bamboohr.time_tracking_imports.get` Get Time Tracking Import read
- `bamboohr.time_tracking_imports.list` List Time Tracking Imports read

**Time tracking kiosks 4**

- `bamboohr.time_tracking_kiosks.delete` Delete Time Tracking Kiosk destructive
- `bamboohr.time_tracking_kiosks.get` Get Time Tracking Kiosk read
- `bamboohr.time_tracking_kiosks.list` List Time Tracking Kiosks read
- `bamboohr.time_tracking_kiosks.update` Update Time Tracking Kiosk write

**Time tracking projects 4**

- `bamboohr.time_tracking_projects.delete` Delete Time Tracking Project destructive
- `bamboohr.time_tracking_projects.get` Get Time Tracking Project read
- `bamboohr.time_tracking_projects.list` List Time Tracking Projects read
- `bamboohr.time_tracking_projects.update` Update Time Tracking Project write

**Training categories 4**

- `bamboohr.training_categories.create` Create Training Category write
- `bamboohr.training_categories.delete` Delete Training Category destructive
- `bamboohr.training_categories.list` List Training Categories read
- `bamboohr.training_categories.update` Update Training Category write

**Training records 4**

- `bamboohr.training_records.create` Create Employee Training Record write
- `bamboohr.training_records.delete` Delete Employee Training Record destructive
- `bamboohr.training_records.list` List Employee Training Records read
- `bamboohr.training_records.update` Update Employee Training Record write

**Training types 4**

- `bamboohr.training_types.create` Create Training Type write
- `bamboohr.training_types.delete` Delete Training Type destructive
- `bamboohr.training_types.list` List Training Types read
- `bamboohr.training_types.update` Update Training Type write

**Applicant tracking applications 3**

- `bamboohr.applicant_tracking_applications.get` Get Job Application Details read
- `bamboohr.applicant_tracking_applications.list` Get Job Applications read
- `bamboohr.applicant_tracking_applications.set_status` Update Applicant Status write

**Break policy breaks 3**

- `bamboohr.break_policy_breaks.create` Create Break write
- `bamboohr.break_policy_breaks.list` List Breaks for Break Policy read
- `bamboohr.break_policy_breaks.replace` Replace Breaks for Break Policy write

**Company files 3**

- `bamboohr.company_files.delete` Delete Company File destructive
- `bamboohr.company_files.list` Get Company Files and Categories read
- `bamboohr.company_files.update` Update Company File write

**Employee files 3**

- `bamboohr.employee_files.delete` Delete Employee File destructive
- `bamboohr.employee_files.list` List Employee Files read
- `bamboohr.employee_files.update` Update Employee File write

**Scheduling shift claims 3**

- `bamboohr.scheduling_shift_claims.create` Claim a Shift write
- `bamboohr.scheduling_shift_claims.list` List Shift Claims read
- `bamboohr.scheduling_shift_claims.withdraw` Withdraw a Shift Claim destructive

**Time tracking breaks 3**

- `bamboohr.time_tracking_breaks.delete` Delete Break destructive
- `bamboohr.time_tracking_breaks.get` Get Break read
- `bamboohr.time_tracking_breaks.update` Update Break write

**Time tracking import rows 3**

- `bamboohr.time_tracking_import_rows.get` Get Time Tracking Import Row read
- `bamboohr.time_tracking_import_rows.list` List Time Tracking Import Rows read
- `bamboohr.time_tracking_import_rows.update` Update Time Tracking Import Row write

**Time tracking tasks 3**

- `bamboohr.time_tracking_tasks.delete` Delete Time Tracking Task destructive
- `bamboohr.time_tracking_tasks.get` Get Time Tracking Task read
- `bamboohr.time_tracking_tasks.update` Update Time Tracking Task write

**Time tracking time clocks 3**

- `bamboohr.time_tracking_time_clocks.get` Get Time Tracking Time Clock read
- `bamboohr.time_tracking_time_clocks.list` List Time Tracking Time Clocks read
- `bamboohr.time_tracking_time_clocks.update` Update Time Tracking Time Clock write

**Time tracking timesheets 3**

- `bamboohr.time_tracking_timesheets.get` Get Timesheet read
- `bamboohr.time_tracking_timesheets.list` List Timesheets read
- `bamboohr.time_tracking_timesheets.summary` Get Timesheet Summary read

**Clock entries 2**

- `bamboohr.clock_entries.clock_in` Clock In write
- `bamboohr.clock_entries.clock_out` Clock Out write

**Custom reports 2**

- `bamboohr.custom_reports.list` List Reports read
- `bamboohr.custom_reports.run` Get Report by ID read

**Datasets 2**

- `bamboohr.datasets.list` List Datasets (v1) read
- `bamboohr.datasets.query` Get Data from Dataset (v1) read

**Employee clock 2**

- `bamboohr.employee_clock.clock_in` Create Timesheet Clock-In Entry write
- `bamboohr.employee_clock.clock_out` Create Timesheet Clock-Out Entry write

**Employee photos 2**

- `bamboohr.employee_photos.get` Get Employee Photo read
- `bamboohr.employee_photos.upload` Upload Employee Photo write

**Employee table rows V1 1 2**

- `bamboohr.employee_table_rows_v1_1.create` Create Table Row (v1.1) write
- `bamboohr.employee_table_rows_v1_1.update` Update Table Row (v1.1) write

**Employee time off policies 2**

- `bamboohr.employee_time_off_policies.assign` Assign Time Off Policies (v1) write
- `bamboohr.employee_time_off_policies.list` List Employee Time Off Policies (v1) read

**Employee time off policies V1 1 2**

- `bamboohr.employee_time_off_policies_v1_1.assign` Assign Time Off Policies (v1.1) write
- `bamboohr.employee_time_off_policies_v1_1.list` List Employee Time Off Policies (v1.1) read

**Goals V1 1 2**

- `bamboohr.goals_v1_1.aggregate` Get Goals Aggregate (v1.1) read
- `bamboohr.goals_v1_1.update` Update Goal (v1.1) write

**Holidays catalog 2**

- `bamboohr.holidays_catalog.get` Get Catalog Holiday read
- `bamboohr.holidays_catalog.list` List Catalog Holidays read

**Reports 2**

- `bamboohr.reports.run` Get Company Report read
- `bamboohr.reports.run_custom` Request Custom Report read

**Time off request comments 2**

- `bamboohr.time_off_request_comments.create` Create Time Off Request Comment write
- `bamboohr.time_off_request_comments.list` List Time Off Request Comments read

**Time off requests legacy 2**

- `bamboohr.time_off_requests_legacy.list` List Time Off Requests read
- `bamboohr.time_off_requests_legacy.set_status` Update Time Off Request Status write

**Time tracking project tasks 2**

- `bamboohr.time_tracking_project_tasks.create` Create Time Tracking Project Task write
- `bamboohr.time_tracking_project_tasks.list` List Time Tracking Project Tasks read

**Timesheet clock entries 2**

- `bamboohr.timesheet_clock_entries.delete` Delete Timesheet Clock Entries destructive
- `bamboohr.timesheet_clock_entries.store` Create or Update Timesheet Clock Entries write

**Timesheet hour entries 2**

- `bamboohr.timesheet_hour_entries.delete` Delete Timesheet Hour Entries destructive
- `bamboohr.timesheet_hour_entries.store` Create or Update Timesheet Hour Entries write

**Applicant tracking application comments 1**

- `bamboohr.applicant_tracking_application_comments.create` Create Job Application Comment write

**Applicant tracking hiring leads 1**

- `bamboohr.applicant_tracking_hiring_leads.list` Get Hiring Leads read

**Applicant tracking jobs 1**

- `bamboohr.applicant_tracking_jobs.list` Get Job Summaries read

**Applicant tracking locations 1**

- `bamboohr.applicant_tracking_locations.list` Get Company Locations read

**Applicant tracking statuses 1**

- `bamboohr.applicant_tracking_statuses.list` Get Applicant Statuses read

**Benefit coverages 1**

- `bamboohr.benefit_coverages.list` List Benefit Coverages read

**Benefit deduction types 1**

- `bamboohr.benefit_deduction_types.list` List Benefit Deduction Types read

**Billed standard contractors 1**

- `bamboohr.billed_standard_contractors.create` Filter employee ids down to billed standard contractors write

**Break policy employees 1**

- `bamboohr.break_policy_employees.list` List Break Policy Employees read

**Break policy suggestions 1**

- `bamboohr.break_policy_suggestions.query` Get Break Policy Suggestions read

**Calendar events 1**

- `bamboohr.calendar_events.list` List Calendar Events read

**Company benefits 1**

- `bamboohr.company_benefits.list` List Company Benefits read

**Company file categories 1**

- `bamboohr.company_file_categories.create` Create Company File Category write

**Company information 1**

- `bamboohr.company_information.get` Get Company Information read

**Company profile integrations 1**

- `bamboohr.company_profile_integrations.list` Get Company Profile Integrations read

**Dataset data V2 1**

- `bamboohr.dataset_data_v2.query` Get Data from Dataset (v2) read

**Dataset field options 1**

- `bamboohr.dataset_field_options.list` Get Field Options (v1) read

**Dataset field options V1 2 1**

- `bamboohr.dataset_field_options_v1_2.list` Get Field Options (v1.2) read

**Dataset fields 1**

- `bamboohr.dataset_fields.list` Get Fields from Dataset (v1) read

**Dataset fields V1 2 1**

- `bamboohr.dataset_fields_v1_2.list` Get Fields from Dataset (v1.2) read

**Datasets V1 2 1**

- `bamboohr.datasets_v1_2.list` List Datasets (v1.2) read

**Employee break availabilities 1**

- `bamboohr.employee_break_availabilities.list` List Employee Break Availabilities read

**Employee break policies 1**

- `bamboohr.employee_break_policies.list` List Employee Break Policies read

**Employee directory 1**

- `bamboohr.employee_directory.list` Get Employees Directory read

**Employee file categories 1**

- `bamboohr.employee_file_categories.create` Create Employee File Category write

**Employee table changes 1**

- `bamboohr.employee_table_changes.list` Get Changed Employee Table Data read

**Employee time off balance adjustments 1**

- `bamboohr.employee_time_off_balance_adjustments.create` Adjust Time Off Balance write

**Employee time off balances 1**

- `bamboohr.employee_time_off_balances.get` Get Time Off Balance read

**Employee time off history 1**

- `bamboohr.employee_time_off_history.create` Create Time Off History Item write

**Employee time off requests 1**

- `bamboohr.employee_time_off_requests.create` Create Time Off Request write

**Employees changed 1**

- `bamboohr.employees_changed.list` Get Changed Employee IDs read

**Goal alignment options 1**

- `bamboohr.goal_alignment_options.list` Get Alignable Goal Options read

**Goal filters 1**

- `bamboohr.goal_filters.list` Get Goal Filters (v1) read

**Goal filters V1 1 1**

- `bamboohr.goal_filters_v1_1.list` Get Goal Filters (v1.1) read

**Goal filters V1 2 1**

- `bamboohr.goal_filters_v1_2.list` Get Goal Filters (v1.2) read

**Goal milestones 1**

- `bamboohr.goal_milestones.update_progress` Update Milestone Progress write

**Goal share options 1**

- `bamboohr.goal_share_options.list` List Goal Sharing Options read

**Goals V1 2 1**

- `bamboohr.goals_v1_2.aggregate` Get Goals Aggregate (v1.2) read

**Member benefit events 1**

- `bamboohr.member_benefit_events.list` List Member Benefits read

**Member benefits 1**

- `bamboohr.member_benefits.list` List Member Benefit Events read

**Meta countries 1**

- `bamboohr.meta_countries.list` Get Countries read

**Meta currency types 1**

- `bamboohr.meta_currency_types.list` Get all currency types read

**Meta fields 1**

- `bamboohr.meta_fields.list` List Fields read

**Meta list options 1**

- `bamboohr.meta_list_options.update` Update List Field Values write

**Meta lists 1**

- `bamboohr.meta_lists.list` List List Fields read

**Meta provinces 1**

- `bamboohr.meta_provinces.list` List states and provinces for a country by Country ID read

**Meta tables 1**

- `bamboohr.meta_tables.list` List Tabular Fields read

**Meta timezones 1**

- `bamboohr.meta_timezones.list` List timezones read

**Scheduling open shifts 1**

- `bamboohr.scheduling_open_shifts.list` List Open Shifts read

**Scheduling shift assessments 1**

- `bamboohr.scheduling_shift_assessments.list` List Shift Assessments read

**Scheduling timezones 1**

- `bamboohr.scheduling_timezones.list` List Timezones read

**Time off policies meta 1**

- `bamboohr.time_off_policies_meta.list` List Time Off Policies read

**Time off policy versions 1**

- `bamboohr.time_off_policy_versions.list` List Time Off Policy Versions read

**Time off types 1**

- `bamboohr.time_off_types.list` List Time Off Types read

**Time tracking break assessments 1**

- `bamboohr.time_tracking_break_assessments.list` List Break Assessments read

**Timesheet entries 1**

- `bamboohr.timesheet_entries.list` List Timesheet Entries read

**Timesheets 1**

- `bamboohr.timesheets.approve` Approve Timesheet write

**Users 1**

- `bamboohr.users.list` List Users read

**Webhook logs 1**

- `bamboohr.webhook_logs.list` List Webhook Logs read

**Webhook monitor fields 1**

- `bamboohr.webhook_monitor_fields.list` List Monitor Fields read

**Webhook post fields 1**

- `bamboohr.webhook_post_fields.list` Get Webhook Post Fields read

**Whos out 1**

- `bamboohr.whos_out.list` List Who's Out read

**Whos out legacy 1**

- `bamboohr.whos_out_legacy.list` List Who’s Out read

This index shows a sample of each area. All 256 actions, with their inputs and prices, are in the [catalogue](https://actionlake.com/console/catalogue), which a free sandbox key can search.

Questions

## The BambooHR MCP server, answered.

**Is there a BambooHR MCP server for Claude?**

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 256 BambooHR actions across goals, time off requests, holidays and scheduling shifts, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by BambooHR.

**What do I need to connect BambooHR?**

BambooHR API key: in BambooHR click your name (lower left) > API Keys > Add New Key. Plus your host. The free call account { op: "connections.requirements", service: "bamboohr" } lists exactly what to paste.

**Can an AI agent delete or change things in BambooHR?**

Only if its key allows it, and only with an explicit confirmation. 30 BambooHR actions are destructive, including delete Hour Entry, delete Shift and delete Clock Entry. Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.

**Will an AI agent use up my BambooHR API limit?**

actionlake paces every call to the limits in the BambooHR service file: 10 calls a second per connection. Repeated reads are answered from cache (129 BambooHR actions can be), which never reaches BambooHR.

**What does a BambooHR action cost?**

One upstream call, the only unit actionlake bills. A list that pages bills one call per page (256 BambooHR actions page). Cache hits, searches, dry runs and calls BambooHR refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

**Which BambooHR API does it cover?**

The BambooHR API 1.0 (OpenAPI 3.1, public-openapi.yaml) at your BambooHR instance's API base URL, which you enter when connecting. It is built from BambooHR's documentation as read on 22 October 2026. 256 actions in 116 areas, each one in the signed service file (version 1.0.0).

**Does actionlake keep my BambooHR data, and where?**

actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to 5 minutes, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your BambooHR credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.

**Which AI clients can use it?**

Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.

## More connectors like BambooHR

Shares the most action names with

- [Factorial 33](https://actionlake.com/connectors/factorial)
- [Personio 23](https://actionlake.com/connectors/personio)
- [When I Work 23](https://actionlake.com/connectors/when-i-work)
- [Tanda (Workforce.com) 23](https://actionlake.com/connectors/tanda-workforce-com)
- [Jibble 23](https://actionlake.com/connectors/jibble)
- [Planday 20](https://actionlake.com/connectors/planday)

Joins with, on shared entities

- [Adobe Workfront 2](https://actionlake.com/connectors/adobe-workfront)
- [Deel 2](https://actionlake.com/connectors/deel)
- [Workable 2](https://actionlake.com/connectors/workable)
- [ConnectWise PSA 1](https://actionlake.com/connectors/connectwise-psa)
- [HaloPSA 1](https://actionlake.com/connectors/halopsa)
- [Recruitee 1](https://actionlake.com/connectors/recruitee)

Browse

- [All Accounting & finance connectors](https://actionlake.com/connectors/category/accounting-and-finance)
- [All connectors](https://actionlake.com/connectors)
- [How actionlake compares](https://actionlake.com/compare)

actionlake is independent. It is not made or endorsed by BambooHR; the name is the vendor's own. Counts are from the BambooHR service file, version 1.0.0.

## Give your agent BambooHR today.

[Connect BambooHR free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.

---

Source: https://actionlake.com/connectors/bamboohr
More: https://actionlake.com/llms.txt
