---
title: "UKG Pro MCP server for AI agents - actionlake"
description: "Give Claude 201 UKG Pro actions through one MCP server: configuration, people, payroll. Your agent never holds the credential. 100,000 calls a month free."
canonical: https://actionlake.com/connectors/ukg-pro
updated: 2026-10-23
---

Connectors · Accounting & finance

# UKG Pro MCP server for AI agents.

actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to UKG Pro and the rest of your systems. It gives your agent 201 UKG Pro actions (132 reads, 64 writes and 5 that wait for a confirmation) and holds the UKG Pro credential itself, so the agent never does. It paces UKG Pro's limits and records every call.

[Connect UKG Pro free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.

`claude mcp add --transport http actionlake https://connect.actionlake.com/mcp`

the first call

```
do {
  action: "ukg_pro.employee_demographic_details.list",
  intent: "check which UKG Pro account is connected"
}
# Get Employee Demographic Details · read · 1 upstream call
```

- 201 actions in one signed file
- 132 read look, never change
- 64 write create and update
- 5 wait for a yes destructive, confirmed first

Set up

## Connect UKG Pro in three steps.

1. 01
   ### Add actionlake to Claude.
   Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.
   `https://connect.actionlake.com/mcp`
2. 02
   ### Connect UKG Pro.
   Header credentials. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead. actionlake stores what you paste write-only, sealed under your tenant's key.
   - `username` UKG Pro web service account username (System Configuration > Security > Service Account Administration)
   - `password` UKG Pro web service account password
   - `customer_api_key` UKG Pro Customer API Key, unique to the tenant
   - `client_id` UKG Pro primary company code (System Configuration > Company Setup), sent as the US-Client-Id header
   - `host` Where your UKG Pro lives: your host
   ```
   account { op: "connections.requirements", service: "ukg_pro" }
   # free: exactly what to paste, and what is found for you
   ```
3. 03
   ### Make the first call. Check before a write.
   Ask in plain words; Claude picks the action. Before anything changes, `check` validates the call and prices it, for free.
   ```
   do    { action: "ukg_pro.employee_demographic_details.list" }
   # get employee demographic details · read · 1 upstream call
   check { action: "ukg_pro.org_levels.create", input: { … } }
   # free: inputs, permissions, cost and confirmations, nothing sent
   ```

UKG Pro at a glance

**Sign-in**

Header credentials. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead.

**You provide**

`username` `password` `customer_api_key` `client_id`

**Setup fields**

`host`

**Limits we pace to**

10 calls a second, per connection

**API covered**

UKG Pro HCM REST API (OpenAPI 3.0 documents from developer.ukg.com/hcm), at your UKG Pro instance's API base URL, which you enter when connecting

**Built from**

UKG Pro's documentation, read 23 October 2026[developer.ukg.com](https://developer.ukg.com/hcm/openapi/pro-employee-data.json) [developer.ukg.com](https://developer.ukg.com/hcm/openapi/configuration-setup.json) [developer.ukg.com](https://developer.ukg.com/hcm/openapi/payroll.json)

**Service file**

Version 1.0.0, signed (Ed25519)

**Cached reads**

125 of 132 reads, for up to 5 minutes; a write clears what it affects

**Shared entities**

3, so ask can line UKG Pro up with your other systems

**Data**

Processed and stored in Sydney, Australia. No US region yet

Capabilities

## What an AI agent can do in UKG Pro.

201 actions in 3 areas. Every one carries its effect, so a key can allow the reads and hold the rest.

- **132** read look, never change
- **64** write create and update
- **5** destructive wait for a confirmation

1. ### Configuration
   105
   49 read · 56 write · 0 destructive
   Get all org-levels · Retrieve all locations configurations · Get single org-level · Retrieve a single location configuration
2. ### People
   67
   63 read · 4 write · 0 destructive
   Get Employee Demographic Details · Get all compensation details · Get Audit Details Data · Get all compensation details by company
3. ### Payroll
   29
   20 read · 4 write · 5 destructive
   Get list of direct deposit details for US and Canadian employees by company · POST /payroll/v2/companies/pay-detail-reports · POST /payroll/v1/companies/pay-statements-summary · Get employee(s) pay statement(s) for a company or pay group for a given date range

Top actions

## The UKG Pro API, shaped for agents.

The ids your agent types, what each does, and the one name it shares with other systems. 8 of UKG Pro's 8 action names are shared with at least one other connector, so an agent learns them once.

| Action | What it does | Effect | Same name in |
| --- | --- | --- | --- |
| `ukg_pro.employee_demographic_details.list` Get Employee Demographic Details | Get Employee Demographic Details | read | `hr.employee.list` 61 connectors |
| `ukg_pro.org_levels.list` Get all org-levels | Get all org-levels | read | `hr.department.list` 40 connectors |
| `ukg_pro.locations.list` Retrieve all locations configurations | Retrieve all locations configurations | read | `hr.location.list` 32 connectors |
| `ukg_pro.org_levels.get` Get single org-level | Get single org-level | read | `hr.department.get` 33 connectors |
| `ukg_pro.locations.get` Retrieve a single location configuration | Retrieve a single location configuration | read | `hr.location.get` 24 connectors |
| `ukg_pro.org_levels.create` Create org-level configuration | Create org-level configuration | write | `hr.department.create` 32 connectors |
| `ukg_pro.org_levels.update` Update one org-level | Update one org-level | write | `hr.department.update` 30 connectors |
| `ukg_pro.compensation_details.list` Get all compensation details | Get all compensation details | read | `hr.compensation.list` 9 connectors |
| `ukg_pro.jobs.list` Retrieve All Job Configurations - V1 | Retrieve All Job Configurations - V1 | read | this connector |
| `ukg_pro.roles.list` Gets Roles from security roles table | Gets Roles from security roles table | read | this connector |
| `ukg_pro.accruals.create` Import Accruals Information | Import Accruals Information | write | this connector |
| `ukg_pro.accruals.delete` Delete Accrual by Batch ID and Source ID | Delete Accrual by Batch ID and Source ID | destructive | this connector |

Try it

## Prompts to paste into Claude.

Each one names the UKG Pro actions it will call, so you know what it reads and what it changes before you send it.

1. Read read
   List everyone in UKG Pro with their department and start date.
   calls `ukg_pro.employee_demographic_details.list`
2. Write write
   Create org-level configuration in UKG Pro. Show me exactly what you will send before you save it.
   calls `ukg_pro.org_levels.create`

Governance for UKG Pro

## Destructive actions wait for a yes.

5 UKG Pro actions are destructive. These are all of them:

- Delete Accrual by Batch ID and Source ID `ukg_pro.accruals.delete`
- Delete Accrual by Batch ID `ukg_pro.accruals.delete_batch`
- Delete Earning by ID `ukg_pro.import_pay_item_earnings.delete`
- Delete Earnings Pending Pay Item `ukg_pro.payroll_pending_earnings.delete`
- Delete Deduction Pending Pay Item `ukg_pro.payroll_pending_deductions.delete`

A destructive action runs only with `confirm: true`. Under the `human` policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.

do ukg_pro.accruals.delete confirm_policy: **human**

Delete Accrual by Batch ID and Source ID?

**intent:** the user asked me to delete Accrual by Batch ID and Source ID

run suspended · waiting for a named person · key _ukg-pro-agent_ cannot confirm itself

In the console, or from an emailed signed link.

a key for this connector

```
account {
  op: "keys.create", name: "ukg-pro-agent",
  allowed_actions: ["ukg_pro.*"], cap_calls: 2000,
  confirm_policy: "human_for_writes",
  approval_rules: [
    { match: "ukg_pro.accruals.delete", approver: "lead@example.com" },
    { match: "ukg_pro.accruals.delete_batch", approver: "lead@example.com" },
    { match: "ukg_pro.import_pay_item_earnings.delete", approver: "lead@example.com" }
  ]
}
```

Illustrative. Scoped to UKG Pro only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

Cost

## What UKG Pro costs on actionlake.

Every UKG Pro action is one upstream call, the only thing actionlake bills. Searching, `check`, `cost`, `account` and any call UKG Pro refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

- 1 upstream call per action all 201 UKG Pro actions
- 201 actions page each page of a long list is one call
- 125 reads can be cached a cache hit costs nothing
- 100,000 calls a month, free paid plans from US$49 a month for 250,000

[See pricing](https://actionlake.com/pricing)

Action index

## Every UKG Pro action.

201 actions by area: the id your agent calls, what it does, and its effect.

**Configuration 105**

- `ukg_pro.business_rule_import.file_status` Retrieve Business Rule Import Tool Transaction Status by File ID read
- `ukg_pro.business_rule_import.stage` Takes an XML transaction and feeds it into the Business Rule Import Tool (Staging) write
- `ukg_pro.business_rule_import.transaction_status` Retrieve Business Rule Import Tool Transaction Status by Staging ID read
- `ukg_pro.business_rule_import.upload` Takes an XML transaction and feeds it into the Business Rule Import Tool write
- `ukg_pro.code_tables.create` Post Code Tables information write
- `ukg_pro.code_tables.list` Get Code Tables information read
- `ukg_pro.code_tables_allergy.create` Create a new allergy configuration write
- `ukg_pro.code_tables_allergy.list` Retrieve all allergy configurations read
- `ukg_pro.code_tables_allergy.update` Update a single allergy configuration write
- `ukg_pro.code_tables_award_type.create` Create a new awardType configuration write
- `ukg_pro.code_tables_award_type.list` Retrieve all awardType configurations read
- `ukg_pro.code_tables_award_type.update` Update a single awardType configuration write
- `ukg_pro.code_tables_career_provider.create` Create a new careerProvider configuration write
- `ukg_pro.code_tables_career_provider.list` Retrieve all careerProvider configurations read
- `ukg_pro.code_tables_career_provider.update` Update a single careerProvider configuration write
- `ukg_pro.code_tables_child_support_type.create` Create a new childSupportType configuration write
- `ukg_pro.code_tables_child_support_type.list` Retrieve all childSupportType configurations read
- `ukg_pro.code_tables_child_support_type.update` Update a single childSupportType configuration write
- `ukg_pro.code_tables_cobra_status.create` Create a new cobraStatus configuration write
- `ukg_pro.code_tables_cobra_status.list` Retrieve all cobraStatus configurations read
- `ukg_pro.code_tables_cobra_status.update` Update a single cobraStatus configuration write
- `ukg_pro.code_tables_company_property.create` Create a new companyProperty configuration write
- `ukg_pro.code_tables_company_property.list` Retrieve all companyProperty configurations read
- `ukg_pro.code_tables_company_property.update` Update a single companyProperty configuration write
- `ukg_pro.code_tables_course_category.create` Create a new courseCategory configuration write
- `ukg_pro.code_tables_course_category.list` Retrieve all courseCategory configurations read
- `ukg_pro.code_tables_course_category.update` Update a single courseCategory configuration write
- `ukg_pro.code_tables_course_delivery_met.create` Create a new courseDeliveryMet configuration write
- `ukg_pro.code_tables_course_delivery_met.list` Retrieve all courseDeliveryMet configurations read
- `ukg_pro.code_tables_course_delivery_met.update` Update a single courseDeliveryMet configuration write
- `ukg_pro.code_tables_course_sub_category.create` Create a new courseSubCategory configuration write
- `ukg_pro.code_tables_course_sub_category.list` Retrieve all courseSubCategory configurations read
- `ukg_pro.code_tables_course_sub_category.update` Update a single courseSubCategory configuration write
- `ukg_pro.code_tables_disability.create` Create a new disability configuration write
- `ukg_pro.code_tables_disability.list` Retrieve all disability configurations read
- `ukg_pro.code_tables_disability.update` Update a single disability configuration write
- `ukg_pro.code_tables_employee_type.create` Create a new employeeType configuration write
- `ukg_pro.code_tables_employee_type.list` Retrieve all employeeType configurations read
- `ukg_pro.code_tables_employee_type.update` Update a single employeeType configuration write
- `ukg_pro.code_tables_job_family.create` Create a new jobFamily configuration write
- `ukg_pro.code_tables_job_family.list` Retrieve all jobFamily configurations read
- `ukg_pro.code_tables_job_family.update` Update a single jobFamily configuration write
- `ukg_pro.code_tables_license_type.create` Create a new licenseType configuration write
- `ukg_pro.code_tables_license_type.list` Retrieve all licenseType configurations read
- `ukg_pro.code_tables_license_type.update` Update a single licenseType configuration write
- `ukg_pro.code_tables_loan_type.create` Create a new loanType configuration write
- `ukg_pro.code_tables_loan_type.list` Retrieve all loanType configurations read
- `ukg_pro.code_tables_loan_type.update` Update a single loanType configuration write
- `ukg_pro.code_tables_marital_status.create` Create a new maritalStatus configuration write
- `ukg_pro.code_tables_marital_status.list` Retrieve all maritalStatus configurations read
- `ukg_pro.code_tables_marital_status.update` Update a single maritalStatus configuration write
- `ukg_pro.code_tables_military_branches.create` Create a new militaryBranches configuration write
- `ukg_pro.code_tables_military_branches.list` Retrieve all militaryBranches configurations read
- `ukg_pro.code_tables_military_branches.update` Update a single militaryBranches configuration write
- `ukg_pro.code_tables_military_era.create` Create a new militaryEra configuration write
- `ukg_pro.code_tables_military_era.list` Retrieve all militaryEra configurations read
- `ukg_pro.code_tables_military_era.update` Update a single militaryEra configuration write
- `ukg_pro.code_tables_name_prefix.create` Create a new namePrefix configuration write
- `ukg_pro.code_tables_name_prefix.list` Retrieve all namePrefix configurations read
- `ukg_pro.code_tables_name_prefix.update` Update a single namePrefix configuration write
- `ukg_pro.code_tables_other_phone_types.create` Create a new otherPhoneTypes configuration write
- `ukg_pro.code_tables_other_phone_types.list` Retrieve all otherPhoneTypes configurations read
- `ukg_pro.code_tables_other_phone_types.update` Update a single otherPhoneTypes configuration write
- `ukg_pro.code_tables_project.create` Create a new project configuration write
- `ukg_pro.code_tables_project.list` Retrieve all Project configurations read
- `ukg_pro.code_tables_project.update` Update a single project configuration write
- `ukg_pro.code_tables_school.create` Create a new school configuration write
- `ukg_pro.code_tables_school.list` Retrieve all school configurations read
- `ukg_pro.code_tables_school.update` Update a single school configuration write
- `ukg_pro.code_tables_skill_proficiency_level.create` Create a new skillProficiencyLevel configuration write
- `ukg_pro.code_tables_skill_proficiency_level.list` Retrieve all skillProficiencyLevel configurations read
- `ukg_pro.code_tables_skill_proficiency_level.update` Update a single skillProficiencyLevel configuration write
- `ukg_pro.code_tables_skills.create` Create a new skills configuration write
- `ukg_pro.code_tables_skills.list` Retrieve all skills configurations read
- `ukg_pro.code_tables_skills.update` Update a single skills configuration write
- `ukg_pro.code_tables_term_type.create` Create a new termType configuration write
- `ukg_pro.code_tables_term_type.list` Retrieve all termType configurations read
- `ukg_pro.code_tables_term_type.update` Update a single termType configuration write
- `ukg_pro.code_tables_waive_reason.create` Create a new waiveReason configuration write
- `ukg_pro.code_tables_waive_reason.list` Retrieve all waiveReason configurations read
- `ukg_pro.code_tables_waive_reason.update` Update a single waiveReason configuration write
- `ukg_pro.company_details.list` Get Company Details read
- `ukg_pro.earnings.get` Get a specific earning configuration read
- `ukg_pro.earnings.get_by_attributes` Get list of earnings configurations filtered by Parameter including pagination params read
- `ukg_pro.earnings.list` Get a list of all earnings configurations read
- `ukg_pro.insurance_rate.list` Get Insurance Rate read
- `ukg_pro.jobgroup.list` Get All Job Groups read
- `ukg_pro.jobs.get` Retrieve Job Configuration - V1 read
- `ukg_pro.jobs.list` Retrieve All Job Configurations - V1 read
- `ukg_pro.jobs_v2.get` Retrieve Job Configuration read
- `ukg_pro.jobs_v2.list` Retrieve All Job Configurations read
- `ukg_pro.locations.get` Retrieve a single location configuration read
- `ukg_pro.locations.list` Retrieve all locations configurations read
- `ukg_pro.option_rate.list` Get Option Rate Data read
- `ukg_pro.org_levels.create` Create org-level configuration write
- `ukg_pro.org_levels.get` Get single org-level read
- `ukg_pro.org_levels.list` Get all org-levels read
- `ukg_pro.org_levels.patch` Patch one org-level write
- `ukg_pro.org_levels.update` Update one org-level write
- `ukg_pro.organization_reporting_category.list` Get Organization Reporting Category read
- `ukg_pro.platform_configuration_custom_fields_schema.get` Gets Platform Configuration standard classes custom fields schema read
- `ukg_pro.positions.list` Returns a list of employee position information filtered on various parameters read
- `ukg_pro.roles.list` Gets Roles from security roles table read
- `ukg_pro.shift_codes.list` Shift Codes API Data read
- `ukg_pro.tax_groups.list` Get all tax group details read

**People 67**

- `ukg_pro.audit_details.list` Get Audit Details Data read
- `ukg_pro.company_compensation_details.list` Get all compensation details by company read
- `ukg_pro.company_employee_compensation_details.list` Get all compensation details by company and employee read
- `ukg_pro.company_employee_employment_details.list` Retrieve Employment Details by Employee ID and Company read
- `ukg_pro.company_employee_person_details.list` Get a single person detail record for a single company read
- `ukg_pro.company_employee_user_defined_fields.list` Get User Defined Fields for a single employee in a single company read
- `ukg_pro.company_employment_details.list` Retrieve Employment Details by Company ID read
- `ukg_pro.company_person_details.list` Get all person details for a single company read
- `ukg_pro.company_user_defined_fields.list` Get User Defined Fields for single company read
- `ukg_pro.compensation_details.get` Get all compensation details by employee read
- `ukg_pro.compensation_details.list` Get all compensation details read
- `ukg_pro.contacts.get` Get all details for a single person assigned to an employee as a contact read
- `ukg_pro.contacts.list` Get all details for a person assigned to an employee as a contact read
- `ukg_pro.deduction_history_effective_change_dates.list` Deductions History Effective Change Date read
- `ukg_pro.dep_deductions.list` Get Dependent Deductions read
- `ukg_pro.emp_deductions.list` Get employee deductions read
- `ukg_pro.emp_deductions_benefit_option_change_date.list` Get Employee Deduction Benefit Option Change Date read
- `ukg_pro.empl_multiple_jobs.list` Get employee multiple jobs details read
- `ukg_pro.empl_multiple_positions.list` Get Employee Multiple Positions read
- `ukg_pro.employee_changes.get` Changes By Employee ID read
- `ukg_pro.employee_changes.list` Changes By Date read
- `ukg_pro.employee_cobra_details.list` Get Employee Cobra Details read
- `ukg_pro.employee_contract_details.list` Get all employment contract details read
- `ukg_pro.employee_demographic_details.list` Get Employee Demographic Details read
- `ukg_pro.employee_education.list` Get all education details read
- `ukg_pro.employee_employment_details.list` Retrieve Employee Employment Details read
- `ukg_pro.employee_extended_elements.list` Get Employee Extended Elements read
- `ukg_pro.employee_global_banks.list` Get all direct deposit details for global employees read
- `ukg_pro.employee_global_banks_v2.list` Get all direct deposit details for global employees read
- `ukg_pro.employee_global_localization_elements.list` Get all global employee localization fields added to UKG Pro read
- `ukg_pro.employee_ids.lookup` Employee ID Lookup read
- `ukg_pro.employee_job_history_details.get` Get a single job history detail record read
- `ukg_pro.employee_job_history_details.list` Get all employee job history details read
- `ukg_pro.employee_multi_phone_numbers.list` Get employee multiple phone numbers read
- `ukg_pro.employee_pay_deduction_elements.list` Get Global Employee Payments and Deductions Service read
- `ukg_pro.employee_pto_plans.get` Get a specific pto-plan read
- `ukg_pro.employee_pto_plans.list` Get a specific employees pto-plans read
- `ukg_pro.employee_pto_plans.patch` Patch one PTO Plan write
- `ukg_pro.employee_security_user_details.list` Get employee security user details read
- `ukg_pro.employee_supervisor_details.list` Get Employee Supervisor Details read
- `ukg_pro.employment_details.list` Retrieve Employment Details read
- `ukg_pro.import_tool.file_status` Fetches the status of the file read
- `ukg_pro.import_tool.file_summary` Fetches a summary of the file read
- `ukg_pro.import_tool.status` Retrieves the status of an import tool transaction read
- `ukg_pro.import_tool.submit` Takes an XML transaction and feeds it into the Import Tool write
- `ukg_pro.import_tool.submit_xml` Takes an XML transaction and feeds it into the Import Tool write
- `ukg_pro.import_tool_transaction_status.get` Fetches the transaction name and status read
- `ukg_pro.integration_audit_configuration.list` Retrieve Integration Audit Configuration Data read
- `ukg_pro.integration_kronos_business_structure_status.list` Retrieves a list of Employees for which there is a change in business structure read
- `ukg_pro.integration_kronos_employee_profiles.list` Get list of employees profile read
- `ukg_pro.integration_kronos_employee_status.list` Get Employee Status read
- `ukg_pro.international_employees.get` Get a single employees international details read
- `ukg_pro.international_employees.list` Get international employee details for all employees read
- `ukg_pro.national_documents.list` All employee national document details read
- `ukg_pro.open_enrollment_dep_deductions.list` Get Open Enrollment Dependent Deductions Data read
- `ukg_pro.open_enrollment_emp_deductions.list` Get Open Enrollment Employee Deductions read
- `ukg_pro.person_details.get` Get a single person detail record read
- `ukg_pro.person_details.list` Get all person details read
- `ukg_pro.platform_configuration_fields.list` Platform Configuration Fields Data v1 read
- `ukg_pro.platform_configuration_fields_v2.list` Platform Configuration Fields Data v2 read
- `ukg_pro.position_report.list` Get Position Report read
- `ukg_pro.pto_plans.create` Create A PTO Plan write
- `ukg_pro.pto_plans.list` Get all pto-plans read
- `ukg_pro.user_defined_fields.list` Get User Defined Fields read
- `ukg_pro.user_details.list` Get User Details read
- `ukg_pro.user_preferences.list` Get User Preferences Details read
- `ukg_pro.user_profile_details.list` Get all user profile details read

**Payroll 29**

- `ukg_pro.accruals.create` Import Accruals Information write
- `ukg_pro.accruals.delete` Delete Accrual by Batch ID and Source ID destructive
- `ukg_pro.accruals.delete_batch` Delete Accrual by Batch ID destructive
- `ukg_pro.company_direct_deposit.list` Get list of direct deposit details for US and Canadian employees by company read
- `ukg_pro.company_pay_detail_reports.query` POST /payroll/v2/companies/pay-detail-reports read
- `ukg_pro.company_pay_statement_summaries.query` POST /payroll/v1/companies/pay-statements-summary read
- `ukg_pro.company_pay_statements.query` Get employee(s) pay statement(s) for a company or pay group for a given date range read
- `ukg_pro.direct_deposit.list` Get list of direct deposit details for US and Canadian employees read
- `ukg_pro.earnings_history_base_elements.list` Get Earnings History Base Elements read
- `ukg_pro.employee_pay_details_report.query` POST /payroll/v1/employees/pay-details-report read
- `ukg_pro.employee_pay_statements.get` Get employee pay statement based on the given pay identifier read
- `ukg_pro.employee_pay_statements.last` Get employee last pay statement based on the passed employee identifier read
- `ukg_pro.employee_pay_statements.query` POST /payroll/v1/employees/pay-statements read
- `ukg_pro.general_ledger.get` Retrieve General Ledger Run by ID read
- `ukg_pro.general_ledger.list` Retrieve General Ledger Runs read
- `ukg_pro.import_pay_item_earnings.create` Import Earnings for Payroll write
- `ukg_pro.import_pay_item_earnings.delete` Delete Earning by ID destructive
- `ukg_pro.import_pay_item_earnings.get` Retrieve Earning by ID read
- `ukg_pro.pay_register.list` Get Pay Register read
- `ukg_pro.paygroup_payperiods.list` Get PayGroup PayPeriods read
- `ukg_pro.payroll_deductions_history.list` Get Payroll Deductions History read
- `ukg_pro.payroll_pending_deductions.create` Create Deduction Pending Pay Item write
- `ukg_pro.payroll_pending_deductions.delete` Delete Deduction Pending Pay Item destructive
- `ukg_pro.payroll_pending_deductions.get` Retrieve Deduction Pending Pay Item by ID read
- `ukg_pro.payroll_pending_deductions.get_by_source_key` Retrieve Deduction Pending Pay Item by Source Key read
- `ukg_pro.payroll_pending_earnings.create` Create Earnings Pending Pay Item write
- `ukg_pro.payroll_pending_earnings.delete` Delete Earnings Pending Pay Item destructive
- `ukg_pro.payroll_pending_earnings.get` Retrieve Earnings Pending Pay Item by ID read
- `ukg_pro.payroll_pending_earnings.get_by_source_key` Retrieve Earnings Pending Pay Item by Source Key read

Questions

## The UKG Pro MCP server, answered.

**Is there a UKG Pro MCP server for Claude?**

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 201 UKG Pro actions across configuration, people and payroll, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by UKG Pro.

**What do I need to connect UKG Pro?**

UKG Pro web service account username (System Configuration > Security > Service Account Administration), UKG Pro web service account password, UKG Pro Customer API Key, unique to the tenant and UKG Pro primary company code (System Configuration > Company Setup), sent as the US-Client-Id header. Plus your host. The free call account { op: "connections.requirements", service: "ukg_pro" } lists exactly what to paste.

**Can an AI agent delete or change things in UKG Pro?**

Only if its key allows it, and only with an explicit confirmation. 5 UKG Pro actions are destructive, including delete Accrual by Batch ID and Source ID, delete Accrual by Batch ID and delete Earning by ID. Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.

**Will an AI agent use up my UKG Pro API limit?**

actionlake paces every call to the limits in the UKG Pro service file: 10 calls a second per connection. Repeated reads are answered from cache (125 UKG Pro actions can be), which never reaches UKG Pro.

**What does a UKG Pro action cost?**

One upstream call, the only unit actionlake bills. A list that pages bills one call per page (201 UKG Pro actions page). Cache hits, searches, dry runs and calls UKG Pro refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

**Which UKG Pro API does it cover?**

The UKG Pro HCM REST API (OpenAPI 3.0 documents from developer.ukg.com/hcm) at your UKG Pro instance's API base URL, which you enter when connecting. It is built from UKG Pro's documentation as read on 23 October 2026. 201 actions in 3 areas, each one in the signed service file (version 1.0.0).

**Does actionlake keep my UKG Pro data, and where?**

actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to 5 minutes, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your UKG Pro credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.

**Which AI clients can use it?**

Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.

## More connectors like UKG Pro

Shares the most action names with

- [Paycor 8](https://actionlake.com/connectors/paycor)
- [Rippling 7](https://actionlake.com/connectors/rippling)
- [Deputy 7](https://actionlake.com/connectors/deputy)
- [Brex 6](https://actionlake.com/connectors/brex)
- [IRIS Staffology Payroll 5](https://actionlake.com/connectors/iris-staffology-payroll)
- [Leapsome 2](https://actionlake.com/connectors/leapsome)

Joins with, on shared entities

- [Deel 3](https://actionlake.com/connectors/deel)
- [Recruitee 2](https://actionlake.com/connectors/recruitee)
- [Cornerstone OnDemand 2](https://actionlake.com/connectors/cornerstone-ondemand)
- [Remote 2](https://actionlake.com/connectors/remote)
- [Employment Hero 2](https://actionlake.com/connectors/employment-hero)
- [Ashby 2](https://actionlake.com/connectors/ashby)

Browse

- [All Accounting & finance connectors](https://actionlake.com/connectors/category/accounting-and-finance)
- [All connectors](https://actionlake.com/connectors)
- [How actionlake compares](https://actionlake.com/compare)

actionlake is independent. It is not made or endorsed by UKG Pro; the name is the vendor's own. Counts are from the UKG Pro service file, version 1.0.0.

## Give your agent UKG Pro today.

[Connect UKG Pro free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.

---

Source: https://actionlake.com/connectors/ukg-pro
More: https://actionlake.com/llms.txt
