nameai-mcp
OfficialClick on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@nameai-mcpIs example.com available?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
nameai-mcp
A remote MCP server exposing a handful of name.ai's public, no-auth-required APIs as tools: domain search/availability, WHOIS lookup, TLD registration pricing, and TLD requirements. See src/nameai_mcp/server.py for the tool definitions and src/nameai_mcp/nameai_client.py for the HTTP client that talks to name.ai.
Endpoints
GET /health— health check.POST /mcp(andGET /mcpfor the SSE stream) — the MCP streamable-http endpoint. This is the URL an MCP client/host connects to.
Related MCP server: FastDomainCheck MCP Server
Configuration
NAMEAI_API_BASE_URL— base URL of the name.ai API this server calls. Defaults tohttps://name.ai.HOST/PORT— bind address for the server itself. Default0.0.0.0:8000.
Local development
uv sync
uv run uvicorn nameai_mcp.app:app --reloadDocker
docker build -t nameai-mcp .
docker run -p 8000:8000 nameai-mcpThe image runs nameai-mcp (the main() entry point in
src/nameai_mcp/__init__.py), which reads
HOST/PORT from the environment — pass -e PORT=... if your platform
injects a different port.
Deploying
Any host that can run the Docker image works. It is deployed through Coolify
on the Hetzner server and served at https://mcp.name.ai/mcp
(streamable-http), with Traefik terminating TLS. The original hostname,
https://nameai-mcp.h.namekart.com/mcp, still routes to the same container, so
client configs written against it keep working.
mcp.name.ai is a DNS-only A record to the Hetzner box. It exists because
scanners and MCP tooling look for a server at mcp.<domain> instead of reading
the URL out of a manifest — ora's scanner was watched, in this container's own
access log, never dialling the manifest's mcpUrl during a scan. Adding a
hostname needs two things besides DNS: the domain on the Coolify app, and the
host appended to MCP_ALLOWED_HOSTS, without which the SDK's DNS-rebinding
guard answers it with 421.
The server calls the public API at NAMEAI_API_BASE_URL, default
https://name.ai. Since name.ai moved to Hetzner that resolves to the same
host this container runs on, so the calls leave the container, reach the
host's own public IP, and come back in through Traefik. That hairpin works
here and is left in place deliberately: talking to the API exactly the way an
outside client would is the point of this server.
Being reachable isn't the same as being discovered — and that part is done.
name.ai advertises this server in four places:
https://name.ai/.well-known/mcp.json— manifesthttps://name.ai/.well-known/mcp/server-card.json— server cardhttps://name.ai/llms.txt— in both the endpoint list and the tool guidancethe MCP Registry, namespace
ai.name, domain-verified
All four live in the nameaiv1 repo. If the deployed URL changes, they change with it — otherwise agents keep being pointed at the old one.
This server cannot be deployed
Maintenance
Related MCP Connectors
Domains MCP — domain registration lookup + availability search over live
MCP server for DNSimple — domains, DNS zone records, availability, pricing and contacts.
Custom domains for SaaS and AI agents: search, register, connect DNS, and issue HTTPS over MCP.
Search, Register , Renew , Transfer and Manage domains
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables checking domain availability using WHOIS and DNS resolution, with support for single and batch queries.28-
- AlicenseAqualityDmaintenanceEnables checking domain name availability for single or multiple domains using WHOIS and DNS verification.121MIT
- AlicenseBqualityDmaintenanceEnables domain name checking and related services through a standardized MCP interface.2MIT
- AlicenseNot gradedqualityAmaintenanceEnables domain registration lookup, availability checks, DNS record fetching, and IP/ASN resolution via RDAP and DNS-over-HTTPS through MCP.36 npm1Apache 2.0