Skip to main content
Glama
mikkmihkel

BambooHR MCP Server

by mikkmihkel

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
BAMBOOHR_TOKENYesYour BambooHR API key. Create one in BambooHR under your profile > API Keys.
BAMBOOHR_VACATION_TYPENoThe exact name of the vacation time-off type, used by the vacation overview tool. Optional; defaults to the single type that looks like vacation.
BAMBOOHR_COMPANY_DOMAINYesThe company subdomain from your BambooHR URL, e.g. 'acme' for acme.bamboohr.com.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
bamboohr_whos_outA

List employees who are out of office and company holidays in a date range. Defaults to today through 14 days ahead. Each entry has type 'timeOff' (with employeeId and employee name) or 'holiday' (holiday name only).

bamboohr_list_employeesA

List current employees from the BambooHR directory with id, name, job title, department, division, location, supervisor and work email. Use the id with the balance and request tools.

bamboohr_list_time_off_typesA

List the company's time-off types (e.g. vacation, sick leave) with their ids and units, plus the default hours per weekday. Use this to find the right type name or id for other tools.

bamboohr_time_off_balancesA

Get one employee's time-off balances for every assigned type as of a date, including amount used year-to-date. Use a future date to project the balance.

bamboohr_time_off_requestsA

List time-off requests overlapping a date range, optionally filtered by employee, status and time-off type. Results are limited to employees the API key's owner may see in BambooHR.

bamboohr_vacation_overviewA

Company-wide vacation report for one calendar year. For every current employee: vacation balance as of a date, used year-to-date, vacation planned after that date (approved or requested), unplanned balance (balance minus planned), the longest continuous vacation block in calendar days, and whether they have at least one 14-day continuous block. Adjacent requests are merged into one block. Use onlyMissingFourteenDayBlock to list only employees who have not taken or booked a 14-day vacation. The summary counts all employees before the onlyMissingFourteenDayBlock filter is applied. Note: planned vacation excludes a request already in progress on the as-of date, on the assumption that BambooHR's balance has already deducted it.

bamboohr_list_fieldsA

List every employee field in this BambooHR account, standard and custom, with id, name, API alias and type. Use search to find a field by name (e.g. 'shoe', 'hire'). Set includeOptions to see the allowed values of list fields. Pass the alias or id to bamboohr_get_employee or bamboohr_employee_report.

bamboohr_list_tablesA

List every tabular field in BambooHR (job history, compensation, employment status, and custom tables such as equipment or certificates) with the table alias and its columns. Use the alias with bamboohr_table_rows.

bamboohr_company_holidaysA

List company holidays that overlap a date range. Default: the current calendar year. Multi-day holidays that overlap the range are included.

bamboohr_list_usersA

List BambooHR user accounts (people who can log in) with their linked employee id, email, status and last login. Useful for access reviews: who has an enabled account, who never logged in.

bamboohr_get_employeeA

Read one employee's field values: standard fields (hire date, job title, supervisor, status, contact details) and custom fields (e.g. shoe size). Omit employeeId to read the API key owner's own record. Omit fields for a sensible default set. missingFields lists requested fields that came back empty or that the key may not see.

bamboohr_employee_reportA

Pull chosen fields for every employee in one call: e.g. hire date, department and a custom field such as shoe size for the whole company. id, displayName and status are always included. Inactive (terminated) employees are excluded unless includeInactive is true. missingFields lists fields BambooHR did not return, usually because the API key may not see them or the name is wrong; check names with bamboohr_list_fields. Filter and aggregate the rows yourself; BambooHR does not filter server-side.

bamboohr_table_rowsA

Read the rows of an employee table for one employee or for everyone: job history (jobInfo), compensation, employmentStatus, or any custom table (e.g. equipment, certificates). Get valid table aliases from bamboohr_list_tables. Rows are unsorted; sort by date yourself.

bamboohr_changed_employeesA

List employees whose record changed since a timestamp: new hires (Inserted), edits to any field or to job, compensation or employment status tables (Updated), and removals (Deleted). Newest first. Use bamboohr_get_employee to see the current values.

bamboohr_training_typesA

List the company's training types (name, category, required, renewable, renewal frequency in months, due window for new hires) and training categories. Use the type id with bamboohr_training_records.

bamboohr_training_recordsA

List one employee's completed trainings with completion date, instructor, hours, credits, cost and notes. Optionally limit to one training type. To check who is missing a required training, call this per employee.

bamboohr_employee_dependentsA

List dependents (children, spouse) recorded in BambooHR, for one employee or for everyone the key may see. National id numbers arrive masked from BambooHR. Requires Benefits Administration permission.

bamboohr_employee_filesA

List the document categories and files stored on an employee's record (contracts, certificates, signed policies) with name, size, upload date and uploader. Metadata only; files are not downloaded.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.2/5.0

Scored across 18 tools

Disambiguation4/5

Most tools have distinct purposes, but some overlap exists. For example, 'bamboohr_list_employees' and 'bamboohr_employee_report' both return employee data, and 'bamboohr_time_off_requests' and 'bamboohr_whos_out' both deal with time-off, though with different granularity. The descriptions clarify the differences, so misselection is unlikely but possible.

Naming Consistency4/5

The consistent 'bamboohr_' prefix and snake_case are maintained throughout. While many tools follow the verb_noun pattern (list_*, get_*), a few like 'whos_out' and 'vacation_overview' break from that, but they are still readable and predictable. The overall style is cohesive.

Tool Count5/5

With 18 tools, the server is well-scoped for an HR integration. Each tool covers a distinct area: employee data, time-off, training, dependents, files, users, and change tracking. No tool feels redundant, and the number is appropriate for the breadth of functionality.

Completeness4/5

The surface is nearly complete for a read-only HR toolset, covering employee details, time-off, training, company holidays, users, dependents, files, and change detection. The only notable gap is the absence of write/update operations, but since the server appears intended for reading, this is acceptable. Minor missing features like a dedicated single-employee time-off request fetch are easily worked around.

Maintenance

ActivityMaintained
ResponsivenessNo issues