Bedrijfsrooster MCP by usefulapi
Read employees, contracts, timetable shifts, availability and reports in Bedrijfsrooster.
使うべきか
品質と安全性
検出事項(2)
- LOWbedrijfsrooster_get_configuration 内
- LOWbedrijfsrooster_get_availability 内
ツール定義とプロトコルへの準拠に関する自動分析に基づいています。
コンテキストコスト
これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。
インストール
ワンクリックインストール
これを `claude_desktop_config.json` ファイルに追加してください:
{
"mcpServers": {
"bedrijfsrooster": {
"url": "https://bedrijfsrooster.usefulapi.io/mcp"
}
}
}リモートエンドポイント
https://bedrijfsrooster.usefulapi.io/mcpstreamable-httpできること
ツール一覧
ツール(6)
🟢bedrijfsrooster_get_configuration
Get the company this access token belongs to: its id and name, its group, and its locations, departments, functions and shift types. Call this first. The ids it returns are the filters for the other tools. Bedrijfsrooster API: GET /configuration.
入力スキーマ
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢bedrijfsrooster_list_users(periodStart, periodEnd, snapshotDate, extendedDetails)
List the employees (CompanyUsers) with an active or future employment in the company, optionally within a period. Set extendedDetails only when the user asks for personal details: it adds birthday, email and address. Bedrijfsrooster API: GET /users.
入力スキーマ
{
"type": "object",
"properties": {
"periodStart": {
"description": "Only employees with an active contract on or after this date.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"periodEnd": {
"description": "Only employees with an active contract on or before this date.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"snapshotDate": {
"description": "Date for date-bound computed fields. Default: today, or periodEnd.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"extendedDetails": {
"description": "Add personal details (birthday, email, address). Default false.",
"type": "boolean"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢bedrijfsrooster_list_contracts(periodStart, periodEnd, snapshotDate)
List the contracts between the company and its employees that are active at the snapshot date or within a period. Bedrijfsrooster API: GET /contracts.
入力スキーマ
{
"type": "object",
"properties": {
"periodStart": {
"description": "Only contracts on or after this date.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"periodEnd": {
"description": "Only contracts on or before this date.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"snapshotDate": {
"description": "Date for date-bound computed fields. Default: today, or periodEnd.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢bedrijfsrooster_list_timetable(periodStart, periodEnd, status, updatedAfter, shiftsNormal, ...)
List the shifts of the company timetable: scheduled work shifts, availability, relief (vacation, days off) and non-attendance (sick days, no-shows). Choose which kinds to include with the shifts* flags. The reply is paged: use pageIndex (from 1) and itemsPerPage (1 to 1000), or disablePaging for a single reply. Bedrijfsrooster API: GET /timetable.
入力スキーマ
{
"type": "object",
"properties": {
"periodStart": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}([T ]\\d{2}:\\d{2}(:\\d{2}(\\.\\d+)?)?(Z|[+-]\\d{2}:?\\d{2})?)?$",
"description": "A date, or a date-time such as 2026-11-06 09:00:00 or 2026-11-06T09:00:00+01:00."
},
"periodEnd": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}([T ]\\d{2}:\\d{2}(:\\d{2}(\\.\\d+)?)?(Z|[+-]\\d{2}:?\\d{2})?)?$",
"description": "A date, or a date-time such as 2026-11-06 09:00:00 or 2026-11-06T09:00:00+01:00."
},
"status": {
"description": "Comma-separated status constants, for example \"SHIFT_STATUS_VALIDATED,SHIFT_STATUS_SCHEDULED\".",
"type": "string"
},
"updatedAfter": {
"description": "Only shifts whose timetable data changed after this date-time.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}([T ]\\d{2}:\\d{2}(:\\d{2}(\\.\\d+)?)?(Z|[+-]\\d{2}:?\\d{2})?)?$"
},
"shiftsNormal": {
"description": "Include scheduled work shifts.",
"type": "boolean"
},
"shiftsAvailable": {
"description": "Include availability overrides set by employees.",
"type": "boolean"
},
"shiftsRelief": {
"description": "Include relief (vacation, planned days off).",
"type": "boolean"
},
"shiftsNonAttendance": {
"description": "Include non-attendance (sick days, no-shows).",
"type": "boolean"
},
"shiftData": {
"description": "Attach the shift data items that management or employees registered.",
"type": "boolean"
},
"companyUserId": {
"description": "Only shifts of this employee id.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"companyLocationId": {
"description": "Only shifts at this location id.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"companyFunctionId": {
"description": "Only shifts of this function id.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"companyDepartmentId": {
"description": "Only shifts of this department id.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"itemsPerPage": {
"description": "Shifts per page, 1 to 1000 (default 1000).",
"type": "integer",
"minimum": 1,
"maximum": 1000
},
"pageIndex": {
"description": "Page number, starting at 1.",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"disablePaging": {
"description": "Return one reply without paging. Use only for small periods.",
"type": "boolean"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢bedrijfsrooster_get_report(reportId)
Get the stored result of one finished Bedrijfsrooster report by its reportId, for example the relief hours balance. A report that is still running returns HTTP 409 with its percentage_complete: call again later. Needs the company:reports:read integration permission. Bedrijfsrooster API: GET /reports.
入力スキーマ
{
"type": "object",
"properties": {
"reportId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "The report id as the Bedrijfsrooster app shows it."
}
},
"required": [
"reportId"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢bedrijfsrooster_get_availability(entity, periodStart, periodEnd)
Get the availability (beschikbaarheid) per date, for each employee (companyUser) or each function (companyFunction). Use periodStart and periodEnd together, within one month (up to 31 days). Needs the company:availability:read integration permission. Bedrijfsrooster API: GET /availability.
入力スキーマ
{
"type": "object",
"properties": {
"entity": {
"type": "string",
"enum": [
"companyUser",
"companyFunction"
],
"description": "companyUser: hours per employee and date. companyFunction: headcount per function and date."
},
"periodStart": {
"description": "First date. Give periodEnd too. Default: first day of this month.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"periodEnd": {
"description": "Last date. Give periodStart too. Default: last day of this month.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
}
},
"required": [
"entity"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}コミュニティ
エビデンス