Skip to main content

Announcing StackOne Defender: leading open-source prompt injection guard for your agent Read More

BambooHR MCP Server
for AI Agents

Production-ready BambooHR MCP server with 100 extensible actions — plus built-in authentication, security, and optimized execution.

BambooHR logo
BambooHR MCP Server
Built by StackOne StackOne

Coverage

100 Agent Actions

Create, read, update, and delete across BambooHR — and extend your agent's capabilities with custom actions.

Authentication

Agent Tool Authentication

Per-user OAuth in one call. Your BambooHR MCP server gets session-scoped tokens with zero credentials stored on your infra.

Agent Auth →

Security

Agent Protection

Every BambooHR tool response scanned for prompt injection in milliseconds — 88.7% accuracy, all running on CPU.

Prompt Injection Defense →

Performance

Max Agent Context. Min Cost.

Free up to 96% of your agent's context window to enhance reasoning and reduce cost, on every BambooHR call.

Tools Discovery →

What is the BambooHR MCP Server?

A BambooHR MCP server lets AI agents read and write BambooHR data through the Model Context Protocol — Anthropic's open standard for connecting LLMs to external tools. StackOne's BambooHR MCP server ships with 100 pre-built actions, fully extensible via the Connector Builder — plus managed authentication, prompt injection defense, and optimized agent context. Connect it from MCP clients like Claude Desktop, Cursor, and VS Code, or from agent frameworks like OpenAI Agents SDK, LangChain, and Vercel AI SDK.

All BambooHR MCP Tools and Actions

Every action from BambooHR's API, ready for your agent. Create, read, update, and delete — scoped to exactly what you need.

Employees

  • Create Employee

    Create a new employee record in BambooHR

  • List Employees

    Get all employees from BambooHR with comprehensive employee data. This is the primary endpoint for retrieving the complete employee list with full details.

  • Get Employee

    Get detailed information for a specific employee by ID

  • Update Employee

    Update an existing employee record

Employee Photos

  • Upload Employee Photo

    Upload a photo for a specific employee. Photo must be square (min 150x150 pixels, max 20MB) in JPEG, PNG, or BMP format

  • Get Employee Photo

    Get an employee's profile photo. Requires appropriate permissions to access employee photos.

Employee Files

  • Upload Employee File

    Upload a file to a specific employee's record in BambooHR

  • List Employee Files

    Get a list of files for a specific employee

Employee Dependents

  • Create Employee Dependent

    Create a new dependent for an employee

  • List Employee Dependents

    Get a list of dependents for a specific employee. Requires appropriate permissions to access employee dependent information.

  • Update Employee Dependent

    Update an existing employee dependent record

Time Off Requests

  • Create Time Off Request

    Create a new time off request for an employee

  • List Time Off Requests

    Get a list of time off requests with filtering options

Goals

  • Create Goal

    Create a new goal for an employee. Requires Goals module to be enabled.

  • List Goals

    Get a list of goals for a specific employee. Requires Goals module to be enabled and appropriate permissions.

  • Update Goal

    Update an existing goal with all fields. Requires Goals module to be enabled.

  • Delete Goal

    Delete a goal by its ID. Requires Goals module to be enabled.

Hour Records

  • Add Hour Record

    Add hours worked for an employee (legacy endpoint). Requires time tracking module to be enabled with proper project and task configuration. Use create_or_update_hour_entries for modern implementations.

  • Get Hour Record

    Get a specific hour record by ID (legacy endpoint)

  • Update Hour Record

    Update a specific hour record (legacy endpoint)

  • Delete Hour Record

    Delete a specific hour record (legacy endpoint)

Company Files

  • Upload Company File

    Upload a file to a company file category in BambooHR

  • List Company Files

    Get a list of company files and categories

  • Get Company File

    Get a specific company file by ID. Returns binary file data. Requires appropriate permissions to download company files.

  • Update Company File

    Update an existing company file

  • Delete Company File

    Delete a company file by its ID

Employee Training Records

  • Create Employee Training Record

    Create a new training record for an employee

  • Update Employee Training Record

    Update an existing employee training record

  • Delete Employee Training Record

    Delete an employee training record

Training Types

  • Create Training Type

    Create a new training type

  • List Training Types

    Get a list of available training types

  • Delete Training Type

    Delete a training type by its ID

Table Rows

  • Create Table Row

    Add a new row to an employee's tabular data

  • Update Table Row

    Update a row in an employee's tabular data

  • Delete Table Row

    Delete a row from an employee's tabular data

Reports

  • List Reports

    Get a list of available custom reports. Requires appropriate permissions to access reporting functionality.

  • Get Report

    Get details of a specific custom report

Webhooks

  • Create Webhook

    Create a new webhook to receive BambooHR events

  • List Webhooks

    Get a list of webhooks configured for the API key. Requires webhooks feature to be enabled and appropriate permissions.

  • Get Webhook

    Get detailed information for a specific webhook

  • Update Webhook

    Update an existing webhook configuration

  • Delete Webhook

    Delete a webhook by its ID

Other (58)

  • Create Time Off History Item

    Add a time off history item for an employee

  • Create Goal Comment

    Add a comment to a goal. Requires Goals module to be enabled.

  • Create Or Update Clock Entries

    Add or edit timesheet clock entries in bulk

  • Create Or Update Hour Entries

    Add or edit timesheet hour entries in bulk

  • Create Time Tracking Project

    Create a time tracking project with optional tasks

  • Create Company File Category

    Create a new company file category

  • Create Employee File Category

    Create a new employee file category

  • Create Training Category

    Create a new training category

  • Create Job Opening

    Create a new job opening in the applicant tracking system

  • Create Candidate

    Create a new candidate in the applicant tracking system

  • Create Application Comment

    Add a comment to a job application

  • Create Or Update List Values

    Create or update values for a list field

  • List Employees Directory

    Get employee directory with basic employee information

  • Get Changed Employees

    Get a list of employee IDs that have changed since a specific timestamp. Requires admin-level permissions or special OAuth scope.

  • Get Employee File Categories

    Get available file categories for a specific employee. Note - BambooHR returns categories as part of the file listing endpoint, so this returns both files and categories structure.

  • Get Whos Out

    Get a list of who is out on a given date or date range

  • List Time Off Types

    Get a list of available time off types

  • List Time Off Policies

    Get a list of time off policies

  • Get Employee Time Off Policies

    Get time off policies assigned to a specific employee

  • List Benefit Coverages

    Get benefit coverage information for employees

  • Get Benefit Deduction Types

    Get available benefit deduction types

  • Get Member Benefit Events

    Get member benefit events for tracking benefit enrollments and changes

  • List Timesheet Entries

    Get all timesheet entries for a given period of time. Requires time tracking module to be enabled and appropriate permissions.

  • List Employee Trainings

    Get a list of training records for a specific employee

  • List Training Categories

    Get a list of available training categories

  • List Job Summaries

    Get a list of job openings with summary information. Requires Applicant Tracking System (ATS) module to be enabled and appropriate permissions.

  • List Job Applications

    Get a list of job applications with filtering options. Requires Applicant Tracking System (ATS) module to be enabled and appropriate permissions.

  • Get Job Application Details

    Get detailed information for a specific job application

  • List Applicant Statuses

    Get a list of available applicant statuses. Requires Applicant Tracking System (ATS) module to be enabled and appropriate permissions.

  • List Company Locations

    Get a list of company locations for job postings. Requires Applicant Tracking System (ATS) module to be enabled and appropriate permissions.

  • List Hiring Leads

    Get a list of employees who can be hiring leads. Requires Applicant Tracking System (ATS) module to be enabled and appropriate permissions.

  • Get Company Information

    Get basic company information and settings. Requires company admin permissions to access this endpoint.

  • List Users

    Get a list of users who can access BambooHR

  • List Fields

    Get a list of all available fields in BambooHR

  • Get Field Options

    Get available options for dataset fields

  • List Countries

    Get a list of available countries for address fields. Requires admin-level permissions or special OAuth scope.

  • Get States By Country

    Get states/provinces for a specific country. Requires admin-level permissions or special OAuth scope.

  • Get List Field Details

    Get details for all list fields including available options and their IDs. Use this to retrieve dropdown/select field options configured in BambooHR for fields like employment status, department, division, etc.

  • List Tabular Fields

    Get available tabular fields (tables) for employee data. Requires appropriate permissions to access metadata.

  • Get Employee Table Rows

    Get rows from an employee's tabular data

  • Get Company Report

    Get a company report with basic employee information. Requires appropriate permissions to access reporting functionality.

  • List Datasets

    Get a list of available datasets for reporting. Requires appropriate permissions to access reporting functionality.

  • Get Dataset Fields

    Get fields available in a specific dataset

  • Get Dataset Data

    Query data from a specific dataset with filtering, sorting, and aggregation capabilities. Supports complex queries with multiple fields, filter conditions, sort orders, and grouping. Use this to extract structured data from BambooHR datasets for reporting and analysis.

  • Get Webhook Logs

    Get logs for a specific webhook to debug delivery issues

  • Get Monitor Fields

    Get a list of fields that can be monitored by webhooks. Requires webhooks feature to be enabled and appropriate permissions.

  • Update Time Off Request Status

    Update the status of a time off request

  • Update Time Off Balance

    Update an employee's time off balance adjustment

  • Update Applicant Status

    Update the status of a job application

  • Delete Clock Entries

    Delete timesheet clock entries by their IDs

  • Delete Hour Entries

    Delete timesheet hour entries by their IDs

  • Assign Time Off Policies

    Assign time off policies to an employee

  • Estimate Future Time Off Balances

    Estimate future time off balances for an employee

  • Close Goal

    Close a goal and mark it as complete. Requires Goals module to be enabled.

  • Reopen Goal

    Reopen a closed goal. Requires Goals module to be enabled.

  • Clock In Employee

    Clock in an employee for time tracking

  • Clock Out Employee

    Clock out an employee for time tracking

  • Request Custom Report

    Request a custom report with specified fields and filters

Set Up Your BambooHR MCP Server in Minutes

One endpoint. Any framework. Your agent is talking to BambooHR in under 10 lines of code.

MCP Clients

Agent Frameworks

Claude Desktop
{
  "mcpServers": {
    "stackone": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote@latest",
        "https://api.stackone.com/mcp?x-account-id=<account_id>",
        "--header",
        "Authorization: Basic <YOUR_BASE64_TOKEN>"
      ]
    }
  }
}

More HRIS / HCM MCP Servers

UKG Ready

140+ actions

Factorial

127+ actions

HiBob

123+ actions

Oracle Fusion HCM

120+ actions

Humaans

117+ actions

Clockify

100+ actions

BambooHR MCP Server FAQ

BambooHR MCP server vs direct API integration — what's the difference?
A BambooHR MCP server and direct API integration serve different use cases. Direct API integration is for software-to-software — backend code calling BambooHR. A BambooHR MCP server is for AI agents — MCP clients like Claude and Cursor, plus framework agents built with OpenAI, LangChain, or Vercel AI — discovering and calling BambooHR at runtime. StackOne provides both.
How does BambooHR authentication work for AI agents?
BambooHR authentication for AI agents works through a StackOne Connect Session. Create one via the dashboard or the SDK — you get an auth link and ready-to-paste config for Claude Desktop, Cursor, and other MCP clients. Your user authenticates their own BambooHR account; StackOne handles token exchange, storage, and refresh. Credentials never reach the LLM, and each user is isolated via origin_owner_id.
Are BambooHR MCP tools vulnerable to prompt injection?
Yes — BambooHR MCP tools can be vulnerable to indirect prompt injection. Any tool that reads user-written content — documents, messages, tickets, records, or free-text fields — is a potential vector. StackOne Defender scans every tool response before it enters the agent's context — regex patterns in ~1ms, then a MiniLM classifier in ~4ms. 88.7% accuracy, CPU-only.
What is the context bloat of a BambooHR agent and how do I avoid it?
Context bloat happens when BambooHR tool schemas and API responses eat your BambooHR agent's memory, preventing it from reasoning effectively. A single BambooHR query can return a massive JSON response, and connecting multiple tools compounds the problem. Tools Discovery and Code Mode reduce context bloat — loading only relevant tools per query and keeping raw responses out of the agent's context.
Can I limit which actions my BambooHR agent can access?
Yes — you can limit which actions your BambooHR agent can access directly from the StackOne dashboard. Toggle actions on or off, or restrict them to specific accounts, with no code changes to your agent. Session tokens can be scoped to exact actions so if one leaks, exposure stays contained.
Can I create custom agent actions for my BambooHR MCP server?
Yes — you can create custom agent actions for your BambooHR MCP server using Connector Builder. It's an integration agent your coding assistant (Claude Code, Cursor, or Copilot) can invoke to research BambooHR's API, generate production-ready connector YAML, test against the live API, and validate before you ship.
When should I NOT use a BambooHR MCP server?
Skip a BambooHR MCP server if your integration is purely software-to-software — direct BambooHR API integration is simpler when no AI agent is involved. For deterministic, compliance-critical operations (financial transactions, regulatory reporting), direct API gives you predictable behavior without agent-driven decision-making. MCP shines when AI agents need to dynamically discover and call BambooHR actions at runtime.
What AI frameworks and AI clients does the StackOne BambooHR MCP server support?
The StackOne BambooHR MCP server supports both. MCP clients (paste-and-go apps): Claude Desktop, Claude Code, Cursor, VS Code, Goose. Agent frameworks (code SDKs you build with): OpenAI Agents SDK, Anthropic, Vercel AI, Google ADK, CrewAI, Pydantic AI, LangChain, LangGraph, Azure AI Foundry.

Put your AI agents to work

All the tools you need to build and scale AI agent integrations, with best-in-class connectivity, execution, and security.