Documentation Index
Fetch the complete documentation index at: https://developers.entri.com/llms.txt
Use this file to discover all available pages before exploring further.
The Entri MCP server exposes the following tools. For feedback or to request additional tools, contact support@entri.com.
| Tool | Description |
|---|
search-domain-availability | Check if a domain is available for registration. Returns availability, price, and renewal price. |
generate-domain-suggestions | Generate AI-powered domain name suggestions from keywords or a business description. |
create-domain-order | Register a domain or initiate a purchase flow. Behavior depends on the registrar configured for your account. |
connect-domain | Generate a guided DNS configuration link for the user to connect an existing domain to your platform. |
check-connection-status | Check DNS propagation and connection status using the jobId returned by connect-domain. |
check-order-status | Check the current status of a domain registration order using the orderId or jobId from create-domain-order. |
Tool: search-domain-availability
Checks whether a domain is available for registration, along with its registration and renewal pricing.
Example:
User: "Is startup.ai available?"
AI calls: search-domain-availability(domain: "startup.ai")
Response (available):
{
"domain": "startup.ai",
"available": true,
"price": "$49.99/year",
"renewalPrice": "$89.99/year",
"message": "startup.ai is available!"
}
Response (unavailable):
{
"domain": "startup.ai",
"available": false,
"message": "startup.ai is taken."
}
Tool: generate-domain-suggestions
Generates AI-powered domain name suggestions based on keywords or a business description. Returns only available domains, sorted by relevance. Always returns a minimum of 5 suggestions. The top recommendation is marked with 🏆.
Example:
User: "Suggest domains for my AI coding assistant startup"
AI calls: generate-domain-suggestions(keywords: "AI coding assistant startup", limit: 5)
Response:
{
"keywords": "AI coding assistant startup",
"suggestions": [
{
"domain": "🏆 codecopilot.shop",
"price": "$12.99/year",
"renewalPrice": "$24.99/year"
},
{
"domain": "codecopilot.ai",
"price": "$49.99/year",
"renewalPrice": "$89.99/year"
},
{
"domain": "aicode.dev",
"price": "$29.99/year",
"renewalPrice": "$39.99/year"
}
],
"count": 3,
"message": "Display these domain suggestions in a table with columns: Domain, Price, Renewal Price. The first domain (marked with 🏆) is the recommended option."
}
Tool: create-domain-order
Registers a domain or initiates a purchase flow. The response shape depends on which registrar is configured for your account — see How Each Product Works via MCP.
Example:
User: "Register startup.ai for me"
AI calls: create-domain-order(domain: "startup.ai")
Response — Sell Enterprise (direct registration):
{
"success": true,
"domain": "startup.ai",
"orderId": "ORD-1707000000-abc123",
"status": "pending",
"message": "Order created for startup.ai. Use check-order-status with orderId \"ORD-1707000000-abc123\" to track registration progress."
}
Response — Sharing registrar (IONOS / Squarespace):
{
"success": true,
"domain": "startup.ai",
"link": "https://connect.entri.com/sell-flow?token=abc123...",
"jobId": "JOB-1707000000-abc123",
"message": "Sharing purchase link for startup.ai — Present this link to the user and ask them to complete the purchase. Then use check-order-status with jobId \"JOB-1707000000-abc123\" to track progress."
}
Response — Error:
{
"success": false,
"domain": "startup.ai",
"error": "HTTP 422",
"message": "Contact details are required for this registration."
}
Important notes:
- For sharing registrars, the AI agent must present the link to the user and ask them to complete the purchase.
- For Sell Enterprise, contact details are sourced automatically when Lightning Mode is on. Do not ask the user for contact details upfront — always attempt registration with just the
domain first.
dnsRecords is not a parameter of this tool. DNS records are configured via your MCP Settings (Static or Dynamic) or returned by your Purchase Authorization endpoint.
- After a successful order, always poll
check-order-status with the returned orderId or jobId until registration is complete.
| Registrar / Plan | Response | Next step |
|---|
| Sell Enterprise | Returns orderId + status | Poll check-order-status with orderId |
| IONOS / Squarespace | Returns link + jobId | Present link to user, then poll check-order-status with jobId |
Tool: connect-domain
Generates a guided DNS configuration link for an existing domain. The user must open this link to complete the DNS setup through Entri’s connection flow.
Example:
User: "Connect startup.ai to my project"
AI calls: connect-domain(domain: "startup.ai")
Response (success):
{
"success": true,
"domain": "startup.ai",
"link": "https://connect.entri.com/flow?token=abc123...",
"jobId": "JOB-1707000000-abc123",
"message": "Connect flow link for startup.ai: https://connect.entri.com/flow?token=abc123..."
}
Response (error):
{
"success": false,
"domain": "startup.ai",
"error": "HTTP 404",
"message": "The domain startup.ai could not be found in your account."
}
Important notes:
- The AI agent must present the returned
link to the user and ask them to open it. The DNS setup is completed by the user in Entri’s flow — the agent cannot complete it on their behalf.
- After the user opens the link, use
check-connection-status with the returned jobId to monitor DNS propagation.
- DNS propagation can take up to 48 hours in rare cases.
Retrieves the current DNS propagation and connection status for a domain. Use it after connect-domain to verify whether DNS records have fully propagated.
Example:
User: "Is startup.ai fully connected yet?"
AI calls: check-connection-status(jobId: "JOB-1707000000-abc123")
Response (connected):
{
"jobId": "JOB-1707000000-abc123",
"connected": true,
"status": "completed",
"domain": "startup.ai",
"message": "DNS configuration complete! Domain startup.ai is now connected."
}
Response (in progress):
{
"jobId": "JOB-1707000000-abc123",
"connected": false,
"status": "pending",
"domain": "startup.ai",
"message": "Connection JOB-1707000000-abc123 is still in progress (status: pending). Check again shortly."
}
Response (failed):
{
"jobId": "JOB-1707000000-abc123",
"connected": false,
"status": "failed",
"message": "Connection JOB-1707000000-abc123 has failed with status: failed."
}
Status values:
| Status | Meaning |
|---|
pending | User hasn’t completed the flow yet |
completed | DNS fully propagated and connected |
failed | Connection failed |
error | Unexpected error |
expired | The connect link expired before use |
Retrieves the current processing status of a domain registration order. Use it after create-domain-order to track progress.
Example:
User: "What's the status of my domain registration?"
AI calls: check-order-status(orderId: "ORD-1707000000-abc123")
Response — Sell Enterprise (registered):
{
"orderId": "ORD-1707000000-abc123",
"status": "registered",
"message": "Domain registration complete! Order ORD-1707000000-abc123 is now registered."
}
Response — Sharing registrar (completed):
{
"orderId": "JOB-1707000000-abc123",
"status": "completed",
"domains": [
{ "domain": "startup.ai", "status": "registered" }
],
"message": "Order JOB-1707000000-abc123 is complete."
}
Response (in progress):
{
"orderId": "ORD-1707000000-abc123",
"status": "pending",
"message": "Order ORD-1707000000-abc123 is still in progress (status: pending). Check again shortly."
}
Response (failed):
{
"orderId": "ORD-1707000000-abc123",
"status": "failed",
"message": "Order ORD-1707000000-abc123 has failed with status: failed."
}
Status values:
| Status | Meaning |
|---|
pending | Registration queued, not yet processed |
registration_in_progress | Actively being processed (Sell Enterprise) |
in_progress | Actively being processed (IONOS / Squarespace) |
registered | Domain successfully registered (Sell Enterprise) |
completed | Purchase completed (IONOS / Squarespace) |
failed | Registration failed |
cancelled | Order was cancelled |
rejected | Registration was rejected |
error | Unexpected error occurred |
expired | Sharing link expired before use (IONOS / Squarespace only) |