Breathe HR MCP by usefulapi

io.usefulapi/breathe-hr

Read Breathe HR employees, absences, sickness and leave; create and review leave requests.

Yes, your AI can use this right now.Answered a live MCP handshake in 141 ms with no sign-in needed and exposes 25 tools.

Connect it

Settings → Connectors → Add custom connector
URL: https://breathe-hr.usefulapi.io/mcp

25 tools, verified live

Pulled straight from the server with tools/list on 2026-10-17.
breathehr_get_accountread-only

The Breathe HR account (company) this API key belongs to: id, name, domain and enabled modules. GET /account.

breathehr_list_departmentsread-only

List the company's departments (id, name). Use the ids to filter absences, leave, sickness and pay. GET /departments.

breathehr_list_divisionsread-only

List the company's divisions (id, name). All of them are returned in one reply. GET /divisions.

breathehr_list_locationsread-only

List the company's work locations (id, name). All of them are returned in one reply. GET /locations.

breathehr_list_working_patternsread-only

List the working patterns (hours per weekday, total weekly hours, default flag). All of them are returned in one reply. GET /working_patterns.

breathehr_list_holiday_allowancesread-only

List the holiday allowance schemes (id, default flag, year_1 to year_10 = the allowance for each year of service, created_at, updated_at). All of them are returned in one reply. GET /holiday_allowances.

breathehr_list_other_leave_reasonsread-only

List the reasons for non-holiday leave (e.g. compassionate, jury service). Use the ids to filter absences. All of them are returned in one reply. GET /other_leave_reasons.

breathehr_list_employeesread-only

List employees with job title, department, division, location, line manager, holiday approver, working pattern, join/leaving dates and status. Bank details and National Insurance numbers are never returned. GET /employees.

breathehr_get_employeeread-only

One employee's record by id (personal and job details, contacts, manager, working pattern). Bank details and NI number are never returned. GET /employees/{id}.

breathehr_get_holiday_yearsread-only

An employee's holiday years: start/end, allowance, days or hours taken, booked and remaining. Pass for_date to get only the year that contains that date. GET /employees/{id}/employee_holiday_years.

breathehr_list_absencesread-only

List approved absences (holiday and other leave) with employee, dates, half days, days deducted and cancelled flag. Filter by employee, department, type, other-leave reason and dates. GET /absences.

breathehr_list_leave_requestsread-only

List leave requests (pending, approved, rejected and cancelling requests) with employee, dates, half days, type, status and notes. Filter by employee, department and start-date range. GET /leave_requests.

breathehr_get_leave_requestread-only

One leave request by id, with its status. GET /leave_requests/{id}.

breathehr_list_sicknessesread-only

List sickness absence records (health data): employee, sickness type, dates, half days, days deducted, status (open, returned, closed…) and reason. Filter by employee, department and start-date range. GET /sicknesses.

breathehr_list_salariesread-only

List salary records (amount, basis, payment schedule, start date) for the whole company, one employee or one department. GET /salaries, /employees/{id}/salaries or /departments/{id}/salaries.

breathehr_list_bonusesread-only

List bonus records (amount, date, description) for the whole company, one employee or one department. GET /bonuses, /employees/{id}/bonuses or /departments/{id}/bonuses.

breathehr_list_benefitsread-only

List employee benefits (type, value, start/end) for the whole company, one employee or one department. GET /benefits, /employees/{id}/benefits or /departments/{id}/benefits.

breathehr_list_employee_jobsread-only

List job history records (job title, start/end dates, department, location) for all employees or one employee. GET /employee_jobs.

breathehr_list_training_coursesread-only

List employee training records (course name, type, status, dates, cost) for all employees or one employee. GET /employee_training_courses.

breathehr_list_expense_claimsread-only

List expense claims (employee, total, state, approver) filtered by employee and state. GET /employee_expense_claims.

breathehr_list_expensesread-only

List individual expense items (date, description, type, amount, VAT, project). By default only unclaimed items; set include_claimed to see all. GET /employee_expenses.

breathehr_list_change_requestsread-only

List employee self-service change requests (field, requested value, approval state) for all employees or one employee. Requested values of bank and NI fields are redacted. GET /change_requests or /employees/{id}/change_requests.

breathehr_create_leave_requestcan modify

WRITE: request leave for an employee (holiday by default, or other leave). It is created as a request, then follows the account's approval rules; the employee's approver is notified. Each call creates a new request. POST /employees/{id}/leave_requests.

breathehr_approve_leave_requestcan modify

WRITE: approve a pending leave request; it becomes an absence and is deducted from the allowance. Recorded as done by the "API Employee". POST /leave_requests/{id}/approve.

breathehr_reject_leave_requestcan modify

WRITE: reject a pending leave request with a reason the employee will see. Recorded as done by the "API Employee". POST /leave_requests/{id}/reject.

Alternatives in Other

Compare →
Try “Notion”, “Stripe”, “create invoice”, “browser”