← Registry

API Tools

borealhost.ai

Manages BorealHost API keys for agent accounts and container-based authentication.

1 endpoint152 known toolsFirst detected July 25, 2026Last detected August 29, 2026

ENDPOINT 1

https://borealhost.ai/mcp

No auth detected

MCP server metadata

Name
BorealHost
Version
1.27.0
Capabilities
experimentalpromptsresourcestools
Server instructions

# BorealHost — Agent Instructions You are connected to BorealHost.ai, an agent-native web hosting platform based in Quebec, Canada. All prices are in **CAD**. You can purchase hosting, deploy sites, manage DNS, register domains, and scale infrastructure — entirely through these tools, without human intervention. ## Quick Start Workflow 1. **Discover plans** — call `list_plans()` to see available hosting plans with pricing and resources 2. **Create checkout** — call `create_checkout(sku)` with a SKU like `bh_site_starter_monthly` 3. **Set buyer info** — call `update_checkout(checkout_id, requested_slug="my-site")` to pick a site name 4. **Pay** — call `complete_checkout(checkout_id)` and show the human `payment_url` 5. **Poll provisioning** — call `get_checkout_status(checkout_id)` until status is `completed` 6. **Manage your site** — use `get_site_status`, `manage_dns`, file tools, etc. Paying is what provisions the site. There is no step between 4 and 5, and `create_site` is not one — it reports, it does not create. ## Authentication - **API key format:** `bh_<48 hex chars>` — pass as `Authorization: Bearer <key>` - **Session-based:** Call `set_api_key("bh_...")` to activate an existing key for this session — all subsequent tools will use it automatically - **Auto-activation:** Keys are automatically activated when returned by `register()`, `complete_checkout()`, or `get_checkout_status()` — no extra step needed - **Environment variable:** Optionally set `BOREALHOST_API_KEY` before connecting (used as default if no session key is set) - **Scopes:** `read` (view data), `write` (modify resources), `admin` (delete/scale) - **One-time display:** API keys are shown **exactly once** on creation or rotation — store immediately - **New agents:** Call `register()` — no auth needed, returns a fresh read+write key and activates it - **Existing users:** Call `set_api_key()` with the owner's key from the BorealHost panel - **On-site agents (challenge-response):** If you are running on a BorealHost container and need an API key, use the two-step claim flow: 1. Call `request_api_key("your-site-slug")` — a claim token is written to your container 2. Read the token file from the container filesystem 3. Call `claim_api_key(token)` — the API key is returned and auto-activated This proves you have access to the container without storing secrets on disk. - Some tools require no authentication: `list_plans`, `create_checkout`, `update_checkout`, `complete_checkout`, `get_checkout_status`, `request_api_key` ## SKU Format Plan SKUs follow the pattern: `bh_{plan_slug}_{billing_period}` Examples: - `bh_site_starter_monthly` / `bh_site_starter_annual` - `bh_site_pro_monthly` / `bh_site_pro_annual` - `bh_site_managed_monthly` / `bh_site_managed_annual` - `bh_site_business_monthly` / `bh_site_business_annual` Call `list_plans()` to discover all current plan slugs. ## Payment Methods Two options in `complete_checkout()`: 1. **`stripe_checkout`** (default) — Returns `payment_url`, a short BorealHost redirect. Present **that** to the human, not `stripe_checkout_url`: chat UIs strip the `#fragment` the raw Stripe URL needs. After paying they land on a confirmation page showing the order. Then poll `get_checkout_status()` until status becomes `completed`. The API key is included in the first poll response after completion (shown once, then cleared — `api_key_pending` says whether it is still waiting). 2. **`stripe_payment_method`** — Charges a Stripe PaymentMethod directly. Requires `payment_method_id` parameter. On success, the response includes the API key immediately. No polling needed. ## Polling Strategy When waiting for checkout completion or provisioning: - **First 60 seconds:** Poll every **5 seconds** - **After 60 seconds:** Poll every **15 seconds** - **Timeout:** Stop after **10 minutes** — if still not completed, something went wrong Terminal checkout statuses: `completed`, `canceled`, `failed` Immediately after `completed`, `site` may still be `null` — provisioning runs a few seconds behind payment. Keep polling until `site.status` is `active`. Abandoned attempts are yours to clean up: `list_checkouts()` shows your account's checkouts, `cancel_checkout(id)` retires an unpaid one and expires its payment link. ## Error Handling All API responses use a consistent envelope: ```json {"ok": true, "data": {...}, "meta": {"request_id": "uuid", "timestamp": "iso8601"}} {"ok": false, "error": {"code": "ERROR_CODE", "message": "Human-readable message"}, "meta": {...}} ``` Tools unwrap this envelope — you receive the `data` directly on success, or an exception on error. ### Error Codes and Recovery | Code | HTTP | Meaning | Recovery | |------|------|---------|----------| | `VALIDATION_ERROR` | 422 | Invalid input (bad email, slug, SKU, etc.) | Fix the input and retry | | `NOT_FOUND` | 404 | Resource doesn't exist | Check the identifier (slug, domain, key ID) | | `UNAUTHORIZED` | 401 | Missing or invalid API key | Set `BOREALHOST_API_KEY` or call `register()` | | `FORBIDDEN` | 403 | Insufficient scope or wrong owner | Check that your key has the required scope | | `RATE_LIMITED` | 429 | Too many requests | Wait for the duration in the `Retry-After` header, then retry | | `INTERNAL_ERROR` | 500 | Server error | Retry with exponential backoff (1s, 2s, 4s) up to 3 times | ## Slug Rules Site slugs must match: `^[a-z0-9][a-z0-9-]{1,48}[a-z0-9]$` - 3–50 characters - Lowercase alphanumeric and hyphens only - Cannot start or end with a hyphen - Must be globally unique — if taken, try a different one ## Best Practices - **Store API keys immediately** — they are shown only once and cannot be retrieved - **Create snapshots before destructive operations** — call `create_snapshot()` before scaling down or decommissioning - **Check site status after provisioning** — call `get_site_status()` to confirm the site is ready before managing it - **Use `whoami()` to verify your key** — confirms scopes, account info, and active site count - **Domain registration requires complete WHOIS contact info** — have all fields ready before calling `register_domain()` - **For .ca domains**, always provide `ca_legal_type` (CCT for corporation, CCO for citizen, RES for resident) ## Available Resources Read these MCP resources for detailed reference data: - `borealhost://api/errors` — Full error code catalog with recovery guidance - `borealhost://api/scopes` — API key scope descriptions and tool requirements - `borealhost://api/enums` — All valid enum values (checkout status, DNS types, log types, etc.) - `borealhost://api/response-format` — API response envelope documentation - `borealhost://plans` — Live plan catalog with current pricing ## Available Prompts Use these MCP prompts for guided workflows: - `purchase_hosting` — Step-by-step hosting purchase flow - `setup_site` — Post-purchase site configuration (DNS, modules) - `manage_dns` — Common DNS operations guide - `register_domain` — Domain registration with WHOIS field checklist

Known tools 152

register

Register a new agent account and get an API key.

Inferred read-only
set_api_key

Set your BorealHost API key for this session.

Inferred read-only
whoami

Check the current API key's account info, scopes, and site count.

Inferred read-only
request_api_key

Request an API key for a site YOU ARE RUNNING ON (challenge-response).

Inferred read-only
claim_api_key

Claim an API key using a claim token from the container.

Inferred read-only
list_plans

List available hosting plans with pricing and resources.

Inferred read-only
create_checkout

Start a new checkout session to purchase a hosting plan.

Potential side effects
update_checkout

Set buyer email and desired site slug on a checkout session.

Potential side effects
complete_checkout

Complete checkout with payment and start site provisioning.

Potential side effects
get_checkout_status

Poll a checkout session for status updates.

Inferred read-only
list_checkouts

List checkouts belonging to the authenticated account.

Inferred read-only
cancel_checkout

Abandon an unpaid checkout and expire its Stripe payment link.

Potential side effects
add_site

Provision a site into a slot a plan you ALREADY PAY FOR includes.

Potential side effects
set_site_type

Change what a site's docroot IS, without deleting anything.

Inferred read-only
get_wallet

The account's prepaid balance, and what THIS key may spend from it.

Inferred read-only
get_site_status

Get detailed status of a hosted site including resources, domains, and modules.

Inferred read-only
manage_dns

Create or delete DNS records for a site.

Potential side effects
install_app

Install an app template on a VPS/Cloud site.

Inferred read-only
get_app_status

Get app installation status and log.

Inferred read-only
list_apps

List installed apps on a site.

Inferred read-only
list_snapshots

List all snapshots and scheduled snapshots for a site.

Inferred read-only
create_snapshot

Create a local container snapshot (async).

Potential side effects
create_b2_snapshot

Create a B2 cloud-backed snapshot (zero local disk, async).

Potential side effects
delete_snapshot

Delete a snapshot (local or B2).

Potential side effects
rollback_snapshot

Rollback a site to a previous snapshot.

Inferred read-only
get_snapshot_usage

Get snapshot disk usage and quota info for a site.

Inferred read-only
schedule_snapshot

Schedule a snapshot for future execution.

Inferred read-only
cancel_scheduled_snapshot

Cancel a scheduled snapshot.

Inferred read-only
list_backups

List all backups for a site (automatic and manual).

Inferred read-only
create_backup

Create a manual backup (runs asynchronously).

Potential side effects
restore_backup

Restore a site from a backup.

Inferred read-only
get_metrics

Get traffic and performance metrics for a site.

Inferred read-only
scale

Change a site's hosting plan (upgrade or downgrade).

Inferred read-only
decommission

Delete a site and schedule resource cleanup (7-day grace period).

Potential side effects
update_account

Update account profile fields (email, language, name).

Potential side effects
delete_account

Permanently anonymize the account.

Inferred read-only
list_subscriptions

List all subscriptions with plan details, pricing, status, and site slug.

Inferred read-only
get_billing_portal

Get a Stripe billing portal URL for managing payment methods and invoices.

Potential side effects
rotate_key

Atomically rotate an API key.

Inferred read-only
create_api_key

Create a new API key with specified scopes.

Potential side effects
list_api_keys

List all API keys for the account.

Inferred read-only
revoke_api_key

Revoke (deactivate) an API key.

Inferred read-only
get_ssh_info

Get SSH connection info for a VPS/dedicated site.

Inferred read-only
add_ssh_key

Inject your SSH public key into a site's container for direct SSH access.

Inferred read-only
list_files

List files and directories in a site's container.

Inferred read-only
read_file

Read the contents of a file from a site's container.

Inferred read-only
write_file

Write or overwrite a text file in a site's container.

Potential side effects
upload_file

Upload a base64-encoded file to a site's container.

Potential side effects
delete_file

Delete a file or directory from a site's container.

Potential side effects
create_directory

Create a directory in a site's container.

Potential side effects
list_plugins

List installed WordPress plugins with status.

Inferred read-only
list_themes

List installed WordPress themes with status.

Inferred read-only
manage_plugin

Install, activate, deactivate, or delete a WordPress plugin.

Potential side effects
manage_theme

Install, activate, or delete a WordPress theme.

Potential side effects
wp_check_updates

Check for available WordPress core, plugin, and theme updates.

Inferred read-only
wp_update_all

Update WordPress core, all plugins, and all themes.

Potential side effects
list_cron

List cron jobs on a site.

Inferred read-only
add_cron

Add a cron job to a site.

Inferred read-only
delete_cron

Delete a cron job by line number.

Potential side effects
ssl_info

Get SSL certificate information for a site.

Inferred read-only
ssl_renew

Force SSL certificate renewal via certbot.

Inferred read-only
list_php_versions

List available PHP versions and the currently active one.

Inferred read-only
switch_php

Switch the active PHP version for a site.

Inferred read-only
cache_status

Get cache status (Redis, WP object cache, hit rates).

Inferred read-only
cache_flush

Flush all caches (Redis + WP object cache).

Inferred read-only
cache_toggle

Enable or disable the WordPress object cache.

Inferred read-only
get_database_info

Get WordPress database information (size, tables, row counts).

Inferred read-only
optimize_database

Optimize WordPress database tables (reduces bloat).

Inferred read-only
database_search_replace

Search and replace in WordPress database (e.

Inferred read-only
list_databases

List all databases on a site's container.

Inferred read-only
list_tables

List tables in a database.

Inferred read-only
execute_query

Execute a SQL query on a site's database.

Potential side effects
get_stack_info

Get detailed system stack information (OS, PHP, DB, web server versions).

Inferred read-only
get_resource_snapshot

Get current resource usage (CPU, memory, disk, load average).

Inferred read-only
cloudflare_proxy_status

Get Cloudflare proxy (CDN) status for a site.

Inferred read-only
cloudflare_set_proxy

Enable or disable Cloudflare CDN proxy for a site.

Inferred read-only
cloudflare_purge_cache

Purge Cloudflare CDN cache for a site.

Potential side effects
list_ftp_accounts

List SFTP accounts on a site.

Inferred read-only
create_ftp_account

Create an SFTP account on a site.

Potential side effects
remove_ftp_account

Remove an SFTP account from a site.

Potential side effects
list_alert_rules

List user-configurable alert rules for a site.

Inferred read-only
create_alert_rule

Create an alert rule to monitor CPU, memory, or disk usage.

Potential side effects
delete_alert_rule

Delete an alert rule.

Potential side effects
run_malware_scan

Run a ClamAV malware scan on a site's container.

Inferred read-only
list_firewall_rules

List IP allow/deny firewall rules for a site.

Inferred read-only
add_firewall_rule

Add an IP firewall rule (allow or deny) and reload Nginx.

Inferred read-only
remove_firewall_rule

Remove an IP firewall rule and reload Nginx.

Potential side effects
get_logs

Retrieve container logs (error, access, or PHP).

Inferred read-only
list_domains

List all domains owned by the authenticated user.

Inferred read-only
search_domain

Check domain availability and get pricing.

Inferred read-only
register_domain

Register a new domain with WHOIS contact info and Stripe billing.

Inferred read-only
domain_detail

Get full domain details including DNS and infrastructure status.

Inferred read-only
list_subdomains

List subdomain DNS records for a domain you own.

Inferred read-only
add_subdomain

Create and route a subdomain of a site-linked domain.

Potential side effects
delete_subdomain

Remove a subdomain: its DNS record, nginx vhost and certificate.

Potential side effects
link_domain

Link a domain to a hosted site.

Inferred read-only
get_site_nginx_snippet

Read the custom nginx config for a domain on the BorealHost host proxy.

Inferred read-only
set_site_nginx_snippet

Set custom nginx config on the BorealHost host proxy — WebSocket, timeouts, headers.

Inferred read-only
set_domain_usage

Set what a registered domain points at — a site, someone else's nameservers, our DNS with no site, or a redirect to another URL.

Inferred read-only
domain_settings

Update domain settings (auto-renew, WHOIS privacy, registrar lock).

Potential side effects
list_domain_dns

List all DNS records for a domain.

Inferred read-only
add_domain_dns

Add a DNS record to a domain.

Inferred read-only
delete_domain_dns

Delete a DNS record from a domain.

Potential side effects
list_modules

List AI modules and their enabled/disabled state for a site.

Inferred read-only
toggle_module

Enable or disable an AI module on a site.

Inferred read-only
list_compute_types

List on-demand compute instance types with hourly CAD prices.

Inferred read-only
list_compute_images

List OS images available for on-demand compute instances.

Inferred read-only
launch_compute_instance

Launch an on-demand hourly compute instance (Canada, CAD).

Inferred read-only
list_compute_instances

List your on-demand compute instances with month-to-date spend.

Inferred read-only
get_compute_instance

Get live details for a compute instance (state, public IP, accrued cost).

Inferred read-only
start_compute_instance

Start a stopped compute instance.

Inferred read-only
stop_compute_instance

Stop a compute instance.

Inferred read-only
reboot_compute_instance

Reboot a running compute instance.

Inferred read-only
terminate_compute_instance

Permanently terminate a compute instance — this stops hourly billing.

Inferred read-only
list_compute_volumes

List your compute volumes — machines that survive instance termination.

Inferred read-only
get_compute_volume

Get a volume's live state, its instance, and its monthly storage cost.

Inferred read-only
create_compute_volume

Create a persistent machine and boot its first instance.

Potential side effects
adopt_compute_instance

Turn an instance you are ALREADY running into a persistent volume.

Inferred read-only
detach_compute_volume

Queue: snapshot the machine, verify it, then destroy the instance.

Potential side effects
attach_compute_volume

Restore a detached volume onto a fresh instance — optionally a new type.

Inferred read-only
snapshot_compute_volume

Queue a checkpoint snapshot without detaching — before a risky change.

Inferred read-only
delete_compute_volume

Permanently delete a volume and everything stored in it.

Potential side effects
container_action

Start, stop, or restart a site's container.

Inferred read-only
list_support_tickets

List the account's support tickets.

Inferred read-only
get_support_ticket

Get a support ticket with its full message thread.

Potential side effects
create_support_ticket

Open a support ticket with the BorealHost team.

Inferred read-only
reply_support_ticket

Add a message to an existing support ticket.

Potential side effects
get_backup_retention

Get the backup retention policy for a VPS site.

Inferred read-only
set_backup_retention

Set the backup retention policy for a VPS site.

Inferred read-only
delete_backup

Permanently delete a single backup (metadata + stored snapshot).

Potential side effects
list_redirects

List HTTP redirect rules for a site.

Inferred read-only
add_redirect

Add an HTTP redirect rule to a site.

Inferred read-only
delete_redirect

Delete a redirect rule by source path or id.

Potential side effects
set_force_https

Enable or disable the HTTP→HTTPS redirect for a site.

Inferred read-only
list_db_users

List database users for a site.

Inferred read-only
manage_db_user

Manage a database user on a site.

Inferred read-only
transfer_out_domain

Prepare a domain to transfer to another registrar.

Potential side effects
enable_wildcard

Route *.

Inferred read-only
upload_ssl_cert

Install your own SSL certificate for a site's domain.

Inferred read-only
get_email_status

Email addon status and mailboxes for a site.

Potential side effects
setup_email

Enable business email (hosted mailboxes + webmail) on a domain.

Potential side effects
create_mailbox

Create a mailbox on the site's email domain.

Potential side effects
delete_mailbox

Delete a mailbox (its mail is destroyed).

Potential side effects
reset_mailbox_password

Reset a mailbox password (generated when omitted, returned ONCE).

Inferred read-only
get_webmail_url

One-time webmail single-sign-on URL for a mailbox.

Inferred read-only
list_webhooks

List webhook endpoints registered on the account.

Inferred read-only
create_webhook

Register a webhook endpoint for platform events.

Inferred read-only
delete_webhook

Remove a webhook endpoint.

Potential side effects
test_webhook

Send a test event to a webhook endpoint (async).

Potential side effects
get_smtp_relay

List SMTP relay credentials for a site, with domain-auth status.

Inferred read-only
enable_smtp_relay

Enable an SMTP relay for a site's outbound transactional mail.

Inferred read-only
revoke_smtp_relay

Revoke an SMTP relay credential (immediate at the relay).

Inferred read-only

CONNECT WITH APPROVAL

Client installation

Review this server and its permissions before adding it. Secret placeholders must be set locally.

Codex

~/.codex/config.toml

[mcp_servers.borealhost]
url = "https://borealhost.ai/mcp"
enabled = true
Claude Code

.mcp.json

{
  "mcpServers": {
    "borealhost": {
      "type": "http",
      "url": "https://borealhost.ai/mcp"
    }
  }
}
Claude Desktop

Settings → Connectors → Add custom connector

Name: borealhost
Remote MCP URL: https://borealhost.ai/mcp

Add this remote URL as a custom connector in Claude Desktop. Availability depends on the user plan and workspace policy.

Cursor

.cursor/mcp.json

{
  "mcpServers": {
    "borealhost": {
      "url": "https://borealhost.ai/mcp"
    }
  }
}
Visual Studio Code

.vscode/mcp.json

Add to Visual Studio Code
{
  "servers": {
    "borealhost": {
      "type": "http",
      "url": "https://borealhost.ai/mcp"
    }
  }
}
Generic MCP

Client-specific MCP configuration

{
  "name": "borealhost",
  "transport": "streamable-http",
  "url": "https://borealhost.ai/mcp"
}
MCP Inspector

Run the official MCP Inspector locally and enter the indexed Streamable HTTP endpoint.

TRUST AND VERIFICATION EVIDENCE

Trust Data Available

BuiltWith Trust API v2 evidence for borealhost.ai was fetched 2026-08-30T20:50:41.248Z.

Trust status Trusted

borealhost.ai is assessed as Trusted: Domain runs a meaningful technology spend, consistent with a real business.

Indexed

Evidence is source-attributed and does not guarantee that a third-party server is safe. Risk labels are conservative metadata heuristics.