Skip to content
OSIR logo

OSIR MCP server

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

read 2026-10-19

← Back to OSIR

Whose server it is
  • Registry namecom.osir/domain-registrarverified in the MCP registry

The registry name sits under osir.com. 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-19
  • Stateanswerschecked 2026-10-19
  • Tools106
  • Server calls itselfOSIR
  • Server version2.4.2
  • Protocol version2025-06-18

On 2026-10-19 the server answered initialize and tools/list without a sign-in. First answer in 279 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 3 of the 7 days it takes to judge reliability.

Once connected

  • Keep approval on for initiateTransfer, payInvoice, transferDomain: they delete, send or pay without saying so.
  • addSshKey, cancelTransfer, createAccount, createContact, createDnsRecord change data without a sign-in: anyone with the address can call them.
  • Its definitions take about 20482 tokens of context: enable only the tools a task needs.

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: 3, the first on 2026-10-19
  • INITE MCP scoreafter a weeka score needs 7 daily checks: 3 so far
  • Answeredmeasuring3 of the 7 daily checks it takes to print a share
  • Median first answer195 ms
  • Space in an agent's context≈ 20,482 tokensthe definitions of all its tools (106), which an agent carries on every turn
  • Tool definitionsA · 100 of 100
  • Typed results11 of 106 toolsdeclared outputSchema: results come typed, read once
  • Every tool passes all six checks.

What an agent can do with it

  • not sure · search and register domains by asking an AI assistant
  • not sure · edit DNS records and renew domains through a connector
  • can do · transfer an existing domain from another registrar

Each of the product's use cases, put to Jev against this server's tool list: can an agent do it with these tools?

Worth a look

  • Tools that delete, send or pay without telling the client so: initiateTransfer, payInvoice, transferDomain
  • Tools that change data, on a server that answers without a sign-in: addSshKey, cancelTransfer, createAccount, createContact, createDnsRecord

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 (30%), doing the product's job (25%), definitions (20%), context (10%) and use (15%). 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 offers106 tools · read 2026-10-19
  • addPrefixToDomain

    addPrefixToDomain: Generate domain suggestions by adding prefixes to a base name.

  • addSshKey

    addSshKey: Store an SSH public key on your account so it can be injected into VPS installs. Idempotent: storing a key you already have returns the existing one instead of creating a duplicate, so it is safe to call before every order…

  • addSuffixToDomain

    addSuffixToDomain: Generate domain suggestions by adding suffixes to a base name.

  • buildVpsInstance

    buildVpsInstance: Stage an operating system install (or reinstall) on a VPS instance. DESTRUCTIVE: ERASES ALL DATA on the server, including any deployed application, and cannot be undone. The install is asynchronous; afterwards poll…

  • bulkDomainSuggestions

    bulkDomainSuggestions: Generate domain suggestions for 1-10 keywords across 1-6 TLDs (hard cap), grouped by originating keyword. Typical flow: call listCategorizedTlds first to pick 3-6 TLDs, then this tool. Per-suggestion availability…

  • cancelTransfer

    cancelTransfer: Stage cancellation of a pending domain transfer. DESTRUCTIVE and irreversible once executed. Requires authentication. Returns an actionId; present the summary to the user, then call executeConfirmedAction with the actionId…

  • changeVpsPaymentTerm

    changeVpsPaymentTerm: Stage a change of the payment term (billing cycle) for a VPS instance. Affects what you are billed. Requires authentication. Returns an actionId; present the summary to the user, then call executeConfirmedAction with…

  • checkDeviceLoginStatus

    checkDeviceLoginStatus: Poll for device login completion. Call this after loginWithDevice() once you have opened the verification URL and signed in. Required: deviceCode (the device_code returned by loginWithDevice). On success returns a…

  • checkDomainAvailability

    checkDomainAvailability: Check if a domain name is available for registration, with price. No authentication required; anonymous callers get list pricing, authenticated callers get their account pricing. Required: domain (e.g…

  • checkHostAvailability

    checkHostAvailability: Check if a host/glue record name is available for creation. Requires authentication. Returns whether the hostname is free; call before createHost.

  • checkKeywordAvailability

    checkKeywordAvailability: Check keyword availability across all supported TLDs and registries with detailed per-domain results. Use checkKeywordAvailabilitySummary instead when you only need counts; it is faster.

  • checkKeywordAvailabilitySummary

    checkKeywordAvailabilitySummary: Check keyword availability across TLDs and registries. Summary statistics only (no per-domain results), faster than checkKeywordAvailability.

  • countMyVpsInstances

    countMyVpsInstances: Get the total count of VPS instances owned by the authenticated user. Requires authentication.

  • createAccount

    createAccount: Create a new OSIR customer account; step 1 of onboarding, no authentication required. The contact must be the PRINCIPAL's real ICANN registrant contact (the human or business the account is for), never the AI agent itself…

  • createContact

    createContact: Create a new contact for use with domain registrations. Requires authentication. Returns the created contact including its id for assignment to domains.

  • createDnsRecord

    createDnsRecord: Create a new DNS record for a domain. Requires authentication. For newly registered domains the zone is initialized automatically if missing. Returns the created record including its id for later updates or deletion.

  • createHost

    createHost: Create a new host/glue record, e.g. for custom nameservers like 'ns1.example.com'. Requires authentication. Check the name first with checkHostAvailability. Returns the created host record.

  • createMailbox

    createMailbox: Stage creation of a paid mailbox on a mail-enabled domain. BILLABLE: deducts from account balance; get a quote with getMailboxQuote and confirm the price with the user first. Requires authentication. Returns an actionId…

  • createPaymentSession

    createPaymentSession: Stage a Stripe checkout session to add funds to the account balance. Requires authentication. Returns an actionId; present the summary to the user, then call executeConfirmedAction with the actionId if they approve…

  • deleteContact

    deleteContact: Stage deletion of a contact. DESTRUCTIVE; fails if the contact is assigned to active domains. Requires authentication. Returns an actionId; present the summary to the user, then call executeConfirmedAction with the actionId…

  • deleteDnsRecord

    deleteDnsRecord: Stage deletion of a DNS record. DESTRUCTIVE and irreversible once executed. Requires authentication. Returns an actionId; present the summary to the user, then call executeConfirmedAction with the actionId if they approve.

  • deleteHost

    deleteHost: Stage deletion of a host/glue record. DESTRUCTIVE and irreversible once executed. Requires authentication. Returns an actionId; present the summary to the user, then call executeConfirmedAction with the actionId if they approve.

  • deleteMailbox

    deleteMailbox: Stage deletion of a mailbox. The mailbox stops working immediately and its data is destroyed after a 14-day grace period. Requires authentication. Returns an actionId: present the summary to the user, then call…

  • deleteSshKey

    deleteSshKey: Stage removal of an SSH key from your account. This does not affect servers already built with it, and the key can simply be added again. Requires authentication. Returns an actionId; present the summary to the user, then…

  • deleteVpsInstance

    deleteVpsInstance: Stage deletion/cancellation of a VPS instance. DESTRUCTIVE and irreversible. Requires authentication. Returns an actionId: present the summary to the user, then call executeConfirmedAction with the actionId if they…

  • enableMailDomain

    enableMailDomain: Enable email hosting on a domain you own. Free; mailboxes are what cost money. If the call fails with a DNS conflict (an existing SPF or MX record), ask the user for explicit consent, then re-call with…

  • executeConfirmedAction

    executeConfirmedAction: Execute a previously staged destructive or financial action after user approval. The action expires after 5 minutes and can only be executed once.

  • fundBalanceWithSharedPaymentToken

    fundBalanceWithSharedPaymentToken: Stage adding funds to the balance by charging a Stripe Shared Payment Token the customer granted to OSIR. Use when a purchase (registerDomain, renewDomain, transferDomain, orderVps) failed for…

  • generateDomainSuggestions

    generateDomainSuggestions: Generate domain name suggestions based on keywords. This is the preferred suggestion tool for a single keyword; use it over suggestAlternatives. Returns suggested names with availability.

  • getAccountBalance

    getAccountBalance: Get the current account balance for the authenticated user. Requires authentication.

  • getAccountSummary

    getAccountSummary: Get a comprehensive summary of the user's account: profile, balance, domain count, VPS count, and pending transfers. Requires authentication.

  • getAuthStatus

    getAuthStatus: Check whether the current session is authenticated. Returns authenticated status and token expiry. Optional: sessionKey (from checkDeviceLoginStatus).

  • getContact

    getContact: Get detailed information about a specific contact. Requires authentication. Get the contactId from listContacts. Returns name, email, phone, organization, and address.

  • getContactsForDomain

    getContactsForDomain: Get all contacts (registrant, admin, tech, billing) assigned to a domain. Requires authentication. Returns the contact assigned to each role.

  • getDedicatedServerCatalog

    getDedicatedServerCatalog: Get all available dedicated server configurations with pricing and specifications. No authentication required.

  • getDnsRecord

    getDnsRecord: Get details of a specific DNS record by id. Requires authentication. Get the recordId from listDnsRecords. Returns the record's name, type, content, TTL, and priority.

  • getDomainAuditTrail

    getDomainAuditTrail: Get the audit trail (history of all changes) for a specific domain. Requires authentication.

  • getDomainExtensions

    getDomainExtensions: Get all available domain extensions (TLDs) with pricing information. No authentication required.

  • getDomainInfo

    getDomainInfo: Get registry (EPP) state plus account settings for one domain: status, nameservers, lock state, auto-renew, privacy, creation/expiry dates, premium/expired/redemption info. Dates are null while a registration is still…

  • getDomainPricing

    getDomainPricing: Get pricing for domain extensions from the product catalog. Requires authentication.

  • getHostingBundle

    getHostingBundle: Get the hosting options and exact prices for a specific domain: recommended VPS packages (cheapest first), email plans, web forwarding, and app/site deployment. No authentication required. Call this ONCE after a…

  • getHostsForDomain

    getHostsForDomain: List all host/glue records associated with a domain. Requires authentication. Returns each host name and its IP addresses.

  • getInvoiceDetails

    getInvoiceDetails: Get detailed information about a specific invoice including line items. Requires authentication.

  • getInvoiceStatistics

    getInvoiceStatistics: Get summary statistics of invoices: total paid, pending, overdue amounts. Requires authentication.

  • getMailDnsRecords

    getMailDnsRecords: Get the DNS records a mail domain needs (MX, SPF, DKIM, ...), for customers managing DNS externally. Requires authentication.

  • getMailboxQuote

    getMailboxQuote: Get a display-only price quote for a mailbox plan. The backend re-derives the authoritative price at purchase. Requires authentication.

  • getMailboxUsage

    getMailboxUsage: Get disk usage per mailbox in bytes, for quota display alongside the plan's quotaBytes. Requires authentication.

  • getMyAuditLogs

    getMyAuditLogs: Get recent audit logs for the authenticated user across all services. Requires authentication.

  • getMyProfile

    getMyProfile: Get the authenticated user's profile and account information including name, email, organization, balance, and domain/VPS counts. Requires authentication.

  • getPaymentTransactions

    getPaymentTransactions: Get payment transaction history for the authenticated user. Requires authentication.

  • getProductCatalog

    getProductCatalog: Get the complete product catalog including domain extensions, VPS packages, and dedicated servers. No authentication required.

  • getRecentActivity

    getRecentActivity: Get the most recent activity across all domains and services for the user. Requires authentication.

  • getTransferQuote

    getTransferQuote: Get a transfer price quote for a domain. Requires authentication. Returns transfer price, currency, extension years, and new expiration date. Call before initiateTransfer to show the user the cost.

  • getTransferStatus

    getTransferStatus: Check the current status of a domain transfer. Requires authentication. Returns status, request date, current registrar, and expected completion.

  • getVpsInstanceDetails

    getVpsInstanceDetails: Get detailed information about a specific VPS instance including resource usage. Requires authentication.

  • getVpsPackageDetails

    getVpsPackageDetails: Get detailed information about a specific VPS package including all pricing tiers. Requires authentication. For anonymous browsing use listVpsPackages, which already includes per-term pricing.

  • initializeDnsZone

    initializeDnsZone: Initialize (create) the DNS zone for a domain. NOT needed after registerDomain, which initializes the zone automatically. Use only for pre-existing domains without a zone (e.g. after a transfer, or if registration opted…

  • initiateTransfer

    initiateTransfer: Starts a transfer for a domain already prepared at the losing registrar (unlocked, auth code in hand). transferDomain (domain tools) stages transfer + registrant assignment in one step; use that when the user gives you…

  • listCategorizedTlds

    listCategorizedTlds: List TLDs from the OSIR catalog that have category and audience metadata, with registration and renewal prices as decimal strings (e.g. '10.39'). Use it to pick 3-6 relevant TLDs before calling bulkDomainSuggestions…

  • listContacts

    listContacts: List all contacts for the authenticated user, optionally filtered by a search term. Requires authentication. Returns each contact with its id for use in getContact, updateContact, deleteContact, or domain registration.

The first 60 of 106, as the server listed them.

How to connect

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

{
  "mcpServers": {
    "domain-registrar": {
      "type": "http",
      "url": "https://be.osir.com/mcp/http"
    }
  }
}

Add it

Claude Code, in a terminal

claude mcp add --transport http osir https://be.osir.com/mcp/http

Add to CursorAdd to VS Code

claude.ai, ChatGPT and other clients: add https://be.osir.com/mcp/http 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.