Skip to content

Tools reference ​

Available onevery plan

When you connect an AI client to Cabin, it gains access to the tools below. Your assistant chooses which ones to call based on what you ask. Tools are grouped by what they do:

  • Read tools only fetch data and are safe to run any time.
  • Write tools create or change records: most clients confirm with you first.
  • Destructive tools remove data: clients always ask before running these.

Every tool operates only on domains in your own account, and each one respects your plan. A tool that needs a feature you don't have says so rather than returning partial data.

Read tools ​

list_domains ​

List every domain on your account, each with its private dashboard URL (and public dashboard URL if sharing is enabled). No parameters.

get_analytics ​

Analytics for a domain over a date range: pageviews, unique visitors, sessions, top pages, and referrers.

  • domain: the domain to query (e.g. example.com)
  • date_from, date_to: the range, in YYYY-MM-DD format
  • scope: what to include: core, pages, referrals, or a combination (default core)
  • limit_lists: number of items to return in each list (default 50)

validate_installation ​

Check whether the Cabin tracking script is correctly installed on one of your domains.

  • domain: the domain to check

check_custom_domain_dns ​

Verify that a custom subdomain's CNAME is correctly pointing at custom.withcabin.com.

  • custom: the custom subdomain to check (e.g. stats.example.com)

analyse_page ​

Run a carbon/energy and performance analysis on a single URL, including historical averages. URLs Cabin hasn't seen before can take 20–30 seconds.

  • url: the full URL to analyse (e.g. https://example.com/about)
  • force: re-run even if a recent analysis exists (default false)

Write tools ​

create_domain ​

Add a new domain to your account. Returns the dashboard URL and the tracking-script snippet to install.

  • domain: the domain to add (no protocol or path)
  • tz: IANA timezone for the analytics, e.g. Europe/London (default UTC)

update_domain_settings ​

Update one or more settings on a domain you own.

  • domain: the domain to update
  • public: make the dashboard publicly accessible
  • publicPassword: password-protect the public dashboard; an empty string removes it (Scale)
  • privacypage: show a privacy statement on the public dashboard
  • emailRecipients: array of email addresses that receive this domain's weekly report (Plus sends to your own account email only; Scale sends to anyone). Replaces the entire list, so to add or remove one address, read the current recipients with list_domains first, then send the full updated list. An empty array stops all weekly emails.
  • tz: IANA timezone
  • color: dashboard brand colour (hex)

add_custom_domain ​

Attach a custom subdomain so the tracking script serves from your own host, bypassing ad-blockers. Returns DNS setup instructions and the new <script> tag to install once DNS verifies (Plus and Scale).

  • domain: the Cabin domain the subdomain will point at
  • custom: the subdomain to use, e.g. stats.example.com (avoid names like analytics, tracker, or stats that ad-blockers themselves target)

Destructive tools ​

delete_domain ​

Permanently remove a domain from your account; its analytics data is then scheduled for deletion. This is irreversible.

  • domain: the domain to delete

remove_custom_domain ​

Detach a custom subdomain from a domain you own, and return the default-host script tag to swap back into your site.

  • domain: the Cabin domain the subdomain is attached to
  • custom: the subdomain to remove