Workday

io.github.mindstonePublished by GitHub account mindstonev0.3.2Updated Oct 24, 2026

Workday HCM MCP server for Model Context Protocol hosts — workers, profiles, organizations

Overview

AI-generated overview

Lets an assistant query Workday HCM data — workers, profiles, direct reports, organizations, locations, jobs, time off and job requisitions — over OAuth 2.0.

What you can do
Provides nine tools over a standardised MCP interface for Workday HCM: list or search workers, get a worker's full profile, list direct reports, organizations, locations, time-off entries, job requisitions and job assignments, plus a tool to configure OAuth credentials. Search is client-side, paging through workers and filtering locally on name, email or title. Responses are trimmed to an allowlisted field set, and returned strings are wrapped in untrusted-content envelopes.
When to use it
Useful when an assistant needs read access to Workday HR data — looking up an employee, checking a team's reporting line, reviewing time off, or browsing open requisitions — without leaving the chat host. It fits teams already using Workday with an Integration System User that has the relevant security domains.
Requirements
Local process run with npx from the npm package @mindstone/mcp-server-workday; Node.js 20+ and npm. Needs a Workday API host (WORKDAY_HOST), tenant ID (WORKDAY_TENANT), OAuth client ID (WORKDAY_CLIENT_ID) and client secret (WORKDAY_CLIENT_SECRET); WORKDAY_REFRESH_TOKEN is optional and enables the refresh_token grant. Network access to the Workday host is required.
Before you install
Requires Workday OAuth credentials: WORKDAY_CLIENT_ID, WORKDAY_CLIENT_SECRET and optionally WORKDAY_REFRESH_TOKEN, which are secrets and should be stored as environment variables, not shared. Access is limited by the ISU's security domains; a 403 means a missing domain. Returned Workday text is wrapped as untrusted content, and free-text fields such as time-off comments and street addresses are filtered out before reaching the model.

Installation

In SourceWeft

  1. Open Workday in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

@mindstone/mcp-server-workday

[npm version] [License: FSL-1.1-MIT]

Workday HCM MCP server for Model Context Protocol hosts. Query workers, profiles, direct reports, organizations, locations, jobs, time off, and job requisitions in Workday through a standardised MCP interface using OAuth 2.0 authentication.

Status

Requirements

  • Node.js 20+
  • npm

One-click install

[Add to Cursor] [Add to VS Code] [Add to VS Code Insiders]

After clicking the button, your host will prompt you to fill: WORKDAY_HOST, WORKDAY_TENANT, WORKDAY_CLIENT_ID, WORKDAY_CLIENT_SECRET, WORKDAY_REFRESH_TOKEN.

Manual config for Claude Desktop / Claude Code / Goose / Continue.dev (Workday)
json
{  "mcpServers": {    "Workday": {      "command": "npx",      "args": [        "-y",        "@mindstone/mcp-server-workday"      ],      "env": {        "WORKDAY_HOST": "",        "WORKDAY_TENANT": "",        "WORKDAY_CLIENT_ID": "",        "WORKDAY_CLIENT_SECRET": "",        "WORKDAY_REFRESH_TOKEN": ""      }    }  }}

Quick Start

Install & build

bash
cd <path-to-repo>/connectors/workdaynpm installnpm run build

npx (once published)

bash
npx -y @mindstone/mcp-server-workday

Local

bash
node dist/index.js

Configuration

Environment variables

  • WORKDAY_HOST — Workday API host (e.g. wd5-impl-services1.workday.com)
  • WORKDAY_TENANT — Workday tenant ID
  • WORKDAY_CLIENT_ID — OAuth 2.0 client ID
  • WORKDAY_CLIENT_SECRET — OAuth 2.0 client secret
  • WORKDAY_REFRESH_TOKEN — optional OAuth 2.0 refresh token (enables the refresh_token grant; without it the client_credentials grant is used)
  • WORKDAY_RECRUITING_API_VERSION — optional override for the recruiting REST family version (default v41.2; Workday versions this API by platform release, so tenants on a different release may need e.g. v42.1)
  • MCP_HOST_BRIDGE_STATE — optional path to a host bridge state file used for credential management
  • MINDSTONE_REBEL_BRIDGE_STATE — backwards-compatible alias for MCP_HOST_BRIDGE_STATE

Host configuration examples

Claude Desktop / Cursor

json
{  "mcpServers": {    "Workday": {      "command": "npx",      "args": ["-y", "@mindstone/mcp-server-workday"],      "env": {        "WORKDAY_HOST": "wd5-impl-services1.workday.com",        "WORKDAY_TENANT": "your-tenant",        "WORKDAY_CLIENT_ID": "your-client-id",        "WORKDAY_CLIENT_SECRET": "your-client-secret",        "WORKDAY_REFRESH_TOKEN": "your-refresh-token"      }    }  }}

Local development (no npm publish needed)

json
{  "mcpServers": {    "Workday": {      "command": "node",      "args": ["<path-to-repo>/connectors/workday/dist/index.js"],      "env": {        "WORKDAY_HOST": "wd5-impl-services1.workday.com",        "WORKDAY_TENANT": "your-tenant",        "WORKDAY_CLIENT_ID": "your-client-id",        "WORKDAY_CLIENT_SECRET": "your-client-secret",        "WORKDAY_REFRESH_TOKEN": "your-refresh-token"      }    }  }}

Tools (9)

Configuration

  • configure_workday_credentials — Configure Workday OAuth API credentials

Workers

  • list_workday_workers — List or search workers (employees and contingent workers)
  • get_workday_worker — Get a worker's full profile by ID
  • list_workday_direct_reports — List a worker's direct reports (one level of the org chart)

Organizations

  • list_workday_organizations — List organizations (departments, supervisory orgs, cost centers)
  • list_workday_locations — List work locations (offices, sites)

Time off

  • list_workday_time_off — List a worker's time-off entries (requires the ISU to have Absence Management domain access)

Recruiting

  • list_workday_job_requisitions — List job requisitions / open roles (requires Recruiting domain access; see WORKDAY_RECRUITING_API_VERSION if your tenant 404s)

Jobs

  • list_workday_jobs — List worker job assignments (position, title, location, organization)

Notes

  • Search is client-side. Workday's /workers collection documents only limit/offset, so list_workday_workers' search argument pages through workers and filters locally (case-insensitive match on name, email, title), scanning at most 1000 workers. On larger tenants, use a specific term.
  • Field allowlisting. Every tool trims Workday's responses to an allowlisted set of fields (and deep-picks nested references to ID + name), so free-text fields such as time-off comments, requisition descriptions, and street addresses never reach the model.
  • Untrusted-content envelopes. Every allowlisted string returned from Workday (names, titles, emails, statuses, dates — including values that arrive in an unexpected shape) is wrapped in <untrusted-content source="workday"> envelopes so the model treats them as data, not instructions; keys inside vendor-shaped sub-objects are enveloped too. id and href stay raw so they can be passed back into later tool calls.
  • Strict pagination. limit must be an integer 1-100 and offset a non-negative integer; out-of-range or fractional values are rejected rather than silently clamped. worker_id arguments must be non-blank.
  • Bounded errors & no redirect following. API and token errors return connector-authored messages (never raw vendor error bodies), and HTTP redirects are refused rather than followed, so credentials can never be replayed to a redirect target. The configured host is validated against loopback/private ranges (including non-canonical IP spellings and IPv6 forms) and re-resolved via DNS before credentials are sent.
  • ISU security domains. Workday gates each REST family behind Integration System User domain permissions; a 403 from list_workday_time_off, list_workday_job_requisitions, or list_workday_jobs means the ISU's security group needs the corresponding domain (Absence Management, Recruiting, Payroll).

Licence

FSL-1.1-MIT — Functional Source License, Version 1.1, with MIT future licence. The software converts to MIT licence on 2030-04-08.

Source: connectors/workday/README.md at commit 0396f0b

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

2
  1. v0.3.2LatestOct 14, 2026
  2. v0.3.1Sep 16, 2026

Score

40% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

    Declare a license in the repository or the registry entry.