io.usefulapi/charliehr · v1.0.0 · productivity
CharlieHR MCP by usefulapi is healthy: it completed an MCP handshake in 1304 ms and exposes 27 tools.
Read CharlieHR team members, leave, allowances, offices, teams and salaries; add team member notes.
Endpoint: https://charliehr.usefulapi.io/mcp (streamable-http)
Repository · Website · JSON · Add to my inventory
| Users (last 30 days) | 0 |
| Handshake | Healthy |
| Auth needed | None |
| Tool count | 27 |
| Latency | 1304 ms |
| Last checked (UTC) | 2026-10-23T11:05:21.356Z |
| Checked (UTC) | Status | Latency | Error |
|---|---|---|---|
| 2026-10-23T11:05:21.356Z | Healthy | 1304 |
charliehr_get_company | The Charlie company the API keys belong to: id, name, subdomain and logo. GET /company. |
charliehr_list_offices | List the company's offices: id, name, whether it is the head office, address, timezone, phone and email. GET /offices. |
charliehr_get_office | One office by id. GET /offices/{id}. |
charliehr_list_teams | List the company's teams with the ids of their team members. GET /teams. |
charliehr_get_team | One team by id, with the ids of its team members. GET /teams/{id}. |
charliehr_list_team_members | List the company's team members (employees): name, work and personal email, phone, address, office, manager, teams, job title, start date, employment status and leaving date. Sensitive fields included: date_of_birth, gender, married, personal email, phone and home address. National Insurance numbers |
charliehr_get_team_member | One team member by id with the full profile (contact details, address, office, manager, teams, dates, employment status, job title, notes). Sensitive fields included: date_of_birth, gender, married, personal email, phone, home address and notes. National Insurance numbers (also inside notes), payrol |
charliehr_get_team_member_working_location | Where one team member works on a date (custom overrides win over the default assignment). Defaults to today. GET /team_members/{id}/working_location. |
charliehr_get_team_member_working_weeks | The working-week segments of one team member (which days are full_day/morning/afternoon, weekly hours, from/to dates), company defaults and custom overrides. Not paginated. GET /team_members/{id}/working_weeks. |
charliehr_list_working_locations | List the active working locations (the catalog). With a date, instead returns where each active team member works on that date. GET /working_locations. |
charliehr_list_leave_requests | List leave requests of the whole company (id, team member, approver, status, request type, start/end date, amount and units, duration, details). Optionally only those in a date window. GET /leave_requests. |
charliehr_get_leave_request | One leave request by id. GET /leave_requests/{id}. |
charliehr_list_team_member_leave_requests | The leave requests of one team member, optionally only those in a date window. GET /team_members/{id}/leave_requests. |
charliehr_list_leave_allowances | The current holiday allowance of every team member: allowance, used and remaining, in days and hours, with the leave period. GET /leave_allowances. |
charliehr_get_team_member_leave_allowance | The current holiday allowance of one team member (allowance, used, remaining, in days and hours, with the period). GET /team_members/{id}/leave_allowance. |
charliehr_list_allowance_adjustments | All holiday allowance adjustments of one team member across every leave period (description, days/hours, carryover flag, creator, period). GET /team_members/{id}/allowance_adjustments. |
charliehr_list_non_holiday_leave_allowances | Days taken and limit for each non-holiday leave type (sick, compassionate...) of one team member. GET /team_members/{id}/non_holiday_leave_allowances. |
charliehr_list_leave_types | The enabled leave types (Holiday, Sick...): id, name, deductible, default, auto-approved, sensitive. GET /leave_types. |
charliehr_get_leave_type | One leave type by id. GET /leave_types/{id}. |
charliehr_list_company_holidays | The company's holidays (bank holidays and closures): name, start/end date, duration, deductible. Optionally only those in a date window. GET /company_holidays. |
charliehr_list_restricted_dates | The dates on which leave is restricted (e.g. a year-end freeze): name, start/end date, duration. Optionally only those in a date window. GET /restricted_dates. |
charliehr_list_salaries | SENSITIVE: the salary records of all team members (job title, pay rate, pay period, frequency, currency, effective date, employment type). Needs API keys with access to salary data. GET /salaries. |
charliehr_list_team_member_salaries | SENSITIVE: the salary history of one team member (job title, pay rate, currency, effective date). GET /team_members/{id}/salaries. |
charliehr_list_team_member_note_types | The custom note types (fields such as Employee No. or Laptop Serial Number) with who may see them. GET /team_member_note_types. |
charliehr_get_team_member_note_type | One note type by id. GET /team_member_note_types/{id}. |
charliehr_list_team_member_notes | The custom notes (label and content) stored on one team member (the content of a note labelled as a National Insurance number, and NI-number-looking text, is redacted). GET /team_members/{id}/notes. |
charliehr_create_team_member_note | WRITE: add a custom note (a value for one note type, e.g. an employee number) to a team member in Charlie. It is created immediately and visible to whoever the note type's permissions allow. Use charliehr_list_team_member_note_types for the note type id. POST /team_members/{id}/notes. |