Skip to main content

The #1 agentic semantic tool search: 91.6% first-try accuracy on S1 Search Bench Explore Tool Discovery

Live 64 Actions

HR Cloud MCP Server
for AI Agents

Connect your AI agent to StackOne's HR Cloud MCP server and give it 64 MCP tools out of the box. Auth, tool execution, and security all managed.

HR Cloud logo
HR Cloud MCP Server
Built by StackOne StackOne
DrataGPLocalyzeFlipMindtoolsScreenloop

Coverage

64 Agent Actions

Create, read, update, and delete across HR Cloud — and extend your agent's capabilities with custom actions.

Authentication

Agent Tool Authentication

Per-user OAuth in one call. Your HR Cloud MCP server gets session-scoped tokens with zero credentials stored on your infra.

Agent Auth →

Security

Agent Protection

Every HR Cloud tool response scanned for prompt injection in milliseconds — 88.7% accuracy, all running on CPU.

Prompt Injection Defense →

Performance

Max Agent Context. Min Cost.

Free up to 96% of your agent's context window to enhance reasoning and reduce cost, on every HR Cloud call.

Tools Discovery →

What is the HR Cloud MCP Server?

A HR Cloud MCP server lets AI agents read and write HR Cloud data through the Model Context Protocol — Anthropic's open standard for connecting LLMs to external tools. StackOne's HR Cloud MCP server ships with 64 pre-built actions, fully extensible via the Connector Builder — plus managed authentication, prompt injection defense, observability, and agent execution runtime. Connect it from MCP clients like Claude Desktop, Claude Code, Cursor, Goose, and VS Code, or from agent frameworks like OpenAI Agents SDK, LangChain, and Vercel AI SDK.

All HR Cloud MCP Tools

Every action from HR Cloud's API, ready for your agent. Create, read, update, and delete — scoped to exactly what you need.

Employees

  • Create Employee

    Create Employee via HR Cloud CoreHR REST API.

  • List Employees

    List Employees via HR Cloud CoreHR REST API.

  • Get Employee

    Get Employee via HR Cloud CoreHR REST API.

  • Update Employee

    Update Employee via HR Cloud CoreHR REST API.

Employee Using Mappings

  • Create Employee Using Mapping

    Create one or more employees, where nested Lookup objects can reference parent entities (Department, Location, Position, etc.) by a "code" field instead of the primary Id.

  • Update Employee Using Mapping

    Update one or more employees, identifying each by an alternative field (xEmail, xEmployeeNumber, etc.) instead of the primary Id. Supports nested Lookup objects keyed by code instead of Id. NOTE; the mapping feature requires the Service Account to hold field-level "Set" permission on every lookup field referenced in the mapping query (xDepartmentLookup, xManagerLookup, xLocationLookup, xPositionLookup, etc.). Without it the provider returns HTTP 400 "Validation failed. No set permission on field <lookup>." regardless of body shape. Same Set-permission gate also blocks UPDATEs that include xRecordStatus / xStartDate / xEmail in the body. Per HR Cloud's security-and-permissions docs, customers' HR Admins cannot grant this — only HR Cloud's Account Manager / Support team can flip the backend permission. Until granted, this action stays preview because its core feature (mapping) cannot be exercised.

Departments

  • Create Department

    Create Department via HR Cloud CoreHR REST API.

  • List Departments

    List Departments via HR Cloud CoreHR REST API.

  • Get Department

    Get Department via HR Cloud CoreHR REST API.

  • Update Department

    Update Department via HR Cloud CoreHR REST API.

Divisions

  • Create Division

    Create Division via HR Cloud CoreHR REST API.

  • List Divisions

    List Divisions via HR Cloud CoreHR REST API.

  • Get Division

    Get Division via HR Cloud CoreHR REST API.

  • Update Division

    Update Division via HR Cloud CoreHR REST API.

Locations

  • Create Location

    Create Location via HR Cloud CoreHR REST API.

  • List Locations

    List Locations via HR Cloud CoreHR REST API.

  • Get Location

    Get Location via HR Cloud CoreHR REST API.

  • Update Location

    Update Location via HR Cloud CoreHR REST API.

Positions

  • Create Position

    Create Position via HR Cloud CoreHR REST API.

  • List Positions

    List Positions via HR Cloud CoreHR REST API.

  • Get Position

    Get Position via HR Cloud CoreHR REST API.

  • Update Position

    Update Position via HR Cloud CoreHR REST API.

Applicants

  • Create Applicant

    Create Applicant via HR Cloud CoreHR REST API. NOTE: REQUIRES the HR Cloud Recruit app to be installed on the tenant (currently not installed by default — request via Settings → Explore Apps → Recruit → 'I'M INTERESTED'). Without it the xApplicantStatus catalog stays empty so xApplicantStatusLookup cannot be supplied.

  • List Applicants

    List Applicants via HR Cloud CoreHR REST API.

  • Get Applicant

    Get a single Applicant by Id. Provider-quirk — when the Id is not found the API returns HTTP 200 with data null instead of 404. Agents must check for null in the response, not just the status code.

  • Update Applicant

    Update Applicant via HR Cloud CoreHR REST API. NOTE: REQUIRES the HR Cloud Recruit app to be installed on the tenant (currently not installed by default — request via Settings → Explore Apps → Recruit → 'I'M INTERESTED'). Without it no xApplicant records exist to update.

Tasks

  • Create Task

    Create a workflow task in the HR Cloud Portal, assigned to a group of employees, optionally tied to a specific HR application (coreHr, onboard, offboard, benefits).

  • List Tasks

    List Tasks via HR Cloud CoreHR REST API.

  • Get Task

    Get Task via HR Cloud CoreHR REST API.

Employee Groups

  • List Employee Groups

    List xEmployeeGroup records. Required for resolving `assignedEmployeeGroupId` on create_task.

  • Get Employee Group

    Get a single xEmployeeGroup by Id.

Bonus Historys

  • List Bonus History

    List Bonus History via HR Cloud CoreHR REST API.

  • Get Bonus History

    Get Bonus History via HR Cloud CoreHR REST API.

Rehire Historys

  • Create Rehire History

    Create a rehire history record (initiate a rehire workflow for an employee). NOTE; provider returns 400 "This action is not available for employment status 'Active'." when the target employee is currently Active. The action only succeeds when xEmployeeLookup points to an employee whose employment status is Terminated (or similar inactive status). Sandbox tenants typically lack pre-Terminated employees, so this action stays preview until tenant has seeded a rehire-eligible employee. Departmentaly some departments are blocked too — provider rejects with "Department can't be <name>" for certain default departments; use a real assignable department (e.g. "HR" with code Id 0d10e0b94428508eff2ba85b7de12569).

  • List Rehire History

    List Rehire History via HR Cloud CoreHR REST API.

Employment Status Historys

  • Create Employment Status History

    Create a new employment status history entry (changes an employee's employment status). NOTE; provider returns 400 "There is already a pending change and new changes are disabled." for any employee with an in-flight (un-applied) status change. Once an employee has a pending change, the only way to clear it is to wait for the effective date and process the change in the HR Cloud UI. Test tenants quickly run out of employees in a "no pending change" state, so this action stays preview until callers can supply a fresh employee or wait out the pending state.

  • List Employment Status History

    List Employment Status History via HR Cloud CoreHR REST API.

Time Off Requests

  • Create Time Off Request

    Create Time Off Request via HR Cloud CoreHR REST API. NOTE: REQUIRES the HR Cloud Time Off app to be installed on the tenant (currently not installed by default — request via Settings → Explore Apps → Time Off → 'I'M INTERESTED'). Without it the endpoint returns 403 or empty results.

  • List Time Off Requests

    List Time Off Requests via HR Cloud CoreHR REST API.

  • Get Time Off Request

    Get Time Off Request via HR Cloud CoreHR REST API.

Employee Attachments

  • Create Employee Attachment

    Upload an attachment file to an employee. Content-Type is multipart/form-data per HR Cloud docs. NOTE: REQUIRES the HR Cloud Workmates app to be installed on the tenant (currently not installed by default — request via Settings → Explore Apps → Workmates → 'I'M INTERESTED'). Without it the endpoint returns 403 or empty results.

  • List Employee Attachments

    List Employee Attachments via HR Cloud CoreHR REST API. NOTE: REQUIRES the HR Cloud Workmates app to be installed on the tenant (currently not installed by default — request via Settings → Explore Apps → Workmates → 'I'M INTERESTED'). Without it the endpoint returns 403 or empty results.

  • Get Employee Attachment

    Get Employee Attachment via HR Cloud CoreHR REST API. NOTE: REQUIRES the HR Cloud Workmates app to be installed on the tenant (currently not installed by default — request via Settings → Explore Apps → Workmates → 'I'M INTERESTED'). Without it the endpoint returns 403 or empty results.

  • Delete Employee Attachment

    Delete Employee Attachment via HR Cloud CoreHR REST API. NOTE: REQUIRES the HR Cloud Workmates app to be installed on the tenant (currently not installed by default — request via Settings → Explore Apps → Workmates → 'I'M INTERESTED'). Without it the endpoint returns 403 or empty results.

Employee Forms

  • List Employee Forms

    List Employee Forms via HR Cloud CoreHR REST API.

  • Get Employee Form

    Retrieve a single form record for an employee, identified by formType + formId.

  • Download Employee Form

    Download one or all forms for an employee as a zip file. Pass formIdentifier (formType_formId) to download a single form, or leave it empty to download all forms in one zip.

Other (17)

  • Upload Applicant Resource (Resume / Cover Letter)

    Upload a resource file (resume, cover letter) to HR Cloud. The endpoint returns a resourceId that is then attached to an applicant via xResumeLookup / xCoverLetterLookup on create or update. NOTE: REQUIRES the HR Cloud Recruit app to be installed on the tenant (currently not installed by default — request via Settings → Explore Apps → Recruit → 'I'M INTERESTED'). Without it the endpoint returns 403 or empty results.

  • List Employment Statuses

    List xEmploymentStatus records. Required for resolving xEmploymentStatusLookup on create/update/upsert_employee.

  • List Employment Types

    List xEmploymentType records. Required for resolving xEmploymentTypeLookup on create/update/upsert_employee. Note xEmploymentType is a DIFFERENT catalog from xEmploymentStatus — do not reuse Status Ids for Type fields. NOTE; endpoint is not listed in HR Cloud's public Core HR API v5.4 docs but is functional (verified — returns Intern / Contractor / Freelance / Full-Time / Part-Time / Internship records). Same precedent as list_employee_groups; if the provider removes the endpoint in a future release, xEmploymentTypeLookup falls back to admin-UI out-of-band discovery.

  • List Position History

    List Position History via HR Cloud CoreHR REST API.

  • List Applicant Statuses

    List xApplicantStatus records. Required for resolving xApplicantStatusLookup on create/update/upsert_applicant.

  • List Salary History

    List Salary History via HR Cloud CoreHR REST API.

  • List Time Off Accruals

    List Time Off Accrual History records via HR Cloud CoreHR REST API. Each record represents an adjustment (positive or negative) to an employee's time off balance for a given Time Off Type. NOTE: REQUIRES the HR Cloud Time Off app to be installed on the tenant (currently not installed by default — request via Settings → Explore Apps → Time Off → 'I'M INTERESTED'). Without it the endpoint returns 403 or empty results.

  • List Time Off Balances

    List employee Time Off Balances via HR Cloud CoreHR REST API. Balances are read-only computed roll-ups of an employee's accrual history and Time Off Requests for a given Time Off Type. NOTE: REQUIRES the HR Cloud Time Off app to be installed on the tenant (currently not installed by default — request via Settings → Explore Apps → Time Off → 'I'M INTERESTED'). Without it the endpoint returns 403 or empty results.

  • List Time Off Types

    List xTimeOffType records. Required for resolving xTimeOffTypeLookup on create_time_off_request and upsert_time_off_request.

  • Download Employee Attachment(s)

    Download one or more attachments belonging to an employee. Omit attachmentIds to download ALL attachments as a single zip. Provide a single attachmentId for one file, or a comma-separated list for multiple files (returned as a zip). NOTE: REQUIRES the HR Cloud Workmates app to be installed on the tenant (currently not installed by default — request via Settings → Explore Apps → Workmates → 'I'M INTERESTED'). Without it the endpoint returns 403 or empty results.

  • Upsert Employee

    Update or create one or more Employees via HR Cloud CoreHR REST API. Records with a matching Id are updated; records whose Id does not yet exist are created.

  • Upsert Department

    Update or create a Department via HR Cloud CoreHR REST API. If a record matching the Id (or Identifier query field) exists it is updated, otherwise a new department is created.

  • Upsert Division

    Update or create a Division via HR Cloud CoreHR REST API. If a record matching the Id (or Identifier query field) exists it is updated, otherwise a new division is created.

  • Upsert Location

    Update or create a Location via HR Cloud CoreHR REST API. If a record matching the Id (or Identifier query field) exists it is updated, otherwise a new location is created.

  • Upsert Position

    Update or create a Position via HR Cloud CoreHR REST API. If a record matching the Id (or Identifier query field) exists it is updated, otherwise a new position is created.

  • Upsert Applicant

    Update or create an Applicant via HR Cloud CoreHR REST API. If the Id is found the record is updated, otherwise a new applicant is created. NOTE: REQUIRES the HR Cloud Recruit app to be installed on the tenant (currently not installed by default — request via Settings → Explore Apps → Recruit → 'I'M INTERESTED'). Without it the xApplicantStatus catalog stays empty so new records cannot be created.

  • Upsert Time Off Request

    Update or create a Time Off Request via HR Cloud CoreHR REST API. If a Time Off Request with the supplied Id exists it is updated, otherwise a new request is created. NOTE: REQUIRES the HR Cloud Time Off app to be installed on the tenant (currently not installed by default — request via Settings → Explore Apps → Time Off → 'I'M INTERESTED'). Without it the endpoint returns 403 or empty results.

HR Cloud AI Agent Use Cases

Connect your AI agent to HR Cloud and help your team scale the HR operations they run by hand today.

Employee Onboarding

Use StackOne to connect your AI agent to your HRIS, identity management, and LMS to automate employee onboarding.

View
WorkdayBambooHRPersonioHiBobGustoRipplingOkta360Learning
HR Policy Q&A Chatbot

Use StackOne to connect your AI agent to your HRIS, knowledge base, and messaging tools to automate HR policy Q&A.

View
WorkdayBambooHRPersonioHiBobGustoRipplingSharePointConfluence
Job Posting Distribution

Use StackOne to connect your AI agent to your ATS and job boards to automate job posting distribution.

View
GreenhouseLeverAshbySmartRecruitersWorkableJobviteiCIMSTeamtailor

Set Up Your HR Cloud MCP Server in Minutes

One endpoint. Any framework. Your agent is talking to HR Cloud in under 10 lines of code.

Agent Frameworks

Claude Desktop
{
  "mcpServers": {
    "stackone": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote@latest",
        "https://api.stackone.com/mcp?x-account-id=<account_id>",
        "--header",
        "Authorization: Basic <YOUR_BASE64_TOKEN>"
      ]
    }
  }
}

Check More HRIS / HCM MCP Servers

HR Cloud MCP Server FAQ

Does StackOne have a HR Cloud MCP server?
Yes. StackOne offers a hosted HR Cloud MCP server with 64 pre-built actions, and every action is tested and QA'd by StackOne. Connect it to Claude, Cursor, and any other MCP client, or to any agent framework through the AI Action SDK. It ships with managed agent authentication, prompt injection defense, and tool discovery with server-side execution that preserve your agent's context window and keep reasoning performance.
HR Cloud MCP server vs direct API integration — what's the difference?
A HR Cloud MCP server and direct API integration serve different use cases. Direct API integration is for software-to-software — backend code calling HR Cloud. A HR Cloud MCP server is for AI agents — MCP clients like Claude and Cursor, plus framework agents built with OpenAI, LangChain, or Vercel AI — discovering and calling HR Cloud at runtime. StackOne provides both.
How does HR Cloud authentication work for AI agents?
HR Cloud authentication for AI agents works through a StackOne Connect Session. Create one via the dashboard or the SDK — you get an auth link and ready-to-paste config for Claude Desktop, Cursor, and other MCP clients. Your user authenticates their own HR Cloud account; StackOne handles token exchange, storage, and refresh. Credentials never reach the LLM, and each user is isolated via origin_owner_id.
Are HR Cloud MCP tools vulnerable to prompt injection?
Yes — HR Cloud MCP tools can be vulnerable to indirect prompt injection. Any tool that reads user-written content — documents, messages, tickets, records, or free-text fields — is a potential vector. StackOne Defender scans every tool response before it enters the agent's context — regex patterns in ~1ms, then a MiniLM classifier in ~4ms. 88.7% accuracy, CPU-only.
What is the context bloat of a HR Cloud agent and how do I avoid it?
Context bloat happens when HR Cloud tool schemas and API responses eat your HR Cloud agent's memory, preventing it from reasoning effectively. A single HR Cloud query can return a massive JSON response, and connecting multiple tools compounds the problem. Tools Discovery and Code Mode reduce context bloat — loading only relevant tools per query and keeping raw responses out of the agent's context.
Can I limit which actions my HR Cloud agent can access?
Yes — you can limit which actions your HR Cloud agent can access directly from the StackOne dashboard. Toggle actions on or off, or restrict them to specific accounts, with no code changes to your agent. Session tokens can be scoped to exact actions so if one leaks, exposure stays contained.
Can I create custom agent actions for my HR Cloud MCP server?
Yes — you can create custom agent actions for your HR Cloud MCP server using Connector Builder. It's an integration agent your coding assistant (Claude Code, Cursor, or Copilot) can invoke to research HR Cloud's API, generate production-ready connector YAML, test against the live API, and validate before you ship.
When should I NOT use a HR Cloud MCP server?
Skip a HR Cloud MCP server if your integration is purely software-to-software — direct HR Cloud API integration is simpler when no AI agent is involved. For deterministic, compliance-critical operations (financial transactions, regulatory reporting), direct API gives you predictable behavior without agent-driven decision-making. MCP shines when AI agents need to dynamically discover and call HR Cloud actions at runtime.
What AI frameworks and AI clients does the StackOne HR Cloud MCP server support?
The StackOne HR Cloud MCP server supports both. MCP clients (paste-and-go apps): Claude Desktop, Claude Code, Cursor, VS Code, Goose. Agent frameworks (code SDKs you build with): OpenAI Agents SDK, Anthropic, Vercel AI, Google ADK, CrewAI, Pydantic AI, LangChain, LangGraph, Azure AI Foundry.

Put your AI agents to work

All the tools you need to build and scale AI agent integrations, with best-in-class connectivity, execution, and security.