bamboohr-automation について
bamboohr-automationは、ComposioのBambooHRツールキットとRube MCPを通じて、人事業務を自動化するスキルです。従業員情報、休暇申請、変更追跡、扶養家族や福利厚生の照会に対応します。
主な機能
- 01従業員プロフィールの一覧と確認
- 02従業員情報の変更追跡
- 03休暇申請の確認と管理
- 04従業員情報の更新
- 05扶養家族と福利厚生の照会
活用シーン
- 01従業員を検索して指定項目を取得
- 02最近変更された従業員記録の同期
- 03休暇申請の提出や確認
- 04扶養家族や福利厚生情報の確認
MCP 対応
Rube MCPを介してComposioのBambooHRツールキットを利用します。有効なBambooHR接続が必要で、最新のツールスキーマを先に取得する手順です。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ davepoon/ buildwithclaude --skill bamboohr-automationインストール後、Claude Code で/bamboohr-automationを入力して読み込まれたか確認します。
詳細
Rube MCP による BambooHR の自動化
Rube MCP を介して Composio の BambooHR ツールキットを利用し、人事業務を自動化します。
ツールキットのドキュメント:composio.dev/toolkits/bamboohr
前提条件
- Rube MCP が接続されていること(RUBE_SEARCH_TOOLS を利用可能であること)
RUBE_MANAGE_CONNECTIONSを通じてbamboohrツールキットに接続済みの BambooHR アカウントがあること- 必ず最初に
RUBE_SEARCH_TOOLSを呼び出して、最新のツールスキーマを取得すること
セットアップ
Rube MCP の入手:クライアント設定で https://rube.app/mcp を MCP サーバーとして追加します。API キーは不要です。エンドポイントを追加するだけで利用できます。
RUBE_SEARCH_TOOLSが応答することを確認し、Rube MCP が利用可能であることを確認します- ツールキット
bamboohrを指定してRUBE_MANAGE_CONNECTIONSを呼び出します - 接続が ACTIVE でない場合は、返された認証リンクに従って BambooHR の認証を完了します
- ワークフローを実行する前に、接続ステータスが ACTIVE であることを確認します
主なワークフロー
1. 従業員の一覧表示と検索
使用する場面:従業員を検索したい場合や、従業員名簿全体を取得したい場合
ツールの実行順序:
BAMBOOHR_GET_ALL_EMPLOYEES- 従業員名簿を取得します[必須]BAMBOOHR_GET_EMPLOYEE- 特定の従業員の詳細情報を取得します[任意]
主なパラメーター:
- GET_ALL_EMPLOYEES の場合:必須パラメーターはありません。従業員名簿を返します
- GET_EMPLOYEE の場合:
id:従業員 ID(数値)fields:取得するフィールドのカンマ区切りリスト(例:'firstName,lastName,department,jobTitle')
注意点:
- 従業員 ID は数値の整数です
- GET_ALL_EMPLOYEES は従業員名簿の基本情報を返します。詳細情報を取得するには GET_EMPLOYEE を使用してください
fieldsパラメーターで返されるフィールドを指定します。省略すると、最小限のデータしか返されない場合があります- よく使用されるフィールド:firstName、lastName、department、division、jobTitle、workEmail、status
- 退職済みや無効な従業員が含まれる場合があります。
statusフィールドを確認してください
2. 従業員情報の変更を追跡する
使用する場面:同期や監査のため、従業員データの最近の変更を検出したい場合
ツールの実行順序:
BAMBOOHR_EMPLOYEE_GET_CHANGED- 最近変更された従業員を取得します[必須]
主なパラメーター:
since:変更検出のしきい値となる ISO 8601 形式の日時文字列type:確認する変更の種類(例:'inserted'、'updated'、'deleted')
注意点:
sinceパラメーターは必須です。ISO 8601 形式を使用してください(例:'2024-01-15T00:00:00Z')- 変更された従業員の ID を返します。従業員データ全体は返しません
- 変更された従業員の詳細は、それぞれ GET_EMPLOYEE を別途呼び出して取得する必要があります
- 差分同期のワークフローに便利です。最後に同期した日時をキャッシュしてください
3. 休暇を管理する
使用する場面:休暇残高の確認、休暇の申請、または申請の管理を行いたい場合
ツールの実行順序:
BAMBOOHR_GET_META_TIME_OFF_TYPES- 利用可能な休暇の種類を一覧表示します[前提条件]BAMBOOHR_GET_TIME_OFF_BALANCES- 現在の残高を確認します[任意]BAMBOOHR_GET_TIME_OFF_REQUESTS- 既存の申請を一覧表示します[任意]BAMBOOHR_CREATE_TIME_OFF_REQUEST- 新しい申請を送信します[任意]BAMBOOHR_UPDATE_TIME_OFF_REQUEST- 申請を変更、承認、または却下します[任意]
主なパラメーター:
- 残高の場合:
employeeId、休暇の種類 ID - 申請の場合:
start、end(期間)、employeeId - 作成の場合:
employeeId:申請対象の従業員timeOffTypeId:GET_META_TIME_OFF_TYPES で取得した種類 IDstart:開始日(YYYY-MM-DD)end:終了日(YYYY-MM-DD)amount:日数または時間数notes:申請に関する任意のメモ
- 更新の場合:
requestId、status('approved'、'denied'、'cancelled')
注意点:
- 休暇の種類 ID は数値です。最初に GET_META_TIME_OFF_TYPES で確認してください
- 開始日と終了日には 'YYYY-MM-DD' 形式を使用してください
- 残高の単位は、会社の設定によって時間または日数になります
- 申請ステータスの更新には、適切な権限(マネージャー/管理者)が必要です
- 申請を作成しても自動承認はされません。別途承認の手順が必要です
4. 従業員情報の更新
使用する場面: ユーザーが従業員プロフィールデータを変更したい場合
ツールの順序:
BAMBOOHR_GET_EMPLOYEE- 現在の従業員データを取得します [前提条件]BAMBOOHR_UPDATE_EMPLOYEE- 従業員のフィールドを更新します [必須]
主要パラメータ:
id: 従業員 ID(数値、必須)- 更新するフィールドのフィールドと値のペア(例:
department、jobTitle、workPhone)
注意点:
- リクエストに含めたフィールドのみが更新され、それ以外は変更されません
- 一部のフィールドは読み取り専用で、API から更新できません
- フィールド名は BambooHR が想定するフィールド名と完全に一致する必要があります
- 更新は監査され、変更は従業員の変更履歴に表示されます
- 上書きを避けるため、更新前に GET_EMPLOYEE で現在の値を確認してください
5. 扶養家族と福利厚生の管理
使用する場面: ユーザーが従業員の扶養家族や福利厚生の適用範囲を確認したい場合
ツールの順序:
BAMBOOHR_DEPENDENTS_GET_ALL- すべての扶養家族を一覧表示します [必須]BAMBOOHR_BENEFIT_GET_COVERAGES- 福利厚生の適用範囲の詳細を取得します [任意]
主要パラメータ:
- 扶養家族の場合: 任意の
employeeIdフィルター - 福利厚生の場合: スキーマに依存します。現在のパラメータは RUBE_SEARCH_TOOLS で確認してください
注意点:
- 扶養家族のデータには機微な PII が含まれるため、適切な注意を払って扱ってください
- 福利厚生の適用範囲には、従業員ごとに複数のプラン種別が含まれる場合があります
- すべての BambooHR プランに福利厚生管理が含まれているわけではありません。アカウントの機能を確認してください
- データアクセスは API キーの権限に依存します
一般的なパターン
ID の解決
従業員名 -> 従業員 ID:
1. Call BAMBOOHR_GET_ALL_EMPLOYEES
2. Find employee by name in directory results
3. Extract id (numeric) for detailed operations
休暇種別名 -> 種別 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
増分同期パターン
外部システムを 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
休暇ワークフロー
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)
既知の注意点
従業員 ID:
- 常に数値の整数です
- GET_ALL_EMPLOYEES で名前を ID に解決してください
- 退職した従業員も ID を保持します
日付形式:
- 休暇の日付: 'YYYY-MM-DD'
- 変更検出: タイムゾーン付きの ISO 8601
- エンドポイント間で形式が一致しないため、各エンドポイントのスキーマを確認してください
権限:
- API キーの権限によって、アクセス可能なフィールドと操作が決まります
- 一部の操作には管理者またはマネージャーレベルのアクセスが必要です
- 休暇の承認には適切なロール権限が必要です
機微なデータ:
- 従業員データには PII(氏名、住所、SSN など)が含まれます
- すべてのレスポンスを適切なセキュリティ対策で扱ってください
- 扶養家族のデータは特に機微です
レート制限:
- BambooHR API には API キーごとのレート制限があります
- 一括操作はスロットリングしてください
- GET_ALL_EMPLOYEES は個別の GET_EMPLOYEE 呼び出しよりも効率的です
レスポンスの解析:
- レスポンスデータは
dataキーの下にネストされている場合があります - 従業員のフィールドは
fieldsパラメータに応じて変わります - 空のフィールドは省略されるか、null として返される場合があります
- フォールバックを用意して防御的に解析してください
クイックリファレンス
| タスク | ツールスラッグ | 主要パラメータ |
|---|---|---|
| すべての従業員を一覧表示 | BAMBOOHR_GET_ALL_EMPLOYEES | (なし) |
| 従業員の詳細を取得 | BAMBOOHR_GET_EMPLOYEE | id, fields |
| 変更を追跡 | BAMBOOHR_EMPLOYEE_GET_CHANGED | since, type |
| 休暇種別 | BAMBOOHR_GET_META_TIME_OFF_TYPES | (なし) |
| 休暇残高 | BAMBOOHR_GET_TIME_OFF_BALANCES | employeeId |
| 休暇申請を一覧表示 | BAMBOOHR_GET_TIME_OFF_REQUESTS | start, end, employeeId |
| 休暇申請を作成 | BAMBOOHR_CREATE_TIME_OFF_REQUEST | employeeId, timeOffTypeId, start, end |
| 休暇申請を更新 | BAMBOOHR_UPDATE_TIME_OFF_REQUEST | requestId, status |
| 従業員を更新 | BAMBOOHR_UPDATE_EMPLOYEE | id, (フィールド更新) |
| 扶養家族を一覧表示 | BAMBOOHR_DEPENDENTS_GET_ALL | employeeId |
| 福利厚生の適用範囲 | BAMBOOHR_BENEFIT_GET_COVERAGES | (スキーマを確認) |
Powered by Composio