HR Partner MCP Server
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| HR_PARTNER_API_KEY | Yes | Your HR Partner API key | |
| HR_PARTNER_API_BASE_URL | No | API base URL, defaults to https://api.hrpartner.io | https://api.hrpartner.io |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_companyA | Get basic company information from HR Partner: company name, subscription status and expiry, employee counts, and timezone. Useful for validating the API key is connected to the correct company. |
| list_employeesA | Get a list of employees in HR Partner with optional filters. Returns summary details per employee (code, name, department, location, position, status flags, dates). Use get_employee with the employee 'code' for full details including contacts, addresses and custom fields. |
| get_employeeA | Get full details for a single employee by Employee Code, including contact details, addresses, tags, and any custom fields configured for the company. Use list_employees first to find employee codes. |
| list_contactsA | Get a contact-centric list of employee contact records across multiple employees. Individual employee contacts are also included in the get_employee response. |
| list_addressesA | Get a flat list of employee addresses across employees. Individual employee addresses are also included in the get_employee response. |
| save_employeeA | Create a new employee or update an existing one in HR Partner (upsert by Employee Code). Only supplied fields are modified. Custom fields go in custom_data (only the keys you want to change are needed). New values for department/location/position/employment_status are added to the lookup lists automatically. Note: tags, contacts and addresses can be added/updated but NOT deleted via the API. |
| list_absencesB | Get employee absence records (leave taken, or TOIL/Flexi leave added). Includes absence reason, status, dates, duration, physician/certificate details and attachments. |
| list_assetsA | Get company assets allocated to employees (e.g. phones, laptops), including identifiers, serial numbers, allocation/return dates and attachments. |
| list_attachmentsA | Get file attachments stored against employee records, with description (file name), download URL, size, and the module they belong to. |
| list_benefitsA | Get employee benefit records (health cover, allowances etc.) including type, status, provider, value and dates. |
| list_dependentsA | Get employee dependent / next-of-kin records including type, name, contact details and date of birth. |
| list_educationB | Get employee education history records including institution, qualification, type, status and commence/completion dates. |
| list_grievancesA | Get employee grievance / complaint / harassment records including type, status, description, actioned-by and reported dates. |
| list_interviewsA | Get employee interview / meeting records including type, interviewer, description and dates. |
| list_notesB | Get employee notes including note text, hashtags, created/updated dates and optional change-event history. |
| list_positionsB | Get employee position (job) history records including position name, remuneration, pay level and commence/completion dates. |
| list_renewablesB | Get employee renewable document records (licences, certifications, visas etc.) including type, description, issue date and renewal due date. |
| list_reviewsA | Get employee review records (probation reviews, performance check-ins etc.) including type, status, reviewer, score and review dates. For full performance review forms see list_performances. |
| list_skillsB | Get employee skill records including skill name, rating and comments. |
| list_trainingB | Get employee training course records including type, status, course name, institution, cost, reimbursement and commence/completion dates. |
| list_goalsA | Get company and employee goals with scope, type, target/current values, completion and due dates. |
| list_checklistsA | Get employee checklists (onboarding/offboarding etc.) with status, progress percentage, assigned/completed dates. |
| list_birthdaysA | Get upcoming employee birthdays (active, non-terminated employees only) with calculated age. Filter by month range and optionally forecast ages for a future year. |
| list_anniversariesA | Get upcoming employee work anniversaries (active, non-terminated employees only) with years worked. Filter by month range and optionally forecast service length for a future year. |
| get_library_documentsA | Get documents from the HR Partner document library (policies, handbooks etc.), optionally limited to one category. Returns description, download URL, size and timestamps. |
| get_library_categoriesA | Get the document library category list. The 'detailed' view also includes parent and child category relationships. |
| get_lookupA | Get the valid values for an HR Partner lookup list (departments, locations, positions, absence reasons, review types, tags etc.). Use this to discover valid filter values for the other tools. Lookups are read-only via the API. |
| list_remindersB | Get admin reminders with description, module, remind date, notification flags and the responsible user/employee. |
| get_reminderA | Get a single reminder by its unique ID. Use list_reminders to find reminder IDs. |
| update_reminderA | Update a reminder's description and flags. Note: the employee, admin user and reminder date CANNOT be changed via the API, only the description and the notification/active flags. |
| delete_reminderA | Permanently delete a reminder by its unique ID. This cannot be undone. |
| list_leave_requestsA | Get employee leave (time off) requests with status, absence reason (leave policy), dates, duration and description. Use get_leave_request for full approval detail on one request. |
| get_leave_requestA | Get a single leave request by ID, including approver action history, approval conditions, extended employee details and file attachments. Use list_leave_requests to find IDs. |
| list_leave_balancesA | Get employee leave balances per leave policy: entitlement, current balance, carryover, units and accrual details. Warning: balances are slow to compute, so always filter to the smallest dataset needed (e.g. a single employee or policy). |
| list_expensesA | Get employee expense claims. The report_type controls the shape: 'detailed' returns claim headers plus expense lines and attachments, 'summary' returns claim headers only, 'transaction' returns expense lines only. |
| list_projectsA | Get project/activity costing entries (from timesheets and expenses) with employee, project, activity, currency, hours/cost and transaction dates. |
| list_performancesA | Get performance review cycles with status, template, assigned/review/completed dates. Optionally include individual form statuses (employee/manager/peer/user) and the full questions and answers (significantly increases response time, so combine with other filters). |
| list_jobsA | Get recruitment job listings with title, department, location, position, publish dates and flags. Use get_job with the job id/slug for full detail including application form, scorecard and pipeline stages. |
| get_jobA | Get a single job listing by its unique job ID/slug (e.g. 'forklift-driver-oz0H'), including selection panel, custom application form definition, scorecard, pipeline stages and full text/web content. Use list_jobs to find job IDs. |
| list_applicantsA | Get recruitment applicants (candidates). Search matches first name, last name or email (including email domain). |
| get_applicantA | Get a single applicant by unique ID or email address, including their job applications with stage, scores and flags. |
| save_applicantA | Create a new applicant or update an existing one (upsert by email). Can also link the applicant to one or more job listings and move them to a pipeline stage (the stage name must already exist). |
| list_applicationsA | Get applications for a specific job listing (the API cannot list applications across all jobs at once). Includes applicant details, stage, source, flags and custom form answers. |
| get_applicationA | Get a single job application by its numeric ID, including applicant details, stage, job listing, custom form answers, scorecards, attachments, interviews and comments. Use list_applications to find application IDs. |
| save_applicationA | Create a new job application or update an existing one. Also upserts the applicant by email. An invalid stage name results in the company default stage (usually 'Applied'). Custom form answers are keyed by the form field names from the job listing's custom form (see get_job). |
| get_application_stage_trackingA | Get the history of job applications moving between recruitment pipeline stages. Maximum 500 records per response, so use filters to stay below the limit. |
| list_timesheetsA | Get timesheet data grouped by timesheet template, sequence (period), employee and individual time entries. Warning: can return a LOT of data; always use date ranges or employee filters to avoid timeouts. |
| get_timesheetA | Get a single employee's timesheet for one sequence (period). Returns the same structure as list_timesheets for one employee/sequence combination. |
| add_timeclock_entryA | Add a timesheet/timeclock entry for an employee. Times are the employee's LOCAL time in 'yyyy-mm-dd hh:mm' format. Entries can only be added to OPEN timesheet sequences, and the timeclock module must be enabled for the company and the employee's timesheet template. Identify the employee with either employee_code or employee_email. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/HR-Partner/hrpartner-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server