> This page is for Agent Handler.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.merge.dev/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.merge.dev/_mcp/server.

# BambooHR

**Authentication:** API key. See [Magic Link](/merge-agent-handler/features/magic-link) for the runtime auth flow.

## Sample use cases

* List employees with anniversary dates this month so I can send notes.
* Pull current PTO balances for the engineering team and flag anyone above the cap.
* Find every employee who hasn't completed the new compliance training and email a reminder.

## Available Tools

#### get\_employee

Get a specific employee by ID with optional field selection. Returns employee profile data including personal info, job details, and contact information.

#### get\_employee\_directory

Get the employee directory containing all employees with basic information. Use this for a quick overview of all employees in the organization.

#### add\_employee

Create a new employee record in BambooHR. Requires at minimum first and last name. Returns the created employee data with assigned ID.

#### update\_employee

Update an existing employee's information. Only provided fields will be updated; omitted fields remain unchanged.

#### get\_employee\_files

List all files associated with an employee, organized by category. Returns file metadata including names, sizes, and categories.

#### list\_goals

List goals for an employee with optional status filtering. Returns goal details including progress and due dates.

#### get\_goal

Get a specific goal by ID with full details including description, progress, and comments.

#### create\_goal

Create a new goal for an employee. Set title, description, due date, and optional sharing with other employees.

#### update\_goal

Update an existing goal. Modify title, description, due date, progress percentage, or sharing settings.

#### close\_goal

Close/complete a goal. Optionally add a completion comment to document the outcome.

#### reopen\_goal

Reopen a previously closed goal. Allows continued work and tracking on the goal.

#### add\_goal\_comment

Add a comment to a goal. Use for progress updates, feedback, or documentation.

#### get\_fields

Get all available employee field definitions. Returns field IDs, names, and types that can be used in reports and employee queries.

#### get\_lists

Get all available list field values (e.g., departments, locations, employment statuses). Useful for populating dropdowns or validating input.

#### get\_users

Get all BambooHR user accounts with their associated employee IDs and login status. Useful for user management and access auditing.

#### get\_company\_report

Run a predefined company report by ID. Supports optional filtering and multiple output formats (JSON, CSV, etc.).

#### run\_custom\_report

Run a custom employee report with specified fields. Select which employee fields to include in the report output.

#### get\_whos\_out

Get a list of employees who are out (on time off) for a given date range. Defaults to today if no dates provided.

#### list\_time\_off\_requests

List time off requests with optional filters for date range, employee, status, action needed, and type.

#### get\_time\_off\_policies

Get the time off policies assigned to a specific employee, including accrual rates and balances.

#### get\_time\_off\_types

Get all available time off types configured in the BambooHR account (e.g., Vacation, Sick, Personal).

#### estimate\_time\_off\_balance

Calculate an employee's estimated time off balance for a future date, accounting for accruals and scheduled time off.

#### add\_time\_off\_request

Create a new time off request for an employee. Requires time off type, start date, and end date.

#### get\_timesheet\_entries

Get timesheet entries for an employee within a date range. Returns detailed time tracking records with hours, tasks, and projects.

#### add\_timesheet\_entry

Add a new timesheet entry for an employee. Records hours worked on a specific date with optional task/project association.

#### edit\_timesheet\_entry

Edit an existing timesheet entry. Updates hours and optionally task, project, or notes.

#### delete\_timesheet\_entry

Delete a timesheet entry by ID. Permanently removes the time tracking record.

#### clock\_in

Record a clock-in time for an employee. Optionally specify start time and timezone; defaults to current time.

#### clock\_out

Record a clock-out time for an employee. Optionally specify end time and timezone; defaults to current time.

#### get\_daily\_entries

Get daily time tracking summaries for an employee within a date range. Returns aggregated hours per day.

#### list\_training\_categories

Get all training categories/types defined in the BambooHR account. Returns category names, requirements, and renewal periods.

#### list\_employee\_trainings

Get all training records for a specific employee. Returns completed trainings with dates, hours, and costs.

#### add\_employee\_training

Add a training record for an employee. Records completion of a training type with optional cost, hours, and instructor info.

#### update\_employee\_training

Update an existing training record. Modify completion date, cost, hours, instructor, or notes.

#### delete\_employee\_training

Delete a training record by ID. Permanently removes the training from the employee's record.