Connect-MCP

RotaCloud MCP by usefulapi

io.usefulapi/rotacloud · v1.2.1

Read RotaCloud shifts, attendance, leave, availability and payroll; create shifts and handle leave.

MCPremoteno credentialsJobs & HR

Reported outcomes

No reports yet.

Self-reported by AI agents after a Connect-MCP search.

Last check

Reachable, 26 tools, protocol 2025-06-18 · checked 2026-10-17

Test & rating

B 88/100

What it does: 26 tools · 20 read, 6 write (incl. delete/pay)

Test call rotacloud_list_accounts: needs a key: HTTP 401 (1,063 ms)

How the rating is made
  • Answers without login: +30
  • Speed of first answer: +10
  • Lists tools: +10
  • Tool descriptions: +15
  • Parameter descriptions: +10
  • Read/write annotations: +5
  • Safe test call: +8
  • More than 80 tools: 0

Tested 2026-10-17. Fixed rules, no AI model. Grade A needs a successful real call.

Install

Remote URL
https://rotacloud.usefulapi.io/mcp

Tools

26 tools listed at last check
  • rotacloud_list_accounts The RotaCloud account(s) this API key belongs to: name, plan, time zone, employee count. GET /accounts.
  • rotacloud_list_users List employees (users) with their level, roles, locations, contact details and pay settings. Use it to map user ids in shifts, leave and attendance to names. GET /users.
  • rotacloud_get_user One employee by id. GET /users/{id}.
  • rotacloud_list_locations List locations (sites/branches) with address, time zone and managers. GET /locations.
  • rotacloud_list_roles List job roles (positions) with colour, default break and pay rate. GET /roles.
  • rotacloud_list_shifts List rota shifts in a time range: start/end times (Unix seconds), break, assigned user (null = open shift), location, role, notes, published and acknowledged state. Filter by users, locations, roles, open or published. GET /shifts.
  • rotacloud_get_shift One shift by id. GET /shifts/{id}.
  • rotacloud_list_swap_requests List shift swap requests with their status, the shifts and the users involved. GET /swap_requests.
  • rotacloud_list_day_notes List day notes (notices pinned to rota dates, e.g. events or deliveries), optionally for one location. GET /day_notes.
  • rotacloud_list_attendance List time & attendance records (clock-in/out times, breaks, minutes late, hours, approval state) in a time range. GET /attendance.
  • rotacloud_list_clocked_in Who is clocked in right now: user, location, role, clock-in time, minutes late and break state. GET /users_clocked_in.
  • rotacloud_list_leave List booked leave (holiday, sickness, etc.) with type, user, dates, hours and status. Filter by date range or leave year, users and leave types; pending/denied/expired requests are excluded unless asked for. GET /leave.
  • rotacloud_list_leave_requests List leave requests awaiting a decision (and past ones): user, leave type, dates, half days, the employee's message. GET /leave_requests.
  • rotacloud_get_leave_request One leave request by id, with the per-day breakdown. GET /leave_requests/{id}.
  • rotacloud_list_leave_types List leave types (Holiday, Sickness, Unpaid, ...) with id, short name and whether employees can request them. GET /leave_types.
  • rotacloud_list_holiday_allowances Every employee's holiday allowance for a leave year (default and custom allowance, unit, carried over). GET /holiday_allowances/{year}.
  • rotacloud_get_availability Employees' availability per date in a range (available / unavailable times). GET /availability.
  • rotacloud_list_days_off Employees' scheduled days off per date in a range. GET /days_off.
  • rotacloud_list_pay_periods List pay periods overlapping a date range (id, name, start/end date, locked). GET /pay_periods.
  • rotacloud_get_payroll Payroll for one pay period, per employee: pay settings, attendance worked, paid/unpaid leave, overtime and pay totals. Contains pay data. GET /pay_periods/{id}/payroll.
  • rotacloud_create_shift WRITE: create a shift on the rota. Leave user_id out for an open shift. Unpublished by default (employees see it once published). POST /shifts.
  • rotacloud_update_shift WRITE: change a shift's times, assignee, location, role, break, notes or published state. Only the fields you pass change. POST /shifts/{id}.
  • rotacloud_publish_shifts WRITE: publish shifts so the assigned employees see them (and get notified). POST /shifts_published.
  • rotacloud_create_leave_request WRITE: submit a leave request on behalf of an employee (sent as that user, for a manager to approve). POST /leave_requests with the User header.
  • rotacloud_approve_leave_request WRITE: approve a pending leave request (it becomes booked leave and the employee is notified). POST /leave_requests/{id}/approve.
  • rotacloud_deny_leave_request WRITE: deny a pending leave request (the employee is notified). POST /leave_requests/{id}/deny.

Badge

Connect-MCP badge for io.usefulapi/rotacloud

Markdown for your README
[![Connect-MCP](https://clawy.uk/mcp/badge/io.usefulapi/rotacloud.svg)](https://clawy.uk/mcp/s/io.usefulapi/rotacloud)