Skip the install. Get this working in under 2 minutes.
Start a free trial on cloud.anythingmcp.com, add the Access PeopleHR in one click, then point your AI client (Claude, ChatGPT, Copilot or Cursor) at the generated MCP endpoint. No Docker, no git clone, zero engineering experience required.
Summary
Access PeopleHR, UK HR software: employees, holidays, absences, holiday entitlements, salaries, saved Query Builder reports, appraisals, training, timesheets, work patterns and recruitment vacancies. Integration API v4, API key sent in the JSON body of every POST.
Try asking
Example prompts for Access PeopleHR
Click any prompt to copy it. Paste into Claude, ChatGPT, Cursor, Gemini, Copilot or OpenClaw to run it against this connector.
Claude is AI and can make mistakes. Please double-check responses.
💡 No install? Use cloud.anythingmcp.com directly. Sign in, click Connectors → Access PeopleHR, paste your credentials, mint an MCP API key — done. No Docker, no
git clone, no local server.
Access PeopleHR + Microsoft Copilot
Access PeopleHR, UK HR software: employees, holidays, absences, holiday entitlements, salaries, saved Query Builder reports, appraisals, training, timesheets, work patterns and recruitment vacancies. Integration API v4, API key sent in the JSON body of every POST.
Prerequisites
See the full setup instructions baked into the connector (visible in the in-app store when you select the connector). The required environment variables for this connector are:
PEOPLEHR_API_KEY
Step 1 — Get credentials
The connector calls the Access PeopleHR Integration API v4 with one API key. It reads employees, leave, salaries, saved reports, appraisals, training, timesheets and vacancies, and can book holidays and absences when the key allows it.
- A PeopleHR administrator opens Settings > API and creates a key (a GUID such as
1a2b3c4d-...). - While creating it, tick the resources and actions the key may call: at least Employee, Holiday, Absence, Holiday Entitlements, Salary, Query Builder, Appraisal, Training and ATS for the read tools. Add the Add Holiday and Add Absence actions only if you want
peoplehr_add_holidayandpeoplehr_add_absenceto work. - Paste the key into
PEOPLEHR_API_KEY. If the key has an IP allow-list, calls from AnythingMCP are refused unless its address is on the list. - Call
peoplehr_get_company_informationfirst to check the key, thenpeoplehr_get_employee_directoryto find the EmployeeId (such asPW15) that the per-employee tools take.
Things to know:
- Errors come back as HTTP 200. Read
Statusin the answer: 0 success, 10 no records found, 5 validation error orAccess Denied., 6 server error.Access Denied.means the key is not granted that action or schema. peoplehr_list_leaversneeds its own GetAllLeavers grant, and the vacancy and applicant tools need the recruitment (ATS) module. Without them they answer Status 5.peoplehr_run_queryruns a saved Query Builder query by its exact name. The API cannot list queries, so take the name from Reports > Query Builder.- Dates are
yyyy-MM-dd. The rate limit is set per company by Access; a throttled call answers Status 5 with a per-minute limit message, so wait a minute and retry.
Step 2 — Install the adapter
curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d
Step 3 — Add the connector in Microsoft Copilot
Your server URL: in AnythingMCP, open MCP Servers → the server this connector is on, and copy its URL (
https://cloud.anythingmcp.com/mcp/…). Use it wherever this guide showsYOUR_SERVER_ID.
Microsoft Copilot uses MCP servers through agents built in Copilot Studio: you add AnythingMCP to an agent as a tool, then publish the agent to Microsoft 365 Copilot and Teams. Copilot Studio connects from Microsoft's cloud over Streamable HTTP, which AnythingMCP supports.
- In Copilot Studio, open your agent (or create one), go to Tools and choose Add a tool → New tool → Model Context Protocol.
- Enter a Server name (for example
AnythingMCP), a Server description that says what the connector does, and the Server URLhttps://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID. Copilot Studio uses the description to decide when to call the server. - Under authentication, choose API key, set Type to Header and the header name to
X-API-Key, then select Create. - In Add tool, choose Create a new connection, paste an MCP API key from AnythingMCP (MCP Servers → your server → API keys) and select Add to agent.
- Try it in the agent's Test pane: ask for something that needs the
Access PeopleHRtools. - Select Publish, then Channels → Microsoft 365 and Microsoft Teams, keep Make agent available in Microsoft Copilot selected and choose Add channel. See agent in Teams installs it for you; in Microsoft 365 Copilot, type @ and pick the agent.
Prefer per-user sign-in? Choose OAuth 2.0 → Dynamic discovery instead of an API key: each user then signs in to AnythingMCP the first time the agent calls it.
Self-hosting? Use your instance's public HTTPS address instead of https://cloud.anythingmcp.com. Copilot Studio connects from Microsoft's cloud, so localhost does not work.
Available tools
| Tool | What it does |
|---|---|
peoplehr_get_company_information | Return the company (tenant) the API key belongs to: CompanyId, SubDomain and CompanyName |
peoplehr_get_employee_directory | Return every employee in one call as a compact directory: id, name, e-mail, job role, department, location, company, manager, start date… |
peoplehr_list_employees | Page through full employee records (contact, employment, bank and right-to-work details, each field as {DisplayValue, FieldHistory}) |
peoplehr_get_employee | Return one employee's full record by EmployeeId: personal and contact details, job role, department, location, manager, employment type… |
peoplehr_list_leavers | List the employees who have left the company with their leaving details |
peoplehr_get_employee_absences | List one employee's absence (sickness and other absence) records: reason, start and end dates, duration, paid status, part of day… |
peoplehr_list_absences | List absence records for all employees in a date window |
peoplehr_get_employee_holidays | List one employee's annual leave bookings: dates, duration in days or minutes, part of day, approval status, approver and comments |
peoplehr_list_holidays | List annual leave bookings for all employees in a date window |
peoplehr_get_holiday_entitlement | Return one employee's holiday entitlement per holiday year: period start and end, whether it is measured in days or hours, and the… |
peoplehr_list_holiday_entitlements | Return holiday entitlement rows for every employee and holiday year in a date window: FullName, UniqueId, period, unit (days or hours) and… |
peoplehr_get_employee_salary | Return one employee's salary records: effective date, salary type, payment frequency, amount, total including entitlements, currency… |
peoplehr_list_salaries | Return salary records for all employees |
peoplehr_run_query | Run a saved Query Builder query by its exact name and return its rows, keyed by the query's own column headings |
peoplehr_get_employee_appraisals | List one employee's appraisals (performance reviews): AppraisalId, review date, reviewer, notes, objectives, action plan and the tenant's… |
peoplehr_get_appraisal | Return one appraisal by its AppraisalId with review date, reviewer, notes, objectives, action plan and custom columns |
peoplehr_get_employee_training | List training records: TrainingId, training type, description, importance, status, start, end and expiry dates, cost, provider and notes |
peoplehr_get_employee_other_events | List one employee's other events (leave types beyond holiday and absence, such as jury duty, training days or appointments) with reason… |
peoplehr_get_employee_lateness | List one employee's lateness records: the date, how many minutes late and comments, optionally within a date window |
peoplehr_get_employee_timesheets | List one employee's timesheets per day with up to 15 time-in and time-out pairs (HH:mm:ss) and comments, within a date window |
peoplehr_list_work_patterns | List the company's work patterns with, per week and weekday, the working days and minutes |
peoplehr_list_vacancies | List the recruitment vacancies (ATS): name, reference, job title, company, location, department, status, closing date, salary range and… |
peoplehr_get_vacancy | Return one vacancy by its reference with description, job description, closing date, salary range and application questions |
peoplehr_list_applicants | List the applicants of one vacancy with ApplicantId, first and last name and e-mail address |
peoplehr_add_holiday | Book annual leave for an employee |
peoplehr_add_absence | Record an absence (e.g. sickness) for an employee with reason, dates, duration and paid status |
FAQ
Which Copilot is this for? Microsoft 365 Copilot at work, through agents built in Copilot Studio. The Microsoft Copilot app for personal accounts has no option to add your own MCP server.
What do I need? A work account with access to Copilot Studio (a license or a trial) to build the agent. People who use it in Microsoft 365 Copilot or Teams need access to the agent: share it with them, or ask an admin to publish it to the organization. If your organization applies data policies to Power Platform connectors, they cover MCP servers too.
The agent doesn't call the tools. Check that the header name is exactly X-API-Key and that the key belongs to the same MCP server as the URL, and make the server description specific: Copilot Studio uses it to decide when to call the server. Publish the agent again after each change; in an open chat, type "start over" to get the new version.
Next steps
- Connector landing page
- Connect to Claude
- Connect to ChatGPT
- Connect to Cursor
- Connect to Gemini
- Connect to Meta Muse
Was this guide helpful?