Connectors · MSP & PSA
Azure Automation MCP server for AI agents.
actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to Azure Automation and the rest of your systems. It gives your agent 160 Azure Automation actions (80 reads, 50 writes and 30 that wait for a confirmation) and holds the Azure Automation credential itself, so the agent never does. It paces Azure Automation'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: "azure_automation.operations.list", intent: "check which Azure Automation account is connected"}# Lists all of the available Automation REST API operations · read · 1 upstream call- 160actionsin one signed file
- 80readlook, never change
- 50writecreate and update
- 30wait for a yesdestructive, confirmed first
Set up
Connect Azure Automation 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 Azure Automation.
OAuth 2.0, client credentials. Paste the app's client id and secret; actionlake fetches and renews the token, and nobody has to sign in. actionlake stores what you paste write-only, sealed under your tenant's key.
client_idEntra application (client) id of a service principal with an Azure RBAC role on the subscriptionclient_secretEntra client secrettenant_idYour Azure Automation tenant id
account { op: "connections.requirements", service: "azure_automation" } # 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: "azure_automation.operations.list" }# lists all of the available automation rest api operations · read · 1 upstream callcheck { action: "azure_automation.jobs.create", input: { … } }# free: inputs, permissions, cost and confirmations, nothing sent
Azure Automation at a glance
- Sign-in
- OAuth 2.0, client credentials. Paste the app's client id and secret; actionlake fetches and renews the token, and nobody has to sign in.
- You provide
client_idclient_secret- Setup fields
tenant_id- Limits we pace to
- 200 calls a minute, per connection
- API covered
- Azure Automation (runbooks, jobs and job streams, schedules, variables, credentials, Hybrid Runbook Workers, DSC) API Azure Resource Manager Microsoft.Automation: openapi.json (2024-10-23)
management.azure.com - Built from
- Azure Automation's documentation, read 23 October 2026OpenAPI spec (GitHub)learn.microsoft.com
- Service file
- Version 1.0.0, signed (Ed25519)
- Cached reads
- 73 of 80 reads, for up to 5 minutes; a write clears what it affects
- Shared entities
- 1, so ask can line Azure Automation up with your other systems
- Data
- Processed and stored in Sydney, Australia. No US region yet
Capabilities
What an AI agent can do in Azure Automation.
160 actions in 45 areas. Every one carries its effect, so a key can allow the reads and hold the rest.
- 80readlook, never change
- 50writecreate and update
- 30destructivewait for a confirmation
Runbooks
84 read · 3 write · 1 destructive
Retrieve a list of runbooks · Retrieve the runbook identified by runbook name · Update the runbook identified by runbook name · Delete the runbook by name
Watchers
72 read · 4 write · 1 destructive
Retrieve a list of watchers · Retrieve the watcher identified by watcher name · Resume the watcher identified by watcher name · Resume the watcher identified by watcher name
Automation accounts
63 read · 2 write · 1 destructive
Lists the Automation Accounts within an Azure subscription · Retrieve a list of accounts within a given resource group · Get information about an Automation Account · Update an automation account
Hybrid runbook workers
62 read · 3 write · 1 destructive
Retrieve a list of hybrid runbook workers · Retrieve a hybrid runbook worker · Move a hybrid worker to a different group · Update a hybrid runbook worker
Jobs
62 read · 2 write · 2 destructive
Retrieve a list of jobs · Retrieve the job identified by job name · Create a job of the runbook · Resume the job identified by jobName
Webhooks
63 read · 2 write · 1 destructive
Retrieve a list of webhooks · Retrieve the webhook identified by webhook name · Update the webhook identified by webhook name · Delete the webhook by name
Certificates
52 read · 2 write · 1 destructive
Retrieve a list of certificates · Retrieve the certificate identified by certificate name · Update a certificate · Delete the certificate
Connections
52 read · 2 write · 1 destructive
Retrieve a list of connections · Retrieve the connection identified by connection name · Update a connection · Delete the connection
37 more areas · 111 actions
- Credentials 5
- DSC configurations 5
- Hybrid runbook worker groups 5
- Modules 5
- Python2 packages 5
- Python3 packages 5
- Runtime environment packages 5
- Runtime environments 5
- Schedules 5
- Source controls 5
- Test jobs 5
- Variables 5
- Connection types 4
- DSC node configurations 4
- DSC nodes 4
- Job schedules 4
- Private endpoint connections 4
- Runbook drafts 3
- Source control sync jobs 3
- Activities 2
- Agent registration information 2
- DSC node reports 2
- Job streams 2
- Object data types 2
- Source control sync job streams 2
- Test job streams 2
- Account keys 1
- Deleted automation accounts 1
- DSC node counts 1
- Linked workspace 1
- Module type fields 1
- Operations 1
- Private link resources 1
- Resource groups 1
- Statistics 1
- Subscriptions 1
- Usages 1
Top actions
The Azure Automation API, shaped for agents.
The ids your agent types, what each does, and the one name it shares with other systems. 19 of Azure Automation's 19 action names are shared with at least one other connector, so an agent learns them once.
| Action | What it does | Effect | Same name in |
|---|---|---|---|
azure_automation.jobs.listRetrieve a list of jobs | Retrieve a list of jobs. | read | infra.job.list12 connectors |
azure_automation.webhooks.listRetrieve a list of webhooks | Retrieve a list of webhooks. | read | automation.webhook.list202 connectors |
azure_automation.runbooks.listRetrieve a list of runbooks | Retrieve a list of runbooks. | read | automation.script.list18 connectors |
azure_automation.schedules.listRetrieve a list of schedules | Retrieve a list of schedules. | read | automation.schedule.list18 connectors |
azure_automation.jobs.getRetrieve the job identified by job name | Retrieve the job identified by job name. | read | infra.job.get11 connectors |
azure_automation.webhooks.getRetrieve the webhook identified by webhook name | Retrieve the webhook identified by webhook name. | read | automation.webhook.get162 connectors |
azure_automation.runbooks.getRetrieve the runbook identified by runbook name | Retrieve the runbook identified by runbook name. | read | automation.script.get15 connectors |
azure_automation.schedules.getRetrieve the schedule identified by schedule name | Retrieve the schedule identified by schedule name. | read | automation.schedule.get13 connectors |
azure_automation.jobs.createCreate a job of the runbook | Create a job of the runbook. | write | infra.job.create10 connectors |
azure_automation.webhooks.updateUpdate the webhook identified by webhook name | Update the webhook identified by webhook name. | write | automation.webhook.update175 connectors |
azure_automation.webhooks.deleteDelete the webhook by name | Delete the webhook by name. | destructive | automation.webhook.delete211 connectors |
azure_automation.schedules.updateUpdate the schedule identified by schedule name | Update the schedule identified by schedule name. | write | automation.schedule.update16 connectors |
Try it
Prompts to paste into Claude.
Each one names the Azure Automation actions it will call, so you know what it reads and what it changes before you send it.
- Readread
Lists all of the available Automation REST API operations in Azure Automation and tell me what stands out.
calls
azure_automation.operations.list - Writewrite
Create a job of the runbook in Azure Automation. Show me exactly what you will send before you save it.
calls
azure_automation.jobs.create
Governance for Azure Automation
Destructive actions wait for a yes.
30 Azure Automation actions are destructive. These are all of them:
- Delete the webhook by name
azure_automation.webhooks.delete - Delete the schedule identified by schedule name
azure_automation.schedules.delete - Delete the runbook by name
azure_automation.runbooks.delete - Delete the module by name
azure_automation.modules.delete - Delete the watcher by name
azure_automation.watchers.delete - Delete the dsc node identified by node id
azure_automation.dsc_nodes.delete - Delete the variable
azure_automation.variables.delete - Delete the connection
azure_automation.connections.delete - Delete the credential
azure_automation.credentials.delete - Delete the certificate
azure_automation.certificates.delete - Delete the job schedule identified by job schedule name
azure_automation.job_schedules.delete - Delete the source control
azure_automation.source_controls.delete - Delete the connection type
azure_automation.connection_types.delete - Delete the python 2 package by name
azure_automation.python2_packages.delete - Delete the python 3 package by name
azure_automation.python3_packages.delete - Undo draft edit to last known published state identified by runbook name
azure_automation.runbook_drafts.undo_edit - Delete the dsc configuration identified by configuration name
azure_automation.dsc_configurations.delete - Delete an automation account
azure_automation.automation_accounts.delete - Delete the Runtime Environment
azure_automation.runtime_environments.delete - Delete a hybrid runbook worker
azure_automation.hybrid_runbook_workers.delete - Delete the Dsc node configurations by node configuration
azure_automation.dsc_node_configurations.delete - Replaces the runbook draft content
azure_automation.runbook_drafts.replace_content - Delete a hybrid runbook worker group
azure_automation.hybrid_runbook_worker_groups.delete - Deletes a private endpoint connection with a given name
azure_automation.private_endpoint_connections.delete - Delete the package by name
azure_automation.runtime_environment_packages.delete - Regenerate a primary or secondary agent registration key
azure_automation.agent_registration_information.regenerate_key - Stop the job identified by jobName
azure_automation.jobs.stop - Suspend the job identified by job name
azure_automation.jobs.suspend - Stop the test job
azure_automation.test_jobs.stop - Suspend the test job
azure_automation.test_jobs.suspend
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 the webhook by name?
intent: the user asked me to delete the webhook by name
account { op: "keys.create", name: "azure-automation-agent", allowed_actions: ["azure_automation.*"], cap_calls: 2000, confirm_policy: "human_for_writes", approval_rules: [ { match: "azure_automation.webhooks.delete", approver: "[email protected]" }, { match: "azure_automation.schedules.delete", approver: "[email protected]" }, { match: "azure_automation.runbooks.delete", approver: "[email protected]" } ]}Cost
What Azure Automation costs on actionlake.
Every Azure Automation action is one upstream call, the only thing actionlake bills. Searching, check, cost, account and any call Azure Automation 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 160 Azure Automation actions
- 41actions pageeach page of a long list is one call
- 73reads can be cacheda cache hit costs nothing
- 100,000calls a month, freepaid plans from US$49 a month for 250,000
Action index
Every Azure Automation action.
160 actions by area: the id your agent calls, what it does, and its effect.
Runbooks8
azure_automation.runbooks.convert_graph_contentPost operation to serialize or deserialize GraphRunbookContentreadazure_automation.runbooks.create_or_updateCreate the runbook identified by runbook namewriteazure_automation.runbooks.deleteDelete the runbook by namedestructiveazure_automation.runbooks.getRetrieve the runbook identified by runbook namereadazure_automation.runbooks.listRetrieve a list of runbooksreadazure_automation.runbooks.list_deletedRetrieve the deleted runbooks for an automation accountreadazure_automation.runbooks.publishPublish runbook draftwriteazure_automation.runbooks.updateUpdate the runbook identified by runbook namewrite
Watchers7
azure_automation.watchers.create_or_updateCreate the watcher identified by watcher namewriteazure_automation.watchers.deleteDelete the watcher by namedestructiveazure_automation.watchers.getRetrieve the watcher identified by watcher namereadazure_automation.watchers.listRetrieve a list of watchersreadazure_automation.watchers.startResume the watcher identified by watcher namewriteazure_automation.watchers.stopResume the watcher identified by watcher namewriteazure_automation.watchers.updateUpdate the watcher identified by watcher namewrite
Automation accounts6
azure_automation.automation_accounts.create_or_updateCreate or update automation accountwriteazure_automation.automation_accounts.deleteDelete an automation accountdestructiveazure_automation.automation_accounts.getGet information about an Automation Accountreadazure_automation.automation_accounts.listLists the Automation Accounts within an Azure subscriptionreadazure_automation.automation_accounts.list_by_resource_groupRetrieve a list of accounts within a given resource groupreadazure_automation.automation_accounts.updateUpdate an automation accountwrite
Hybrid runbook workers6
azure_automation.hybrid_runbook_workers.createCreate a hybrid runbook workerwriteazure_automation.hybrid_runbook_workers.deleteDelete a hybrid runbook workerdestructiveazure_automation.hybrid_runbook_workers.getRetrieve a hybrid runbook workerreadazure_automation.hybrid_runbook_workers.listRetrieve a list of hybrid runbook workersreadazure_automation.hybrid_runbook_workers.moveMove a hybrid worker to a different groupwriteazure_automation.hybrid_runbook_workers.patchUpdate a hybrid runbook workerwrite
Jobs6
azure_automation.jobs.createCreate a job of the runbookwriteazure_automation.jobs.getRetrieve the job identified by job namereadazure_automation.jobs.listRetrieve a list of jobsreadazure_automation.jobs.resumeResume the job identified by jobNamewriteazure_automation.jobs.stopStop the job identified by jobNamedestructiveazure_automation.jobs.suspendSuspend the job identified by job namedestructive
Webhooks6
azure_automation.webhooks.create_or_updateCreate the webhook identified by webhook namewriteazure_automation.webhooks.deleteDelete the webhook by namedestructiveazure_automation.webhooks.generate_uriGenerates a Uri for use in creating a webhookreadazure_automation.webhooks.getRetrieve the webhook identified by webhook namereadazure_automation.webhooks.listRetrieve a list of webhooksreadazure_automation.webhooks.updateUpdate the webhook identified by webhook namewrite
Certificates5
azure_automation.certificates.create_or_updateCreate a certificatewriteazure_automation.certificates.deleteDelete the certificatedestructiveazure_automation.certificates.getRetrieve the certificate identified by certificate namereadazure_automation.certificates.listRetrieve a list of certificatesreadazure_automation.certificates.updateUpdate a certificatewrite
Connections5
azure_automation.connections.create_or_updateCreate or update a connectionwriteazure_automation.connections.deleteDelete the connectiondestructiveazure_automation.connections.getRetrieve the connection identified by connection namereadazure_automation.connections.listRetrieve a list of connectionsreadazure_automation.connections.updateUpdate a connectionwrite
Credentials5
azure_automation.credentials.create_or_updateCreate a credentialwriteazure_automation.credentials.deleteDelete the credentialdestructiveazure_automation.credentials.getRetrieve the credential identified by credential namereadazure_automation.credentials.listRetrieve a list of credentialsreadazure_automation.credentials.updateUpdate a credentialwrite
DSC configurations5
azure_automation.dsc_configurations.create_or_updateCreate the configuration identified by configuration namewriteazure_automation.dsc_configurations.deleteDelete the dsc configuration identified by configuration namedestructiveazure_automation.dsc_configurations.getRetrieve the configuration identified by configuration namereadazure_automation.dsc_configurations.listRetrieve a list of configurationsreadazure_automation.dsc_configurations.updateCreate the configuration identified by configuration namewrite
Hybrid runbook worker groups5
azure_automation.hybrid_runbook_worker_groups.createCreate a hybrid runbook worker groupwriteazure_automation.hybrid_runbook_worker_groups.deleteDelete a hybrid runbook worker groupdestructiveazure_automation.hybrid_runbook_worker_groups.getRetrieve a hybrid runbook worker groupreadazure_automation.hybrid_runbook_worker_groups.listRetrieve a list of hybrid runbook worker groupsreadazure_automation.hybrid_runbook_worker_groups.updateUpdate a hybrid runbook worker groupwrite
Modules5
azure_automation.modules.create_or_updateCreate or Update the module identified by module namewriteazure_automation.modules.deleteDelete the module by namedestructiveazure_automation.modules.getRetrieve the module identified by module namereadazure_automation.modules.listRetrieve a list of modulesreadazure_automation.modules.updateUpdate the module identified by module namewrite
Python2 packages5
azure_automation.python2_packages.create_or_updateCreate or Update the python 2 package identified by package namewriteazure_automation.python2_packages.deleteDelete the python 2 package by namedestructiveazure_automation.python2_packages.getRetrieve the python 2 package identified by package namereadazure_automation.python2_packages.listRetrieve a list of python 2 packagesreadazure_automation.python2_packages.updateUpdate the python 2 package identified by package namewrite
Python3 packages5
azure_automation.python3_packages.create_or_updateCreate or Update the python 3 package identified by package namewriteazure_automation.python3_packages.deleteDelete the python 3 package by namedestructiveazure_automation.python3_packages.getRetrieve the python 3 package identified by package namereadazure_automation.python3_packages.listRetrieve a list of python 3 packagesreadazure_automation.python3_packages.updateUpdate the python 3 package identified by package namewrite
Runtime environment packages5
azure_automation.runtime_environment_packages.create_or_updateCreate or update the package identified by package namewriteazure_automation.runtime_environment_packages.deleteDelete the package by namedestructiveazure_automation.runtime_environment_packages.getRetrieve the Package identified by Package namereadazure_automation.runtime_environment_packages.listRetrieve the a list of Packagesreadazure_automation.runtime_environment_packages.updateUpdate the Package identified by Package namewrite
Runtime environments5
azure_automation.runtime_environments.createCreate or update Runtime Environmentwriteazure_automation.runtime_environments.deleteDelete the Runtime Environmentdestructiveazure_automation.runtime_environments.getGet information about the Runtime Environmentreadazure_automation.runtime_environments.listRetrieve a list of RuntimeEnvironmentsreadazure_automation.runtime_environments.updateUpdate an Runtime Environmentwrite
Schedules5
azure_automation.schedules.create_or_updateCreate a schedulewriteazure_automation.schedules.deleteDelete the schedule identified by schedule namedestructiveazure_automation.schedules.getRetrieve the schedule identified by schedule namereadazure_automation.schedules.listRetrieve a list of schedulesreadazure_automation.schedules.updateUpdate the schedule identified by schedule namewrite
Source controls5
azure_automation.source_controls.create_or_updateCreate a source controlwriteazure_automation.source_controls.deleteDelete the source controldestructiveazure_automation.source_controls.getRetrieve the source control identified by source control namereadazure_automation.source_controls.listRetrieve a list of source controlsreadazure_automation.source_controls.updateUpdate a source controlwrite
Test jobs5
azure_automation.test_jobs.createCreate a test job of the runbookwriteazure_automation.test_jobs.getRetrieve the test job for the specified runbookreadazure_automation.test_jobs.resumeResume the test jobwriteazure_automation.test_jobs.stopStop the test jobdestructiveazure_automation.test_jobs.suspendSuspend the test jobdestructive
Variables5
azure_automation.variables.create_or_updateCreate a variablewriteazure_automation.variables.deleteDelete the variabledestructiveazure_automation.variables.getRetrieve the variable identified by variable namereadazure_automation.variables.listRetrieve a list of variablesreadazure_automation.variables.updateUpdate a variablewrite
Connection types4
azure_automation.connection_types.create_or_updateCreate a connection typewriteazure_automation.connection_types.deleteDelete the connection typedestructiveazure_automation.connection_types.getRetrieve the connection type identified by connection type namereadazure_automation.connection_types.listRetrieve a list of connection typesread
DSC node configurations4
azure_automation.dsc_node_configurations.create_or_updateCreate the node configuration identified by node configuration namewriteazure_automation.dsc_node_configurations.deleteDelete the Dsc node configurations by node configurationdestructiveazure_automation.dsc_node_configurations.getRetrieve the Dsc node configurations by node configurationreadazure_automation.dsc_node_configurations.listRetrieve a list of dsc node configurationsread
DSC nodes4
azure_automation.dsc_nodes.deleteDelete the dsc node identified by node iddestructiveazure_automation.dsc_nodes.getRetrieve the dsc node identified by node idreadazure_automation.dsc_nodes.listRetrieve a list of dsc nodesreadazure_automation.dsc_nodes.updateUpdate the dsc nodewrite
Job schedules4
azure_automation.job_schedules.createCreate a job schedulewriteazure_automation.job_schedules.deleteDelete the job schedule identified by job schedule namedestructiveazure_automation.job_schedules.getRetrieve the job schedule identified by job schedule namereadazure_automation.job_schedules.listRetrieve a list of job schedulesread
Private endpoint connections4
azure_automation.private_endpoint_connections.create_or_updateApprove or reject a private endpoint connection with a given namewriteazure_automation.private_endpoint_connections.deleteDeletes a private endpoint connection with a given namedestructiveazure_automation.private_endpoint_connections.getGets a private endpoint connectionreadazure_automation.private_endpoint_connections.listList all private endpoint connections on an Automation accountread
Runbook drafts3
azure_automation.runbook_drafts.getRetrieve the runbook draft identified by runbook namereadazure_automation.runbook_drafts.replace_contentReplaces the runbook draft contentdestructiveazure_automation.runbook_drafts.undo_editUndo draft edit to last known published state identified by runbook namedestructive
Source control sync jobs3
azure_automation.source_control_sync_jobs.createCreates the sync job for a source controlwriteazure_automation.source_control_sync_jobs.getRetrieve the source control sync job identified by job idreadazure_automation.source_control_sync_jobs.listRetrieve a list of source control sync jobsread
Activities2
azure_automation.activities.getRetrieve the activity in the module identified by module name and activity namereadazure_automation.activities.listRetrieve a list of activities in the module identified by module nameread
Agent registration information2
azure_automation.agent_registration_information.getRetrieve the automation agent registration informationreadazure_automation.agent_registration_information.regenerate_keyRegenerate a primary or secondary agent registration keydestructive
DSC node reports2
azure_automation.dsc_node_reports.getRetrieve the Dsc node report data by node id and report idreadazure_automation.dsc_node_reports.listRetrieve the Dsc node report list by node idread
Job streams2
azure_automation.job_streams.getRetrieve the job stream identified by job stream idreadazure_automation.job_streams.listRetrieve a list of jobs streams identified by job nameread
Object data types2
azure_automation.object_data_types.list_fieldsRetrieve a list of fields of a given type across all accessible modulesreadazure_automation.object_data_types.list_fields_by_moduleRetrieve a list of fields of a given type identified by module nameread
Source control sync job streams2
azure_automation.source_control_sync_job_streams.getRetrieve a sync job stream identified by stream idreadazure_automation.source_control_sync_job_streams.listRetrieve a list of sync job streams identified by sync job idread
Test job streams2
azure_automation.test_job_streams.getRetrieve a test job stream of the test job identified by runbook name and stream idreadazure_automation.test_job_streams.listRetrieve a list of test job streams identified by runbook nameread
Account keys1
azure_automation.account_keys.listRetrieve the automation keys for an accountread
Deleted automation accounts1
azure_automation.deleted_automation_accounts.listRetrieve deleted automation accountread
DSC node counts1
azure_automation.dsc_node_counts.getRetrieve counts for Dsc Nodesread
Linked workspace1
azure_automation.linked_workspace.getRetrieve the linked workspace for the account idread
Module type fields1
azure_automation.module_type_fields.listRetrieve a list of fields of a given type identified by module nameread
Operations1
azure_automation.operations.listLists all of the available Automation REST API operationsread
Private link resources1
azure_automation.private_link_resources.listGets the private link resources that need to be created for Automation accountread
Resource groups1
azure_automation.resource_groups.listList the resource groups in a subscriptionread
Statistics1
azure_automation.statistics.listRetrieve the statistics for the accountread
Subscriptions1
azure_automation.subscriptions.listList the subscriptions the credential can seeread
Usages1
azure_automation.usages.listRetrieve the usage for the account idread
Questions
The Azure Automation MCP server, answered.
Is there an Azure Automation MCP server for Claude?
Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 160 Azure Automation actions across runbooks, watchers, automation accounts and hybrid runbook workers, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by Azure Automation.
What do I need to connect Azure Automation?
Entra application (client) id of a service principal with an Azure RBAC role on the subscription and Entra client secret. Plus your tenant id. The free call account { op: "connections.requirements", service: "azure_automation" } lists exactly what to paste.
Can an AI agent delete or change things in Azure Automation?
Only if its key allows it, and only with an explicit confirmation. 30 Azure Automation actions are destructive, including delete the webhook by name, delete the schedule identified by schedule name and delete the runbook by name. 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 Azure Automation API limit?
actionlake paces every call to the limits in the Azure Automation service file: 200 calls a minute per connection. Repeated reads are answered from cache (73 Azure Automation actions can be), which never reaches Azure Automation.
What does an Azure Automation action cost?
One upstream call, the only unit actionlake bills. A list that pages bills one call per page (41 Azure Automation actions page). Cache hits, searches, dry runs and calls Azure Automation 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 Azure Automation API does it cover?
The Azure Automation (runbooks, jobs and job streams, schedules, variables, credentials, Hybrid Runbook Workers, DSC) API Azure Resource Manager Microsoft.Automation: openapi.json (2024-10-23) at management.azure.com. It is built from Azure Automation's documentation as read on 23 October 2026. 160 actions in 45 areas, each one in the signed service file (version 1.0.0).
Does actionlake keep my Azure Automation 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 Azure Automation 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 Azure Automation today.
Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.