cl-bamboohr-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| DEBUG | No | Enable debug logging | false |
| BAMBOO_API_TOKEN | Yes | BambooHR API key | |
| BAMBOO_MAX_RETRIES | No | Max retry attempts | 3 |
| BAMBOO_CACHE_TTL_MS | No | Cache TTL in ms (5 min) | 300000 |
| BAMBOO_COMPANY_DOMAIN | Yes | Company subdomain | |
| BAMBOO_REQUEST_TIMEOUT_MS | No | Request timeout in ms | 30000 |
| BAMBOO_UPDATE_ALLOWED_FIELDS | No | Comma-separated allowlist for update-employee |
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get-employeeB | Get detailed information about a specific employee by their ID |
| find-employeeA | Search the employee directory by name, email, department, or job title |
| update-employeeA | Update employee information. Fields may be restricted by BAMBOO_UPDATE_ALLOWED_FIELDS env var. |
| get-employee-directoryB | Get the full company employee directory |
| get-employee-photoB | Get the URL for an employee photo in a specific size |
| get-employee-goalsA | Get performance goals for a specific employee |
| get-whos-outA | Get a list of employees who are currently out or will be out in a date range |
| get-time-off-requestsA | Get time-off requests filtered by date range, employee, status, or action |
| estimate-time-off-balanceA | Estimate future time-off balance for an employee on a given date |
| create-time-off-requestC | Create a new time-off request for an employee |
| list-company-filesA | List all company-level files organized by category |
| get-company-fileA | Get metadata for a specific company file |
| get-employee-filesB | List all files for a specific employee organized by category |
| get-meta-fieldsB | Get BambooHR field metadata. Optionally filter by type: list, time_off_type, time_off_policy |
| get-departmentsA | Get all departments in the company |
| get-team-infoC | Get team members for a specific supervisor/manager from the employee directory |
| discover-datasetsA | List all available BambooHR datasets for analytics queries |
| discover-fieldsA | List available fields for a specific BambooHR dataset |
| workforce-analyticsB | Run an analytics query against a BambooHR dataset with optional filters |
| list-custom-reportsA | List all saved custom reports available in BambooHR |
| run-custom-reportB | Execute a saved custom report and get results |
| list-report-presetsA | List built-in field-set presets that run-adhoc-report can execute by name |
| run-adhoc-reportA | Run an ad-hoc custom report by posting a field list to BambooHR. Use either a saved preset (presetName) or pass an explicit fields array. Returns JSON unless format=CSV. Set onlyCurrent=false to include terminated employees. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 23 tools
Most tools target distinct BambooHR resources/actions (employee, time off, files, reports), but there is some potential confusion among directory tools (get-employee-directory/find-employee/get-team-info) and metadata/reporting tools (discover-fields/get-meta-fields/list-report-presets). Descriptions are clear enough for an agent to pick correctly in most cases.
Tool names overwhelmingly follow a verb_noun hyphenated convention (get-employee, list-company-files, run-custom-report). Minor deviations like the noun-only 'workforce-analytics' and the synonym mix of list/get/find/discover keep it from being a perfect 5.
23 tools is on the heavier side, covering several BambooHR subdomains (directory, time off, files, reporting). The count is defensible for an HR suite, but it exceeds the range where each tool is immediately memorable and starts to feel like a large API surface.
The set covers employee lookup/update, time-off visibility/creation, file metadata, and reporting/analytics, so core workflows are present. Obvious gaps remain: no employee create/delete, no time-off cancel/approval, no file upload/download, and custom reports can be run but not created or modified.