Connection check
verified live · 28h ago
domain-registrar
Register, renew, transfer, and manage domains, DNS, VPS, and email with 102 tools. By OSIR.
Tools
105
GitHub stars
—
Installs / wk
—
Licence
—
Transport
streamable-http
Last checked
28h ago
Tools & capabilities
105 toolsRead from the running server on 28h ago.
addPrefixToDomain
read-only
langname*tldsmaxResultsvocabulary
addPrefixToDomain: Generate domain suggestions by adding prefixes to a base name. addPrefixToDomain: Generate domain suggestions by adding prefixes to a base name.
addSshKey
name*publicKey*sessionKey
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… 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. Returns the key id to pass to orderVps or buildVpsInstance. Requires authentication.
addSuffixToDomain
read-only
langname*tldsmaxResultsvocabulary
addSuffixToDomain: Generate domain suggestions by adding suffixes to a base name. addSuffixToDomain: Generate domain suggestions by adding suffixes to a base name.
buildVpsInstance
can modify data
swaphostnamesshKeyIdsinstanceId*sessionKeyoperatingSystemId*
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… 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 getVpsInstanceDetails until buildState is COMPLETE. Requires authentication. Returns an actionId: present the summary to the user, then call executeConfirmedAction with the actionId if they approve.
bulkDomainSuggestions
read-only
langtlds*keywords*maxResults
bulkDomainSuggestions: Generate domain suggestions for 1-10 keywords across 1-6 TLDs (hard cap), grouped by originating keyword. Typical flow: call listCategorizedTlds first to pic… 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 may be "available", "taken", or "unknown"; confirm "unknown" or premium-TLD names with checkDomainAvailability before recommending.
cancelTransfer
can modify data
domain*sessionKey
cancelTransfer: Stage cancellation of a pending domain transfer. DESTRUCTIVE and irreversible once executed. Requires authentication. Returns an actionId; present the summary to th… 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 if they approve.
changeVpsPaymentTerm
instanceId*sessionKeypaymentTerm*
changeVpsPaymentTerm: Change the payment term (billing cycle) for a VPS instance. Requires authentication. changeVpsPaymentTerm: Change the payment term (billing cycle) for a VPS instance. Requires authentication.
checkDeviceLoginStatus
deviceCode*
checkDeviceLoginStatus: Poll for device login completion. Call this after loginWithDevice() once you have opened the verification URL and signed in. Required: deviceCode (the devic… 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 sessionKey; pass it as the sessionKey argument on every subsequent authenticated tool call.
checkDomainAvailability
read-only
domain*sessionKey
checkDomainAvailability: Check if a domain name is available for registration, with price. No authentication required; anonymous callers get list pricing, authenticated callers get… 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., 'example.com')
checkHostAvailability
read-only
hostname*sessionKey
checkHostAvailability: Check if a host/glue record name is available for creation. Requires authentication. Returns whether the hostname is free; call before createHost. checkHostAvailability: Check if a host/glue record name is available for creation. Requires authentication. Returns whether the hostname is free; call before createHost.
checkKeywordAvailability
read-only
tldskeyword*registries
checkKeywordAvailability: Check keyword availability across all supported TLDs and registries with detailed per-domain results. Use checkKeywordAvailabilitySummary instead when you… 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
read-only
tldskeyword*registries
checkKeywordAvailabilitySummary: Check keyword availability across TLDs and registries. Summary statistics only (no per-domain results), faster than checkKeywordAvailability. checkKeywordAvailabilitySummary: Check keyword availability across TLDs and registries. Summary statistics only (no per-domain results), faster than checkKeywordAvailability.
countMyVpsInstances
read-only
sessionKey
countMyVpsInstances: Get the total count of VPS instances owned by the authenticated user. Requires authentication. countMyVpsInstances: Get the total count of VPS instances owned by the authenticated user. Requires authentication.
createAccount
email*contact*passwordagentNameaccountType*agentVendor
+3
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… 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. Sends a verification email; complete via verifyAccount with the emailed code. While PENDING_VERIFICATION the account can search, quote and fund; billable actions need ACTIVE. Calling again for a PENDING account re-sends the verification email.
createContact
city*email*phone*statecountry*street1*
+6
createContact: Create a new contact for use with domain registrations. Requires authentication. Returns the created contact including its id for assignment to domains. createContact: Create a new contact for use with domain registrations. Requires authentication. Returns the created contact including its id for assignment to domains.
createDnsRecord
ttlname*type*domain*content*priority
+1
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 r… 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
hostname*sessionKeyipAddresses*
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… 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
termdomain*localPart*packageId*sessionKey
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 us… 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: present the summary to the user, then call executeConfirmedAction with the actionId if they approve. The result of the confirmed action contains the generated password EXACTLY ONCE; it can never be retrieved again, so show it to the user immediately (they can change it later with setMailboxPassword). Also share the client settings from the result (IMAP/SMTP/webmail).
createPaymentSession
amount*currencysessionKey
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… 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. The executed result includes checkoutUrl (hand it to the human to pay) and expiresAt; then poll getPaymentTransactions until the balance credit appears.
deleteContact
can modify data
contactId*sessionKey
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 th… 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 if they approve.
deleteDnsRecord
can modify data
domain*recordId*sessionKey
deleteDnsRecord: Stage deletion of a DNS record. DESTRUCTIVE and irreversible once executed. Requires authentication. Returns an actionId; present the summary to the user, then cal… 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
can modify data
hostname*sessionKey
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 ca… 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
can modify data
mailboxId*sessionKey
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 actionI… 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 executeConfirmedAction with the actionId if they approve.
deleteSshKey
can modify data
keyId*sessionKey
deleteSshKey: Remove 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. deleteSshKey: Remove 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.
deleteVpsInstance
can modify data
instanceId*sessionKey
deleteVpsInstance: Stage deletion/cancellation of a VPS instance. DESTRUCTIVE and irreversible. Requires authentication. Returns an actionId: present the summary to the user, then… 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 approve.
enableMailDomain
domain*dnsModesessionKeyspfMergeConfirmedtakeoverConfirmed
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… 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 spfMergeConfirmed=true and/or takeoverConfirmed=true. Requires authentication.
executeConfirmedAction
can modify data
actionId*sessionKey
executeConfirmedAction: Execute a previously staged destructive or financial action after user approval. The action expires after 5 minutes and can only be executed once. executeConfirmedAction: Execute a previously staged destructive or financial action after user approval. The action expires after 5 minutes and can only be executed once.
generateDomainSuggestions
read-only
langname*tldsmaxResultsuseNumbers
generateDomainSuggestions: Generate domain name suggestions based on keywords. This is the preferred suggestion tool for a single keyword; use it over suggestAlternatives. Returns… 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
read-only
sessionKey
getAccountBalance: Get the current account balance for the authenticated user. Requires authentication. getAccountBalance: Get the current account balance for the authenticated user. Requires authentication.
getAccountSummary
read-only
sessionKey
getAccountSummary: Get a comprehensive summary of the user's account: profile, balance, domain count, VPS count, and pending transfers. Requires authentication. getAccountSummary: Get a comprehensive summary of the user's account: profile, balance, domain count, VPS count, and pending transfers. Requires authentication.
getAuthStatus
read-only
sessionKey
getAuthStatus: Check whether the current session is authenticated. Returns authenticated status and token expiry. Optional: sessionKey (from checkDeviceLoginStatus). getAuthStatus: Check whether the current session is authenticated. Returns authenticated status and token expiry. Optional: sessionKey (from checkDeviceLoginStatus).
getContact
read-only
contactId*sessionKey
getContact: Get detailed information about a specific contact. Requires authentication. Get the contactId from listContacts. Returns name, email, phone, organization, and address. getContact: Get detailed information about a specific contact. Requires authentication. Get the contactId from listContacts. Returns name, email, phone, organization, and address.
getContactsForDomain
read-only
domain*sessionKey
getContactsForDomain: Get all contacts (registrant, admin, tech, billing) assigned to a domain. Requires authentication. Returns the contact assigned to each role. getContactsForDomain: Get all contacts (registrant, admin, tech, billing) assigned to a domain. Requires authentication. Returns the contact assigned to each role.
getDedicatedServerCatalog
read-only
getDedicatedServerCatalog: Get all available dedicated server configurations with pricing and specifications. No authentication required. getDedicatedServerCatalog: Get all available dedicated server configurations with pricing and specifications. No authentication required.
getDnsRecord
read-only
domain*recordId*sessionKey
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… 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
read-only
domain*sessionKey
getDomainAuditTrail: Get the audit trail (history of all changes) for a specific domain. Requires authentication. getDomainAuditTrail: Get the audit trail (history of all changes) for a specific domain. Requires authentication.
getDomainExtensions
read-only
getDomainExtensions: Get all available domain extensions (TLDs) with pricing information. No authentication required. getDomainExtensions: Get all available domain extensions (TLDs) with pricing information. No authentication required.
getDomainInfo
read-only
domain*sessionKey
getDomainInfo: Get registry (EPP) state plus account settings for one domain: status, nameservers, lock state, auto-renew, privacy, creation/expiry dates, premium/expired/redemptio… 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 pending at the registry; autoRenew is omitted for transferredOut domains.
getDomainPricing
read-only
extensionsessionKey
getDomainPricing: Get pricing for domain extensions from the product catalog. Requires authentication. getDomainPricing: Get pricing for domain extensions from the product catalog. Requires authentication.
getHostingBundle
read-only
domain*
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. N… 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 successful availability check or registration to make a concise hosting offer; do not repeat the offer in the same conversation. Prices are display prices; the authoritative amount is computed at purchase.
getHostsForDomain
read-only
domain*sessionKey
getHostsForDomain: List all host/glue records associated with a domain. Requires authentication. Returns each host name and its IP addresses. getHostsForDomain: List all host/glue records associated with a domain. Requires authentication. Returns each host name and its IP addresses.
getInvoiceDetails
read-only
invoiceId*sessionKey
getInvoiceDetails: Get detailed information about a specific invoice including line items. Requires authentication. getInvoiceDetails: Get detailed information about a specific invoice including line items. Requires authentication.
getInvoiceStatistics
read-only
sessionKey
getInvoiceStatistics: Get summary statistics of invoices: total paid, pending, overdue amounts. Requires authentication. getInvoiceStatistics: Get summary statistics of invoices: total paid, pending, overdue amounts. Requires authentication.
getMailboxQuote
read-only
termpackageId*sessionKey
getMailboxQuote: Get a display-only price quote for a mailbox plan. The backend re-derives the authoritative price at purchase. Requires authentication. getMailboxQuote: Get a display-only price quote for a mailbox plan. The backend re-derives the authoritative price at purchase. Requires authentication.
getMailboxUsage
read-only
sessionKey
getMailboxUsage: Get disk usage per mailbox in bytes, for quota display alongside the plan's quotaBytes. Requires authentication. getMailboxUsage: Get disk usage per mailbox in bytes, for quota display alongside the plan's quotaBytes. Requires authentication.
getMailDnsRecords
read-only
domain*sessionKey
getMailDnsRecords: Get the DNS records a mail domain needs (MX, SPF, DKIM, ...), for customers managing DNS externally. Requires authentication. getMailDnsRecords: Get the DNS records a mail domain needs (MX, SPF, DKIM, ...), for customers managing DNS externally. Requires authentication.
getMyAuditLogs
read-only
pagesizesessionKey
getMyAuditLogs: Get recent audit logs for the authenticated user across all services. Requires authentication. getMyAuditLogs: Get recent audit logs for the authenticated user across all services. Requires authentication.
getMyProfile
read-only
sessionKey
getMyProfile: Get the authenticated user's profile and account information including name, email, organization, balance, and domain/VPS counts. Requires authentication. getMyProfile: Get the authenticated user's profile and account information including name, email, organization, balance, and domain/VPS counts. Requires authentication.
getPaymentTransactions
read-only
pagesizesessionKey
getPaymentTransactions: Get payment transaction history for the authenticated user. Requires authentication. getPaymentTransactions: Get payment transaction history for the authenticated user. Requires authentication.
getProductCatalog
read-only
getProductCatalog: Get the complete product catalog including domain extensions, VPS packages, and dedicated servers. No authentication required. getProductCatalog: Get the complete product catalog including domain extensions, VPS packages, and dedicated servers. No authentication required.
getRecentActivity
read-only
sessionKey
getRecentActivity: Get the most recent activity across all domains and services for the user. Requires authentication. getRecentActivity: Get the most recent activity across all domains and services for the user. Requires authentication.
getTransferQuote
read-only
domain*sessionKey
getTransferQuote: Get a transfer price quote for a domain. Requires authentication. Returns transfer price, currency, extension years, and new expiration date. Call before initiate… 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
read-only
domain*sessionKey
getTransferStatus: Check the current status of a domain transfer. Requires authentication. Returns status, request date, current registrar, and expected completion. getTransferStatus: Check the current status of a domain transfer. Requires authentication. Returns status, request date, current registrar, and expected completion.
getVpsInstanceDetails
read-only
instanceId*sessionKey
getVpsInstanceDetails: Get detailed information about a specific VPS instance including resource usage. Requires authentication. getVpsInstanceDetails: Get detailed information about a specific VPS instance including resource usage. Requires authentication.
getVpsPackageDetails
read-only
packageId*sessionKey
getVpsPackageDetails: Get detailed information about a specific VPS package including all pricing tiers. Requires authentication. For anonymous browsing use listVpsPackages, which… 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
domain*sessionKey
initializeDnsZone: Initialize (create) the DNS zone for a domain. NOT needed after registerDomain, which initializes the zone automatically. Use only for pre-existing domains witho… 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 out with initializeDnsZone:false). Safe on existing zones, it will not overwrite records. Requires authentication.
initiateTransfer
domain*authCode*sessionKey
initiateTransfer: Starts a transfer for a domain already prepared at the losing registrar (unlocked, auth code in hand). transferDomain (domain tools) stages transfer + registrant… 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 contact details. Deducts from account balance. Requires authentication. Returns an actionId; present the summary to the user, then call executeConfirmedAction with the actionId if they approve.
listCategorizedTlds
read-only
registryexcludeCcTLDsexcludePremiummaxRegisterPriceexcludeRestricted
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 pic… 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. Filters: price cap, exclude ccTLDs/restricted/premium, registry. Returns unranked candidates with categories, audience, prices, and flags. No auth required.
listContacts
read-only
searchsessionKey
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, u… 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.
listDnsRecords
read-only
domain*sessionKey
listDnsRecords: List all DNS records for a domain. Requires authentication. Returns each record with its id, name, type, content, TTL, and priority; use the record id with getDnsRe… listDnsRecords: List all DNS records for a domain. Requires authentication. Returns each record with its id, name, type, content, TTL, and priority; use the record id with getDnsRecord, updateDnsRecord, or deleteDnsRecord.
listInvoices
read-only
pagesizestatussessionKey
listInvoices: List invoices for the authenticated user with optional status filtering and pagination. Requires authentication. listInvoices: List invoices for the authenticated user with optional status filtering and pagination. Requires authentication.
listMailboxes
read-only
sessionKey
listMailboxes: List your mailboxes with plan, payment term, status, and next renewal date. Requires authentication. listMailboxes: List your mailboxes with plan, payment term, status, and next renewal date. Requires authentication.
listMailDomains
read-only
sessionKey
listMailDomains: List your domains that are enabled for email hosting, with status (PENDING_DNS or ACTIVE) and DNS mode. Requires authentication. listMailDomains: List your domains that are enabled for email hosting, with status (PENDING_DNS or ACTIVE) and DNS mode. Requires authentication.
listMailPlans
read-only
sessionKey
listMailPlans: List available email mailbox plans with quotas and prices (monthly and annual, in cents). Requires authentication. Always quote prices from here, never from memory. listMailPlans: List available email mailbox plans with quotas and prices (monthly and annual, in cents). Requires authentication. Always quote prices from here, never from memory.
listMySshKeys
read-only
sessionKey
listMySshKeys: List the SSH keys stored on your account, with their ids and SHA256 fingerprints. Use this to check whether a key is already stored and to get the ids to pass to ord… listMySshKeys: List the SSH keys stored on your account, with their ids and SHA256 fingerprints. Use this to check whether a key is already stored and to get the ids to pass to orderVps or buildVpsInstance. Requires authentication.
listMyVpsInstances
read-only
sessionKey
listMyVpsInstances: List all VPS instances owned by the authenticated user. Requires authentication. listMyVpsInstances: List all VPS instances owned by the authenticated user. Requires authentication.
listPendingTransfers
read-only
sessionKey
listPendingTransfers: List all pending incoming (gaining) domain transfers. Requires authentication. Returns each transfer with its status, request date, current registrar, and exp… listPendingTransfers: List all pending incoming (gaining) domain transfers. Requires authentication. Returns each transfer with its status, request date, current registrar, and expected completion.
listUserDomains
read-only
sessionKey
listUserDomains: List all domains owned by the authenticated user. No parameters required. Must be authenticated first. listUserDomains: List all domains owned by the authenticated user. No parameters required. Must be authenticated first.
listVpsLocations
read-only
listVpsLocations: List available VPS hosting locations (cities/countries) with available packages. No authentication required. listVpsLocations: List available VPS hosting locations (cities/countries) with available packages. No authentication required.
listVpsOsTemplates
read-only
packageIdincludeEolinstanceIdsessionKey
listVpsOsTemplates: List operating system templates available to install. Requires authentication. Pass EXACTLY ONE of packageId (to pick an operatingSystemId for orderVps, so the… listVpsOsTemplates: List operating system templates available to install. Requires authentication. Pass EXACTLY ONE of packageId (to pick an operatingSystemId for orderVps, so the server arrives with an OS on it) or instanceId (to pick a template for reinstalling via buildVpsInstance). The two are not interchangeable: the available set depends on the package. Template ids change over time, so always resolve an id here rather than reusing a remembered or hardcoded one.
listVpsPackages
read-only
listVpsPackages: List available VPS hosting packages with pricing, specs, and locations. No authentication required. listVpsPackages: List available VPS hosting packages with pricing, specs, and locations. No authentication required.
lockDomain
domain*sessionKey
lockDomain: Enable registrar lock on a domain to prevent unauthorized transfers. lockDomain: Enable registrar lock on a domain to prevent unauthorized transfers.
loginToVpsPanel
instanceId*sessionKey
loginToVpsPanel: Generate a one-time login URL to the VPS control panel (VirtFusion) for managing the server. Requires authentication. loginToVpsPanel: Generate a one-time login URL to the VPS control panel (VirtFusion) for managing the server. Requires authentication.
loginWithDevice
loginWithDevice: Start a device authorization login (RFC 8628). Returns a verificationUri and userCode. Open the URI in your browser, enter the code, and sign in with your OSIR cre… loginWithDevice: Start a device authorization login (RFC 8628). Returns a verificationUri and userCode. Open the URI in your browser, enter the code, and sign in with your OSIR credentials. Then call checkDeviceLoginStatus with the returned deviceCode to complete login. No parameters required.
logout
sessionKey
logout: Log out: revokes the session's tokens at the identity provider immediately. Optional: sessionKey (from checkDeviceLoginStatus); pass it to end that conversation session. logout: Log out: revokes the session's tokens at the identity provider immediately. Optional: sessionKey (from checkDeviceLoginStatus); pass it to end that conversation session.
orderVps
hostname*packageId*sshKeyIdssessionKeypaymentTerm*operatingSystemId
orderVps: Stage an order for a new VPS instance; deducts from account balance. Requires authentication. Returns an actionId: present the summary to the user, then call executeConfi… orderVps: Stage an order for a new VPS instance; deducts from account balance. Requires authentication. Returns an actionId: present the summary to the user, then call executeConfirmedAction with the actionId if they approve.
osirAppCreateUpload
sessionKey
osirAppCreateUpload: Create an upload ticket for deploying app source code to Osir. Returns an uploadTicket, a putUrl, and instructions to zip the project and upload it. After uplo… osirAppCreateUpload: Create an upload ticket for deploying app source code to Osir. Returns an uploadTicket, a putUrl, and instructions to zip the project and upload it. After uploading, call osirAppDeploy with the uploadTicket. Requires authentication.
osirAppDelete
can modify data
appId*sessionKey
osirAppDelete: Stage deletion of an Osir app. DESTRUCTIVE and irreversible: removes its microVM, image, route, and data. Returns an actionId; present the summary to the user, then… osirAppDelete: Stage deletion of an Osir app. DESTRUCTIVE and irreversible: removes its microVM, image, route, and data. Returns an actionId; present the summary to the user, then call executeConfirmedAction with the actionId if they approve. Requires authentication.
osirAppDeploy
name*regionlanguage*sessionKeyuploadTicket*
osirAppDeploy: Deploy an app to Osir (free tier) and get a live HTTPS URL; the app runs isolated in a microVM. Deploying an existing app name redeploys it (new version) and applies… osirAppDeploy: Deploy an app to Osir (free tier) and get a live HTTPS URL; the app runs isolated in a microVM. Deploying an existing app name redeploys it (new version) and applies any secrets set via osirAppSetSecret. A plain static website (HTML/CSS/JS with no framework or build step) is also supported: it is auto-detected and served directly; pass language 'node' for it. Requires authentication.
osirAppGetSource
read-only
appName*sessionKey
osirAppGetSource: Get a short-lived signed download URL for an Osir app's current source zip. Use this to make edits to a deployed app without the user re-attaching the project: do… osirAppGetSource: Get a short-lived signed download URL for an Osir app's current source zip. Use this to make edits to a deployed app without the user re-attaching the project: download, patch the files, then osirAppCreateUpload (PUT the new zip) and osirAppDeploy under the SAME name; the platform rebuilds and, for owned-tier apps, auto-ships the new version to the user's box. Requires authentication.
osirAppList
read-only
sessionKey
osirAppList: List the authenticated user's deployed Osir apps with their live URLs and status. Requires authentication. osirAppList: List the authenticated user's deployed Osir apps with their live URLs and status. Requires authentication.
osirAppLogs
read-only
tailappId*sessionKey
osirAppLogs: Get recent logs from an Osir app's microVM ('why is my app broken?'). Requires authentication. osirAppLogs: Get recent logs from an Osir app's microVM ('why is my app broken?'). Requires authentication.
osirAppMoveToOwned
domainappName*packageIdinstanceIdsessionKey
osirAppMoveToOwned: Move a deployed Osir app from the shared free tier onto a VPS owned by the user. TWO WAYS IN. (1) The user already owns a VPS: pass instanceId (from listMyVpsIn… osirAppMoveToOwned: Move a deployed Osir app from the shared free tier onto a VPS owned by the user. TWO WAYS IN. (1) The user already owns a VPS: pass instanceId (from listMyVpsInstances) and NO packageId - this ATTACHES the app to that server, SPENDS NOTHING and needs no confirmation. (2) No server yet: pass packageId (from listVpsPackages) and the call stages a VPS order (COSTS MONEY): returns an actionId; present the price/summary to the user and call executeConfirmedAction only if they approve. Before staging any order this tool checks whether the user ALREADY has a box for this app (its C2 binding, then their own VPS list) and attaches that instead - a retry after a failed move never buys a second server. After the move starts the platform ships the app onto the box server-side, which takes about two minutes; watch it with osirAppStatus ('ownedMove'). Calling this tool again while a move is still running just reports its progress, and calling it after one FAILED retries the ship. If the result status is BUILDING or BUILD_FAILED, follow its nextStep. Requires authentication.
osirAppProvisionDatabase
appId*enginesessionKey
osirAppProvisionDatabase: Provision a managed Postgres database for an Osir app. The connection string is stored as the app's DATABASE_URL secret (encrypted, injected on the next o… osirAppProvisionDatabase: Provision a managed Postgres database for an Osir app. The connection string is stored as the app's DATABASE_URL secret (encrypted, injected on the next osirAppDeploy) and is NEVER returned. Requires authentication.
osirAppSetSecret
key*appId*value*sessionKey
osirAppSetSecret: Set an environment secret for an Osir app (e.g. DATABASE_URL, API_KEY). The value is stored encrypted and injected as an env var on the next osirAppDeploy of the… osirAppSetSecret: Set an environment secret for an Osir app (e.g. DATABASE_URL, API_KEY). The value is stored encrypted and injected as an env var on the next osirAppDeploy of the app; it is NEVER returned or logged. Requires authentication.
osirAppStatus
read-only
appId*sessionKey
osirAppStatus: Get an Osir app's current status, live URL, and health ('is my app working?'). If the status is BUILD_FAILED, 'recentErrors' explains why so you can fix the source a… osirAppStatus: Get an Osir app's current status, live URL, and health ('is my app working?'). If the status is BUILD_FAILED, 'recentErrors' explains why so you can fix the source and redeploy. 'qa' is an independent black-box check of the LIVE app after deploy: qa.status PASSED means it loaded and worked; FAILED means it deployed but didn't actually work, and qa.findings lists the problems so you can fix and redeploy. 'ownedMove' tracks a move onto the user's own VPS, which leaves tier and status unchanged while it runs: state MOVING (in progress, stage says where, ~2 minutes in total), MOVED (done - tier reads 'owned'), FAILED or REFUSED (call osirAppMoveToOwned again to retry; it never orders a second server). Requires authentication.
osirSiteDesignBrief
read-only
pageJob*audience*whatItIs*briefJsonbusinessName*primaryAction*
osirSiteDesignBrief: Step 1 of designing a NEW website with OSIR. Validates the brief and returns 'systemPrompt', the structured design brief and constraints YOU must then follow t… osirSiteDesignBrief: Step 1 of designing a NEW website with OSIR. Validates the brief and returns 'systemPrompt', the structured design brief and constraints YOU must then follow to write one complete self-contained HTML page, plus 'editRules' for later revisions. Call it before osirSitePublish for a new site, then publish the finished page with osirSitePublish. No authentication needed.
osirSitePublish
html*name*regionsessionKeydesignContract
osirSitePublish: Publish a single-page website to a live HTTPS URL on Osir (free tier). ANY complete HTML document works: the user's own site, a page designed in this chat, or one… osirSitePublish: Publish a single-page website to a live HTTPS URL on Osir (free tier). ANY complete HTML document works: the user's own site, a page designed in this chat, or one from the osirSiteDesignBrief flow. Calling again with the same name redeploys the new version. For MULTI-FILE sites (separate CSS/JS/images) use osirAppCreateUpload + osirAppDeploy with a zip instead. Then poll osirAppStatus until READY. Requires authentication.
payInvoice
invoiceId*sessionKey
payInvoice: Stage payment of an outstanding invoice from account balance. Requires authentication. Returns an actionId; present the summary to the user, then call executeConfirmedA… payInvoice: Stage payment of an outstanding invoice from account balance. Requires authentication. Returns an actionId; present the summary to the user, then call executeConfirmedAction with the actionId if they approve.
previewPaymentFees
read-only
amount*currencysessionKey
previewPaymentFees: Preview the fees that would be charged for a given payment amount. Requires authentication. previewPaymentFees: Preview the fees that would be charged for a given payment amount. Requires authentication.
registerDomain
years*domain*autoRenewsessionKeynameservers*registrantInfo*
+2
registerDomain: Stage registration of a new domain name. Deducts from account balance. The DNS zone is initialised automatically after registration (asynchronously; if createDnsRec… registerDomain: Stage registration of a new domain name. Deducts from account balance. The DNS zone is initialised automatically after registration (asynchronously; if createDnsRecord right after registration reports a missing zone, retry after a few seconds). Pass initializeDnsZone:false to opt out. Returns an actionId: present the summary to the user, then call executeConfirmedAction with the actionId if they approve.
renewDomain
years*domain*sessionKey
renewDomain: Stage renewal of a domain for a specified number of years. Deducts from account balance. Returns an actionId: present the summary to the user, then call executeConfirm… renewDomain: Stage renewal of a domain for a specified number of years. Deducts from account balance. Returns an actionId: present the summary to the user, then call executeConfirmedAction with the actionId if they approve.
setMailboxPassword
password*mailboxId*sessionKey
setMailboxPassword: Set a new password on a mailbox. Never log or store the password. Requires authentication. setMailboxPassword: Set a new password on a mailbox. Never log or store the password. Requires authentication.
spinDomainWords
read-only
langname*tldspositionmaxResultssimilarity
spinDomainWords: Generate domain suggestions by spinning/replacing words with similar alternatives. spinDomainWords: Generate domain suggestions by spinning/replacing words with similar alternatives.
suggestAlternatives
read-only
limitdomain*sessionKey
suggestAlternatives: Suggest alternative domain names if the requested one is unavailable. Legacy; prefer generateDomainSuggestions. suggestAlternatives: Suggest alternative domain names if the requested one is unavailable. Legacy; prefer generateDomainSuggestions.
transferDomain
domain*authCode*sessionKeyregistrantInfo*
transferDomain: Stage transfer of a domain from another registrar to OSIR. Deducts from account balance. Returns an actionId: present the summary to the user, then call executeConf… transferDomain: Stage transfer of a domain from another registrar to OSIR. Deducts from account balance. Returns an actionId: present the summary to the user, then call executeConfirmedAction with the actionId if they approve.
unlockDomain
can modify data
domain*sessionKey
unlockDomain: Stage removal of registrar lock from a domain to allow transfers. DESTRUCTIVE: reduces domain security. Returns an actionId: present the summary to the user, then cal… unlockDomain: Stage removal of registrar lock from a domain to allow transfers. DESTRUCTIVE: reduces domain security. Returns an actionId: present the summary to the user, then call executeConfirmedAction with the actionId if they approve.
updateContact
cityemailphonestatecountrystreet1
+7
updateContact: Update an existing contact's information. Requires authentication. Only the fields you provide are changed; omitted fields keep their current values. Get the contact… updateContact: Update an existing contact's information. Requires authentication. Only the fields you provide are changed; omitted fields keep their current values. Get the contactId from listContacts. Returns the updated contact.
updateDnsRecord
ttlnametypedomain*contentpriority
+2
updateDnsRecord: Update an existing DNS record. Requires authentication. Only the fields you provide are changed; omitted fields keep their current values. Get the recordId from li… updateDnsRecord: Update an existing DNS record. Requires authentication. Only the fields you provide are changed; omitted fields keep their current values. Get the recordId from listDnsRecords. Returns the updated record.
updateDomainAutoRenew
domain*enabled*sessionKey
updateDomainAutoRenew: Enable or disable auto-renewal for a domain. updateDomainAutoRenew: Enable or disable auto-renewal for a domain.
updateDomainPrivacy
domain*enabled*sessionKey
updateDomainPrivacy: Enable or disable WHOIS privacy protection for a domain. updateDomainPrivacy: Enable or disable WHOIS privacy protection for a domain.
updateNameservers
domain*sessionKeynameservers*
updateNameservers: Update nameservers for a domain. Replaces the current nameserver set with the given list. updateNameservers: Update nameservers for a domain. Replaces the current nameserver set with the given list.
validateDomainName
read-only
domain*
validateDomainName: Validate if a domain name format is correct. No authentication required. validateDomainName: Validate if a domain name format is correct. No authentication required.
verifyAccount
code*accountId*
verifyAccount: Verify a newly created OSIR account with the code from the verification email; step 2 of onboarding, no authentication required. The code is the same token as the em… verifyAccount: Verify a newly created OSIR account with the code from the verification email; step 2 of onboarding, no authentication required. The code is the same token as the email link, so the principal can relay it to their agent. On success the account becomes ACTIVE and billable actions are unlocked. If the code expired, call createAccount again with the same email to get a fresh one.
verifyMailDns
read-only
domain*sessionKey