Skip to content

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.

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
  • 201actionsin one signed file
  • 132readlook, never change
  • 64writecreate and update
  • 5wait for a yesdestructive, 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.

    • usernameUKG Pro web service account username (System Configuration > Security > Service Account Administration)
    • passwordUKG Pro web service account password
    • customer_api_keyUKG Pro Customer API Key, unique to the tenant
    • client_idUKG Pro primary company code (System Configuration > Company Setup), sent as the US-Client-Id header
    • hostWhere 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 callcheck { 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
usernamepasswordcustomer_api_keyclient_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 2026developer.ukg.comdeveloper.ukg.comdeveloper.ukg.com
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.

  • 132readlook, never change
  • 64writecreate and update
  • 5destructivewait 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.

ActionWhat it doesEffectSame name in
ukg_pro.employee_demographic_details.listGet Employee Demographic DetailsGet Employee Demographic Detailsreadhr.employee.list61 connectors
ukg_pro.org_levels.listGet all org-levelsGet all org-levelsreadhr.department.list40 connectors
ukg_pro.locations.listRetrieve all locations configurationsRetrieve all locations configurationsreadhr.location.list32 connectors
ukg_pro.org_levels.getGet single org-levelGet single org-levelreadhr.department.get33 connectors
ukg_pro.locations.getRetrieve a single location configurationRetrieve a single location configurationreadhr.location.get24 connectors
ukg_pro.org_levels.createCreate org-level configurationCreate org-level configurationwritehr.department.create32 connectors
ukg_pro.org_levels.updateUpdate one org-levelUpdate one org-levelwritehr.department.update30 connectors
ukg_pro.compensation_details.listGet all compensation detailsGet all compensation detailsreadhr.compensation.list9 connectors
ukg_pro.jobs.listRetrieve All Job Configurations - V1Retrieve All Job Configurations - V1readthis connector
ukg_pro.roles.listGets Roles from security roles tableGets Roles from security roles tablereadthis connector
ukg_pro.accruals.createImport Accruals InformationImport Accruals Informationwritethis connector
ukg_pro.accruals.deleteDelete Accrual by Batch ID and Source IDDelete Accrual by Batch ID and Source IDdestructivethis 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. Readread

    List everyone in UKG Pro with their department and start date.

    callsukg_pro.employee_demographic_details.list

  2. Writewrite

    Create org-level configuration in UKG Pro. Show me exactly what you will send before you save it.

    callsukg_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 IDukg_pro.accruals.delete
  • Delete Accrual by Batch IDukg_pro.accruals.delete_batch
  • Delete Earning by IDukg_pro.import_pay_item_earnings.delete
  • Delete Earnings Pending Pay Itemukg_pro.payroll_pending_earnings.delete
  • Delete Deduction Pending Pay Itemukg_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.

doukg_pro.accruals.deleteconfirm_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: "[email protected]" },    { match: "ukg_pro.accruals.delete_batch", approver: "[email protected]" },    { match: "ukg_pro.import_pay_item_earnings.delete", approver: "[email protected]" }  ]}
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.

  • 1upstream call per actionall 201 UKG Pro actions
  • 201actions pageeach page of a long list is one call
  • 125reads can be cacheda cache hit costs nothing
  • 100,000calls a month, freepaid plans from US$49 a month for 250,000

See pricing

Action index

Every UKG Pro action.

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

Configuration105
  • ukg_pro.business_rule_import.file_statusRetrieve Business Rule Import Tool Transaction Status by File IDread
  • ukg_pro.business_rule_import.stageTakes an XML transaction and feeds it into the Business Rule Import Tool (Staging)write
  • ukg_pro.business_rule_import.transaction_statusRetrieve Business Rule Import Tool Transaction Status by Staging IDread
  • ukg_pro.business_rule_import.uploadTakes an XML transaction and feeds it into the Business Rule Import Toolwrite
  • ukg_pro.code_tables.createPost Code Tables informationwrite
  • ukg_pro.code_tables.listGet Code Tables informationread
  • ukg_pro.code_tables_allergy.createCreate a new allergy configurationwrite
  • ukg_pro.code_tables_allergy.listRetrieve all allergy configurationsread
  • ukg_pro.code_tables_allergy.updateUpdate a single allergy configurationwrite
  • ukg_pro.code_tables_award_type.createCreate a new awardType configurationwrite
  • ukg_pro.code_tables_award_type.listRetrieve all awardType configurationsread
  • ukg_pro.code_tables_award_type.updateUpdate a single awardType configurationwrite
  • ukg_pro.code_tables_career_provider.createCreate a new careerProvider configurationwrite
  • ukg_pro.code_tables_career_provider.listRetrieve all careerProvider configurationsread
  • ukg_pro.code_tables_career_provider.updateUpdate a single careerProvider configurationwrite
  • ukg_pro.code_tables_child_support_type.createCreate a new childSupportType configurationwrite
  • ukg_pro.code_tables_child_support_type.listRetrieve all childSupportType configurationsread
  • ukg_pro.code_tables_child_support_type.updateUpdate a single childSupportType configurationwrite
  • ukg_pro.code_tables_cobra_status.createCreate a new cobraStatus configurationwrite
  • ukg_pro.code_tables_cobra_status.listRetrieve all cobraStatus configurationsread
  • ukg_pro.code_tables_cobra_status.updateUpdate a single cobraStatus configurationwrite
  • ukg_pro.code_tables_company_property.createCreate a new companyProperty configurationwrite
  • ukg_pro.code_tables_company_property.listRetrieve all companyProperty configurationsread
  • ukg_pro.code_tables_company_property.updateUpdate a single companyProperty configurationwrite
  • ukg_pro.code_tables_course_category.createCreate a new courseCategory configurationwrite
  • ukg_pro.code_tables_course_category.listRetrieve all courseCategory configurationsread
  • ukg_pro.code_tables_course_category.updateUpdate a single courseCategory configurationwrite
  • ukg_pro.code_tables_course_delivery_met.createCreate a new courseDeliveryMet configurationwrite
  • ukg_pro.code_tables_course_delivery_met.listRetrieve all courseDeliveryMet configurationsread
  • ukg_pro.code_tables_course_delivery_met.updateUpdate a single courseDeliveryMet configurationwrite
  • ukg_pro.code_tables_course_sub_category.createCreate a new courseSubCategory configurationwrite
  • ukg_pro.code_tables_course_sub_category.listRetrieve all courseSubCategory configurationsread
  • ukg_pro.code_tables_course_sub_category.updateUpdate a single courseSubCategory configurationwrite
  • ukg_pro.code_tables_disability.createCreate a new disability configurationwrite
  • ukg_pro.code_tables_disability.listRetrieve all disability configurationsread
  • ukg_pro.code_tables_disability.updateUpdate a single disability configurationwrite
  • ukg_pro.code_tables_employee_type.createCreate a new employeeType configurationwrite
  • ukg_pro.code_tables_employee_type.listRetrieve all employeeType configurationsread
  • ukg_pro.code_tables_employee_type.updateUpdate a single employeeType configurationwrite
  • ukg_pro.code_tables_job_family.createCreate a new jobFamily configurationwrite
  • ukg_pro.code_tables_job_family.listRetrieve all jobFamily configurationsread
  • ukg_pro.code_tables_job_family.updateUpdate a single jobFamily configurationwrite
  • ukg_pro.code_tables_license_type.createCreate a new licenseType configurationwrite
  • ukg_pro.code_tables_license_type.listRetrieve all licenseType configurationsread
  • ukg_pro.code_tables_license_type.updateUpdate a single licenseType configurationwrite
  • ukg_pro.code_tables_loan_type.createCreate a new loanType configurationwrite
  • ukg_pro.code_tables_loan_type.listRetrieve all loanType configurationsread
  • ukg_pro.code_tables_loan_type.updateUpdate a single loanType configurationwrite
  • ukg_pro.code_tables_marital_status.createCreate a new maritalStatus configurationwrite
  • ukg_pro.code_tables_marital_status.listRetrieve all maritalStatus configurationsread
  • ukg_pro.code_tables_marital_status.updateUpdate a single maritalStatus configurationwrite
  • ukg_pro.code_tables_military_branches.createCreate a new militaryBranches configurationwrite
  • ukg_pro.code_tables_military_branches.listRetrieve all militaryBranches configurationsread
  • ukg_pro.code_tables_military_branches.updateUpdate a single militaryBranches configurationwrite
  • ukg_pro.code_tables_military_era.createCreate a new militaryEra configurationwrite
  • ukg_pro.code_tables_military_era.listRetrieve all militaryEra configurationsread
  • ukg_pro.code_tables_military_era.updateUpdate a single militaryEra configurationwrite
  • ukg_pro.code_tables_name_prefix.createCreate a new namePrefix configurationwrite
  • ukg_pro.code_tables_name_prefix.listRetrieve all namePrefix configurationsread
  • ukg_pro.code_tables_name_prefix.updateUpdate a single namePrefix configurationwrite
  • ukg_pro.code_tables_other_phone_types.createCreate a new otherPhoneTypes configurationwrite
  • ukg_pro.code_tables_other_phone_types.listRetrieve all otherPhoneTypes configurationsread
  • ukg_pro.code_tables_other_phone_types.updateUpdate a single otherPhoneTypes configurationwrite
  • ukg_pro.code_tables_project.createCreate a new project configurationwrite
  • ukg_pro.code_tables_project.listRetrieve all Project configurationsread
  • ukg_pro.code_tables_project.updateUpdate a single project configurationwrite
  • ukg_pro.code_tables_school.createCreate a new school configurationwrite
  • ukg_pro.code_tables_school.listRetrieve all school configurationsread
  • ukg_pro.code_tables_school.updateUpdate a single school configurationwrite
  • ukg_pro.code_tables_skill_proficiency_level.createCreate a new skillProficiencyLevel configurationwrite
  • ukg_pro.code_tables_skill_proficiency_level.listRetrieve all skillProficiencyLevel configurationsread
  • ukg_pro.code_tables_skill_proficiency_level.updateUpdate a single skillProficiencyLevel configurationwrite
  • ukg_pro.code_tables_skills.createCreate a new skills configurationwrite
  • ukg_pro.code_tables_skills.listRetrieve all skills configurationsread
  • ukg_pro.code_tables_skills.updateUpdate a single skills configurationwrite
  • ukg_pro.code_tables_term_type.createCreate a new termType configurationwrite
  • ukg_pro.code_tables_term_type.listRetrieve all termType configurationsread
  • ukg_pro.code_tables_term_type.updateUpdate a single termType configurationwrite
  • ukg_pro.code_tables_waive_reason.createCreate a new waiveReason configurationwrite
  • ukg_pro.code_tables_waive_reason.listRetrieve all waiveReason configurationsread
  • ukg_pro.code_tables_waive_reason.updateUpdate a single waiveReason configurationwrite
  • ukg_pro.company_details.listGet Company Detailsread
  • ukg_pro.earnings.getGet a specific earning configurationread
  • ukg_pro.earnings.get_by_attributesGet list of earnings configurations filtered by Parameter including pagination paramsread
  • ukg_pro.earnings.listGet a list of all earnings configurationsread
  • ukg_pro.insurance_rate.listGet Insurance Rateread
  • ukg_pro.jobgroup.listGet All Job Groupsread
  • ukg_pro.jobs.getRetrieve Job Configuration - V1read
  • ukg_pro.jobs.listRetrieve All Job Configurations - V1read
  • ukg_pro.jobs_v2.getRetrieve Job Configurationread
  • ukg_pro.jobs_v2.listRetrieve All Job Configurationsread
  • ukg_pro.locations.getRetrieve a single location configurationread
  • ukg_pro.locations.listRetrieve all locations configurationsread
  • ukg_pro.option_rate.listGet Option Rate Dataread
  • ukg_pro.org_levels.createCreate org-level configurationwrite
  • ukg_pro.org_levels.getGet single org-levelread
  • ukg_pro.org_levels.listGet all org-levelsread
  • ukg_pro.org_levels.patchPatch one org-levelwrite
  • ukg_pro.org_levels.updateUpdate one org-levelwrite
  • ukg_pro.organization_reporting_category.listGet Organization Reporting Categoryread
  • ukg_pro.platform_configuration_custom_fields_schema.getGets Platform Configuration standard classes custom fields schemaread
  • ukg_pro.positions.listReturns a list of employee position information filtered on various parametersread
  • ukg_pro.roles.listGets Roles from security roles tableread
  • ukg_pro.shift_codes.listShift Codes API Dataread
  • ukg_pro.tax_groups.listGet all tax group detailsread
People67
  • ukg_pro.audit_details.listGet Audit Details Dataread
  • ukg_pro.company_compensation_details.listGet all compensation details by companyread
  • ukg_pro.company_employee_compensation_details.listGet all compensation details by company and employeeread
  • ukg_pro.company_employee_employment_details.listRetrieve Employment Details by Employee ID and Companyread
  • ukg_pro.company_employee_person_details.listGet a single person detail record for a single companyread
  • ukg_pro.company_employee_user_defined_fields.listGet User Defined Fields for a single employee in a single companyread
  • ukg_pro.company_employment_details.listRetrieve Employment Details by Company IDread
  • ukg_pro.company_person_details.listGet all person details for a single companyread
  • ukg_pro.company_user_defined_fields.listGet User Defined Fields for single companyread
  • ukg_pro.compensation_details.getGet all compensation details by employeeread
  • ukg_pro.compensation_details.listGet all compensation detailsread
  • ukg_pro.contacts.getGet all details for a single person assigned to an employee as a contactread
  • ukg_pro.contacts.listGet all details for a person assigned to an employee as a contactread
  • ukg_pro.deduction_history_effective_change_dates.listDeductions History Effective Change Dateread
  • ukg_pro.dep_deductions.listGet Dependent Deductionsread
  • ukg_pro.emp_deductions.listGet employee deductionsread
  • ukg_pro.emp_deductions_benefit_option_change_date.listGet Employee Deduction Benefit Option Change Dateread
  • ukg_pro.empl_multiple_jobs.listGet employee multiple jobs detailsread
  • ukg_pro.empl_multiple_positions.listGet Employee Multiple Positionsread
  • ukg_pro.employee_changes.getChanges By Employee IDread
  • ukg_pro.employee_changes.listChanges By Dateread
  • ukg_pro.employee_cobra_details.listGet Employee Cobra Detailsread
  • ukg_pro.employee_contract_details.listGet all employment contract detailsread
  • ukg_pro.employee_demographic_details.listGet Employee Demographic Detailsread
  • ukg_pro.employee_education.listGet all education detailsread
  • ukg_pro.employee_employment_details.listRetrieve Employee Employment Detailsread
  • ukg_pro.employee_extended_elements.listGet Employee Extended Elementsread
  • ukg_pro.employee_global_banks.listGet all direct deposit details for global employeesread
  • ukg_pro.employee_global_banks_v2.listGet all direct deposit details for global employeesread
  • ukg_pro.employee_global_localization_elements.listGet all global employee localization fields added to UKG Proread
  • ukg_pro.employee_ids.lookupEmployee ID Lookupread
  • ukg_pro.employee_job_history_details.getGet a single job history detail recordread
  • ukg_pro.employee_job_history_details.listGet all employee job history detailsread
  • ukg_pro.employee_multi_phone_numbers.listGet employee multiple phone numbersread
  • ukg_pro.employee_pay_deduction_elements.listGet Global Employee Payments and Deductions Serviceread
  • ukg_pro.employee_pto_plans.getGet a specific pto-planread
  • ukg_pro.employee_pto_plans.listGet a specific employees pto-plansread
  • ukg_pro.employee_pto_plans.patchPatch one PTO Planwrite
  • ukg_pro.employee_security_user_details.listGet employee security user detailsread
  • ukg_pro.employee_supervisor_details.listGet Employee Supervisor Detailsread
  • ukg_pro.employment_details.listRetrieve Employment Detailsread
  • ukg_pro.import_tool.file_statusFetches the status of the fileread
  • ukg_pro.import_tool.file_summaryFetches a summary of the fileread
  • ukg_pro.import_tool.statusRetrieves the status of an import tool transactionread
  • ukg_pro.import_tool.submitTakes an XML transaction and feeds it into the Import Toolwrite
  • ukg_pro.import_tool.submit_xmlTakes an XML transaction and feeds it into the Import Toolwrite
  • ukg_pro.import_tool_transaction_status.getFetches the transaction name and statusread
  • ukg_pro.integration_audit_configuration.listRetrieve Integration Audit Configuration Dataread
  • ukg_pro.integration_kronos_business_structure_status.listRetrieves a list of Employees for which there is a change in business structureread
  • ukg_pro.integration_kronos_employee_profiles.listGet list of employees profileread
  • ukg_pro.integration_kronos_employee_status.listGet Employee Statusread
  • ukg_pro.international_employees.getGet a single employees international detailsread
  • ukg_pro.international_employees.listGet international employee details for all employeesread
  • ukg_pro.national_documents.listAll employee national document detailsread
  • ukg_pro.open_enrollment_dep_deductions.listGet Open Enrollment Dependent Deductions Dataread
  • ukg_pro.open_enrollment_emp_deductions.listGet Open Enrollment Employee Deductionsread
  • ukg_pro.person_details.getGet a single person detail recordread
  • ukg_pro.person_details.listGet all person detailsread
  • ukg_pro.platform_configuration_fields.listPlatform Configuration Fields Data v1read
  • ukg_pro.platform_configuration_fields_v2.listPlatform Configuration Fields Data v2read
  • ukg_pro.position_report.listGet Position Reportread
  • ukg_pro.pto_plans.createCreate A PTO Planwrite
  • ukg_pro.pto_plans.listGet all pto-plansread
  • ukg_pro.user_defined_fields.listGet User Defined Fieldsread
  • ukg_pro.user_details.listGet User Detailsread
  • ukg_pro.user_preferences.listGet User Preferences Detailsread
  • ukg_pro.user_profile_details.listGet all user profile detailsread
Payroll29
  • ukg_pro.accruals.createImport Accruals Informationwrite
  • ukg_pro.accruals.deleteDelete Accrual by Batch ID and Source IDdestructive
  • ukg_pro.accruals.delete_batchDelete Accrual by Batch IDdestructive
  • ukg_pro.company_direct_deposit.listGet list of direct deposit details for US and Canadian employees by companyread
  • ukg_pro.company_pay_detail_reports.queryPOST /payroll/v2/companies/pay-detail-reportsread
  • ukg_pro.company_pay_statement_summaries.queryPOST /payroll/v1/companies/pay-statements-summaryread
  • ukg_pro.company_pay_statements.queryGet employee(s) pay statement(s) for a company or pay group for a given date rangeread
  • ukg_pro.direct_deposit.listGet list of direct deposit details for US and Canadian employeesread
  • ukg_pro.earnings_history_base_elements.listGet Earnings History Base Elementsread
  • ukg_pro.employee_pay_details_report.queryPOST /payroll/v1/employees/pay-details-reportread
  • ukg_pro.employee_pay_statements.getGet employee pay statement based on the given pay identifierread
  • ukg_pro.employee_pay_statements.lastGet employee last pay statement based on the passed employee identifierread
  • ukg_pro.employee_pay_statements.queryPOST /payroll/v1/employees/pay-statementsread
  • ukg_pro.general_ledger.getRetrieve General Ledger Run by IDread
  • ukg_pro.general_ledger.listRetrieve General Ledger Runsread
  • ukg_pro.import_pay_item_earnings.createImport Earnings for Payrollwrite
  • ukg_pro.import_pay_item_earnings.deleteDelete Earning by IDdestructive
  • ukg_pro.import_pay_item_earnings.getRetrieve Earning by IDread
  • ukg_pro.pay_register.listGet Pay Registerread
  • ukg_pro.paygroup_payperiods.listGet PayGroup PayPeriodsread
  • ukg_pro.payroll_deductions_history.listGet Payroll Deductions Historyread
  • ukg_pro.payroll_pending_deductions.createCreate Deduction Pending Pay Itemwrite
  • ukg_pro.payroll_pending_deductions.deleteDelete Deduction Pending Pay Itemdestructive
  • ukg_pro.payroll_pending_deductions.getRetrieve Deduction Pending Pay Item by IDread
  • ukg_pro.payroll_pending_deductions.get_by_source_keyRetrieve Deduction Pending Pay Item by Source Keyread
  • ukg_pro.payroll_pending_earnings.createCreate Earnings Pending Pay Itemwrite
  • ukg_pro.payroll_pending_earnings.deleteDelete Earnings Pending Pay Itemdestructive
  • ukg_pro.payroll_pending_earnings.getRetrieve Earnings Pending Pay Item by IDread
  • ukg_pro.payroll_pending_earnings.get_by_source_keyRetrieve Earnings Pending Pay Item by Source Keyread

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.

Give your agent UKG Pro today.

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