davepoon/buildwithclaude/plugins/all-skills/skills/bamboohr-automation/SKILL.md
bamboohr-automation
Automate BambooHR tasks via Rube MCP (Composio): employees, time-off, benefits, dependents, employee updates. Always search tools first for current schemas.
- Source repository stars
- 3,251
- Declared platforms
- 0
- Static risk flags
- 0
- Last source update
- 2026-08-02
- Source checked
- 2026-08-04
Decision brief
What it does—and where it fits
Automate BambooHR human resources operations through Composio's BambooHR toolkit via Rube MCP.
Not for
- Tasks that require unconfirmed production actions or broad system permissions.
- Environments where the pinned source and install steps cannot be inspected.
Compatibility matrix
Platform support, with evidence labels
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Not declared | No explicit evidence | Portability before use |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
Inspect first. Install second.
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/davepoon/buildwithclaude --skill "plugins/all-skills/skills/bamboohr-automation"Inspect the Agent Skill "bamboohr-automation" from https://github.com/davepoon/buildwithclaude/blob/13c9cb58201c74e15f8eb51522795d388ac4fe1b/plugins/all-skills/skills/bamboohr-automation/SKILL.md at commit 13c9cb58201c74e15f8eb51522795d388ac4fe1b. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
What the source asks the agent to do
- 01
Setup
Get Rube MCP: Add https://rube.app/mcp as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.
Verify Rube MCP is available by confirming RUBESEARCHTOOLS respondsCall RUBEMANAGECONNECTIONS with toolkit bamboohrIf connection is not ACTIVE, follow the returned auth link to complete BambooHR authentication - 02
Time-Off Workflow
Review the “Time-Off Workflow” section in the pinned source before continuing.
Review and apply the “Time-Off Workflow” source section. - 03
Prerequisites
Rube MCP must be connected (RUBESEARCHTOOLS available)
Rube MCP must be connected (RUBESEARCHTOOLS available)Active BambooHR connection via RUBEMANAGECONNECTIONS with toolkit bamboohrAlways call RUBESEARCHTOOLS first to get current tool schemas - 04
Core Workflows
When to use: User wants to find employees or get the full employee directory
BAMBOOHRGETALLEMPLOYEES - Get the employee directory [Required]BAMBOOHRGETEMPLOYEE - Get detailed info for a specific employee [Optional]For GETALLEMPLOYEES: No required parameters; returns directory - 05
1. List and Search Employees
When to use: User wants to find employees or get the full employee directory
BAMBOOHRGETALLEMPLOYEES - Get the employee directory [Required]BAMBOOHRGETEMPLOYEE - Get detailed info for a specific employee [Optional]For GETALLEMPLOYEES: No required parameters; returns directory
Permission review
Static risk signals and limitations
No configured static risk pattern was detected
This is not proof of safety. Runtime behavior, indirect dependencies, and hidden external systems are outside the static scan.
Evidence record
Why each signal appears
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 95/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 3,251 | Source | Repository attention, not individual Skill quality |
| Compatibility | 0 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
Provenance and original SKILL.md
- Repository
- davepoon/buildwithclaude
- Skill path
- plugins/all-skills/skills/bamboohr-automation/SKILL.md
- Commit
- 13c9cb58201c74e15f8eb51522795d388ac4fe1b
- License
- MIT
- Collected
- 2026-08-04
- Default branch
- main
View the original SKILL.md
BambooHR Automation via Rube MCP
Automate BambooHR human resources operations through Composio's BambooHR toolkit via Rube MCP.
Toolkit docs: composio.dev/toolkits/bamboohr
Prerequisites
- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
- Active BambooHR connection via
RUBE_MANAGE_CONNECTIONSwith toolkitbamboohr - Always call
RUBE_SEARCH_TOOLSfirst to get current tool schemas
Setup
Get Rube MCP: Add https://rube.app/mcp as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.
- Verify Rube MCP is available by confirming
RUBE_SEARCH_TOOLSresponds - Call
RUBE_MANAGE_CONNECTIONSwith toolkitbamboohr - If connection is not ACTIVE, follow the returned auth link to complete BambooHR authentication
- Confirm connection status shows ACTIVE before running any workflows
Core Workflows
1. List and Search Employees
When to use: User wants to find employees or get the full employee directory
Tool sequence:
BAMBOOHR_GET_ALL_EMPLOYEES- Get the employee directory [Required]BAMBOOHR_GET_EMPLOYEE- Get detailed info for a specific employee [Optional]
Key parameters:
- For GET_ALL_EMPLOYEES: No required parameters; returns directory
- For GET_EMPLOYEE:
id: Employee ID (numeric)fields: Comma-separated list of fields to return (e.g., 'firstName,lastName,department,jobTitle')
Pitfalls:
- Employee IDs are numeric integers
- GET_ALL_EMPLOYEES returns basic directory info; use GET_EMPLOYEE for full details
- The
fieldsparameter controls which fields are returned; omitting it may return minimal data - Common fields: firstName, lastName, department, division, jobTitle, workEmail, status
- Inactive/terminated employees may be included; check
statusfield
2. Track Employee Changes
When to use: User wants to detect recent employee data changes for sync or auditing
Tool sequence:
BAMBOOHR_EMPLOYEE_GET_CHANGED- Get employees with recent changes [Required]
Key parameters:
since: ISO 8601 datetime string for change detection thresholdtype: Type of changes to check (e.g., 'inserted', 'updated', 'deleted')
Pitfalls:
sinceparameter is required; use ISO 8601 format (e.g., '2024-01-15T00:00:00Z')- Returns IDs of changed employees, not full employee data
- Must call GET_EMPLOYEE separately for each changed employee's details
- Useful for incremental sync workflows; cache the last sync timestamp
3. Manage Time-Off
When to use: User wants to view time-off balances, request time off, or manage requests
Tool sequence:
BAMBOOHR_GET_META_TIME_OFF_TYPES- List available time-off types [Prerequisite]BAMBOOHR_GET_TIME_OFF_BALANCES- Check current balances [Optional]BAMBOOHR_GET_TIME_OFF_REQUESTS- List existing requests [Optional]BAMBOOHR_CREATE_TIME_OFF_REQUEST- Submit a new request [Optional]BAMBOOHR_UPDATE_TIME_OFF_REQUEST- Modify or approve/deny a request [Optional]
Key parameters:
- For balances:
employeeId, time-off type ID - For requests:
start,end(date range),employeeId - For creation:
employeeId: Employee to request fortimeOffTypeId: Type ID from GET_META_TIME_OFF_TYPESstart: Start date (YYYY-MM-DD)end: End date (YYYY-MM-DD)amount: Number of days/hoursnotes: Optional notes for the request
- For update:
requestId,status('approved', 'denied', 'cancelled')
Pitfalls:
- Time-off type IDs are numeric; resolve via GET_META_TIME_OFF_TYPES first
- Date format is 'YYYY-MM-DD' for start and end dates
- Balances may be in hours or days depending on company configuration
- Request status updates require appropriate permissions (manager/admin)
- Creating a request does NOT auto-approve it; separate approval step needed
4. Update Employee Information
When to use: User wants to modify employee profile data
Tool sequence:
BAMBOOHR_GET_EMPLOYEE- Get current employee data [Prerequisite]BAMBOOHR_UPDATE_EMPLOYEE- Update employee fields [Required]
Key parameters:
id: Employee ID (numeric, required)- Field-value pairs for the fields to update (e.g.,
department,jobTitle,workPhone)
Pitfalls:
- Only fields included in the request are updated; others remain unchanged
- Some fields are read-only and cannot be updated via API
- Field names must match BambooHR's expected field names exactly
- Updates are audited; changes appear in the employee's change history
- Verify current values with GET_EMPLOYEE before updating to avoid overwriting
5. Manage Dependents and Benefits
When to use: User wants to view employee dependents or benefit coverage
Tool sequence:
BAMBOOHR_DEPENDENTS_GET_ALL- List all dependents [Required]BAMBOOHR_BENEFIT_GET_COVERAGES- Get benefit coverage details [Optional]
Key parameters:
- For dependents: Optional
employeeIdfilter - For benefits: Depends on schema; check RUBE_SEARCH_TOOLS for current parameters
Pitfalls:
- Dependent data includes sensitive PII; handle with appropriate care
- Benefit coverages may include multiple plan types per employee
- Not all BambooHR plans include benefits administration; check account features
- Data access depends on API key permissions
Common Patterns
ID Resolution
Employee name -> Employee ID:
1. Call BAMBOOHR_GET_ALL_EMPLOYEES
2. Find employee by name in directory results
3. Extract id (numeric) for detailed operations
Time-off type name -> Type ID:
1. Call BAMBOOHR_GET_META_TIME_OFF_TYPES
2. Find type by name (e.g., 'Vacation', 'Sick Leave')
3. Extract id for time-off requests
Incremental Sync Pattern
For keeping external systems in sync with BambooHR:
1. Store last_sync_timestamp
2. Call BAMBOOHR_EMPLOYEE_GET_CHANGED with since=last_sync_timestamp
3. For each changed employee ID, call BAMBOOHR_GET_EMPLOYEE
4. Process updates in external system
5. Update last_sync_timestamp
Time-Off Workflow
1. GET_META_TIME_OFF_TYPES -> find type ID
2. GET_TIME_OFF_BALANCES -> verify available balance
3. CREATE_TIME_OFF_REQUEST -> submit request
4. UPDATE_TIME_OFF_REQUEST -> approve/deny (manager action)
Known Pitfalls
Employee IDs:
- Always numeric integers
- Resolve names to IDs via GET_ALL_EMPLOYEES
- Terminated employees retain their IDs
Date Formats:
- Time-off dates: 'YYYY-MM-DD'
- Change detection: ISO 8601 with timezone
- Inconsistent formats between endpoints; check each endpoint's schema
Permissions:
- API key permissions determine accessible fields and operations
- Some operations require admin or manager-level access
- Time-off approvals require appropriate role permissions
Sensitive Data:
- Employee data includes PII (names, addresses, SSN, etc.)
- Handle all responses with appropriate security measures
- Dependent data is especially sensitive
Rate Limits:
- BambooHR API has rate limits per API key
- Bulk operations should be throttled
- GET_ALL_EMPLOYEES is more efficient than individual GET_EMPLOYEE calls
Response Parsing:
- Response data may be nested under
datakey - Employee fields vary based on
fieldsparameter - Empty fields may be omitted or returned as null
- Parse defensively with fallbacks
Quick Reference
| Task | Tool Slug | Key Params |
|---|---|---|
| List all employees | BAMBOOHR_GET_ALL_EMPLOYEES | (none) |
| Get employee details | BAMBOOHR_GET_EMPLOYEE | id, fields |
| Track changes | BAMBOOHR_EMPLOYEE_GET_CHANGED | since, type |
| Time-off types | BAMBOOHR_GET_META_TIME_OFF_TYPES | (none) |
| Time-off balances | BAMBOOHR_GET_TIME_OFF_BALANCES | employeeId |
| List time-off requests | BAMBOOHR_GET_TIME_OFF_REQUESTS | start, end, employeeId |
| Create time-off request | BAMBOOHR_CREATE_TIME_OFF_REQUEST | employeeId, timeOffTypeId, start, end |
| Update time-off request | BAMBOOHR_UPDATE_TIME_OFF_REQUEST | requestId, status |
| Update employee | BAMBOOHR_UPDATE_EMPLOYEE | id, (field updates) |
| List dependents | BAMBOOHR_DEPENDENTS_GET_ALL | employeeId |
| Benefit coverages | BAMBOOHR_BENEFIT_GET_COVERAGES | (check schema) |
Powered by Composio
Alternatives
Compare before choosing
alirezarezvani/claude-skills
app-store-optimization
App Store Optimization (ASO) toolkit for researching keywords, analyzing competitor rankings, generating metadata suggestions, and improving app visibility on Apple App Store and Google Play Store. Use when the user asks about ASO, app store rankings, app metadata, app titles and descriptions, app store listings, app visibility, or mobile app marketing on iOS or Android. Supports keyword research and scoring, competitor keyword analysis, metadata optimization, A/B test planning, launch checklist
wanshuiyin/Auto-claude-code-research-in-sleep
citation-audit
Use it for operations and research tasks; the detail page covers purpose, installation, and practical steps.
dotnet/skills
migrate-vstest-to-mtp
Migrates .NET test projects from VSTest to Microsoft.Testing.Platform (MTP). Use when user asks to "migrate to MTP", "switch from VSTest", "enable Microsoft.Testing.Platform", "use MTP runner", set OutputType=Exe only for test projects in Directory.Build.props, or mentions EnableMSTestRunner, EnableNUnitRunner, or UseMicrosoftTestingPlatformRunner. USE FOR: MTP behavioral differences vs VSTest (exit code 8, zero tests discovered, --ignore-exit-code, TESTINGPLATFORM_EXITCODE_IGNORE); centralizing
aaron-he-zhu/aaron-marketing-skills
social-selling-planner
Use when the user asks to "set up my founder social-selling routine", "build a daily engagement block for target accounts", or "turn funding / hiring signals into selling plays"; produces the founder/seller daily operating block — a time-boxed engagement-block spec (substantive value-add comments on target-account posts, never a pitch), warm-touch-before-ask cadence rules, trigger-response plays consuming the social-pulse-monitor B2B trigger watchlist (funding / hiring / launch signals), and a q