Connectors · MSP & PSA
Kaseya VSA MCP server for AI agents.
actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to Kaseya VSA and the rest of your systems. It gives your agent 275 Kaseya VSA actions (152 reads, 84 writes and 39 that wait for a confirmation) and holds the Kaseya VSA credential itself, so the agent never does. It paces Kaseya VSA'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: "kaseya_vsa.users.list", intent: "check which Kaseya VSA account is connected"}# List VSA users · read · 1 upstream call- 275actionsin one signed file
- 152readlook, never change
- 84writecreate and update
- 39wait for a yesdestructive, confirmed first
Set up
Connect Kaseya VSA 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 Kaseya VSA.
Session login. actionlake opens the session and renews it when it expires. actionlake stores what you paste write-only, sealed under your tenant's key.
usernameVSA user name the token belongs topersonal_access_tokenPersonal Authentication Token created in VSA under the user's profile (User Profile > Personal Authentication…hostWhere your Kaseya VSA lives: your host
account { op: "connections.requirements", service: "kaseya_vsa" } # 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: "kaseya_vsa.users.list" }# list vsa users · read · 1 upstream callcheck { action: "kaseya_vsa.users.create", input: { … } }# free: inputs, permissions, cost and confirmations, nothing sent
Kaseya VSA at a glance
- Sign-in
- Session login. actionlake opens the session and renews it when it expires.
- You provide
usernamepersonal_access_token- Setup fields
host- Limits we pace to
- 10 calls a second, per connection
- API covered
- Kaseya VSA REST API v1.0 (VSA 9.5), at your Kaseya VSA instance's API base URL, which you enter when connecting (path /api/v1.0)
- Built from
- Kaseya VSA's documentation, read 23 October 2026help.vsa9.kaseya.comGitHub
- Service file
- Version 1.0.0, signed (Ed25519)
- Cached reads
- 149 of 152 reads, for up to 5 minutes; a write clears what it affects
- Shared entities
- 8, so ask can line Kaseya VSA up with your other systems
- Data
- Processed and stored in Sydney, Australia. No US region yet
Capabilities
What an AI agent can do in Kaseya VSA.
275 actions in 53 areas. Every one carries its effect, so a key can allow the reads and hold the rest.
- 152readlook, never change
- 84writecreate and update
- 39destructivewait for a confirmation
Audit
2215 read · 7 write · 0 destructive
Get an agent's audited Add/Remove Programs list · Get an agent's audited credentials · Get an agent's audited disk volumes · Get an agent's audited local groups
Agents
1911 read · 7 write · 1 destructive
List agent machines · Get an agent machine · Delete an agent account · List admins active on agent machines
Agent procedures
1710 read · 3 write · 4 destructive
List agent procedures · Run an agent procedure on an agent now · List agent procedure execution history · List an agent's procedure run history
Logs
1515 read · 0 write · 0 destructive
Agent log of an agent · Agent procedure log of an agent · Alarm log of an agent · Application event log of an agent
Assets
104 read · 5 write · 1 destructive
List assets · Get an asset · Delete an asset · Publish a device to a discovery network
Patch
103 read · 4 write · 3 destructive
List an agent's patch history · List patches missing on an agent · Run a patch scan on an agent now · Schedule patch installation for an agent
Users
103 read · 3 write · 4 destructive
List VSA users · Get a VSA user · Create a VSA user · Update a VSA user
Documents
95 read · 2 write · 2 destructive
List service audits across agents · List volume labels across agents · Create an agent document folder · List distinct service names
45 more areas · 163 actions
- Orgs 8
- Service desk tickets 8
- Scopes 7
- Staff 7
- Temporary agents 7
- Tenant role types 7
- Tenants 7
- Custom fields 6
- Machine groups 6
- Session timers 6
- Agent packages 5
- Departments 5
- Remote control services 5
- Roles 5
- Service desks 5
- Tickets 5
- Agent notes 4
- Cloud backup 4
- Tenant modules 4
- Third party app notifications 4
- Admin tasks 3
- Alarms 3
- Alerts 3
- Custom extensions 3
- Customers 3
- Info center messages 3
- Functions 2
- Get files 2
- Modules 2
- Remote control machines 2
- Role types 2
- Service desk ticket notes 2
- Sessions 2
- Tenant licensing 2
- Tenant settings 2
- Third party apps 2
- Work orders 2
- Alert definitions 1
- Asset types 1
- Email 1
- Environment 1
- Notifications 1
- Remote control 1
- Variables 1
- Views 1
Top actions
The Kaseya VSA API, shaped for agents.
The ids your agent types, what each does, and the one name it shares with other systems. 31 of Kaseya VSA's 31 action names are shared with at least one other connector, so an agent learns them once.
| Action | What it does | Effect | Same name in |
|---|---|---|---|
kaseya_vsa.users.listList VSA users | List VSA users. | read | identity.user.list474 connectors |
kaseya_vsa.roles.listList user roles | List user roles. | read | identity.role.list184 connectors |
kaseya_vsa.users.getGet a VSA user | Get a VSA user. | read | identity.user.get399 connectors |
kaseya_vsa.service_desk_tickets.listList tickets of a service desk | List tickets of a service desk. | read | service.ticket.list56 connectors |
kaseya_vsa.orgs.listList organizations | List organizations. | read | crm.company.list162 connectors |
kaseya_vsa.users.createCreate a VSA user | Create a VSA user. | write | identity.user.create262 connectors |
kaseya_vsa.service_desks.listList service desks | List service desks. | read | service.queue.list21 connectors |
kaseya_vsa.agents.listList agent machines | List agent machines. | read | device.endpoint.list65 connectors |
kaseya_vsa.alarms.listList alarms | List alarms. | read | monitoring.alert.list51 connectors |
kaseya_vsa.roles.createCreate a user role | Create a user role. | write | identity.role.create105 connectors |
kaseya_vsa.service_desk_tickets.createCreate a service desk ticket | Create a service desk ticket. | write | service.ticket.create54 connectors |
kaseya_vsa.users.deleteDelete a VSA user | Delete a VSA user. | destructive | identity.user.delete253 connectors |
Try it
Prompts to paste into Claude.
Each one names the Kaseya VSA actions it will call, so you know what it reads and what it changes before you send it.
- Readread
Which Kaseya VSA tickets have been open the longest? Show me the ten oldest with their status.
calls
kaseya_vsa.service_desk_tickets.list - Writewrite
Create a VSA user in Kaseya VSA. Show me exactly what you will send before you save it.
calls
kaseya_vsa.users.create - Across systemsread
Which Kaseya VSA companies have invoices in NetSuite, and how many each?
calls
kaseya_vsa.orgs.listnetsuite.views.invoices
Across your systems
Kaseya VSA, joined to the rest of your business.
One ask fetches from Kaseya VSA and another system, joins the rows on the same customer on our side, and hands your agent the answer, not every row.
Which Kaseya VSA companies have invoices in NetSuite, and how many each?
kaseya_vsa.orgs.list+netsuite.views.invoices, oncrm.company· NetSuiteWhich Kaseya VSA companies have tickets in HubSpot CRM, and how many each?
kaseya_vsa.orgs.list+hubspot_crm.tickets.list, oncrm.company· HubSpot CRM
identity.user 517crm.company 227identity.role 107device.endpoint 69service.ticket 62monitoring.alert 56asset.asset 40service.queue 14ask { intent: "which Kaseya VSA companies have invoices in NetSuite, and how many each", steps: [ { action: "kaseya_vsa.orgs.list", as: "co", input: {}, limit: 100, max_pages: 5 }, { action: "netsuite.views.invoices", as: "inv", input: {}, limit: 100, max_pages: 5 }, { join: { left: "co", right: "inv", on: "crm.company", group_by: "co.name", select: ["co.name", "count(inv.id) as invoices"] } } ]}Governance for Kaseya VSA
Destructive actions wait for a yes.
39 Kaseya VSA actions are destructive. The first 10:
- Delete a VSA user
kaseya_vsa.users.delete - Delete a user role
kaseya_vsa.roles.delete - Delete an organization
kaseya_vsa.orgs.delete - Delete an agent account
kaseya_vsa.agents.delete - Delete an asset
kaseya_vsa.assets.delete - Run an agent procedure on an agent now
kaseya_vsa.agent_procedures.run_now - Delete a staff member
kaseya_vsa.staff.delete - Delete a scope
kaseya_vsa.scopes.delete - Disable a VSA user
kaseya_vsa.users.disable - Add a user to a role
kaseya_vsa.roles.add_user
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 a VSA user?
intent: the user asked me to delete a VSA user
account { op: "keys.create", name: "kaseya-vsa-agent", allowed_actions: ["kaseya_vsa.*"], cap_calls: 2000, confirm_policy: "human_for_writes", approval_rules: [ { match: "kaseya_vsa.users.delete", approver: "[email protected]" }, { match: "kaseya_vsa.roles.delete", approver: "[email protected]" }, { match: "kaseya_vsa.orgs.delete", approver: "[email protected]" } ]}Cost
What Kaseya VSA costs on actionlake.
Every Kaseya VSA action is one upstream call, the only thing actionlake bills. Searching, check, cost, account and any call Kaseya VSA 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 275 Kaseya VSA actions
- 275actions pageeach page of a long list is one call
- 149reads can be cacheda cache hit costs nothing
- 100,000calls a month, freepaid plans from US$49 a month for 250,000
Action index
Every Kaseya VSA action.
275 actions by area: the id your agent calls, what it does, and its effect.
Audit22
kaseya_vsa.audit.add_remove_programsGet an agent's audited Add/Remove Programs listreadkaseya_vsa.audit.credentialsGet an agent's audited credentialsreadkaseya_vsa.audit.disk_volumesGet an agent's audited disk volumesreadkaseya_vsa.audit.groupsGet an agent's audited local groupsreadkaseya_vsa.audit.installed_applicationsGet an agent's audited installed applicationsreadkaseya_vsa.audit.local_group_membersGet an agent's audited local group membersreadkaseya_vsa.audit.pci_and_diskGet an agent's audited PCI and disk hardwarereadkaseya_vsa.audit.printersGet an agent's audited printersreadkaseya_vsa.audit.purchase_and_warrantyGet an agent's audited purchase and warranty expiry datesreadkaseya_vsa.audit.run_baselineRun a baseline audit on an agent nowwritekaseya_vsa.audit.run_latestRun a latest audit on an agent nowwritekaseya_vsa.audit.run_sysinfoRun a system information audit on an agent nowwritekaseya_vsa.audit.schedule_baselineSchedule a baseline audit on an agentwritekaseya_vsa.audit.schedule_latestSchedule a latest audit on an agentwritekaseya_vsa.audit.schedule_sysinfoSchedule a system information audit on an agentwritekaseya_vsa.audit.security_productsGet an agent's audited security productsreadkaseya_vsa.audit.set_purchase_and_warrantySet an agent's purchase and warranty expiry dateswritekaseya_vsa.audit.software_licensesGet an agent's audited software licencesreadkaseya_vsa.audit.startup_appsGet an agent's audited startup applicationsreadkaseya_vsa.audit.summariesList audit summaries of all agentsreadkaseya_vsa.audit.summaryGet an agent's audited audit summaryreadkaseya_vsa.audit.user_accountsGet an agent's audited local user accountsread
Agents19
kaseya_vsa.agents.active_adminsList admins active on agent machinesreadkaseya_vsa.agents.add_remote_control_audit_entryAdd a Live Connect audit log entry for an agentwritekaseya_vsa.agents.connection_gateway_ipsList agent connection gateway IPsreadkaseya_vsa.agents.deleteDelete an agent accountdestructivekaseya_vsa.agents.getGet an agent machinereadkaseya_vsa.agents.listList agent machinesreadkaseya_vsa.agents.list_in_viewList agents in an agent viewreadkaseya_vsa.agents.list_on_networkList agents in a discovery networkreadkaseya_vsa.agents.renameRename an agentwritekaseya_vsa.agents.set_checkin_controlUpdate an agent's check-in controlwritekaseya_vsa.agents.set_temp_dirSet an agent's working (temp) directorywritekaseya_vsa.agents.set_user_profileUpdate an agent's user profilewritekaseya_vsa.agents.settingsGet an agent's settingsreadkaseya_vsa.agents.suspendSuspend or resume agentswritekaseya_vsa.agents.two_factor_settingsGet an agent's two-factor settingsreadkaseya_vsa.agents.update_scheduleGet an agent's update schedulereadkaseya_vsa.agents.upgradeUpgrade an agent to the current versionwritekaseya_vsa.agents.uptimeList agent uptime since a datereadkaseya_vsa.agents.user_profilesList agent user profilesread
Agent procedures17
kaseya_vsa.agent_procedures.add_quick_launchAdd an agent procedure to quick launchwritekaseya_vsa.agent_procedures.ask_before_executingGet the quick-launch ask-before-executing settingreadkaseya_vsa.agent_procedures.cancel_scheduledCancel a scheduled agent procedure on an agentdestructivekaseya_vsa.agent_procedures.execution_historyList agent procedure execution historyreadkaseya_vsa.agent_procedures.historyList an agent's procedure run historyreadkaseya_vsa.agent_procedures.listList agent proceduresreadkaseya_vsa.agent_procedures.portalList agent procedures published to the user portalreadkaseya_vsa.agent_procedures.procedure_historyList agent procedure change historyreadkaseya_vsa.agent_procedures.promptsList prompts of all agent proceduresreadkaseya_vsa.agent_procedures.prompts_by_procedureList the prompts of an agent procedurereadkaseya_vsa.agent_procedures.quick_launchList quick-launch agent proceduresreadkaseya_vsa.agent_procedures.remove_quick_launchRemove an agent procedure from quick launchdestructivekaseya_vsa.agent_procedures.run_nowRun an agent procedure on an agent nowdestructivekaseya_vsa.agent_procedures.run_now_get_idRun an agent procedure now and return its run iddestructivekaseya_vsa.agent_procedures.scheduleSchedule an agent procedure on an agentwritekaseya_vsa.agent_procedures.scheduledList procedures scheduled on an agentreadkaseya_vsa.agent_procedures.set_ask_before_executingSet the quick-launch ask-before-executing settingwrite
Logs15
kaseya_vsa.logs.agentAgent log of an agentreadkaseya_vsa.logs.agent_procedureAgent procedure log of an agentreadkaseya_vsa.logs.alarmAlarm log of an agentreadkaseya_vsa.logs.application_eventApplication event log of an agentreadkaseya_vsa.logs.configuration_changesConfiguration changes log of an agentreadkaseya_vsa.logs.directory_service_eventDirectory service event log of an agentreadkaseya_vsa.logs.dns_server_eventDNS server event log of an agentreadkaseya_vsa.logs.internet_explorer_eventInternet Explorer event log of an agentreadkaseya_vsa.logs.legacy_remote_controlLegacy remote control log of an agentreadkaseya_vsa.logs.log_monitoringLog monitoring log of an agentreadkaseya_vsa.logs.monitor_actionMonitor action log of an agentreadkaseya_vsa.logs.network_statisticsNetwork statistics log of an agentreadkaseya_vsa.logs.remote_controlKaseya Remote Control log of an agentreadkaseya_vsa.logs.security_eventSecurity event log of an agentreadkaseya_vsa.logs.system_eventSystem event log of an agentread
Assets10
kaseya_vsa.assets.agent_auditGet the agent audit of an assetreadkaseya_vsa.assets.assign_serviceAssign remote-control services to an assetwritekaseya_vsa.assets.deleteDelete an assetdestructivekaseya_vsa.assets.demote_to_deviceDemote an asset to a devicewritekaseya_vsa.assets.getGet an assetreadkaseya_vsa.assets.get_by_idGet an asset record by asset idreadkaseya_vsa.assets.listList assetsreadkaseya_vsa.assets.promote_to_assetPromote a discovered device to an assetwritekaseya_vsa.assets.publish_devicePublish a device to a discovery networkwritekaseya_vsa.assets.set_proxySet the proxy agent of an assetwrite
Patch10
kaseya_vsa.patch.cancel_scheduleCancel scheduled patch installs on an agentdestructivekaseya_vsa.patch.clear_ignoreClear the ignore flag of a patch on an agentdestructivekaseya_vsa.patch.delete_patch_dataClear patch data for agentsdestructivekaseya_vsa.patch.historyList an agent's patch historyreadkaseya_vsa.patch.missingList patches missing on an agentreadkaseya_vsa.patch.scan_nowRun a patch scan on an agent nowwritekaseya_vsa.patch.schedule_scanSchedule patch installation for an agentwritekaseya_vsa.patch.set_ignoreMark patches ignored on an agentwritekaseya_vsa.patch.statusGet an agent's patch statusreadkaseya_vsa.patch.update_nowRun a patch update on agentswrite
Users10
kaseya_vsa.users.close_sessionClose the current user's API sessiondestructivekaseya_vsa.users.createCreate a VSA userwritekaseya_vsa.users.currentGet the authenticated VSA userreadkaseya_vsa.users.deleteDelete a VSA userdestructivekaseya_vsa.users.disableDisable a VSA userdestructivekaseya_vsa.users.enableEnable a VSA userwritekaseya_vsa.users.getGet a VSA userreadkaseya_vsa.users.listList VSA usersreadkaseya_vsa.users.reset_passwordSend a password reset to a VSA userdestructivekaseya_vsa.users.updateUpdate a VSA userwrite
Documents9
kaseya_vsa.documents.all_service_auditsList service audits across agentsreadkaseya_vsa.documents.all_volume_labelsList volume labels across agentsreadkaseya_vsa.documents.create_folderCreate an agent document folderwritekaseya_vsa.documents.deleteDelete an agent document or folderdestructivekaseya_vsa.documents.distinct_service_namesList distinct service namesreadkaseya_vsa.documents.distinct_volume_labelsList distinct volume labelsreadkaseya_vsa.documents.listList documents in an agent document folderreadkaseya_vsa.documents.moveMove an agent documentwritekaseya_vsa.documents.renameRename an agent documentdestructive
Orgs8
kaseya_vsa.orgs.createCreate an organizationwritekaseya_vsa.orgs.deleteDelete an organizationdestructivekaseya_vsa.orgs.getGet an organizationreadkaseya_vsa.orgs.listList organizationsreadkaseya_vsa.orgs.locationsList organization locationsreadkaseya_vsa.orgs.networksList discovery networks for organizationsreadkaseya_vsa.orgs.typesList organization typesreadkaseya_vsa.orgs.updateUpdate an organizationwrite
Service desk tickets8
kaseya_vsa.service_desk_tickets.assign_staffAssign a staff member to a service desk ticketwritekaseya_vsa.service_desk_tickets.createCreate a service desk ticketwritekaseya_vsa.service_desk_tickets.getGet a service desk ticketreadkaseya_vsa.service_desk_tickets.get_custom_fieldGet a custom field value of a service desk ticketreadkaseya_vsa.service_desk_tickets.listList tickets of a service deskreadkaseya_vsa.service_desk_tickets.set_custom_fieldSet a custom field value on a service desk ticketwritekaseya_vsa.service_desk_tickets.set_prioritySet a service desk ticket's prioritywritekaseya_vsa.service_desk_tickets.set_statusSet a service desk ticket's statuswrite
Scopes7
kaseya_vsa.scopes.add_machine_groupAdd a machine group to a scopewritekaseya_vsa.scopes.add_orgAdd an organization to a scopewritekaseya_vsa.scopes.add_userAdd a user to a scopewritekaseya_vsa.scopes.createCreate a scopewritekaseya_vsa.scopes.deleteDelete a scopedestructivekaseya_vsa.scopes.getGet a scopereadkaseya_vsa.scopes.listList scopesread
Staff7
kaseya_vsa.staff.createCreate a staff member in a departmentwritekaseya_vsa.staff.deleteDelete a staff memberdestructivekaseya_vsa.staff.getGet a staff memberreadkaseya_vsa.staff.listList staff membersreadkaseya_vsa.staff.list_by_departmentList staff of a departmentreadkaseya_vsa.staff.list_by_orgList staff of an organizationreadkaseya_vsa.staff.updateUpdate a staff memberwrite
Temporary agents7
kaseya_vsa.temporary_agents.add_noteAdd a note to a temporary agentwritekaseya_vsa.temporary_agents.configGet temporary agent configurationreadkaseya_vsa.temporary_agents.createCreate a temporary agentwritekaseya_vsa.temporary_agents.deleteDelete a temporary agentdestructivekaseya_vsa.temporary_agents.listList temporary (Live Connect on-demand) agentsreadkaseya_vsa.temporary_agents.renameRename a temporary agentwritekaseya_vsa.temporary_agents.send_emailEmail a temporary agent download linkwrite
Tenant role types7
kaseya_vsa.tenant_role_types.createCreate a tenant role typewritekaseya_vsa.tenant_role_types.deleteDelete a tenant role typedestructivekaseya_vsa.tenant_role_types.enable_for_tenantActivate role types for a tenantwritekaseya_vsa.tenant_role_types.getGet a tenant role typereadkaseya_vsa.tenant_role_types.listList tenant role types with their function listsreadkaseya_vsa.tenant_role_types.remove_from_tenantDeactivate a role type for a tenantdestructivekaseya_vsa.tenant_role_types.set_limitsSet role type seat limits for a tenantdestructive
Tenants7
kaseya_vsa.tenants.createCreate a tenantwritekaseya_vsa.tenants.deactivateDeactivate a tenantdestructivekaseya_vsa.tenants.deleteRemove a tenantdestructivekaseya_vsa.tenants.getGet a tenant partition with its modules, role types and licence limitsreadkaseya_vsa.tenants.listList tenants (partitions) visible to the userreadkaseya_vsa.tenants.list_allList tenant partitions (excluding partition 1)readkaseya_vsa.tenants.renameRename a tenantwrite
Custom fields6
kaseya_vsa.custom_fields.createCreate an agent custom fieldwritekaseya_vsa.custom_fields.deleteDelete an agent custom fielddestructivekaseya_vsa.custom_fields.listList agent custom field definitionsreadkaseya_vsa.custom_fields.list_by_agentList custom field values of an agentreadkaseya_vsa.custom_fields.renameRename an agent custom fieldwritekaseya_vsa.custom_fields.set_valueSet a custom field value on an agentwrite
Machine groups6
kaseya_vsa.machine_groups.createCreate a machine group in an organizationwritekaseya_vsa.machine_groups.deleteDelete a machine groupdestructivekaseya_vsa.machine_groups.getGet a machine groupreadkaseya_vsa.machine_groups.listList machine groupsreadkaseya_vsa.machine_groups.list_by_orgList machine groups of an organizationreadkaseya_vsa.machine_groups.renameRename a machine groupwrite
Session timers6
kaseya_vsa.session_timers.createCreate a session timerwritekaseya_vsa.session_timers.deleteDelete a session timerdestructivekaseya_vsa.session_timers.force_stopForce-stop and remove a running session timerdestructivekaseya_vsa.session_timers.getGet a session timerreadkaseya_vsa.session_timers.listList session (time tracking) timersreadkaseya_vsa.session_timers.updateUpdate a running session timer (not committed until stopped)write
Agent packages5
kaseya_vsa.agent_packages.createCreate an agent install packagewritekaseya_vsa.agent_packages.create_linkCreate an agent install package download linkwritekaseya_vsa.agent_packages.deleteDelete an agent install packagedestructivekaseya_vsa.agent_packages.deploy_pageGet the agent deployment page customization for a partitionreadkaseya_vsa.agent_packages.listList agent install packagesread
Departments5
kaseya_vsa.departments.createCreate a department in an organizationwritekaseya_vsa.departments.deleteDelete a departmentdestructivekaseya_vsa.departments.getGet a departmentreadkaseya_vsa.departments.list_by_orgList departments of an organizationreadkaseya_vsa.departments.updateUpdate a departmentwrite
Remote control services5
kaseya_vsa.remote_control_services.createCreate a remote control servicewritekaseya_vsa.remote_control_services.deleteDelete a remote control servicedestructivekaseya_vsa.remote_control_services.listList remote control servicesreadkaseya_vsa.remote_control_services.list_by_assetList remote control services of an assetreadkaseya_vsa.remote_control_services.updateUpdate a remote control servicewrite
Roles5
kaseya_vsa.roles.add_userAdd a user to a roledestructivekaseya_vsa.roles.createCreate a user rolewritekaseya_vsa.roles.deleteDelete a user roledestructivekaseya_vsa.roles.getGet a user rolereadkaseya_vsa.roles.listList user rolesread
Service desks5
kaseya_vsa.service_desks.categoriesList ticket categories of a service deskreadkaseya_vsa.service_desks.custom_fieldsList custom fields of a service deskreadkaseya_vsa.service_desks.listList service desksreadkaseya_vsa.service_desks.prioritiesList ticket priorities of a service deskreadkaseya_vsa.service_desks.statusesList ticket statuses of a service deskread
Tickets5
kaseya_vsa.tickets.add_noteAdd a note to a legacy Ticketing ticket and set its fieldswritekaseya_vsa.tickets.createCreate a legacy Ticketing module ticketwritekaseya_vsa.tickets.getGet a legacy Ticketing module ticketreadkaseya_vsa.tickets.listList legacy Ticketing module ticketsreadkaseya_vsa.tickets.notesList notes of a legacy Ticketing ticketread
Agent notes4
kaseya_vsa.agent_notes.createAdd a note to an agentwritekaseya_vsa.agent_notes.deleteDelete an agent notedestructivekaseya_vsa.agent_notes.listList agent notesreadkaseya_vsa.agent_notes.updateUpdate agent noteswrite
Cloud backup4
kaseya_vsa.cloud_backup.serversList Kaseya Cloud Backup serversreadkaseya_vsa.cloud_backup.statusGet the last Cloud Backup status for an organizationreadkaseya_vsa.cloud_backup.virtual_machinesList Kaseya Cloud Backup virtual machinesreadkaseya_vsa.cloud_backup.workstationsList Kaseya Cloud Backup workstationsread
Tenant modules4
kaseya_vsa.tenant_modules.enableActivate modules for a tenantwritekaseya_vsa.tenant_modules.removeDeactivate a module for a tenantdestructivekaseya_vsa.tenant_modules.set_licensesSet module licence values for a tenantwritekaseya_vsa.tenant_modules.set_usage_typeSet a module's usage type for a tenantwrite
Third party app notifications4
kaseya_vsa.third_party_app_notifications.createPost a third-party app notificationwritekaseya_vsa.third_party_app_notifications.deleteDelete a third-party app notificationdestructivekaseya_vsa.third_party_app_notifications.getGet one third-party app notificationreadkaseya_vsa.third_party_app_notifications.listList notifications posted by a third-party appread
Admin tasks3
kaseya_vsa.admin_tasks.createCreate an admin taskwritekaseya_vsa.admin_tasks.getGet an admin taskreadkaseya_vsa.admin_tasks.listList admin tasks (time tracking)read
Alarms3
kaseya_vsa.alarms.closeClose an alarmwritekaseya_vsa.alarms.getGet an alarmreadkaseya_vsa.alarms.listList alarmsread
Alerts3
kaseya_vsa.alerts.set_agent_alertConfigure an agent alertwritekaseya_vsa.alerts.set_system_alertConfigure a system alertwritekaseya_vsa.alerts.trackingGet alert tracking recordsread
Custom extensions3
kaseya_vsa.custom_extensions.create_folderCreate an agent custom extension folderwritekaseya_vsa.custom_extensions.deleteDelete an agent custom extension file or folderdestructivekaseya_vsa.custom_extensions.listList an agent's custom extension folderread
Customers3
kaseya_vsa.customers.activity_typesList Service Billing activity typesreadkaseya_vsa.customers.listList Service Billing customersreadkaseya_vsa.customers.resource_typesList Service Billing resource (work order) typesread
Info center messages3
kaseya_vsa.info_center_messages.deleteDelete an Info Center messagedestructivekaseya_vsa.info_center_messages.listList Info Center messagesreadkaseya_vsa.info_center_messages.markMark Info Center messages read or unreadwrite
Functions2
kaseya_vsa.functions.listList VSA functions (modules and their function ids)readkaseya_vsa.functions.list_by_moduleList functions of one VSA moduleread
Get files2
kaseya_vsa.get_files.deleteDelete a file uploaded from an agentdestructivekaseya_vsa.get_files.listList files uploaded from an agent (Get File)read
Modules2
kaseya_vsa.modules.is_activatedCheck whether a VSA module is activatedreadkaseya_vsa.modules.is_installedCheck whether a VSA module is installedread
Remote control machines2
kaseya_vsa.remote_control_machines.listList remote-control-capable machinesreadkaseya_vsa.remote_control_machines.list_by_viewList remote-control-capable machines in a viewread
Role types2
kaseya_vsa.role_types.getGet a role typereadkaseya_vsa.role_types.listList role typesread
Service desk ticket notes2
kaseya_vsa.service_desk_ticket_notes.createAdd a note to a service desk ticketwritekaseya_vsa.service_desk_ticket_notes.listList notes of a service desk ticketread
Sessions2
kaseya_vsa.sessions.echo_authTest that the session token authenticatesreadkaseya_vsa.sessions.get_session_idGet the current API session idread
Tenant licensing2
kaseya_vsa.tenant_licensing.get_moduleGet licence information for a modulereadkaseya_vsa.tenant_licensing.list_by_tenantList module licences of a tenantread
Tenant settings2
kaseya_vsa.tenant_settings.default_settingGet a tenant default settingreadkaseya_vsa.tenant_settings.logon_policyGet the tenant logon policyread
Third party apps2
kaseya_vsa.third_party_apps.set_statusEnable or disable a third-party appwritekaseya_vsa.third_party_apps.statusList third-party apps and their status for a tenantread
Work orders2
kaseya_vsa.work_orders.itemsList items of a work orderreadkaseya_vsa.work_orders.listList work orders of a Service Billing customerread
Alert definitions1
kaseya_vsa.alert_definitions.listList alert definitionsread
Asset types1
kaseya_vsa.asset_types.listList asset typesread
Email1
kaseya_vsa.email.sendSend an email through the VSA server's outbound mailwrite
Environment1
kaseya_vsa.environment.getGet VSA server environment informationread
Notifications1
kaseya_vsa.notifications.createSend a notification to the VSA notification barwrite
Remote control1
kaseya_vsa.remote_control.notify_policyGet the remote control notify policy for an agent machineread
Variables1
kaseya_vsa.variables.listList managed (global) procedure variablesread
Views1
kaseya_vsa.views.listList agent viewsread
Questions
The Kaseya VSA MCP server, answered.
Is there a Kaseya VSA MCP server for Claude?
Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 275 Kaseya VSA actions across audit, agents, agent procedures and logs, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by Kaseya VSA.
What do I need to connect Kaseya VSA?
VSA user name the token belongs to and Personal Authentication Token created in VSA under the user's profile (User Profile > Personal Authentication…. Plus your host. The free call account { op: "connections.requirements", service: "kaseya_vsa" } lists exactly what to paste.
Can an AI agent delete or change things in Kaseya VSA?
Only if its key allows it, and only with an explicit confirmation. 39 Kaseya VSA actions are destructive, including delete a VSA user, delete a user role and delete an organization. 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 Kaseya VSA API limit?
actionlake paces every call to the limits in the Kaseya VSA service file: 10 calls a second per connection. Repeated reads are answered from cache (149 Kaseya VSA actions can be), which never reaches Kaseya VSA.
What does a Kaseya VSA action cost?
One upstream call, the only unit actionlake bills. A list that pages bills one call per page (275 Kaseya VSA actions page). Cache hits, searches, dry runs and calls Kaseya VSA 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 Kaseya VSA API does it cover?
The Kaseya VSA REST API v1.0 (VSA 9.5) at your Kaseya VSA instance's API base URL, which you enter when connecting (path /api/v1.0). It is built from Kaseya VSA's documentation as read on 23 October 2026. 275 actions in 53 areas, each one in the signed service file (version 1.0.0).
Can I combine Kaseya VSA with my other systems?
Yes. ask joins Kaseya VSA to NetSuite or HubSpot CRM on the same customer and returns the answer rather than every row. Kaseya VSA maps crm.company, which 227 other connectors also map.
Does actionlake keep my Kaseya VSA 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 Kaseya VSA 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 Kaseya VSA today.
Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.