Skip to content

Connectors · Developer & infrastructure

UltraDNS MCP server for AI agents.

actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to UltraDNS and the rest of your systems. It gives your agent 256 UltraDNS actions (105 reads, 116 writes and 35 that wait for a confirmation) and holds the UltraDNS credential itself, so the agent never does. It paces UltraDNS'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: "ultradns.zones.list",  intent: "check which UltraDNS account is connected"}# List zones (v3, cursor based) · read · 1 upstream call
  • 256actionsin one signed file
  • 105readlook, never change
  • 116writecreate and update
  • 35wait for a yesdestructive, confirmed first

Set up

Connect UltraDNS 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 UltraDNS.

    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.

    • usernameUltraDNS user name (an API-only user is recommended; create one under Accounts > Users in the UltraDNS portal)
    • passwordPassword of that UltraDNS user
    account { op: "connections.requirements", service: "ultradns" }
    # 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: "ultradns.zones.list" }# list zones (v3, cursor based) · read · 1 upstream callcheck { action: "ultradns.rrsets.create", input: { … } }# free: inputs, permissions, cost and confirmations, nothing sent

UltraDNS at a glance

Sign-in
Session login. actionlake opens the session and renews it when it expires.
You provide
usernamepassword
Limits we pace to
10 calls a second, per connection
API covered
UltraDNS REST API (User Guide 3.128, 2026)api.ultradns.com
Built from
UltraDNS's documentation, read 23 October 2026ultra-portalstatic.ultradns.comultra-portalstatic.ultradns.com
Service file
Version 1.0.0, signed (Ed25519)
Cached reads
93 of 105 reads, for up to 5 minutes; a write clears what it affects
Shared entities
2, so ask can line UltraDNS up with your other systems
Data
Processed and stored in Sydney, Australia. No US region yet

Capabilities

What an AI agent can do in UltraDNS.

256 actions in 59 areas. Every one carries its effect, so a key can allow the reads and hold the rest.

  • 105readlook, never change
  • 116writecreate and update
  • 35destructivewait for a confirmation
  1. Reports

    21

    21 read · 0 write · 0 destructive

    Request an advanced response codes report · Request a client IP directional response counts report · Request a country code directional response counts report · Request a host directional response counts report

  2. Zones

    12

    2 read · 9 write · 1 destructive

    List zones (v3, cursor based) · Create a zone · Get zone metadata · Update a zone

  3. Security groups

    9

    3 read · 4 write · 2 destructive

    Assign a user to a security group · Create a security group · Get security groups · Get users in a security group

  4. Rrsets

    8

    3 read · 4 write · 1 destructive

    List all RRSets in a zone · Create an RRSet for an owner · List all RRSets of a type for an owner · Update an RRSet

  5. Account settings

    6

    2 read · 3 write · 1 destructive

    Get the catalogue of account-level settings · Create an account setting · Get an account setting · Update an account setting

  6. Certificates

    6

    3 read · 2 write · 1 destructive

    Upload a certificate · Get the list of certificates · Get certificate details · Renew or replace a certificate

  7. Dir pools

    6

    2 read · 3 write · 1 destructive

    Create a Directional pool · List Directional pools in a zone · Get a Directional pool · Update a Directional pool

  8. Dirgroups geo

    6

    2 read · 3 write · 1 destructive

    Create an account-level GeoIP group · Get all account-level GeoIP groups · Get an account-level GeoIP group · Update an account-level GeoIP group

51 more areas · 182 actions
  • Dirgroups ip 6
  • Dnssec 6
  • Events 6
  • Probes 6
  • RD pools 6
  • SB pools 6
  • SF pools 6
  • SLB pools 6
  • TC pools 6
  • Web forwards 6
  • Zone tags 6
  • Account dnssec settings 5
  • Account tags 5
  • Dirgroups asn 5
  • Dirgroups proximity 5
  • Notifications 5
  • Rrset tags 5
  • Snapshots 5
  • Standalone groups 5
  • Tag definitions 5
  • User tags 5
  • Accounts 4
  • Allowed ips 4
  • Invitations 4
  • Tasks 4
  • Transfer acl 4
  • Account TTLS 3
  • Certcentral link 3
  • Custom headers 3
  • Health checks 3
  • Push notifications 3
  • Security preferences 3
  • System preferences 3
  • Account users 2
  • Address 2
  • Batch 2
  • Batch query 2
  • Dangling records 2
  • User 2
  • Users 2
  • Account user tags 1
  • Account web forwards 1
  • Agents 1
  • Geoip territories 1
  • Permission exceptions 1
  • Probe alerts 1
  • Security questions 1
  • Status 1
  • Test probes 1
  • Version 1
  • Zone record tags 1

Top actions

The UltraDNS API, shaped for agents.

The ids your agent types, what each does, and the one name it shares with other systems. 12 of UltraDNS's 12 action names are shared with at least one other connector, so an agent learns them once.

ActionWhat it doesEffectSame name in
ultradns.account_users.listGet users of an accountGet users of an account.readidentity.user.list474 connectors
ultradns.user.getGet details of the current userGet details of the current user.readidentity.current_user.get307 connectors
ultradns.rrsets.listList all RRSets in a zoneList all RRSets in a zone.readinfra.dns_record.list12 connectors
ultradns.rrsets.createCreate an RRSet for an ownerCreate an RRSet for an owner.writeinfra.dns_record.create11 connectors
ultradns.zones.listList zones (v3, cursor based)List zones (v3, cursor based).readinfra.dns_zone.list10 connectors
ultradns.zones.createCreate a zoneCreate a zone.writeinfra.dns_zone.create8 connectors
ultradns.rrsets.deleteDelete all RRSets for an owner and typeDelete all RRSets for an owner and type.destructiveinfra.dns_record.delete11 connectors
ultradns.batch.runCreate a batch requestCreate a batch request.writethis connector
ultradns.tasks.listGet the list of tasksGet the list of tasks.readthis connector
ultradns.agents.listGet SiteBacker agents for an accountGet SiteBacker agents for an account.readthis connector
ultradns.events.listGet events for a poolGet events for a pool.readthis connector
ultradns.zones.exportExport zones to BINDExport zones to BIND.writethis connector

Try it

Prompts to paste into Claude.

Each one names the UltraDNS actions it will call, so you know what it reads and what it changes before you send it.

  1. Readread

    Who has access in UltraDNS? List every user and their role.

    callsultradns.account_users.list

  2. Writewrite

    Create an RRSet for an owner in UltraDNS. Show me exactly what you will send before you save it.

    callsultradns.rrsets.create

Governance for UltraDNS

Destructive actions wait for a yes.

35 UltraDNS actions are destructive. The first 10:

  • Delete all RRSets for an owner and typeultradns.rrsets.delete
  • Delete a zoneultradns.zones.delete
  • Delete a taskultradns.tasks.delete
  • Unsign a zone (DNSSEC)ultradns.dnssec.unsign
  • Delete a pool eventultradns.events.delete
  • Delete a probeultradns.probes.delete
  • Delete a Resource Distribution (RD) poolultradns.rd_pools.delete
  • Delete a SiteBacker poolultradns.sb_pools.delete
  • Delete a Simple Monitor / Failover poolultradns.sf_pools.delete
  • Delete a Traffic Controller poolultradns.tc_pools.delete

A destructive action runs only with confirm: true. Under the human policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.

doultradns.rrsets.deleteconfirm_policy: human

Delete all RRSets for an owner and type?

intent: the user asked me to delete all RRSets for an owner and type

run suspended · waiting for a named person · key ultradns-agent cannot confirm itself
In the console, or from an emailed signed link.
a key for this connector
account {  op: "keys.create", name: "ultradns-agent",  allowed_actions: ["ultradns.*"], cap_calls: 2000,  confirm_policy: "human_for_writes",  approval_rules: [    { match: "ultradns.rrsets.delete", approver: "[email protected]" },    { match: "ultradns.zones.delete", approver: "[email protected]" },    { match: "ultradns.tasks.delete", approver: "[email protected]" }  ]}
Illustrative. Scoped to UltraDNS only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

Cost

What UltraDNS costs on actionlake.

Every UltraDNS action is one upstream call, the only thing actionlake bills. Searching, check, cost, account and any call UltraDNS 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 256 UltraDNS actions
  • 256actions pageeach page of a long list is one call
  • 93reads 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 UltraDNS action.

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

Reports21
  • ultradns.reports.account_healthGet the account health reportread
  • ultradns.reports.advanced_response_codesRequest an advanced response codes reportread
  • ultradns.reports.audit_logGet the audit log reportread
  • ultradns.reports.audit_log_filtersGet audit log query filtersread
  • ultradns.reports.directional_response_counts_client_ipRequest a client IP directional response counts reportread
  • ultradns.reports.directional_response_counts_country_codeRequest a country code directional response counts reportread
  • ultradns.reports.directional_response_counts_hostRequest a host directional response counts reportread
  • ultradns.reports.failoverGet the failover reportread
  • ultradns.reports.get_requestRetrieve a report by request idread
  • ultradns.reports.health_status_detailGet the health status details reportread
  • ultradns.reports.health_status_summaryGet the health status summary reportread
  • ultradns.reports.host_query_volumeRequest a host query volume reportread
  • ultradns.reports.probe_result_detailsGet the probe result details (v2) reportread
  • ultradns.reports.probe_result_summaryGet the probe result summary (v2) reportread
  • ultradns.reports.projected_query_volumeRequest a projected query volume reportread
  • ultradns.reports.raw_query_sampleRequest a raw query sample reportread
  • ultradns.reports.usage_summaryGet the usage summary reportread
  • ultradns.reports.zero_query_zonesRequest a zero query zones reportread
  • ultradns.reports.zone_daily_query_volumeRequest a zone daily query volume reportread
  • ultradns.reports.zone_query_volumeRequest a zone query volume reportread
  • ultradns.reports.zone_query_volume_syncGet a synchronous zone query volume reportread
Zones12
  • ultradns.zones.convertConvert a zonewrite
  • ultradns.zones.createCreate a zonewrite
  • ultradns.zones.deleteDelete a zonedestructive
  • ultradns.zones.exportExport zones to BINDwrite
  • ultradns.zones.getGet zone metadataread
  • ultradns.zones.json_patchPartially update a zone (JSON PATCH)write
  • ultradns.zones.listList zones (v3, cursor based)read
  • ultradns.zones.patchPartially update a zonewrite
  • ultradns.zones.suspendSuspend a zonewrite
  • ultradns.zones.transferRequest zone transferwrite
  • ultradns.zones.unaliasUnalias a zonewrite
  • ultradns.zones.updateUpdate a zonewrite
Security groups9
  • ultradns.security_groups.add_userAssign a user to a security groupwrite
  • ultradns.security_groups.createCreate a security groupwrite
  • ultradns.security_groups.deleteDelete a security groupdestructive
  • ultradns.security_groups.getGet a security groupread
  • ultradns.security_groups.listGet security groupsread
  • ultradns.security_groups.list_usersGet users in a security groupread
  • ultradns.security_groups.patchPartially update a security groupwrite
  • ultradns.security_groups.remove_userRemove a user from a security groupdestructive
  • ultradns.security_groups.updateUpdate a security groupwrite
Rrsets8
  • ultradns.rrsets.createCreate an RRSet for an ownerwrite
  • ultradns.rrsets.deleteDelete all RRSets for an owner and typedestructive
  • ultradns.rrsets.getList all RRSets of a type for an ownerread
  • ultradns.rrsets.json_patchPartially update an RRSet or pool (JSON PATCH)write
  • ultradns.rrsets.listList all RRSets in a zoneread
  • ultradns.rrsets.list_by_typeList all RRSets of a record typeread
  • ultradns.rrsets.patchPartially update an RRSetwrite
  • ultradns.rrsets.updateUpdate an RRSetwrite
Account settings6
  • ultradns.account_settings.catalogGet the catalogue of account-level settingsread
  • ultradns.account_settings.createCreate an account settingwrite
  • ultradns.account_settings.deleteDelete an account settingdestructive
  • ultradns.account_settings.getGet an account settingread
  • ultradns.account_settings.patchPartially update an account settingwrite
  • ultradns.account_settings.updateUpdate an account settingwrite
Certificates6
  • ultradns.certificates.createUpload a certificatewrite
  • ultradns.certificates.deleteDelete a certificatedestructive
  • ultradns.certificates.getGet certificate detailsread
  • ultradns.certificates.listGet the list of certificatesread
  • ultradns.certificates.replaceRenew or replace a certificatewrite
  • ultradns.certificates.validateGet certificate validation detailsread
Dir pools6
  • ultradns.dir_pools.createCreate a Directional poolwrite
  • ultradns.dir_pools.deleteDelete a Directional pooldestructive
  • ultradns.dir_pools.getGet a Directional poolread
  • ultradns.dir_pools.listList Directional pools in a zoneread
  • ultradns.dir_pools.patchPartially update a Directional poolwrite
  • ultradns.dir_pools.updateUpdate a Directional poolwrite
Dirgroups geo6
  • ultradns.dirgroups_geo.createCreate an account-level GeoIP groupwrite
  • ultradns.dirgroups_geo.deleteDelete an account-level GeoIP groupdestructive
  • ultradns.dirgroups_geo.getGet an account-level GeoIP groupread
  • ultradns.dirgroups_geo.listGet all account-level GeoIP groupsread
  • ultradns.dirgroups_geo.patchPartially update an account-level GeoIP groupwrite
  • ultradns.dirgroups_geo.updateUpdate an account-level GeoIP groupwrite
Dirgroups ip6
  • ultradns.dirgroups_ip.createCreate an account-level Source IP groupwrite
  • ultradns.dirgroups_ip.deleteDelete an account-level Source IP groupdestructive
  • ultradns.dirgroups_ip.getGet an account-level Source IP groupread
  • ultradns.dirgroups_ip.listGet all account-level Source IP groupsread
  • ultradns.dirgroups_ip.patchPartially update an account-level Source IP groupwrite
  • ultradns.dirgroups_ip.updateUpdate an account-level Source IP groupwrite
Dnssec6
  • ultradns.dnssec.getGet DNSSEC details for a zoneread
  • ultradns.dnssec.ksk_rolloverStart a KSK key rolloverwrite
  • ultradns.dnssec.patchPartially update a zone's DNSSEC policywrite
  • ultradns.dnssec.signSign a zone (DNSSEC)write
  • ultradns.dnssec.unsignUnsign a zone (DNSSEC)destructive
  • ultradns.dnssec.updateResign a zone or update its DNSSEC policy and external keyswrite
Events6
  • ultradns.events.createCreate a pool eventwrite
  • ultradns.events.deleteDelete a pool eventdestructive
  • ultradns.events.getGet a single pool eventread
  • ultradns.events.listGet events for a poolread
  • ultradns.events.patchPartially update a pool eventwrite
  • ultradns.events.updateUpdate a pool eventwrite
Probes6
  • ultradns.probes.createCreate a probewrite
  • ultradns.probes.deleteDelete a probedestructive
  • ultradns.probes.getGet a proberead
  • ultradns.probes.listGet probes for a poolread
  • ultradns.probes.patchPartially update a probewrite
  • ultradns.probes.updateUpdate a probewrite
RD pools6
  • ultradns.rd_pools.createCreate a Resource Distribution (RD) poolwrite
  • ultradns.rd_pools.deleteDelete a Resource Distribution (RD) pooldestructive
  • ultradns.rd_pools.getGet a Resource Distribution (RD) poolread
  • ultradns.rd_pools.listList Resource Distribution (RD) pools in a zoneread
  • ultradns.rd_pools.patchPartially update a Resource Distribution (RD) poolwrite
  • ultradns.rd_pools.updateUpdate a Resource Distribution (RD) poolwrite
SB pools6
  • ultradns.sb_pools.createCreate a SiteBacker poolwrite
  • ultradns.sb_pools.deleteDelete a SiteBacker pooldestructive
  • ultradns.sb_pools.getGet a SiteBacker poolread
  • ultradns.sb_pools.listList SiteBacker pools in a zoneread
  • ultradns.sb_pools.patchPartially update a SiteBacker poolwrite
  • ultradns.sb_pools.updateUpdate a SiteBacker poolwrite
SF pools6
  • ultradns.sf_pools.createCreate a Simple Monitor / Failover poolwrite
  • ultradns.sf_pools.deleteDelete a Simple Monitor / Failover pooldestructive
  • ultradns.sf_pools.getGet a Simple Monitor / Failover poolread
  • ultradns.sf_pools.listList Simple Monitor / Failover pools in a zoneread
  • ultradns.sf_pools.patchPartially update a Simple Monitor / Failover poolwrite
  • ultradns.sf_pools.updateUpdate a Simple Monitor / Failover poolwrite
SLB pools6
  • ultradns.slb_pools.createCreate a Simple Load Balancing poolwrite
  • ultradns.slb_pools.deleteDelete a Simple Load Balancing pooldestructive
  • ultradns.slb_pools.getGet a Simple Load Balancing poolread
  • ultradns.slb_pools.listList Simple Load Balancing pools in a zoneread
  • ultradns.slb_pools.patchPartially update a Simple Load Balancing poolwrite
  • ultradns.slb_pools.updateUpdate a Simple Load Balancing poolwrite
TC pools6
  • ultradns.tc_pools.createCreate a Traffic Controller poolwrite
  • ultradns.tc_pools.deleteDelete a Traffic Controller pooldestructive
  • ultradns.tc_pools.getGet a Traffic Controller poolread
  • ultradns.tc_pools.listList Traffic Controller pools in a zoneread
  • ultradns.tc_pools.patchPartially update a Traffic Controller poolwrite
  • ultradns.tc_pools.updateUpdate a Traffic Controller poolwrite
Web forwards6
  • ultradns.web_forwards.createCreate a web forwardwrite
  • ultradns.web_forwards.deleteDelete a web forwarddestructive
  • ultradns.web_forwards.json_patchPartially update a web forward (JSON PATCH)write
  • ultradns.web_forwards.listGet web forwards of a zoneread
  • ultradns.web_forwards.patchPartially update a web forwardwrite
  • ultradns.web_forwards.updateUpdate a web forwardwrite
Zone tags6
  • ultradns.zone_tags.createCreate a zone tagwrite
  • ultradns.zone_tags.create_batchCreate multiple zone tagswrite
  • ultradns.zone_tags.deleteDelete a zone tagdestructive
  • ultradns.zone_tags.getGet a zone tag keyread
  • ultradns.zone_tags.listGet zone tagsread
  • ultradns.zone_tags.update_batchUpdate zone tagswrite
Account dnssec settings5
  • ultradns.account_dnssec_settings.createCreate account-level DNSSEC settingswrite
  • ultradns.account_dnssec_settings.deleteReset account-level DNSSEC settings to defaultdestructive
  • ultradns.account_dnssec_settings.getGet account-level DNSSEC settingsread
  • ultradns.account_dnssec_settings.patchPartially update account-level DNSSEC settingswrite
  • ultradns.account_dnssec_settings.updateUpdate account-level DNSSEC settingswrite
Account tags5
  • ultradns.account_tags.createCreate an account-level tagwrite
  • ultradns.account_tags.deleteDelete an account-level tagdestructive
  • ultradns.account_tags.getGet an account-level tag keyread
  • ultradns.account_tags.listGet account-level tagsread
  • ultradns.account_tags.updateUpdate an account-level tagwrite
Dirgroups asn5
  • ultradns.dirgroups_asn.createCreate an account-level ASN groupwrite
  • ultradns.dirgroups_asn.deleteDelete an account-level ASN groupdestructive
  • ultradns.dirgroups_asn.listGet all account-level ASN groupsread
  • ultradns.dirgroups_asn.patchPartially update an account-level ASN groupwrite
  • ultradns.dirgroups_asn.updateUpdate an account-level ASN groupwrite
Dirgroups proximity5
  • ultradns.dirgroups_proximity.createCreate an account-level Geo Proximity groupwrite
  • ultradns.dirgroups_proximity.deleteDelete an account-level Geo Proximity groupdestructive
  • ultradns.dirgroups_proximity.listGet all account-level Geo Proximity groupsread
  • ultradns.dirgroups_proximity.patchPartially update an account-level Geo Proximity groupwrite
  • ultradns.dirgroups_proximity.updateUpdate an account-level Geo Proximity groupwrite
Notifications5
  • ultradns.notifications.createCreate a notification for pool recordswrite
  • ultradns.notifications.deleteDelete a notificationdestructive
  • ultradns.notifications.getGet a notification for a poolread
  • ultradns.notifications.listGet notifications for a poolread
  • ultradns.notifications.updateUpdate a notificationwrite
Rrset tags5
  • ultradns.rrset_tags.createCreate a resource record set tagwrite
  • ultradns.rrset_tags.create_bulkCreate multiple resource record set tagswrite
  • ultradns.rrset_tags.deleteDelete a resource record set tagdestructive
  • ultradns.rrset_tags.listGet resource record set tagsread
  • ultradns.rrset_tags.update_batchUpdate resource record set tagswrite
Snapshots5
  • ultradns.snapshots.createCreate a zone snapshotwrite
  • ultradns.snapshots.deleteDelete a zone snapshotdestructive
  • ultradns.snapshots.getGet a zone snapshotread
  • ultradns.snapshots.list_eligibleList zones eligible for snapshot and restoreread
  • ultradns.snapshots.restoreRestore a zone from its snapshotwrite
Standalone groups5
  • ultradns.standalone_groups.getGet settings for a standalone security groupread
  • ultradns.standalone_groups.listGet standalone security groupsread
  • ultradns.standalone_groups.move_userMove a user to a standalone security groupwrite
  • ultradns.standalone_groups.patchPartially update settings for a standalone security groupwrite
  • ultradns.standalone_groups.updateUpdate settings for a standalone security groupwrite
Tag definitions5
  • ultradns.tag_definitions.createCreate an account-level tag governance rulewrite
  • ultradns.tag_definitions.deleteDelete an account-level tag definition and governance ruledestructive
  • ultradns.tag_definitions.getGet an account-level tag definition and governance ruleread
  • ultradns.tag_definitions.listGet account-level tag definitions and governance rulesread
  • ultradns.tag_definitions.updateUpdate an account-level tag definition and governance rulewrite
User tags5
  • ultradns.user_tags.createCreate a user tagwrite
  • ultradns.user_tags.deleteDelete a user tagdestructive
  • ultradns.user_tags.getGet a user tag keyread
  • ultradns.user_tags.listGet user tagsread
  • ultradns.user_tags.updateUpdate a user tagwrite
Accounts4
  • ultradns.accounts.getGet a single accountread
  • ultradns.accounts.listGet accountsread
  • ultradns.accounts.patchPartially update account infowrite
  • ultradns.accounts.updateUpdate account infowrite
Allowed ips4
  • ultradns.allowed_ips.createAdd an allowed account-level IP rangewrite
  • ultradns.allowed_ips.deleteDelete an allowed account-level IP rangedestructive
  • ultradns.allowed_ips.listGet all allowed account-level IP rangesread
  • ultradns.allowed_ips.updateUpdate an allowed account-level IP rangewrite
Invitations4
  • ultradns.invitations.createInvite a new userwrite
  • ultradns.invitations.deleteDelete a pending invitationdestructive
  • ultradns.invitations.listGet pending invitationsread
  • ultradns.invitations.resendRe-invite a userwrite
Tasks4
  • ultradns.tasks.deleteDelete a taskdestructive
  • ultradns.tasks.getGet the status of a taskread
  • ultradns.tasks.listGet the list of tasksread
  • ultradns.tasks.resultGet the results of a taskread
Transfer acl4
  • ultradns.transfer_acl.createCreate account-level zone transfer settingswrite
  • ultradns.transfer_acl.deleteRemove account-level zone transfer settingsdestructive
  • ultradns.transfer_acl.patchPartially update account-level zone transfer settingswrite
  • ultradns.transfer_acl.updateUpdate account-level zone transfer settingswrite
Account TTLS3
  • ultradns.account_ttls.getGet account TTLsread
  • ultradns.account_ttls.patchPartially update account TTLswrite
  • ultradns.account_ttls.updateUpdate account TTLswrite
Certcentral link3
  • ultradns.certcentral_link.createCreate the DigiCert CertCentral linkwrite
  • ultradns.certcentral_link.deleteDelete the CertCentral linkdestructive
  • ultradns.certcentral_link.resetReset the CertCentral linkwrite
Custom headers3
  • ultradns.custom_headers.createAdd a custom HTTP header to an accountwrite
  • ultradns.custom_headers.deleteDelete a custom HTTP header of an accountdestructive
  • ultradns.custom_headers.listGet custom HTTP headers of an accountread
Health checks3
  • ultradns.health_checks.getGet DNS health check dataread
  • ultradns.health_checks.list_versionsGet DNS health check report version listread
  • ultradns.health_checks.runExecute a DNS health checkwrite
Push notifications3
  • ultradns.push_notifications.channelsGet available realtime push notification channelsread
  • ultradns.push_notifications.testTest a realtime push notification endpointwrite
  • ultradns.push_notifications.verifyVerify a realtime push notification endpointread
Security preferences3
  • ultradns.security_preferences.getGet security preferences for the current userread
  • ultradns.security_preferences.patchPartially update security preferences for the current userwrite
  • ultradns.security_preferences.updateUpdate security preferences for the current userwrite
System preferences3
  • ultradns.system_preferences.getGet system preferences for the current userread
  • ultradns.system_preferences.patchPartially update system preferences for the current userwrite
  • ultradns.system_preferences.updateUpdate system preferences for the current userwrite
Account users2
  • ultradns.account_users.deleteRemove a user's access from an accountdestructive
  • ultradns.account_users.listGet users of an accountread
Address2
  • ultradns.address.getGet address info for the current userread
  • ultradns.address.updateUpdate address info for the current userwrite
Batch2
  • ultradns.batch.runCreate a batch requestwrite
  • ultradns.batch.run_asyncCreate a batch request (async)write
Batch query2
  • ultradns.batch_query.runCreate a batch query requestread
  • ultradns.batch_query.run_asyncCreate a batch query request (async)read
Dangling records2
  • ultradns.dangling_records.getGet the dangling DNS records reportread
  • ultradns.dangling_records.requestRequest a dangling DNS records reportwrite
User2
  • ultradns.user.getGet details of the current userread
  • ultradns.user.updateUpdate details of the current userwrite
Users2
  • ultradns.users.set_passwordChange or force-reset a user's passwordwrite
  • ultradns.users.updateUpdate details of another userwrite
Account user tags1
  • ultradns.account_user_tags.listGet account-level user tagsread
Account web forwards1
  • ultradns.account_web_forwards.listList account-level web forwarding recordsread
Agents1
  • ultradns.agents.listGet SiteBacker agents for an accountread
Geoip territories1
  • ultradns.geoip_territories.listGet GeoIP territoriesread
Permission exceptions1
  • ultradns.permission_exceptions.listGet all permission exceptions for an objectread
Probe alerts1
  • ultradns.probe_alerts.listGet probe alerts for a poolread
Security questions1
  • ultradns.security_questions.listGet security questionsread
Status1
  • ultradns.status.getGet API statusread
Test probes1
  • ultradns.test_probes.createCreate a test probewrite
Version1
  • ultradns.version.getGet API versionread
Zone record tags1
  • ultradns.zone_record_tags.listGet zone record tagsread

Questions

The UltraDNS MCP server, answered.

Is there an UltraDNS MCP server for Claude?

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 256 UltraDNS actions across reports, zones, security groups and rrsets, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by UltraDNS.

What do I need to connect UltraDNS?

UltraDNS user name (an API-only user is recommended; create one under Accounts > Users in the UltraDNS portal) and Password of that UltraDNS user. The free call account { op: "connections.requirements", service: "ultradns" } lists exactly what to paste.

Can an AI agent delete or change things in UltraDNS?

Only if its key allows it, and only with an explicit confirmation. 35 UltraDNS actions are destructive, including delete all RRSets for an owner and type, delete a zone and delete a task. 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 UltraDNS API limit?

actionlake paces every call to the limits in the UltraDNS service file: 10 calls a second per connection. Repeated reads are answered from cache (93 UltraDNS actions can be), which never reaches UltraDNS.

What does an UltraDNS action cost?

One upstream call, the only unit actionlake bills. A list that pages bills one call per page (256 UltraDNS actions page). Cache hits, searches, dry runs and calls UltraDNS 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 UltraDNS API does it cover?

The UltraDNS REST API (User Guide 3.128, 2026) at api.ultradns.com. It is built from UltraDNS's documentation as read on 23 October 2026. 256 actions in 59 areas, each one in the signed service file (version 1.0.0).

Does actionlake keep my UltraDNS 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 UltraDNS 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 UltraDNS today.

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