[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-8ac7da51-2f71-4ea4-bf39-328959ed7e4f":3,"$frR5pRozfHELTWX0ZEYCRhDny5OXKpAvPU12Eq4pym3A":43},{"id":4,"title":5,"description":6,"categoryId":7,"moduleId":8,"tags":9,"prompt":10,"icon":11,"source":12,"sourceUrl":13,"authorId":14,"authorName":15,"isPublic":16,"stars":17,"runs":18,"createdAt":19,"updatedAt":19,"module":20,"category":27,"packages":34},"8ac7da51-2f71-4ea4-bf39-328959ed7e4f","bamboohr-automation","通过Rube MCP（Composio）自动化BambooHR任务：员工、休假、福利、家属、员工更新。始终首先搜索当前架构的工具。","cat_prod_automation","mod_productivity","sickn33,productivity","---\nname: bamboohr-automation\ndescription: \"Automate BambooHR tasks via Rube MCP (Composio): employees, time-off, benefits, dependents, employee updates. Always search tools first for current schemas.\"\nrisk: critical\nsource: community\ndate_added: \"2026-02-27\"\n---\n\n# BambooHR Automation via Rube MCP\n\nAutomate BambooHR human resources operations through Composio's BambooHR toolkit via Rube MCP.\n\n## Prerequisites\n\n- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)\n- Active BambooHR connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `bamboohr`\n- Always call `RUBE_SEARCH_TOOLS` first to get current tool schemas\n\n## Setup\n\n**Get Rube MCP**: Add `https:\u002F\u002Frube.app\u002Fmcp` as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.\n\n\n1. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds\n2. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `bamboohr`\n3. If connection is not ACTIVE, follow the returned auth link to complete BambooHR authentication\n4. Confirm connection status shows ACTIVE before running any workflows\n\n## Core Workflows\n\n### 1. List and Search Employees\n\n**When to use**: User wants to find employees or get the full employee directory\n\n**Tool sequence**:\n1. `BAMBOOHR_GET_ALL_EMPLOYEES` - Get the employee directory [Required]\n2. `BAMBOOHR_GET_EMPLOYEE` - Get detailed info for a specific employee [Optional]\n\n**Key parameters**:\n- For GET_ALL_EMPLOYEES: No required parameters; returns directory\n- For GET_EMPLOYEE:\n  - `id`: Employee ID (numeric)\n  - `fields`: Comma-separated list of fields to return (e.g., 'firstName,lastName,department,jobTitle')\n\n**Pitfalls**:\n- Employee IDs are numeric integers\n- GET_ALL_EMPLOYEES returns basic directory info; use GET_EMPLOYEE for full details\n- The `fields` parameter controls which fields are returned; omitting it may return minimal data\n- Common fields: firstName, lastName, department, division, jobTitle, workEmail, status\n- Inactive\u002Fterminated employees may be included; check `status` field\n\n### 2. Track Employee Changes\n\n**When to use**: User wants to detect recent employee data changes for sync or auditing\n\n**Tool sequence**:\n1. `BAMBOOHR_EMPLOYEE_GET_CHANGED` - Get employees with recent changes [Required]\n\n**Key parameters**:\n- `since`: ISO 8601 datetime string for change detection threshold\n- `type`: Type of changes to check (e.g., 'inserted', 'updated', 'deleted')\n\n**Pitfalls**:\n- `since` parameter is required; use ISO 8601 format (e.g., '2024-01-15T00:00:00Z')\n- Returns IDs of changed employees, not full employee data\n- Must call GET_EMPLOYEE separately for each changed employee's details\n- Useful for incremental sync workflows; cache the last sync timestamp\n\n### 3. Manage Time-Off\n\n**When to use**: User wants to view time-off balances, request time off, or manage requests\n\n**Tool sequence**:\n1. `BAMBOOHR_GET_META_TIME_OFF_TYPES` - List available time-off types [Prerequisite]\n2. `BAMBOOHR_GET_TIME_OFF_BALANCES` - Check current balances [Optional]\n3. `BAMBOOHR_GET_TIME_OFF_REQUESTS` - List existing requests [Optional]\n4. `BAMBOOHR_CREATE_TIME_OFF_REQUEST` - Submit a new request [Optional]\n5. `BAMBOOHR_UPDATE_TIME_OFF_REQUEST` - Modify or approve\u002Fdeny a request [Optional]\n\n**Key parameters**:\n- For balances: `employeeId`, time-off type ID\n- For requests: `start`, `end` (date range), `employeeId`\n- For creation:\n  - `employeeId`: Employee to request for\n  - `timeOffTypeId`: Type ID from GET_META_TIME_OFF_TYPES\n  - `start`: Start date (YYYY-MM-DD)\n  - `end`: End date (YYYY-MM-DD)\n  - `amount`: Number of days\u002Fhours\n  - `notes`: Optional notes for the request\n- For update: `requestId`, `status` ('approved', 'denied', 'cancelled')\n\n**Pitfalls**:\n- Time-off type IDs are numeric; resolve via GET_META_TIME_OFF_TYPES first\n- Date format is 'YYYY-MM-DD' for start and end dates\n- Balances may be in hours or days depending on company configuration\n- Request status updates require appropriate permissions (manager\u002Fadmin)\n- Creating a request does NOT auto-approve it; separate approval step needed\n\n### 4. Update Employee Information\n\n**When to use**: User wants to modify employee profile data\n\n**Tool sequence**:\n1. `BAMBOOHR_GET_EMPLOYEE` - Get current employee data [Prerequisite]\n2. `BAMBOOHR_UPDATE_EMPLOYEE` - Update employee fields [Required]\n\n**Key parameters**:\n- `id`: Employee ID (numeric, required)\n- Field-value pairs for the fields to update (e.g., `department`, `jobTitle`, `workPhone`)\n\n**Pitfalls**:\n- Only fields included in the request are updated; others remain unchanged\n- Some fields are read-only and cannot be updated via API\n- Field names must match BambooHR's expected field names exactly\n- Updates are audited; changes appear in the employee's change history\n- Verify current values with GET_EMPLOYEE before updating to avoid overwriting\n\n### 5. Manage Dependents and Benefits\n\n**When to use**: User wants to view employee dependents or benefit coverage\n\n**Tool sequence**:\n1. `BAMBOOHR_DEPENDENTS_GET_ALL` - List all dependents [Required]\n2. `BAMBOOHR_BENEFIT_GET_COVERAGES` - Get benefit coverage details [Optional]\n\n**Key parameters**:\n- For dependents: Optional `employeeId` filter\n- For benefits: Depends on schema; check RUBE_SEARCH_TOOLS for current parameters\n\n**Pitfalls**:\n- Dependent data includes sensitive PII; handle with appropriate care\n- Benefit coverages may include multiple plan types per employee\n- Not all BambooHR plans include benefits administration; check account features\n- Data access depends on API key permissions\n\n## Common Patterns\n\n### ID Resolution\n\n**Employee name -> Employee ID**:\n```\n1. Call BAMBOOHR_GET_ALL_EMPLOYEES\n2. Find employee by name in directory results\n3. Extract id (numeric) for detailed operations\n```\n\n**Time-off type name -> Type ID**:\n```\n1. Call BAMBOOHR_GET_META_TIME_OFF_TYPES\n2. Find type by name (e.g., 'Vacation', 'Sick Leave')\n3. Extract id for time-off requests\n```\n\n### Incremental Sync Pattern\n\nFor keeping external systems in sync with BambooHR:\n```\n1. Store last_sync_timestamp\n2. Call BAMBOOHR_EMPLOYEE_GET_CHANGED with since=last_sync_timestamp\n3. For each changed employee ID, call BAMBOOHR_GET_EMPLOYEE\n4. Process updates in external system\n5. Update last_sync_timestamp\n```\n\n### Time-Off Workflow\n\n```\n1. GET_META_TIME_OFF_TYPES -> find type ID\n2. GET_TIME_OFF_BALANCES -> verify available balance\n3. CREATE_TIME_OFF_REQUEST -> submit request\n4. UPDATE_TIME_OFF_REQUEST -> approve\u002Fdeny (manager action)\n```\n\n## Known Pitfalls\n\n**Employee IDs**:\n- Always numeric integers\n- Resolve names to IDs via GET_ALL_EMPLOYEES\n- Terminated employees retain their IDs\n\n**Date Formats**:\n- Time-off dates: 'YYYY-MM-DD'\n- Change detection: ISO 8601 with timezone\n- Inconsistent formats between endpoints; check each endpoint's schema\n\n**Permissions**:\n- API key permissions determine accessible fields and operations\n- Some operations require admin or manager-level access\n- Time-off approvals require appropriate role permissions\n\n**Sensitive Data**:\n- Employee data includes PII (names, addresses, SSN, etc.)\n- Handle all responses with appropriate security measures\n- Dependent data is especially sensitive\n\n**Rate Limits**:\n- BambooHR API has rate limits per API key\n- Bulk operations should be throttled\n- GET_ALL_EMPLOYEES is more efficient than individual GET_EMPLOYEE calls\n\n**Response Parsing**:\n- Response data may be nested under `data` key\n- Employee fields vary based on `fields` parameter\n- Empty fields may be omitted or returned as null\n- Parse defensively with fallbacks\n\n## Quick Reference\n\n| Task | Tool Slug | Key Params |\n|------|-----------|------------|\n| List all employees | BAMBOOHR_GET_ALL_EMPLOYEES | (none) |\n| Get employee details | BAMBOOHR_GET_EMPLOYEE | id, fields |\n| Track changes | BAMBOOHR_EMPLOYEE_GET_CHANGED | since, type |\n| Time-off types | BAMBOOHR_GET_META_TIME_OFF_TYPES | (none) |\n| Time-off balances | BAMBOOHR_GET_TIME_OFF_BALANCES | employeeId |\n| List time-off requests | BAMBOOHR_GET_TIME_OFF_REQUESTS | start, end, employeeId |\n| Create time-off request | BAMBOOHR_CREATE_TIME_OFF_REQUEST | employeeId, timeOffTypeId, start, end |\n| Update time-off request | BAMBOOHR_UPDATE_TIME_OFF_REQUEST | requestId, status |\n| Update employee | BAMBOOHR_UPDATE_EMPLOYEE | id, (field updates) |\n| List dependents | BAMBOOHR_DEPENDENTS_GET_ALL | employeeId |\n| Benefit coverages | BAMBOOHR_BENEFIT_GET_COVERAGES | (check schema) |\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n\n## Limitations\n- Use this skill only when the task clearly matches the scope described above.\n- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.\n- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.\n","","imported","https:\u002F\u002Fgithub.com\u002Fsickn33\u002Fantigravity-awesome-skills","user_system_seed","SkillOPIC",true,107,721,"2026-05-16 13:08:11",{"id":8,"name":21,"slug":22,"icon":23,"description":24,"sort":25,"createdAt":26},"效率工具","productivity","mdi-lightning-bolt-outline","文档处理、数据分析、自动化工作流",4,"2026-05-16 12:53:40",{"id":7,"name":28,"slug":29,"icon":30,"description":31,"moduleId":8,"sort":32,"skillCount":33,"createdAt":26},"自动化","automation","mdi-robot-outline","工作流自动化、批处理",3,101,[35],{"id":36,"skillId":4,"version":37,"fileName":38,"fileSize":39,"filePath":40,"fileHash":41,"manifest":42,"createdAt":19},"82d73a43-804a-457c-8d71-a4ad2adf6d16","1.0.0","bamboohr-automation.zip",3480,"uploads\u002Fskills\u002F8ac7da51-2f71-4ea4-bf39-328959ed7e4f\u002Fbamboohr-automation.zip","73bdb7709d0daa86ac8ab14ee0edcbb739d4ca92c4be3d641dc7e2726e3feb8b","[{\"path\":\"SKILL.md\",\"isDirectory\":false,\"size\":8851}]",{"code":44,"message":45,"data":46},200,"success",{"items":47,"stats":48,"page":51},[],{"averageRating":49,"totalRatings":49,"ratingCounts":50},0,[49,49,49,49,49],{"limit":52,"offset":49,"hasMore":53,"nextOffset":52,"ratedOnly":16},15,false]