# Name.ai — developers > The Name.ai developer surface: an MCP server, a public REST API with an > OpenAPI 3.1 spec, and an optional OAuth 2.1 flow. Everything here reads > without an account or an API key; authenticating unlocks real marketplace > prices on domain search and nothing else. ## Start here - [Name.ai developer portal](https://name.ai/developers): Index of every developer resource below. ## MCP - [Name.ai MCP server](https://name.ai/developers/mcp): Setup, endpoint and tool reference. - Endpoint: https://nameai-mcp.h.namekart.com/mcp (Streamable HTTP) - Manifest: https://name.ai/.well-known/mcp.json (also extensionless at https://name.ai/.well-known/mcp) - Server card: https://name.ai/.well-known/mcp/server-card.json - Source and agent configs: https://github.com/namekart/nameai_mcp - Official MCP Registry: namespace `ai.name`, server `ai.name/nameai-mcp` (domain-verified) - Tools: `search_domain`, `whois_lookup`, `tld_registration_price`, `tld_requirements` ## REST - [Name.ai API docs](https://name.ai/developers/api): Endpoint reference, conventions, curl examples. - [OpenAPI 3.1 spec](https://name.ai/openapi.json): The machine-readable contract. - [Scoped index for the API surface](https://name.ai/api/llms.txt): The endpoints alone, without this page. - Machine-readable API index: https://name.ai/api/v1 - Probing https://name.ai/api answers 401 with `WWW-Authenticate: Bearer resource_metadata="..."`. ## SDKs - JavaScript/TypeScript: `npm install nameai-sdk` (zero-dependency, Node >= 18). Package: https://www.npmjs.com/package/nameai-sdk - Python: `pip install nameai` (zero-dependency, Python >= 3.9). Package: https://pypi.org/project/nameai/ - Both cover every endpoint above, plus cursor paging (`listAllListings` / `list_all_listings`) and batching. - Source: https://github.com/namekart/nameai_mcp (`sdk/`, `sdk-python/`) ## Authentication - [Name.ai API authentication](https://name.ai/developers/auth): The OAuth 2.1 + PKCE flow, step by step. - [auth.md](https://name.ai/auth.md): The canonical agent_auth document — fetch this one from an agent. - Protected-resource metadata: https://name.ai/.well-known/oauth-protected-resource - Authorization-server metadata: https://name.ai/.well-known/oauth-authorization-server - Dynamic client registration: POST https://name.ai/api/oauth/register ## Pricing and catalogs - [Pricing in markdown](https://name.ai/pricing.md): Registration/renewal/transfer pricing, agent-readable. - [AI catalog](https://name.ai/.well-known/ai-catalog.json): Every agentic resource on this domain. - [Agent skills index](https://name.ai/.well-known/agent-skills/index.json): Skill artifacts, with digests. - [A2A agent card](https://name.ai/.well-known/agent-card.json) ## Notes - Every page under /developers has a Markdown twin: https://name.ai/developers.md, https://name.ai/developers/api.md, https://name.ai/developers/mcp.md, https://name.ai/developers/auth.md. - Public endpoints return IETF `RateLimit-*` headers; 429s carry `Retry-After`. - The unauthenticated REST surface is additive-only. Deprecations ship `Deprecation` and `Sunset` headers at least 90 days ahead.