Skip to content

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/mcp
the first call
do {  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.

  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 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 to
    • personal_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
  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: "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
  1. Audit

    22

    15 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

  2. Agents

    19

    11 read · 7 write · 1 destructive

    List agent machines · Get an agent machine · Delete an agent account · List admins active on agent machines

  3. Agent procedures

    17

    10 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

  4. Logs

    15

    15 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

  5. Assets

    10

    4 read · 5 write · 1 destructive

    List assets · Get an asset · Delete an asset · Publish a device to a discovery network

  6. Patch

    10

    3 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

  7. Users

    10

    3 read · 3 write · 4 destructive

    List VSA users · Get a VSA user · Create a VSA user · Update a VSA user

  8. Documents

    9

    5 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.

ActionWhat it doesEffectSame name in
kaseya_vsa.users.listList VSA usersList VSA users.readidentity.user.list474 connectors
kaseya_vsa.roles.listList user rolesList user roles.readidentity.role.list184 connectors
kaseya_vsa.users.getGet a VSA userGet a VSA user.readidentity.user.get399 connectors
kaseya_vsa.service_desk_tickets.listList tickets of a service deskList tickets of a service desk.readservice.ticket.list56 connectors
kaseya_vsa.orgs.listList organizationsList organizations.readcrm.company.list162 connectors
kaseya_vsa.users.createCreate a VSA userCreate a VSA user.writeidentity.user.create262 connectors
kaseya_vsa.service_desks.listList service desksList service desks.readservice.queue.list21 connectors
kaseya_vsa.agents.listList agent machinesList agent machines.readdevice.endpoint.list65 connectors
kaseya_vsa.alarms.listList alarmsList alarms.readmonitoring.alert.list51 connectors
kaseya_vsa.roles.createCreate a user roleCreate a user role.writeidentity.role.create105 connectors
kaseya_vsa.service_desk_tickets.createCreate a service desk ticketCreate a service desk ticket.writeservice.ticket.create54 connectors
kaseya_vsa.users.deleteDelete a VSA userDelete a VSA user.destructiveidentity.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.

  1. Readread

    Which Kaseya VSA tickets have been open the longest? Show me the ten oldest with their status.

    callskaseya_vsa.service_desk_tickets.list

  2. Writewrite

    Create a VSA user in Kaseya VSA. Show me exactly what you will send before you save it.

    callskaseya_vsa.users.create

  3. Across systemsread

    Which Kaseya VSA companies have invoices in NetSuite, and how many each?

    callskaseya_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, on crm.company · NetSuite

  • Which Kaseya VSA companies have tickets in HubSpot CRM, and how many each?

    kaseya_vsa.orgs.list + hubspot_crm.tickets.list, on crm.company · HubSpot CRM

Also mapped by other connectorsidentity.user 517crm.company 227identity.role 107device.endpoint 69service.ticket 62monitoring.alert 56asset.asset 40service.queue 14
ask
ask {  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"]    } }  ]}
Example. Run it through check first: it validates the steps and prices them, and it is free.

Governance for Kaseya VSA

Destructive actions wait for a yes.

39 Kaseya VSA actions are destructive. The first 10:

  • Delete a VSA userkaseya_vsa.users.delete
  • Delete a user rolekaseya_vsa.roles.delete
  • Delete an organizationkaseya_vsa.orgs.delete
  • Delete an agent accountkaseya_vsa.agents.delete
  • Delete an assetkaseya_vsa.assets.delete
  • Run an agent procedure on an agent nowkaseya_vsa.agent_procedures.run_now
  • Delete a staff memberkaseya_vsa.staff.delete
  • Delete a scopekaseya_vsa.scopes.delete
  • Disable a VSA userkaseya_vsa.users.disable
  • Add a user to a rolekaseya_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.

dokaseya_vsa.users.deleteconfirm_policy: human

Delete a VSA user?

intent: the user asked me to delete a VSA user

run suspended · waiting for a named person · key kaseya-vsa-agent cannot confirm itself
In the console, or from an emailed signed link.
a key for this connector
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]" }  ]}
Illustrative. Scoped to Kaseya VSA only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

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

See pricing

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 listread
  • kaseya_vsa.audit.credentialsGet an agent's audited credentialsread
  • kaseya_vsa.audit.disk_volumesGet an agent's audited disk volumesread
  • kaseya_vsa.audit.groupsGet an agent's audited local groupsread
  • kaseya_vsa.audit.installed_applicationsGet an agent's audited installed applicationsread
  • kaseya_vsa.audit.local_group_membersGet an agent's audited local group membersread
  • kaseya_vsa.audit.pci_and_diskGet an agent's audited PCI and disk hardwareread
  • kaseya_vsa.audit.printersGet an agent's audited printersread
  • kaseya_vsa.audit.purchase_and_warrantyGet an agent's audited purchase and warranty expiry datesread
  • kaseya_vsa.audit.run_baselineRun a baseline audit on an agent nowwrite
  • kaseya_vsa.audit.run_latestRun a latest audit on an agent nowwrite
  • kaseya_vsa.audit.run_sysinfoRun a system information audit on an agent nowwrite
  • kaseya_vsa.audit.schedule_baselineSchedule a baseline audit on an agentwrite
  • kaseya_vsa.audit.schedule_latestSchedule a latest audit on an agentwrite
  • kaseya_vsa.audit.schedule_sysinfoSchedule a system information audit on an agentwrite
  • kaseya_vsa.audit.security_productsGet an agent's audited security productsread
  • kaseya_vsa.audit.set_purchase_and_warrantySet an agent's purchase and warranty expiry dateswrite
  • kaseya_vsa.audit.software_licensesGet an agent's audited software licencesread
  • kaseya_vsa.audit.startup_appsGet an agent's audited startup applicationsread
  • kaseya_vsa.audit.summariesList audit summaries of all agentsread
  • kaseya_vsa.audit.summaryGet an agent's audited audit summaryread
  • kaseya_vsa.audit.user_accountsGet an agent's audited local user accountsread
Agents19
  • kaseya_vsa.agents.active_adminsList admins active on agent machinesread
  • kaseya_vsa.agents.add_remote_control_audit_entryAdd a Live Connect audit log entry for an agentwrite
  • kaseya_vsa.agents.connection_gateway_ipsList agent connection gateway IPsread
  • kaseya_vsa.agents.deleteDelete an agent accountdestructive
  • kaseya_vsa.agents.getGet an agent machineread
  • kaseya_vsa.agents.listList agent machinesread
  • kaseya_vsa.agents.list_in_viewList agents in an agent viewread
  • kaseya_vsa.agents.list_on_networkList agents in a discovery networkread
  • kaseya_vsa.agents.renameRename an agentwrite
  • kaseya_vsa.agents.set_checkin_controlUpdate an agent's check-in controlwrite
  • kaseya_vsa.agents.set_temp_dirSet an agent's working (temp) directorywrite
  • kaseya_vsa.agents.set_user_profileUpdate an agent's user profilewrite
  • kaseya_vsa.agents.settingsGet an agent's settingsread
  • kaseya_vsa.agents.suspendSuspend or resume agentswrite
  • kaseya_vsa.agents.two_factor_settingsGet an agent's two-factor settingsread
  • kaseya_vsa.agents.update_scheduleGet an agent's update scheduleread
  • kaseya_vsa.agents.upgradeUpgrade an agent to the current versionwrite
  • kaseya_vsa.agents.uptimeList agent uptime since a dateread
  • kaseya_vsa.agents.user_profilesList agent user profilesread
Agent procedures17
  • kaseya_vsa.agent_procedures.add_quick_launchAdd an agent procedure to quick launchwrite
  • kaseya_vsa.agent_procedures.ask_before_executingGet the quick-launch ask-before-executing settingread
  • kaseya_vsa.agent_procedures.cancel_scheduledCancel a scheduled agent procedure on an agentdestructive
  • kaseya_vsa.agent_procedures.execution_historyList agent procedure execution historyread
  • kaseya_vsa.agent_procedures.historyList an agent's procedure run historyread
  • kaseya_vsa.agent_procedures.listList agent proceduresread
  • kaseya_vsa.agent_procedures.portalList agent procedures published to the user portalread
  • kaseya_vsa.agent_procedures.procedure_historyList agent procedure change historyread
  • kaseya_vsa.agent_procedures.promptsList prompts of all agent proceduresread
  • kaseya_vsa.agent_procedures.prompts_by_procedureList the prompts of an agent procedureread
  • kaseya_vsa.agent_procedures.quick_launchList quick-launch agent proceduresread
  • kaseya_vsa.agent_procedures.remove_quick_launchRemove an agent procedure from quick launchdestructive
  • kaseya_vsa.agent_procedures.run_nowRun an agent procedure on an agent nowdestructive
  • kaseya_vsa.agent_procedures.run_now_get_idRun an agent procedure now and return its run iddestructive
  • kaseya_vsa.agent_procedures.scheduleSchedule an agent procedure on an agentwrite
  • kaseya_vsa.agent_procedures.scheduledList procedures scheduled on an agentread
  • kaseya_vsa.agent_procedures.set_ask_before_executingSet the quick-launch ask-before-executing settingwrite
Logs15
  • kaseya_vsa.logs.agentAgent log of an agentread
  • kaseya_vsa.logs.agent_procedureAgent procedure log of an agentread
  • kaseya_vsa.logs.alarmAlarm log of an agentread
  • kaseya_vsa.logs.application_eventApplication event log of an agentread
  • kaseya_vsa.logs.configuration_changesConfiguration changes log of an agentread
  • kaseya_vsa.logs.directory_service_eventDirectory service event log of an agentread
  • kaseya_vsa.logs.dns_server_eventDNS server event log of an agentread
  • kaseya_vsa.logs.internet_explorer_eventInternet Explorer event log of an agentread
  • kaseya_vsa.logs.legacy_remote_controlLegacy remote control log of an agentread
  • kaseya_vsa.logs.log_monitoringLog monitoring log of an agentread
  • kaseya_vsa.logs.monitor_actionMonitor action log of an agentread
  • kaseya_vsa.logs.network_statisticsNetwork statistics log of an agentread
  • kaseya_vsa.logs.remote_controlKaseya Remote Control log of an agentread
  • kaseya_vsa.logs.security_eventSecurity event log of an agentread
  • kaseya_vsa.logs.system_eventSystem event log of an agentread
Assets10
  • kaseya_vsa.assets.agent_auditGet the agent audit of an assetread
  • kaseya_vsa.assets.assign_serviceAssign remote-control services to an assetwrite
  • kaseya_vsa.assets.deleteDelete an assetdestructive
  • kaseya_vsa.assets.demote_to_deviceDemote an asset to a devicewrite
  • kaseya_vsa.assets.getGet an assetread
  • kaseya_vsa.assets.get_by_idGet an asset record by asset idread
  • kaseya_vsa.assets.listList assetsread
  • kaseya_vsa.assets.promote_to_assetPromote a discovered device to an assetwrite
  • kaseya_vsa.assets.publish_devicePublish a device to a discovery networkwrite
  • kaseya_vsa.assets.set_proxySet the proxy agent of an assetwrite
Patch10
  • kaseya_vsa.patch.cancel_scheduleCancel scheduled patch installs on an agentdestructive
  • kaseya_vsa.patch.clear_ignoreClear the ignore flag of a patch on an agentdestructive
  • kaseya_vsa.patch.delete_patch_dataClear patch data for agentsdestructive
  • kaseya_vsa.patch.historyList an agent's patch historyread
  • kaseya_vsa.patch.missingList patches missing on an agentread
  • kaseya_vsa.patch.scan_nowRun a patch scan on an agent nowwrite
  • kaseya_vsa.patch.schedule_scanSchedule patch installation for an agentwrite
  • kaseya_vsa.patch.set_ignoreMark patches ignored on an agentwrite
  • kaseya_vsa.patch.statusGet an agent's patch statusread
  • kaseya_vsa.patch.update_nowRun a patch update on agentswrite
Users10
  • kaseya_vsa.users.close_sessionClose the current user's API sessiondestructive
  • kaseya_vsa.users.createCreate a VSA userwrite
  • kaseya_vsa.users.currentGet the authenticated VSA userread
  • kaseya_vsa.users.deleteDelete a VSA userdestructive
  • kaseya_vsa.users.disableDisable a VSA userdestructive
  • kaseya_vsa.users.enableEnable a VSA userwrite
  • kaseya_vsa.users.getGet a VSA userread
  • kaseya_vsa.users.listList VSA usersread
  • kaseya_vsa.users.reset_passwordSend a password reset to a VSA userdestructive
  • kaseya_vsa.users.updateUpdate a VSA userwrite
Documents9
  • kaseya_vsa.documents.all_service_auditsList service audits across agentsread
  • kaseya_vsa.documents.all_volume_labelsList volume labels across agentsread
  • kaseya_vsa.documents.create_folderCreate an agent document folderwrite
  • kaseya_vsa.documents.deleteDelete an agent document or folderdestructive
  • kaseya_vsa.documents.distinct_service_namesList distinct service namesread
  • kaseya_vsa.documents.distinct_volume_labelsList distinct volume labelsread
  • kaseya_vsa.documents.listList documents in an agent document folderread
  • kaseya_vsa.documents.moveMove an agent documentwrite
  • kaseya_vsa.documents.renameRename an agent documentdestructive
Orgs8
  • kaseya_vsa.orgs.createCreate an organizationwrite
  • kaseya_vsa.orgs.deleteDelete an organizationdestructive
  • kaseya_vsa.orgs.getGet an organizationread
  • kaseya_vsa.orgs.listList organizationsread
  • kaseya_vsa.orgs.locationsList organization locationsread
  • kaseya_vsa.orgs.networksList discovery networks for organizationsread
  • kaseya_vsa.orgs.typesList organization typesread
  • kaseya_vsa.orgs.updateUpdate an organizationwrite
Service desk tickets8
  • kaseya_vsa.service_desk_tickets.assign_staffAssign a staff member to a service desk ticketwrite
  • kaseya_vsa.service_desk_tickets.createCreate a service desk ticketwrite
  • kaseya_vsa.service_desk_tickets.getGet a service desk ticketread
  • kaseya_vsa.service_desk_tickets.get_custom_fieldGet a custom field value of a service desk ticketread
  • kaseya_vsa.service_desk_tickets.listList tickets of a service deskread
  • kaseya_vsa.service_desk_tickets.set_custom_fieldSet a custom field value on a service desk ticketwrite
  • kaseya_vsa.service_desk_tickets.set_prioritySet a service desk ticket's prioritywrite
  • kaseya_vsa.service_desk_tickets.set_statusSet a service desk ticket's statuswrite
Scopes7
  • kaseya_vsa.scopes.add_machine_groupAdd a machine group to a scopewrite
  • kaseya_vsa.scopes.add_orgAdd an organization to a scopewrite
  • kaseya_vsa.scopes.add_userAdd a user to a scopewrite
  • kaseya_vsa.scopes.createCreate a scopewrite
  • kaseya_vsa.scopes.deleteDelete a scopedestructive
  • kaseya_vsa.scopes.getGet a scoperead
  • kaseya_vsa.scopes.listList scopesread
Staff7
  • kaseya_vsa.staff.createCreate a staff member in a departmentwrite
  • kaseya_vsa.staff.deleteDelete a staff memberdestructive
  • kaseya_vsa.staff.getGet a staff memberread
  • kaseya_vsa.staff.listList staff membersread
  • kaseya_vsa.staff.list_by_departmentList staff of a departmentread
  • kaseya_vsa.staff.list_by_orgList staff of an organizationread
  • kaseya_vsa.staff.updateUpdate a staff memberwrite
Temporary agents7
  • kaseya_vsa.temporary_agents.add_noteAdd a note to a temporary agentwrite
  • kaseya_vsa.temporary_agents.configGet temporary agent configurationread
  • kaseya_vsa.temporary_agents.createCreate a temporary agentwrite
  • kaseya_vsa.temporary_agents.deleteDelete a temporary agentdestructive
  • kaseya_vsa.temporary_agents.listList temporary (Live Connect on-demand) agentsread
  • kaseya_vsa.temporary_agents.renameRename a temporary agentwrite
  • kaseya_vsa.temporary_agents.send_emailEmail a temporary agent download linkwrite
Tenant role types7
  • kaseya_vsa.tenant_role_types.createCreate a tenant role typewrite
  • kaseya_vsa.tenant_role_types.deleteDelete a tenant role typedestructive
  • kaseya_vsa.tenant_role_types.enable_for_tenantActivate role types for a tenantwrite
  • kaseya_vsa.tenant_role_types.getGet a tenant role typeread
  • kaseya_vsa.tenant_role_types.listList tenant role types with their function listsread
  • kaseya_vsa.tenant_role_types.remove_from_tenantDeactivate a role type for a tenantdestructive
  • kaseya_vsa.tenant_role_types.set_limitsSet role type seat limits for a tenantdestructive
Tenants7
  • kaseya_vsa.tenants.createCreate a tenantwrite
  • kaseya_vsa.tenants.deactivateDeactivate a tenantdestructive
  • kaseya_vsa.tenants.deleteRemove a tenantdestructive
  • kaseya_vsa.tenants.getGet a tenant partition with its modules, role types and licence limitsread
  • kaseya_vsa.tenants.listList tenants (partitions) visible to the userread
  • kaseya_vsa.tenants.list_allList tenant partitions (excluding partition 1)read
  • kaseya_vsa.tenants.renameRename a tenantwrite
Custom fields6
  • kaseya_vsa.custom_fields.createCreate an agent custom fieldwrite
  • kaseya_vsa.custom_fields.deleteDelete an agent custom fielddestructive
  • kaseya_vsa.custom_fields.listList agent custom field definitionsread
  • kaseya_vsa.custom_fields.list_by_agentList custom field values of an agentread
  • kaseya_vsa.custom_fields.renameRename an agent custom fieldwrite
  • kaseya_vsa.custom_fields.set_valueSet a custom field value on an agentwrite
Machine groups6
  • kaseya_vsa.machine_groups.createCreate a machine group in an organizationwrite
  • kaseya_vsa.machine_groups.deleteDelete a machine groupdestructive
  • kaseya_vsa.machine_groups.getGet a machine groupread
  • kaseya_vsa.machine_groups.listList machine groupsread
  • kaseya_vsa.machine_groups.list_by_orgList machine groups of an organizationread
  • kaseya_vsa.machine_groups.renameRename a machine groupwrite
Session timers6
  • kaseya_vsa.session_timers.createCreate a session timerwrite
  • kaseya_vsa.session_timers.deleteDelete a session timerdestructive
  • kaseya_vsa.session_timers.force_stopForce-stop and remove a running session timerdestructive
  • kaseya_vsa.session_timers.getGet a session timerread
  • kaseya_vsa.session_timers.listList session (time tracking) timersread
  • kaseya_vsa.session_timers.updateUpdate a running session timer (not committed until stopped)write
Agent packages5
  • kaseya_vsa.agent_packages.createCreate an agent install packagewrite
  • kaseya_vsa.agent_packages.create_linkCreate an agent install package download linkwrite
  • kaseya_vsa.agent_packages.deleteDelete an agent install packagedestructive
  • kaseya_vsa.agent_packages.deploy_pageGet the agent deployment page customization for a partitionread
  • kaseya_vsa.agent_packages.listList agent install packagesread
Departments5
  • kaseya_vsa.departments.createCreate a department in an organizationwrite
  • kaseya_vsa.departments.deleteDelete a departmentdestructive
  • kaseya_vsa.departments.getGet a departmentread
  • kaseya_vsa.departments.list_by_orgList departments of an organizationread
  • kaseya_vsa.departments.updateUpdate a departmentwrite
Remote control services5
  • kaseya_vsa.remote_control_services.createCreate a remote control servicewrite
  • kaseya_vsa.remote_control_services.deleteDelete a remote control servicedestructive
  • kaseya_vsa.remote_control_services.listList remote control servicesread
  • kaseya_vsa.remote_control_services.list_by_assetList remote control services of an assetread
  • kaseya_vsa.remote_control_services.updateUpdate a remote control servicewrite
Roles5
  • kaseya_vsa.roles.add_userAdd a user to a roledestructive
  • kaseya_vsa.roles.createCreate a user rolewrite
  • kaseya_vsa.roles.deleteDelete a user roledestructive
  • kaseya_vsa.roles.getGet a user roleread
  • kaseya_vsa.roles.listList user rolesread
Service desks5
  • kaseya_vsa.service_desks.categoriesList ticket categories of a service deskread
  • kaseya_vsa.service_desks.custom_fieldsList custom fields of a service deskread
  • kaseya_vsa.service_desks.listList service desksread
  • kaseya_vsa.service_desks.prioritiesList ticket priorities of a service deskread
  • kaseya_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 fieldswrite
  • kaseya_vsa.tickets.createCreate a legacy Ticketing module ticketwrite
  • kaseya_vsa.tickets.getGet a legacy Ticketing module ticketread
  • kaseya_vsa.tickets.listList legacy Ticketing module ticketsread
  • kaseya_vsa.tickets.notesList notes of a legacy Ticketing ticketread
Agent notes4
  • kaseya_vsa.agent_notes.createAdd a note to an agentwrite
  • kaseya_vsa.agent_notes.deleteDelete an agent notedestructive
  • kaseya_vsa.agent_notes.listList agent notesread
  • kaseya_vsa.agent_notes.updateUpdate agent noteswrite
Cloud backup4
  • kaseya_vsa.cloud_backup.serversList Kaseya Cloud Backup serversread
  • kaseya_vsa.cloud_backup.statusGet the last Cloud Backup status for an organizationread
  • kaseya_vsa.cloud_backup.virtual_machinesList Kaseya Cloud Backup virtual machinesread
  • kaseya_vsa.cloud_backup.workstationsList Kaseya Cloud Backup workstationsread
Tenant modules4
  • kaseya_vsa.tenant_modules.enableActivate modules for a tenantwrite
  • kaseya_vsa.tenant_modules.removeDeactivate a module for a tenantdestructive
  • kaseya_vsa.tenant_modules.set_licensesSet module licence values for a tenantwrite
  • kaseya_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 notificationwrite
  • kaseya_vsa.third_party_app_notifications.deleteDelete a third-party app notificationdestructive
  • kaseya_vsa.third_party_app_notifications.getGet one third-party app notificationread
  • kaseya_vsa.third_party_app_notifications.listList notifications posted by a third-party appread
Admin tasks3
  • kaseya_vsa.admin_tasks.createCreate an admin taskwrite
  • kaseya_vsa.admin_tasks.getGet an admin taskread
  • kaseya_vsa.admin_tasks.listList admin tasks (time tracking)read
Alarms3
  • kaseya_vsa.alarms.closeClose an alarmwrite
  • kaseya_vsa.alarms.getGet an alarmread
  • kaseya_vsa.alarms.listList alarmsread
Alerts3
  • kaseya_vsa.alerts.set_agent_alertConfigure an agent alertwrite
  • kaseya_vsa.alerts.set_system_alertConfigure a system alertwrite
  • kaseya_vsa.alerts.trackingGet alert tracking recordsread
Custom extensions3
  • kaseya_vsa.custom_extensions.create_folderCreate an agent custom extension folderwrite
  • kaseya_vsa.custom_extensions.deleteDelete an agent custom extension file or folderdestructive
  • kaseya_vsa.custom_extensions.listList an agent's custom extension folderread
Customers3
  • kaseya_vsa.customers.activity_typesList Service Billing activity typesread
  • kaseya_vsa.customers.listList Service Billing customersread
  • kaseya_vsa.customers.resource_typesList Service Billing resource (work order) typesread
Info center messages3
  • kaseya_vsa.info_center_messages.deleteDelete an Info Center messagedestructive
  • kaseya_vsa.info_center_messages.listList Info Center messagesread
  • kaseya_vsa.info_center_messages.markMark Info Center messages read or unreadwrite
Functions2
  • kaseya_vsa.functions.listList VSA functions (modules and their function ids)read
  • kaseya_vsa.functions.list_by_moduleList functions of one VSA moduleread
Get files2
  • kaseya_vsa.get_files.deleteDelete a file uploaded from an agentdestructive
  • kaseya_vsa.get_files.listList files uploaded from an agent (Get File)read
Modules2
  • kaseya_vsa.modules.is_activatedCheck whether a VSA module is activatedread
  • kaseya_vsa.modules.is_installedCheck whether a VSA module is installedread
Remote control machines2
  • kaseya_vsa.remote_control_machines.listList remote-control-capable machinesread
  • kaseya_vsa.remote_control_machines.list_by_viewList remote-control-capable machines in a viewread
Role types2
  • kaseya_vsa.role_types.getGet a role typeread
  • kaseya_vsa.role_types.listList role typesread
Service desk ticket notes2
  • kaseya_vsa.service_desk_ticket_notes.createAdd a note to a service desk ticketwrite
  • kaseya_vsa.service_desk_ticket_notes.listList notes of a service desk ticketread
Sessions2
  • kaseya_vsa.sessions.echo_authTest that the session token authenticatesread
  • kaseya_vsa.sessions.get_session_idGet the current API session idread
Tenant licensing2
  • kaseya_vsa.tenant_licensing.get_moduleGet licence information for a moduleread
  • kaseya_vsa.tenant_licensing.list_by_tenantList module licences of a tenantread
Tenant settings2
  • kaseya_vsa.tenant_settings.default_settingGet a tenant default settingread
  • kaseya_vsa.tenant_settings.logon_policyGet the tenant logon policyread
Third party apps2
  • kaseya_vsa.third_party_apps.set_statusEnable or disable a third-party appwrite
  • kaseya_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 orderread
  • kaseya_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.