Skip to content
AiVikings logo

AiVikings MCP server

Which MCP servers are AiVikings's own, from the official registry and from asking its own domain, whether they answer, and what they offer. A program checked each of these, nobody copied them from a product page.

read 2026-10-27

← Back to AiVikings

Whose server it is
  • Registry nameai.aivikings/registrarverified in the MCP registry

The registry name sits under aivikings.ai. The registry only lets a publisher use that namespace after proving control of the domain through DNS or HTTP.

When we asked itchecked 2026-10-27
  • Stateanswerschecked 2026-10-27
  • Tools34
  • Server calls itselfAIvikings AI Agent Registrar
  • Server version1.30.0
  • Protocol version2025-06-18

On 2026-10-27 the server answered initialize and tools/list without a sign-in. First answer in 562 ms.

Should an agent connect itNot proven either way yet
  • Whether its tools do the product's job has not been judged yet.
  • Checked on 1 of the 7 days it takes to judge reliability.

Once connected

  • Keep approval on for domain_transfer: they delete, send or pay without saying so.
  • create_contact, remove_domain_registration_contact_roles, update_registrant_contact, update_nameservers, add_dns_record change data without a sign-in: anyone with the address can call them.
  • Parameters are untyped or undescribed in 28 of 34 tools: check arguments before calling.

Said by rules from the measurements above. The likely first call is a model's pick from the tool list; read its description before relying on it.

Measured dailydaily checks: 1, the first on 2026-10-27
  • INITE MCP scoreafter a weeka score needs 7 daily checks: 1 so far
  • Answeredmeasuring1 of the 7 daily checks it takes to print a share
  • Median first answer562 ms
  • Space in an agent's context≈ 5,290 tokensthe definitions of all its tools (34), which an agent carries on every turn
  • Tool definitionsB · 86 of 100
  • Typed results34 of 34 toolsdeclared outputSchema: results come typed, read once
  • Parameters without a description: in 28 of 34

Worth a look

  • Tools that delete, send or pay, marked as not destructive: domain_transfer
  • Tools that change data, on a server that answers without a sign-in: create_contact, remove_domain_registration_contact_roles, update_registrant_contact, update_nameservers, add_dns_record

A program checks the server once a day: initialize and tools/list, no model. Tokens are the definitions' length at about four characters a token. The grade averages six checks of every tool's name, description, schema and annotations; it says how well the tools are described, not whether they work. The score weighs what was measured and nothing else: answering (25%), doing the product's job (25%), definitions (20%), context (10%), use (10%) and how readily a client connects (10%). A part that was not measured is left out, and a hidden instruction caps the score at 40. The state of vendors' MCP servers: method and numbers →

Tools it offers34 tools · read 2026-10-27
  • get_domain_audit_log

    Read append-only domain change history for the authenticated customer. Omit domain for portfolio history. Requires audit:read. Results are newest recorded first; pass next_cursor with the same filters for another page. Times must include…

  • get_current_user

    Return the authenticated AIvikings customer for the current bearer API key, including name and email when the key belongs to a customer.

  • check_domain_availability

    Check availability for up to 200 domain names through AIvikings. depth="fast" answers in about a second without contacting the registry, for brainstorming many names; depth="confirm" (default) asks the registry about every name that might…

  • check_single_domain_availability

    Check availability for one domain through AIvikings. depth="confirm" (default) asks the registry and returns the price; depth="fast" answers quickly without a price. Each result has a status: available (confirmed by the registry, with…

  • get_domain_pricing

    Get a fresh price quote for one domain. Returns customer-facing registration, renewal, and transfer prices, plus is_premium so the user can be told when premium pricing applies. Omit currency to use the returned currency; USD and EUR can…

  • get_prepaid_balance

    Return the authenticated customer's prepaid balance for domain purchases. Returns both USD and EUR wallet balances. When automatic currency conversion is enabled, a zero balance in the requested currency does not block registration if the…

  • list_contact_countries

    List exact ConnectReseller country names and IDs for creating or updating contacts.

  • list_contact_states

    List exact ConnectReseller state names for a country name, country ID, or ISO code. Use the returned name in contact requests.

  • create_contact

    Create a reusable contact for domain registration. Use list_contact_countries and list_contact_states to choose valid country and state names. The returned handle can be passed to register_domain and reused for multiple domains. When…

  • get_contact

    Get one reusable contact by its handle.

  • list_contacts

    List reusable contacts belonging to the authenticated customer.

  • list_domain_registration_contacts

    List the authenticated customer's registrant/contact handles for domain registrations. Returns whether each contact is complete enough for registration, its missing required fields, its default domain-contact roles, and the handle to pass…

  • assign_domain_registration_contact_roles

    Assign one existing contact handle as the default for selected domain-registration roles. Set assign_registrant, assign_admin, assign_technical, and/or assign_billing to true; false leaves that role unchanged. Assigning a role replaces…

  • remove_domain_registration_contact_roles

    Remove selected default domain-registration roles from one existing contact handle. Set remove_registrant, remove_admin, remove_technical, and/or remove_billing to true; false leaves that role unchanged. This does not delete the contact…

  • register_domain

    Register a domain through AIvikings using the authenticated account's configurable default nameservers when nameservers are omitted. Call list_domain_registration_contacts first and pass contact_handle to use one complete reusable contact…

  • get_domain_status

    Fetch the latest domain status, expiry and nameservers from the registrar and refresh the saved AIvikings record. Use this for an on-demand update, including pending transfers.

  • list_domains

    List domains recorded in the local registrar datastore.

  • renew_domain

    Renew a domain through AIvikings.

  • update_registrant_contact

    Update the registrant contact for a domain owned by the authenticated customer. Pass contact_handle by itself to apply an existing reusable contact without copying its fields into a new contact record. Name, organization, or email changes…

  • update_nameservers

    Replace a domain's nameservers through AIvikings.

  • configure_dns_record

    Configure an A record for a domain through AIvikings. Use record_name=@ or omit it for the root/apex record. To create a subdomain, pass a relative name such as www for www.example.com or staging.api for staging.api.example.com. For…

  • list_dns_records

    List the managed DNS records for a domain owned by the authenticated customer. Use the returned DNS zone record ID when updating or deleting a record.

  • add_dns_record

    Add a managed DNS record to a domain owned by the authenticated customer. Supported types are A, AAAA, CNAME, MX, TXT, NS, and SRV. Relative names are expanded below the domain, including nested names such as staging.api; use @ for the…

  • update_dns_record

    Replace an existing managed DNS record. Call list_dns_records first and pass its DNS zone record ID. All record fields must describe the desired replacement.

  • delete_dns_record

    Permanently delete a managed DNS record. Call list_dns_records first and pass the exact DNS zone record ID returned by the provider.

  • domain_transfer

    Transfer a domain in through AIvikings.

  • get_transfer_auth_code

    Return the EPP transfer auth code for a domain owned by the authenticated customer. The secret is fetched only on demand.

  • regenerate_transfer_auth_code

    Regenerate and return a new EPP transfer auth code for a domain owned by the authenticated customer, invalidating the old code.

  • lock_domain

    Enable the registrar transfer lock for a domain owned by the authenticated customer.

  • unlock_domain

    Disable the registrar transfer lock for a domain owned by the authenticated customer before a transfer-out.

  • reconcile_domains

    Compare locally recorded domains with AIvikings records.

  • create_customer

    Create a new customer without generating or returning an API key.

  • get_customer

    Get the customer record linked to the current bearer token. A supplied customer ID must match that token.

  • reconcile_provider_client

    Link or create the authenticated customer's registrar client account, preventing duplicate creation.

How to connect

Add the server to your MCP client config. Claude Desktop, Cursor and most other clients read this shape:

{
  "mcpServers": {
    "registrar": {
      "type": "http",
      "url": "https://mcp.aivikings.ai/mcp"
    }
  }
}

Add it

Claude Code, in a terminal

claude mcp add --transport http aivikings https://mcp.aivikings.ai/mcp

Add to CursorAdd to VS Code

claude.ai, ChatGPT and other clients: add https://mcp.aivikings.ai/mcp as a custom connector in the settings.

Each line is something a program found when it went looking: the registry entry, the server's own answer, a spec that parses. A missing line means we did not find it, not that it does not exist.