Skip to main content
Glama

adm.tools (service from hosting.xyz / ukraine.com.ua) MCP Server

License: MIT Node.js Version TypeScript

MCP server for adm.tools — the management panel behind ukraine.com.ua and hosting.xyz hosting platforms. Manage domains, DNS records, email, and billing from any MCP-compatible client.

12 tools for the adm.tools API, plus adm_api_raw when ADM_ALLOW_RAW=true.

Requirements

Related MCP server: realtime-register-mcp

Installation

git clone https://github.com/hlebtkachenko/admtools-mcp.git
cd admtools-mcp
npm ci
npm run build

Configuration

Cursor

~/.cursor/mcp.json

{
  "mcpServers": {
    "admtools": {
      "command": "node",
      "args": ["/path/to/admtools-mcp/dist/index.js"],
      "env": {
        "ADMTOOLS_API_TOKEN": "your-api-token"
      }
    }
  }
}

Claude Desktop

claude_desktop_config.json (location)

{
  "mcpServers": {
    "admtools": {
      "command": "node",
      "args": ["/path/to/admtools-mcp/dist/index.js"],
      "env": {
        "ADMTOOLS_API_TOKEN": "your-api-token"
      }
    }
  }
}

Claude Code

.mcp.json in your project root, or ~/.claude.json globally:

{
  "mcpServers": {
    "admtools": {
      "command": "node",
      "args": ["/path/to/admtools-mcp/dist/index.js"],
      "env": {
        "ADMTOOLS_API_TOKEN": "your-api-token"
      }
    }
  }
}

Any MCP client (stdio)

The server uses stdio transport. Point your MCP client to:

node /path/to/admtools-mcp/dist/index.js

With the ADMTOOLS_API_TOKEN environment variable set.

Environment Variables

Variable

Required

Description

ADMTOOLS_API_TOKEN

Yes

Bearer token from adm.tools API settings

ADM_ALLOW_RAW

No

Set to true to register adm_api_raw (any API action with the account-wide token)

ADMTOOLS_API_URL

No

API base URL, default https://adm.tools/action (tests point it at a fake server)

Tools

Domains

Tool

Description

adm_domains

List all domains with status and expiry

adm_domain_check

Check domain availability for registration

adm_domain_zones

Available zones with registration prices

adm_domain_add

Add domain to NS servers for DNS management

adm_get_id

Get object ID by type and name

DNS

Tool

Description

adm_dns_records

List DNS records for a domain

adm_dns_add

Add record (A, AAAA, ALIAS, CAA, CNAME, MX, NS, TXT)

adm_dns_delete

Delete a DNS record

Email

Tool

Description

adm_mail_domains

List all mail domains

adm_mailboxes

List mailboxes and redirects for a domain

adm_mailbox_delete

Delete a mailbox

Billing

Tool

Description

adm_balance

Current account balance (UAH)

Raw API

Tool

Description

adm_api_raw

Call any adm.tools API action directly. Registered only with ADM_ALLOW_RAW=true; marked destructive

The mail/* endpoints are not in the official client, so their parameter names (mail_id, mail_box_id) are unverified.

Security

  • 30-second timeout on all HTTP requests; no automatic retries. A write that gets no response is reported as "outcome unknown" with the read tool to check

  • Any response with result false or missing is returned as an error (except adm_domain_check, where false means "not available")

  • Action paths must be /-separated segments of letters, digits, _ and -; .., query strings and empty paths are rejected

  • adm_api_raw is off unless ADM_ALLOW_RAW=true; its params must be a JSON object

  • Tool arguments are validated with Zod schemas; adm_api_raw params are free-form

Architecture

src/
  index.ts          Entry point, env validation
  adm-client.ts     API client (Bearer auth, form-encoded POST, result check)
  tools/
    domains.ts      Domain management (5 tools)
    dns.ts          DNS records (3 tools)
    mail.ts         Email management (3 tools)
    billing.ts      Balance, plus raw API when enabled (1-2 tools)
test/               node:test suite against a fake adm.tools API

Tech Stack

  • TypeScript

  • @modelcontextprotocol/sdk

  • Zod (schema validation)

  • Native fetch

What is adm.tools?

adm.tools is the hosting management panel used by Ukrainian hosting providers ukraine.com.ua and hosting.xyz. It provides a unified API for domain registration, DNS management, email, and billing across both platforms.

API Reference

License

MIT

Available Tools

13 tools
adm_api_rawC

Call any adm.tools API endpoint directly (advanced)

Inputs: action (required), params.

adm_balanceA

Get current account balance

Inputs: no named parameters.

adm_dns_addB

Add a DNS record to a domain

Inputs: data (required), type (required), record (required), domain_id (required), +1 more.

adm_dns_deleteA

Delete a DNS record (careful!)

Inputs: subdomain_id (required).

adm_dns_recordsB

List all DNS records for a domain

Inputs: domain_id (required).

adm_domain_addA

Add a domain to NS servers (for DNS management)

Inputs: domain_name (required).

adm_domain_checkA

Check if a domain name is available for registration

Inputs: domain (required).

adm_domainsA

List all domains in your account

Inputs: no named parameters.

adm_domain_zonesA

List available domain zones with prices

Inputs: no named parameters.

adm_get_idC

Get object ID by type and name (utility)

Inputs: name (required), type (required).

adm_mailbox_deleteC

Delete a mailbox (careful!)

Inputs: mail_box_id (required).

adm_mailboxesA

List all mailboxes/redirects for a mail domain

Inputs: mail_id (required).

adm_mail_domainsA

List all mail domains on your account

Inputs: no named parameters.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.6/5.0

    Scored across 13 tools

    Disambiguation5/5

    Each tool targets a distinct resource and action: domains, DNS records, mail domains, mailboxes, balance, and raw API access are clearly separated. Even similar actions like adm_domain_add and adm_dns_add are disambiguated by their descriptions and target resources.

    Naming Consistency4/5

    All tools share an adm_ prefix and use lowercase snake_case, which creates a recognizable pattern. However, list tools are named as bare nouns (adm_domains, adm_dns_records) while mutations use verb_noun forms (adm_dns_add, adm_mailbox_delete), and adm_get_id/adm_api_raw fit less cleanly.

    Tool Count5/5

    Thirteen tools is a well-scoped size for a domain, DNS, mail, and account management server. Each tool has a clear purpose and the count is neither bloated nor too thin.

    Completeness3/5

    The toolset covers listing, adding, and deleting for several resources, but obvious lifecycle gaps exist: no DNS record update, no mailbox creation, and no full domain registration/removal workflow. The adm_api_raw escape hatch can help, but it is not a substitute for purpose-built operations.

    Maintenance

    ActivitySlowing
    ResponsivenessOutdated data

    Related MCP Connectors

    Related MCP Servers