Skip to main content

Announcing StackOne Defender: leading open-source prompt injection guard for your agent Read More

Zoho People MCP Server
for AI Agents

Production-ready Zoho People MCP server with 73 extensible actions — plus built-in authentication, security, and optimized execution.

Zoho People logo
Zoho People MCP Server
Built by StackOne StackOne

Coverage

73 Agent Actions

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

Authentication

Agent Tool Authentication

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

Agent Auth →

Security

Agent Protection

Every Zoho People 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 Zoho People call.

Tools Discovery →

What is the Zoho People MCP Server?

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

All Zoho People MCP Tools and Actions

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

Cases

  • Create Case

    Submit a new HR case with a category, subject, and optional description for employee service requests

  • Get Case

    Retrieve full details of a specific HR case by its record ID, including status, category, comments, and resolution information

Clients

  • Add Client

    Create a new client in the time tracker module with name, currency, and optional contact details, address, industry classification, and billing configuration

  • List Clients

    Retrieve a paginated list of all clients configured in the time tracker module

  • Update Client

    Modify an existing client's name, contact details, address, industry classification, currency, or billing configuration

  • Delete Client

    Delete one or more clients from the time tracker module by their IDs

Employees

  • Add Employee

    Add a new employee to Zoho People with required fields (EmployeeID, FirstName, LastName, EmailID) and optional profile/direct-add settings

  • Update Employee

    Modify an existing employee's field values by record ID

Jobs

  • Add Job

    Create a new job in the time tracker module with name, dates, project assignment, and assignee configuration

  • List Jobs

    Retrieve jobs assigned to a specific employee with optional filtering by assigner, status, project, and client

  • Delete Job

    Delete one or more jobs from the time tracker module by their IDs

Job Schedules

  • Add Job Schedule

    Create a new job schedule entry for a specific job, date, and time range, with optional repeat configuration and publishing

  • Publish Job Schedule

    Publish job schedules for a user within a date range, making them visible to the assigned employees

  • Get Job Schedule

    Retrieve job schedule entries within a date range (max 1 week). Use user="all" to view all users' schedules (specific email may return permission denied for non-login employees)

  • Delete Job Schedule

    Delete a job schedule entry, with optional control over repeat series deletion

Candidates

  • Add Candidate

    Add a new onboarding candidate to the organization with required first name, last name, email, and mobile number

  • Update Candidate

    Modify field values of a specific onboarding candidate by their record ID

Projects

  • Add Project

    Create a new time tracking project with name, client, users, managers, and optional cost and department configuration

  • Delete Project

    Delete one or more time tracking projects by their IDs

Timesheets

  • Create Timesheet

    Create a new timesheet for a specific employee with a defined date range, and optionally associate it with jobs, projects, or clients

  • List Timesheets

    Retrieve timesheet entries with optional filtering by user, approval status, employee status, and date range

  • Update Timesheet

    Modify an existing timesheet's name, description, submission status, or remove attachments

  • Delete Timesheet

    Permanently delete one or more timesheets by their IDs

Time Logs

  • Create Time Log

    Create a new time log entry for a specific employee against a job with date, hours, and optional billing and project details

  • List Time Logs

    Retrieve time log entries with optional filtering by user, job, date range, client, project, billing status, and approval status

  • Update Time Log

    Modify an existing time log entry -- requires re-sending workDate, jobId, billingStatus, and hours on every call even if not changing them

  • Delete Time Log

    Permanently delete one or more time log entries by their IDs

Other (46)

  • Add Leave Balance

    Add or subtract leave balance for employees by providing balance data as a JSON-encoded string

  • Get Attendance Entries

    Retrieve check-in and check-out attendance entries for a specific date, optionally filtered by employee

  • Get Employee Shift Details

    Retrieve shift configuration details of an employee for a given date range, including shift timings, holidays, and weekends

  • Get Regularization Records

    Fetch attendance regularization request records within a date range, optionally filtered by employee or fetched by record ID

  • List Requested Cases

    Retrieve HR cases that the authenticated user personally submitted (requested), with optional status filtering. Does NOT return cases assigned to you -- use list_my_cases for that

  • List My Assigned Cases

    Retrieve HR cases where the authenticated user is the ASSIGNED AGENT (responsible for resolving), with optional filtering by status, search query, requestor, and time period. Does NOT return cases you submitted -- use list_requested_cases for that

  • List Unassigned Cases

    Retrieve HR cases that have NO assigned agent (unassigned queue). Use this to find cases waiting for someone to pick them up

  • List Open Cases

    Retrieve HR cases in an OPEN state that are relevant to the authenticated user (combines submitted and assigned). Broader than list_my_cases or list_requested_cases

  • List All Cases

    Retrieve ALL HR cases across the entire organization regardless of who submitted or is assigned, with full filtering by status, category, search query, requestor, and time period

  • List Case Categories

    Retrieve all HR case categories configured in the organization, providing category IDs needed for creating new cases

  • Get Client Details

    Retrieve full details of a specific client by its ID, including optional record deletion permission info

  • Get Fields Of Form

    Retrieve the full schema of field components for a specific form, including field labels, types, and allowed values

  • Get Bulk Records

    Retrieve all records from a Zoho People FORM (using formLinkName like "employee"). Returns records GROUPED BY SECTION. Use fetch_record instead if you have a viewName

  • Get Job Details

    Retrieve full details of a specific job by its ID, including optional date formatting and department information

  • List Leave Types

    (DEPRECATION WARNING) Retrieve leave type definitions for a specific employee, including type IDs, names, balance, and paid/unpaid classification

  • List Leave Records

    Retrieve leave request records within a mandatory date range, with optional filtering by employee, approval status, leave type, and data scope

  • Get All Holidays (V2)

    Retrieve holidays with optional filtering by location, shift, employee, and date range (V2 API, replaces deprecated list_holidays)

  • List Timesheet Projects

    Retrieve all time tracking projects with optional filtering by client, assignee, status, manager, and project name search

  • Get Project Details

    Retrieve full details of a specific time tracking project by its ID, including optional user count, job count, and department information

  • Get Time Log Details

    Retrieve full details of a specific time log entry by its ID, including optional timer details and comment count

  • Get Timesheet Details

    Retrieve full details of a specific timesheet by its ID, including time entries, approval status, and total hours

  • Update Employee Shift

    Map or update the shift assigned to an employee for a specified date range

  • Update Record

    Modify field values of a specified record in any Zoho People form

  • Check In

    Record an attendance check-in for a specific employee at a given time, with optional location tracking via map configuration

  • Check Out

    Record an attendance check-out for an employee to complete the daily work hours entry, requiring a prior check-in

  • Single Attendance Record

    User Report - Get attendance report for a SINGLE employee over a date range, including check-in/out times, overtime, deviation, and total hours. For multiple employees, use get_multiple_attendance_report instead

  • Multiple Attendance Records

    User Report - Get attendance report for MULTIPLE employees (up to 100 per request) over a date range, with startIndex pagination. For a single employee, use get_single_attendance_report instead

  • Bulk Import Attendance

    Import attendance check-in and check-out records for multiple employees in a single batch API call

  • Fetch Latest Attendance Entries

    Fetch the latest attendance entries with regularisation entries that have been added or updated within the specified duration in minutes

  • Fetch Forms

    Retrieve all system and custom forms configured in the Zoho People account, including their metadata and view details

  • Fetch Record

    Retrieve paginated records from a Zoho People FORM VIEW (using viewName like P_EmployeeView). Returns a FLAT array of records. Use get_bulk_records instead if you have a formLinkName

  • Fetch Single Record

    Fetch a single record with all field values from any Zoho People form, identified by the form link name and the record's unique ID

  • Insert Record

    Insert a new record into any Zoho People form by providing form-specific field values as a JSON-encoded string

  • Default And Custom View

    Retrieve all configured views across all Zoho People forms, providing view names and IDs used for record retrieval

  • Modify Job

    Modify an existing job's name, dates, project assignment, assignees, or other field values

  • Change Job Status

    Change the status of a job to In-Progress or Completed

  • Edit Job Schedule

    Modify an existing job schedule entry including date, time, description, repeat settings, and publish status

  • User Report

    Retrieve the current leave year balance report for a specific employee, showing taken days and remaining balance across all leave types

  • Leave Booked And Balance Report

    Retrieve leave booked and balance count of employees, broken down by leave type

  • Cancel Leave

    Cancel an existing leave request by its record ID with an optional reason

  • Reopen Onboarding

    Reopen the onboarding process for a candidate using their email or candidate ID

  • Trigger Employee Onboarding

    Trigger the onboarding process for an existing employee by their record ID

  • Trigger Candidate Onboarding

    Trigger the onboarding process for an existing candidate by their record ID

  • Modify Project

    Modify an existing project's name, client, users, managers, cost, or department configuration

  • Change Project Status

    Change the status of a time tracking project to In-progress or Completed

  • Approve Timesheet

    Approve or reject a submitted timesheet, with optional comments and control over multi-level approval

Set Up Your Zoho People MCP Server in Minutes

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

MCP Clients

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>"
      ]
    }
  }
}

More HRIS / HCM MCP Servers

UKG Ready

140+ actions

Factorial

127+ actions

HiBob

123+ actions

Oracle Fusion HCM

120+ actions

Humaans

117+ actions

BambooHR

100+ actions

Zoho People MCP Server FAQ

Zoho People MCP server vs direct API integration — what's the difference?
A Zoho People MCP server and direct API integration serve different use cases. Direct API integration is for software-to-software — backend code calling Zoho People. A Zoho People 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 Zoho People at runtime. StackOne provides both.
How does Zoho People authentication work for AI agents?
Zoho People 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 Zoho People account; StackOne handles token exchange, storage, and refresh. Credentials never reach the LLM, and each user is isolated via origin_owner_id.
Are Zoho People MCP tools vulnerable to prompt injection?
Yes — Zoho People 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 Zoho People agent and how do I avoid it?
Context bloat happens when Zoho People tool schemas and API responses eat your Zoho People agent's memory, preventing it from reasoning effectively. A single Zoho People 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 Zoho People agent can access?
Yes — you can limit which actions your Zoho People 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 Zoho People MCP server?
Yes — you can create custom agent actions for your Zoho People MCP server using Connector Builder. It's an integration agent your coding assistant (Claude Code, Cursor, or Copilot) can invoke to research Zoho People's API, generate production-ready connector YAML, test against the live API, and validate before you ship.
When should I NOT use a Zoho People MCP server?
Skip a Zoho People MCP server if your integration is purely software-to-software — direct Zoho People 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 Zoho People actions at runtime.
What AI frameworks and AI clients does the StackOne Zoho People MCP server support?
The StackOne Zoho People 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.