Integration

Control D integration

Control D is a DNS filtering and resolver service. Manage Profiles (rule sets): enable native and third-party filters, set profile options and restrictions, create custom rules that block, bypass, spoof or redirect hostnames (grouped in rule folders), set rules per service and the profile's default rule. Manage Endpoints (devices, the unique DNS resolvers that enforce profiles), authorize or deauthorize IPs on them, and for organization accounts manage the organization, sub-organizations, members and Internal Domains. Read reference lists (services and categories, redirect proxies, network points of presence, analytics log levels and storage regions) and billing history. Every write takes effect on the live DNS filtering of the Endpoints that enforce the profile or organization concerned. The Apple mobile configuration profile download is not exposed (it is a file, not JSON). Authentication is an API token created in the Control D dashboard (API section, Read or Write permission), sent as a Bearer token in the Authorization header; an organization token can act on a sub-organization through the X-Force-Org-Id header where offered.

Ask it in chat

Say what should happen.
The workflow builds itself.

When this happens, do that in Control D.Built from the 55 Control D tools below, on the connection you add once.

What you can do with Control D

Each of these is one operation on one endpoint, available both as a workflow step and as a tool an AI agent can call on its own. Nothing bundles several operations into one action, so what a run did stays readable afterwards.

Most endpoints run on the free plan. A few, mainly the ones that publish on your behalf, need a paid plan.

Custom rule, 4 operations

  • create_custom_rulesCreate custom rulesPOSTCreates custom rules for one or more hostnames in a profile. do: 0 BLOCK, 1 BYPASS, 2 SPOOF (via = IPv4 or hostname, via_v6 = IPv6), 3 REDIRECT (via = proxy PK from list_proxies).
  • delete_custom_ruleDelete custom ruleDELETEPermanently deletes the custom rule of one hostname in a profile, for every Endpoint that enforces the profile.
  • list_custom_rulesList custom rulesGETLists the custom rules in one rule folder of a profile (folder PK from list_rule_folders; 0 for the root folder), with each hostname's action and order.
  • update_custom_rulesUpdate custom rulesPUTModifies the custom rules of the given hostnames in a profile: action (do, via, via_v6), status, folder and comment. The vendor requires do and status on every update, so read the rules first with list_custom_rules and send them back with the change.

Device, 4 operations

  • create_deviceCreate devicePOSTCreates an Endpoint (device) enforcing a profile (profile_id from list_profiles) and returns its own DNS resolvers. icon takes a device type key from list_device_types.
  • delete_deviceDelete deviceDELETEPermanently deletes an Endpoint (device_id from list_devices). DNS stops working on every physical gadget that uses this Endpoint's unique DNS resolvers.
  • list_devicesList devicesGETLists all Endpoints (devices: unique DNS resolvers enforcing profiles) of the account or organization, with their resolvers (DoH, DoT, IPv4, IPv6), profile, status and settings.
  • update_deviceUpdate devicePUTModifies an Endpoint (device_id from list_devices): name, profiles, analytics level, Legacy DNS, IP learning, restriction, DDNS, status. Leave a field out to keep its current value.

Internal domain, 4 operations

  • create_internal_domainCreate internal domainPOSTAdd an Internal Domain. Requires Admin or Owner permission. Adding a domain that already exists returns HTTP 409. Returns the complete Internal Domains state.
  • delete_internal_domainDelete internal domainDELETEPermanently deletes a local Internal Domain (id from list_internal_domains): managed ctrld Endpoints stop resolving that suffix outside Control D. Needs Admin or Owner permission; inherited entries return HTTP 404.
  • list_internal_domainsList internal domainsGETLists the organization's Internal Domains (domain suffixes that managed ctrld resolves outside Control D): local entries, entries inherited from the parent organization, and the effective list Endpoints receive.
  • update_internal_domainUpdate internal domainPUTModifies a local Internal Domain (id from list_internal_domains); needs Admin or Owner permission. Send at least one field; omitted ones keep their value. Inherited entries are read-only (HTTP 404).

Profile, 4 operations

  • create_profileCreate profilePOSTCreates a blank profile, or a copy of an existing one when clone_profile_id is given (PK from list_profiles).
  • delete_profileDelete profileDELETEPermanently deletes a profile (PK from list_profiles) with its filters, rules and options. A profile still enforced by an Endpoint cannot be deleted: move those Endpoints to another profile first (update_device).
  • list_profilesList profilesGETLists all profiles (rule sets) of the account with their PK (the profile_id of other tools) and counts of filters, rules, services, folders and options.
  • update_profileUpdate profilePUTModifies a profile: rename it, disable it until a time, or lock or unlock it. Leave a field out to keep its current value.

Profile restriction, 4 operations

  • disable_profile_restrictionDisable profile restrictionDELETEDisables one restriction on a profile (name = PK from list_available_restrictions) and returns a confirmation message. Repeating it succeeds.
  • disable_profile_restriction_by_bodyDisable profile restriction by bodyDELETEDisables one restriction on a profile, its identifier passed as PK in the body. Same effect as disable_profile_restriction, which takes it in the path.
  • list_profile_restrictionsList profile restrictionsGETLists the restriction identifiers enabled on a profile, as a sorted list of names (not objects). Names and descriptions come from list_available_restrictions.
  • set_profile_restrictionSet profile restrictionPUTEnables (status 1) or disables (status 0) one restriction on a profile. name is a PK from list_available_restrictions; enabling needs one currently available.

Rule folder, 4 operations

  • create_rule_folderCreate rule folderPOSTCreates a rule folder in a profile; the rules inside inherit its action. do: 0 BLOCK, 1 BYPASS, 2 SPOOF, 3 REDIRECT; via is the spoof target or proxy PK (list_proxies).
  • delete_rule_folderDelete rule folderDELETEPermanently deletes a rule folder (PK from list_rule_folders) and every custom rule inside it, for every Endpoint that enforces the profile.
  • list_rule_foldersList rule foldersGETLists a profile's rule folders (groups of custom rules) with their PK (the folder of other tools), action and rule count.
  • update_rule_folderUpdate rule folderPUTModifies a rule folder (PK from list_rule_folders): name, action (do, via) and status. The vendor requires do and status on every update, so read the folder first with list_rule_folders and send them back with the change.

Device ip, 3 operations

  • authorize_device_ipsAuthorize device ipsPOSTAuthorizes IPs on an Endpoint (device_id from list_devices) so they can use its Legacy DNS IPv4 resolver and proxies. On a restricted Endpoint only authorized IPs can query it.
  • deauthorize_device_ipsDeauthorize device ipsDELETEDeauthorizes IPs on an Endpoint (device_id from list_devices). On a restricted Endpoint those IPs can no longer query it; otherwise it only matters for Legacy DNS resolvers.
  • list_device_known_ipsList device known ipsGETLists up to the latest 50 IPs that queried an Endpoint (device_id from list_devices), logged or authorized.

Default rule, 2 operations

  • get_default_ruleGet default ruleGETReturns a profile's Default Rule (the action applied when nothing else matches): do (0 = BLOCK, 1 = BYPASS, 2 = SPOOF, 3 = REDIRECT), via and status.
  • update_default_ruleUpdate default rulePUTSets a profile's Default Rule, the action applied when nothing else matches. do: 0 BLOCK, 1 BYPASS, 2 SPOOF (via = IP or hostname), 3 REDIRECT (via = proxy PK from list_proxies).

Filter, 2 operations

  • update_filterUpdate filterPUTEnables (status 1) or disables (status 0) one filter of a profile. filter is a PK from list_native_filters or list_external_filters.
  • update_filters_batchUpdate filters batchPUTEnables or disables several filters of a profile in one call. Pass filters as a list of {filter, status}: filter is a PK from list_native_filters, status 1 enables and 0 disables.

Organization, 2 operations

  • get_organizationGet organizationGETReturns the organization's details: name, contact, limits and counts of users, profiles, routers and sub-organizations, storage region and status.
  • update_organizationUpdate organizationPUTModifies the organization's details (name, contact, 2FA requirement, storage region, Global Profile). Leave a field out to keep its current value.

Profile option, 2 operations

  • list_profile_optionsList profile optionsGETLists all profile options (the name values of update_profile_option) with their type, default value and description.
  • update_profile_optionUpdate profile optionPUTSets one option on a profile (name from list_profile_options): status 1 enables, 0 disables; value sets the option's value where it takes one.

Sub organization, 2 operations

  • create_sub_organizationCreate sub organizationPOSTCreates a sub-organization. stats_endpoint takes a storage region from list_analytics_storage_regions; parent_profile a Global Profile id (list_profiles).
  • list_sub_organizationsList sub organizationsGETLists the organization's sub-organizations with their details, limits and counts.

Account, 1 operation

  • get_accountGet accountGETReturns the account's information: PK, email and its status, 2FA, proxy access, account status, creation date and last activity.

Analytics log level, 1 operation

  • list_analytics_log_levelsList analytics log levelsGETLists the analytics log levels that can be enabled on Endpoints (the stats value of create_device and update_device).

Analytics storage region, 1 operation

  • list_analytics_storage_regionsList analytics storage regionsGETLists the analytics storage regions an account or organization can store its logs in (the stats_endpoint value of create_sub_organization and update_organization).

Billing payment, 1 operation

  • list_billing_paymentsList billing paymentsGETReturns the billing history of all payments made on the account.

Billing product, 1 operation

  • list_billing_productsList billing productsGETReturns the products currently activated on the account.

Billing subscription, 1 operation

  • list_billing_subscriptionsList billing subscriptionsGETReturns the active and canceled subscriptions of the account.

Device type, 1 operation

  • list_device_typesList device typesGETLists the allowed Endpoint device types (the icon values of create_device), grouped into os, browser, tv and router.

External filter, 1 operation

  • list_external_filtersList external filtersGETLists the third-party filters of a profile and their states.

Native filter, 1 operation

  • list_native_filtersList native filtersGETLists the native filters (ads, malware, adult content and more) of a profile with their state and options.

Network status, 1 operation

  • get_network_statusGet network statusGETReturns the status of the API, DNS and proxy services at each Control D point of presence (city, country, coordinates).

Organization member, 1 operation

  • list_membersList membersGETLists the members of the organization with their email, permission level, 2FA status and last activity.

Profile service, 1 operation

  • list_profile_servicesList profile servicesGETLists the services (apps and websites) that have a rule in a profile, with the rule's action.

Proxy, 1 operation

  • list_proxiesList proxiesGETLists the proxy locations traffic can be redirected through; a proxy's PK is the via value of a REDIRECT rule.

Request ip, 1 operation

  • get_request_ipGet request ipGETReturns the IP the API request came from and the Control D datacenter that handled it.

Restriction, 1 operation

  • list_available_restrictionsList available restrictionsGETLists the restrictions available to enable on a profile (set_profile_restriction): each has a PK identifier, a display name and a description.

Service, 1 operation

  • list_category_servicesList category servicesGETLists the services of one category (category PK from list_service_categories); a service's PK is the service value of set_service_rule.

Service category, 1 operation

  • list_service_categoriesList service categoriesGETLists the service categories (audio, gaming, tools and more) with their PK, name, description and number of services.

Service rule, 1 operation

  • set_service_ruleSet service rulePUTCreates or modifies the rule for one service (PK from list_category_services) in a profile. do: 0 BLOCK, 1 BYPASS, 2 SPOOF, 3 REDIRECT (via = proxy PK from list_proxies); status 1 enables.

Use Control D from Claude Code, Cursor or Codex

Connect Control D in LiveContext, create an API key in Settings, then add the LiveContext MCP server to your client. Its Control D operations become tools the client can call, next to every other integration you connected.

Claude Code
claude mcp add --transport http livecontext https://livecontext.ai/mcp --header "X-API-Key: YOUR_API_KEY"
Codex (~/.codex/config.toml)
[mcp_servers.livecontext]
url = "https://livecontext.ai/mcp"

[mcp_servers.livecontext.http_headers]
"X-API-Key" = "YOUR_API_KEY"
Cursor, Claude Desktop and other JSON configs
{
  "mcpServers": {
    "livecontext": {
      "type": "http",
      "url": "https://livecontext.ai/mcp",
      "headers": {
        "X-API-Key": "YOUR_API_KEY"
      }
    }
  }
}

Set up the MCP server step by step

How to connect Control D

  1. Create your workspace

    Sign up free. Nothing to install.

  2. Connect Control D once

    Add your Control D connection in Settings. Every tool from this integration reuses it, and secrets are encrypted at rest and visible only to you.

  3. Describe the job in chat

    The workflow builds itself in front of you and picks the endpoints it needs. Drag the steps yourself on the canvas whenever you would rather be explicit.

Control D integration FAQ

What can you do with the Control D integration?

LiveContext exposes 55 operations on Control D, covering custom rule, device, internal domain and profile.

Popular integrations

Browse the whole catalog