acalder-techpm

bamboohr-mcp

Community acalder-techpm
Updated

MCP server for BambooHR — 74 tools + 30 role-based skills for Claude

Give Claude full access to your BambooHR — employees, time off, hiring, benefits, training, and more.

npm versionLicense: MITNode >=18MCP

A Model Context Protocol server that connects Claude to BambooHR. Install once, then talk to your HR data in plain English — no dashboards, no manual exports.

"Who's out next week?"
"Onboard Sarah Chen starting Monday — Engineering, reports to Maria."
"Show training compliance for the Sales team."
"Approve all pending PTO requests for my team."
"What's our average time-to-fill for engineering roles?"

What's included

🔧 74 MCP ToolsFull BambooHR API coverage across 11 modules — employees, time off, time tracking, ATS, benefits, training, goals, reports, webhooks, files, and metadata.

📦 Zero-deploy setupShips as an npx-runnable package. Add two lines to your Claude config and you're done.

🎭 30 Role-Based SkillsPre-built workflows for HR admins, managers, recruiters, employees, payroll, L&D, and automation admins — organized by who uses them.

🔌 Works everywhereClaude Desktop, Claude Code CLI, or any MCP-compatible client.

Quickstart

Step 1 — Get your BambooHR API key

  1. Log in to BambooHR
  2. Click your profile icon (top right) > API Keys
  3. Click Add New Key, name it, and copy it

Your subdomain is the prefix in your BambooHR URL — e.g. acme from acme.bamboohr.com.

Step 2 — Add to Claude Desktop

Edit your config file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "bamboohr": {
      "command": "npx",
      "args": ["-y", "bamboohr-mcp"],
      "env": {
        "BAMBOOHR_API_KEY": "your-api-key-here",
        "BAMBOOHR_SUBDOMAIN": "your-company-subdomain"
      }
    }
  }
}

Restart Claude Desktop.

Step 3 — Or add to Claude Code (CLI)

claude mcp add bamboohr \
  -e BAMBOOHR_API_KEY=your-api-key-here \
  -e BAMBOOHR_SUBDOMAIN=your-company-subdomain \
  -- npx -y bamboohr-mcp

Step 4 — Verify

Open Claude and ask: "Show me the BambooHR employee directory"

Available Tools

👤 Employees — 6 tools
Tool Description
bamboohr_get_employee Get an employee record by ID
bamboohr_list_employees List all employees in the directory
bamboohr_create_employee Create a new employee
bamboohr_update_employee Update employee fields
bamboohr_get_updated_employee_ids Get IDs of recently changed employees
bamboohr_get_company_info Get company account details
🏖️ Time Off — 8 tools
Tool Description
bamboohr_get_time_off_types List all leave types
bamboohr_get_time_off_policies List all time-off policies
bamboohr_get_time_off_requests Get requests by date range, status, employee
bamboohr_create_time_off_request Submit a time-off request
bamboohr_update_time_off_request_status Approve, deny, or cancel a request
bamboohr_get_time_off_balance Get leave balances for an employee
bamboohr_get_whos_out See who is out during a date range
bamboohr_assign_time_off_policies Assign policies to an employee
⏱️ Time Tracking — 5 tools
Tool Description
bamboohr_get_timesheet_entries Get clock/hour entries
bamboohr_clock_in / bamboohr_clock_out Record clock events
bamboohr_create_hour_entries Submit hour entries
bamboohr_list_break_policies List break policies
bamboohr_list_employee_break_availability Check break availability
🎯 Applicant Tracking (ATS) — 9 tools
Tool Description
bamboohr_list_job_summaries List all job openings
bamboohr_create_job_opening Create a new job opening
bamboohr_create_candidate Create a candidate record
bamboohr_get_job_applications Get applications for a job
bamboohr_get_applicant_statuses List pipeline stages
bamboohr_update_applicant_status Move a candidate to a new stage
bamboohr_add_application_comment Add a note to an application
bamboohr_get_hiring_leads List available hiring leads
bamboohr_get_company_locations List company locations
🏥 Benefits — 7 tools
Tool Description
bamboohr_get_company_benefits List all benefit plans
bamboohr_get_employee_benefits Get an employee's enrollments
bamboohr_get_benefit_coverages List coverage tiers
bamboohr_get_benefit_deduction_types List deduction types
bamboohr_get_employee_dependents List an employee's dependents
bamboohr_create_employee_dependent Add a dependent
bamboohr_get_member_benefit_events Get benefit life events
📊 Reports & Datasets — 5 tools
Tool Description
bamboohr_list_reports List all saved reports
bamboohr_run_report Run a report by ID
bamboohr_list_datasets List available datasets
bamboohr_get_dataset_fields Get fields for a dataset
bamboohr_query_dataset Query a dataset with filters
🎓 Training — 6 tools
Tool Description
bamboohr_get_training_categories List training categories
bamboohr_get_training_types List training types/courses
bamboohr_create_training_type Create a training type
bamboohr_get_employee_trainings Get an employee's training records
bamboohr_create_training_record Assign training to an employee
bamboohr_update_training_record Update a training record
🏆 Goals & Performance — 7 tools
Tool Description
bamboohr_list_goals Get goals for an employee
bamboohr_get_goals_aggregate Get goal summary/stats
bamboohr_create_goal Create a performance goal
bamboohr_update_goal_progress Update percent complete
bamboohr_close_goal / bamboohr_reopen_goal Close or reopen a goal
bamboohr_get_goal_status_counts Get goal status breakdown
🔔 Webhooks — 7 tools
Tool Description
bamboohr_list_webhooks List all webhooks
bamboohr_get_webhook Get webhook details
bamboohr_create_webhook Create a new webhook
bamboohr_update_webhook Update a webhook
bamboohr_delete_webhook Delete a webhook
bamboohr_get_webhook_logs View delivery logs
bamboohr_get_webhook_monitor_fields List monitorable fields
📁 Files — 6 tools
Tool Description
bamboohr_get_employee_files List files for an employee
bamboohr_get_employee_file Download a specific file
bamboohr_upload_employee_file Upload a file to an employee
bamboohr_delete_employee_file Delete an employee file
bamboohr_get_company_files List company-level files
bamboohr_create_employee_file_category Create a file category
⚙️ Account & Metadata — 7 tools
Tool Description
bamboohr_get_fields List all employee fields
bamboohr_get_tabular_fields List tabular fields
bamboohr_get_users List BambooHR user accounts
bamboohr_get_countries List countries
bamboohr_get_states List states for a country
bamboohr_get_list_field_details Get options for a list field
bamboohr_update_list_field_values Add/update list field options

Skills — Role-Based Workflows

Skills are pre-built prompts that handle common HR workflows end-to-end. Copy them to ~/.claude/skills/ to use them in Claude Code.

# Install all skills at once
cp -r skills/* ~/.claude/skills/

🗂️ HR Admin

For the people running day-to-day HR operations.

Skill Try saying...
onboard-employee "Onboard Sarah Chen starting Monday in Engineering"
offboard-employee "Process termination for Bob Lee, last day is Friday"
bulk-update-records "Update all Engineering employees to the Austin office"
manage-documents "Show me Jane Doe's employee files"
sync-org-changes "Move Alex to the Platform team reporting to Maria"
audit-employee-data "Find all employees missing a work email"

📈 HR Manager / HRBP

For strategic HR visibility, analytics, and reporting.

Skill Try saying...
headcount-report "Headcount report by department"
workforce-snapshot "Give me a workforce snapshot"
run-custom-report "Run a report of all employees in California"
performance-overview "Performance overview for the Engineering team"
new-hire-trends "Show new hires for Q1 2025"

🎯 Recruiter / Talent Acquisition

For managing job openings, candidates, and hiring pipelines.

Skill Try saying...
post-job-opening "Post a Senior Engineer role in Austin, TX"
review-pipeline "Review the pipeline for the Product Manager role"
advance-candidate "Move Jane Smith to the Final Interview stage"
hiring-velocity-report "What's our average time-to-fill?"

👔 Manager / Team Lead

For team-level visibility and day-to-day approvals.

Skill Try saying...
approve-time-off "Review pending PTO requests for my team"
team-availability "Who's out next week?"
team-directory "Show me my team roster"
review-team-goals "Show team goal progress for Q2"
approve-timesheets "Review timesheets for last week"

🙋 Employee Self-Service

For employees managing their own HR needs.

Skill Try saying...
request-time-off "Request 3 days off starting June 10"
check-leave-balance "How many PTO days do I have left?"
update-profile "Update my home address in BambooHR"
view-my-trainings "What trainings am I assigned?"

💼 Payroll & Benefits Admin

For managing benefits enrollment and compensation data.

Skill Try saying...
benefits-status-check "Check benefits enrollment for John Doe"
dependent-enrollment "Add a dependent for Sarah Chen — newborn daughter"
compensation-audit "Run a compensation audit for Engineering"

🎓 Training & L&D

For tracking learning programs and compliance.

Skill Try saying...
assign-training "Assign HIPAA training to all new hires in HR"
compliance-report "Training compliance report for Q2"
manage-catalog "Show our full training catalog"

⚡ Automation Admin

For teams integrating BambooHR with other systems via webhooks.

Skill Try saying...
setup-webhook "Create a webhook that fires when job title changes"
debug-webhook "Show recent webhook logs for my HRIS sync"
automation-overview "What automations are connected to BambooHR?"

Development

git clone https://github.com/acalder-techpm/bamboohr-mcp
cd bamboohr-mcp
npm install
npm run build

Test locally:

export BAMBOOHR_API_KEY=your-key
export BAMBOOHR_SUBDOMAIN=your-subdomain
node dist/index.js

Interactive testing with MCP Inspector:

npx @modelcontextprotocol/inspector node dist/index.js

Authentication

BambooHR uses HTTP Basic Auth with your API key as the username. This server handles it automatically — just set BAMBOOHR_API_KEY.

Tip: API keys inherit the permissions of the user who created them. Use an Admin user's key for full access, or a limited user's key for read-only integrations.

To create a key: BambooHR > Profile icon > API Keys > Add New Key

Contributing

PRs welcome. If you add a new tool or skill, follow the existing patterns in src/tools/ and skills/ and open a pull request with a brief description of the use case.

License

MIT — made with ☕ and Claude.

MCP Server · Populars

MCP Server · New

    easyshell-ai

    EasyShell

    Lightweight server management & intelligent ops platform with Docker one-click deployment, batch script execution, web terminal, and AI-powered operations.

    Community easyshell-ai
    AVIDS2

    Memorix

    Cross-Agent Memory Bridge Persistent memory for AI coding agents across 10 IDEs (Cursor, Windsurf, Claude Code, Codex, Copilot, Kiro, Antigravity, OpenCode, Trae, Gemini CLI) via MCP. Team collaboration, auto-cleanup, mini-skills, workspace sync. Never re-explain your project again.

    Community AVIDS2
    zw008

    VMware AIops

    VMware vCenter/ESXi AI-powered monitoring and operations. Two skills: vmware-monitor (read-only, safe) and vmware-aiops (full operations) | Claude Code Skill

    Community zw008
    Dave-London

    Pare

    Dev tools, optimized for agents. Structured, token-efficient MCP servers for git, test runners, npm, Docker, and more.

    Community Dave-London
    luckyPipewrench

    Pipelock

    Firewall for AI agents. DLP scanning, SSRF protection, bidirectional MCP scanning, tool poisoning detection, and workspace integrity monitoring.

    Community luckyPipewrench