Connectors · Accounting & finance
Kombo MCP server for AI agents.
actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to Kombo and the rest of your systems. It gives your agent 137 Kombo actions (76 reads, 56 writes and 5 that wait for a confirmation) and holds the Kombo credential itself, so the agent never does. It paces Kombo'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/mcpdo { action: "kombo.ai_apply_applications.list", intent: "check which Kombo account is connected"}# Get applications · read · 1 upstream call- 137actionsin one signed file
- 76readlook, never change
- 56writecreate and update
- 5wait for a yesdestructive, confirmed first
Set up
Connect Kombo in three steps.
- 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 - 02
Connect Kombo.
Bearer token. 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.
api_keyKombo API keyhostWhere your Kombo lives: your host
account { op: "connections.requirements", service: "kombo" } # free: exactly what to paste, and what is found for you - 03
Make the first call. Check before a write.
Ask in plain words; Claude picks the action. Before anything changes,
checkvalidates the call and prices it, for free.do { action: "kombo.ai_apply_applications.list" }# get applications · read · 1 upstream callcheck { action: "kombo.hris_employees.create", input: { … } }# free: inputs, permissions, cost and confirmations, nothing sent
Kombo at a glance
- Sign-in
- Bearer token. 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
api_key- Setup fields
host- Limits we pace to
- 600 calls a minute, per connection
- API covered
- Kombo API v1 (OpenAPI 3.1, docs.kombo.dev/openapi.json)
api.kombo.dev/v1 - Built from
- Kombo's documentation, read 23 October 2026docs.kombo.devdocs.kombo.dev
- Service file
- Version 1.0.0, signed (Ed25519)
- Cached reads
- 71 of 76 reads, for up to 5 minutes; a write clears what it affects
- Shared entities
- 4, so ask can line Kombo up with your other systems
- Data
- Processed and stored in Sydney, Australia. No US region yet
Capabilities
What an AI agent can do in Kombo.
137 actions in 58 areas. Every one carries its effect, so a key can allow the reads and hold the rest.
- 76readlook, never change
- 56writecreate and update
- 5destructivewait for a confirmation
Datev
1912 read · 6 write · 1 destructive
Create eAU Request · Download Payroll Document · Download Payroll Document · Retrieve available documents
ATS applications
92 read · 7 write · 0 destructive
Get applications · Create interview · Update interview · Move application to stage
Hris employees
94 read · 5 write · 0 destructive
Get employees · [DEPRECATED] Create employee · Update employee · Create employee with form
ATS candidates
72 read · 4 write · 1 destructive
Get candidates · Create candidate · Add attachment to candidate · Add result link to candidate
Hris employments
53 read · 2 write · 0 destructive
Get employments · Get compensation form · Get job form · Update employment compensation
Integrations
51 read · 3 write · 1 destructive
Create Setup Flow link · Create reconnection link · Get integration details · Set integration enabled
AI apply postings
42 read · 2 write · 0 destructive
Parse a job posting · Inquire about a job posting's current form · Get job postings · Get job postings with application forms
ATS actions
44 read · 0 write · 0 destructive
Get add-application-attachment capabilities · Get add-candidate-attachment capabilities · Get create-application capabilities · Get create-candidate capabilities
50 more areas · 75 actions
- LMS course progressions 4
- LMS courses 4
- AI apply job feeds 3
- Assessment orders 3
- Connect 3
- Hris absences 3
- AI apply applications 2
- AI apply career sites 2
- AI apply jobs 2
- Assessment packages 2
- ATS avionte synced jobs 2
- ATS jobs 2
- Custom fields 2
- Hris skill proficiency ratings 2
- Hris skills 2
- Hris staffing entities 2
- Integration fields 2
- API key 1
- ATS application stages 1
- ATS attachments 1
- ATS interviews 1
- ATS notes 1
- ATS offers 1
- ATS rejection reasons 1
- ATS roles 1
- ATS scorecards 1
- ATS tags 1
- ATS tracked applications 1
- ATS users 1
- Hris absence types 1
- Hris employee document categories 1
- Hris employee documents 1
- Hris groups 1
- Hris legal entities 1
- Hris locations 1
- Hris pay groups 1
- Hris pay runs 1
- Hris payslips 1
- Hris performance review cycles 1
- Hris performance reviews 1
- Hris provisioning groups 1
- Hris teams 1
- Hris time off balances 1
- Hris timesheets 1
- LMS skills 1
- LMS users 1
- Passthrough 1
- Silae 1
- Syncs 1
- Tools 1
Top actions
The Kombo API, shaped for agents.
The ids your agent types, what each does, and the one name it shares with other systems. 32 of Kombo's 32 action names are shared with at least one other connector, so an agent learns them once.
| Action | What it does | Effect | Same name in |
|---|---|---|---|
kombo.hris_employees.listGet employees | Get employees. | read | hr.employee.list61 connectors |
kombo.hris_employees.create[DEPRECATED] Create employee | [DEPRECATED] Create employee. | write | hr.employee.create51 connectors |
kombo.hris_locations.listGet work locations | Get work locations. | read | hr.location.list32 connectors |
kombo.hris_absences.createCreate absence | Create absence. | write | hr.leave_request.create32 connectors |
kombo.hris_absences.listGet absences | Get absences. | read | hr.leave_request.list29 connectors |
kombo.ats_jobs.listGet jobs | Get jobs. | read | hr.job_opening.list24 connectors |
kombo.ats_candidates.listGet candidates | Get candidates. | read | hr.candidate.list22 connectors |
kombo.ats_candidates.createCreate candidate | Create candidate. | write | hr.candidate.create20 connectors |
kombo.ats_applications.listGet applications | Get applications. | read | hr.application.list15 connectors |
kombo.lms_courses.listGet courses | Get courses. | read | hr.training_course.list11 connectors |
kombo.ats_jobs.create_applicationCreate application | Create application. | write | hr.application.create11 connectors |
kombo.hris_absences.deleteDelete absence | Delete absence. | destructive | hr.leave_request.delete23 connectors |
Try it
Prompts to paste into Claude.
Each one names the Kombo actions it will call, so you know what it reads and what it changes before you send it.
- Readread
List everyone in Kombo with their department and start date.
calls
kombo.hris_employees.list - Writewrite
[DEPRECATED] Create employee in Kombo. Show me exactly what you will send before you save it.
calls
kombo.hris_employees.create
Governance for Kombo
Destructive actions wait for a yes.
5 Kombo actions are destructive. These are all of them:
- Delete absence
kombo.hris_absences.delete - Delete integration
kombo.integrations.delete - Remove tag from candidate
kombo.ats_candidates.remove_tag - Delete eAU request
kombo.datev.delete_eau_request - Remove a job from sync
kombo.ats_avionte_synced_jobs.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.
Delete absence?
intent: the user asked me to delete absence
account { op: "keys.create", name: "kombo-agent", allowed_actions: ["kombo.*"], cap_calls: 2000, confirm_policy: "human_for_writes", approval_rules: [ { match: "kombo.hris_absences.delete", approver: "[email protected]" }, { match: "kombo.integrations.delete", approver: "[email protected]" }, { match: "kombo.ats_candidates.remove_tag", approver: "[email protected]" } ]}Cost
What Kombo costs on actionlake.
Every Kombo action is one upstream call, the only thing actionlake bills. Searching, check, cost, account and any call Kombo 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 137 Kombo actions
- 137actions pageeach page of a long list is one call
- 71reads can be cacheda cache hit costs nothing
- 100,000calls a month, freepaid plans from US$49 a month for 250,000
Action index
Every Kombo action.
137 actions by area: the id your agent calls, what it does, and its effect.
Datev19
kombo.datev.check_document_permissionVerify service is enabledreadkombo.datev.check_eau_permissionVerify service is enabledreadkombo.datev.check_write_permissionVerify ASCII write is enabledreadkombo.datev.create_eau_requestCreate eAU Requestwritekombo.datev.delete_eau_requestDelete eAU requestdestructivekombo.datev.download_documentDownload Payroll Documentreadkombo.datev.download_employee_documentDownload Payroll Documentreadkombo.datev.get_eau_requestQuery the status of the eAU requestreadkombo.datev.get_system_informationGet DATEV system informationreadkombo.datev.get_userinfoGet DATEV user inforeadkombo.datev.list_available_documentsRetrieve available documentsreadkombo.datev.list_data_pushesGet DATEV data pushesreadkombo.datev.list_health_insurancesGet available health insurers from DATEV.readkombo.datev.list_salary_typesGet available salary types (Lohnarten) from DATEV.readkombo.datev.passthroughWrite raw DATEV ASCII filewritekombo.datev.prepare_payrollPrepare DATEV Payrollwritekombo.datev.push_general_dataPush general data to DATEVwritekombo.datev.push_payroll_dataPush payroll data to DATEVwritekombo.datev.set_compensationsSet DATEV compensationswrite
ATS applications9
kombo.ats_applications.add_attachmentAdd attachment to applicationwritekombo.ats_applications.add_noteAdd note to applicationwritekombo.ats_applications.add_result_linkAdd result link to applicationwritekombo.ats_applications.listGet applicationsreadkombo.ats_applications.list_attachmentsGet application attachmentsreadkombo.ats_applications.move_stageMove application to stagewritekombo.ats_applications.rejectReject applicationwritekombo.ats_applications.schedule_interviewCreate interviewwritekombo.ats_applications.update_interviewUpdate interviewwrite
Hris employees9
kombo.hris_employees.create[DEPRECATED] Create employeewritekombo.hris_employees.create_with_formCreate employee with formwritekombo.hris_employees.get_formGet employee formreadkombo.hris_employees.get_personal_data_formGet personal data formreadkombo.hris_employees.get_rehire_formGet rehire formreadkombo.hris_employees.listGet employeesreadkombo.hris_employees.rehireRehire employeewritekombo.hris_employees.updateUpdate employeewritekombo.hris_employees.update_personal_dataUpdate employee personal datawrite
ATS candidates7
kombo.ats_candidates.add_attachmentAdd attachment to candidatewritekombo.ats_candidates.add_result_linkAdd result link to candidatewritekombo.ats_candidates.add_tagAdd tag to candidatewritekombo.ats_candidates.createCreate candidatewritekombo.ats_candidates.listGet candidatesreadkombo.ats_candidates.list_attachmentsGet candidate attachmentsreadkombo.ats_candidates.remove_tagRemove tag from candidatedestructive
Hris employments5
kombo.hris_employments.get_compensation_formGet compensation formreadkombo.hris_employments.get_job_formGet job formreadkombo.hris_employments.listGet employmentsreadkombo.hris_employments.update_compensationUpdate employment compensationwritekombo.hris_employments.update_jobUpdate employment jobwrite
Integrations5
kombo.integrations.create_setup_linkCreate Setup Flow linkwritekombo.integrations.deleteDelete integrationdestructivekombo.integrations.getGet integration detailsreadkombo.integrations.relinkCreate reconnection linkwritekombo.integrations.set_enabledSet integration enabledwrite
AI apply postings4
kombo.ai_apply_postings.createParse a job postingwritekombo.ai_apply_postings.inquireInquire about a job posting's current formwritekombo.ai_apply_postings.listGet job postingsreadkombo.ai_apply_postings.list_formsGet job postings with application formsread
ATS actions4
kombo.ats_actions.get_add_application_attachmentGet add-application-attachment capabilitiesreadkombo.ats_actions.get_add_candidate_attachmentGet add-candidate-attachment capabilitiesreadkombo.ats_actions.get_create_applicationGet create-application capabilitiesreadkombo.ats_actions.get_create_candidateGet create-candidate capabilitiesread
LMS course progressions4
kombo.lms_course_progressions.checkCheck course progressionreadkombo.lms_course_progressions.completeComplete coursewritekombo.lms_course_progressions.createEnroll user in coursewritekombo.lms_course_progressions.listGet course progressionsread
LMS courses4
kombo.lms_courses.bulk_upsertUpsert courseswritekombo.lms_courses.deactivateDeactivate coursewritekombo.lms_courses.get_bulk_taskGet status of “Upsert courses” taskreadkombo.lms_courses.listGet coursesread
AI apply job feeds3
kombo.ai_apply_job_feeds.bulk_importBulk import job postingswritekombo.ai_apply_job_feeds.createCreate a job feedwritekombo.ai_apply_job_feeds.listGet job feedsread
Assessment orders3
kombo.assessment_orders.listGet ordersreadkombo.assessment_orders.list_openGet open orders (deprecated)readkombo.assessment_orders.update_resultUpdate order resultwrite
Connect3
kombo.connect.activate_integrationActivate integration (optional)writekombo.connect.create_linkCreate connection linkwritekombo.connect.get_integration_by_tokenGet integration by tokenread
Hris absences3
kombo.hris_absences.createCreate absencewritekombo.hris_absences.deleteDelete absencedestructivekombo.hris_absences.listGet absencesread
AI apply applications2
kombo.ai_apply_applications.listGet applicationsreadkombo.ai_apply_applications.submitSubmit job applicationwrite
AI apply career sites2
kombo.ai_apply_career_sites.createCreate a career sitewritekombo.ai_apply_career_sites.listGet career sitesread
AI apply jobs2
kombo.ai_apply_jobs.create_applicationCreate applicationwritekombo.ai_apply_jobs.listGet jobsread
Assessment packages2
kombo.assessment_packages.listGet packagesreadkombo.assessment_packages.setSet packageswrite
ATS avionte synced jobs2
kombo.ats_avionte_synced_jobs.createAdd a job to be syncedwritekombo.ats_avionte_synced_jobs.deleteRemove a job from syncdestructive
ATS jobs2
kombo.ats_jobs.create_applicationCreate applicationwritekombo.ats_jobs.listGet jobsread
Custom fields2
kombo.custom_fields.listGet custom fields with current mappingsreadkombo.custom_fields.updatePut custom field mappingswrite
Hris skill proficiency ratings2
kombo.hris_skill_proficiency_ratings.createUpsert employee skill proficiency ratingwritekombo.hris_skill_proficiency_ratings.listGet employee skill proficiency ratingsread
Hris skills2
kombo.hris_skills.createUpsert managed skillwritekombo.hris_skills.listGet skillsread
Hris staffing entities2
kombo.hris_staffing_entities.add_skillUpsert staffing entity skill expectationwritekombo.hris_staffing_entities.listGet staffing entitiesread
Integration fields2
kombo.integration_fields.listGet integration fieldsreadkombo.integration_fields.updateUpdates an integration fields passthrough settingwrite
API key1
kombo.api_key.checkCheck API keyread
ATS application stages1
kombo.ats_application_stages.listGet application stagesread
ATS attachments1
kombo.ats_attachments.listGet attachmentsread
ATS interviews1
kombo.ats_interviews.listGet interviewsread
ATS notes1
kombo.ats_notes.listGet notesread
ATS offers1
kombo.ats_offers.listGet offersread
ATS rejection reasons1
kombo.ats_rejection_reasons.listGet rejection reasonsread
ATS roles1
kombo.ats_roles.listGet rolesread
ATS scorecards1
kombo.ats_scorecards.listGet scorecardsread
ATS tags1
kombo.ats_tags.listGet tagsread
ATS tracked applications1
kombo.ats_tracked_applications.importImport tracked applicationwrite
ATS users1
kombo.ats_users.listGet usersread
Hris absence types1
kombo.hris_absence_types.listGet absence typesread
Hris employee document categories1
kombo.hris_employee_document_categories.listGet employee document categoriesread
Hris employee documents1
kombo.hris_employee_documents.createAdd document to employeewrite
Hris groups1
kombo.hris_groups.listGet groupsread
Hris legal entities1
kombo.hris_legal_entities.listGet legal entitiesread
Hris locations1
kombo.hris_locations.listGet work locationsread
Hris pay groups1
kombo.hris_pay_groups.listPay Groupsread
Hris pay runs1
kombo.hris_pay_runs.listPay Runsread
Hris payslips1
kombo.hris_payslips.listPayslipsread
Hris performance review cycles1
kombo.hris_performance_review_cycles.listGet performance review cyclesread
Hris performance reviews1
kombo.hris_performance_reviews.listGet performance reviewsread
Hris provisioning groups1
kombo.hris_provisioning_groups.create_setup_linkCreate provisioning setup link (deprecated)write
Hris teams1
kombo.hris_teams.listGet teams (deprecated)read
Hris time off balances1
kombo.hris_time_off_balances.listGet time off balancesread
Hris timesheets1
kombo.hris_timesheets.listGet timesheetsread
LMS skills1
kombo.lms_skills.listGet skillsread
LMS users1
kombo.lms_users.listGet usersread
Passthrough1
kombo.passthrough.requestSend passthrough requestwrite
Silae1
kombo.silae.create_payroll_supplementWrite Payroll Supplementwrite
Syncs1
kombo.syncs.forceTrigger syncwrite
Tools1
kombo.tools.listGet toolsread
Questions
The Kombo MCP server, answered.
Is there a Kombo MCP server for Claude?
Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 137 Kombo actions across datev, ATS applications, hris employees and ATS candidates, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by Kombo.
What do I need to connect Kombo?
Kombo API key. Plus your host. The free call account { op: "connections.requirements", service: "kombo" } lists exactly what to paste.
Can an AI agent delete or change things in Kombo?
Only if its key allows it, and only with an explicit confirmation. 5 Kombo actions are destructive, including delete absence, delete integration and remove tag from candidate. 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 Kombo API limit?
actionlake paces every call to the limits in the Kombo service file: 600 calls a minute per connection. Repeated reads are answered from cache (71 Kombo actions can be), which never reaches Kombo.
What does a Kombo action cost?
One upstream call, the only unit actionlake bills. A list that pages bills one call per page (137 Kombo actions page). Cache hits, searches, dry runs and calls Kombo 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 Kombo API does it cover?
The Kombo API v1 (OpenAPI 3.1, docs.kombo.dev/openapi.json) at api.kombo.dev/v1 by default, or the base URL set when you connect. It is built from Kombo's documentation as read on 23 October 2026. 137 actions in 58 areas, each one in the signed service file (version 1.0.0).
Does actionlake keep my Kombo 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 Kombo 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 Kombo today.
Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.