Skip to main content

Troubleshooting

Sign-in ends with access_denied​

The authorization server refused the request, usually because of the scopes the client asked for.

  • NameBeta grants only the identity scopes profile and email. There is no API scope, and a client configured to request one — mcp:tools, for instance — can be refused. Remove any custom scope setting from the client so that it uses the scopes the server advertises.
  • You clicked Cancel on the consent screen. Start the connection again and approve access.

Requests fail with invalid_token​

The client sent a token the server does not accept. The 401 response carries WWW-Authenticate: Bearer … error="invalid_token".

  • The token expired. Clients normally refresh or re-authorize on their own. If yours does not, disconnect and connect again.
  • The token was issued for another resource. Tokens must have the audience https://namebeta.com/api/mcp. Check that the client sends resource=https://namebeta.com/api/mcp in the authorization request, and that the server URL in the client is exactly https://namebeta.com/api/mcp — no trailing slash, no www.
  • A token was pasted into the configuration. Remove any Authorization header or bearer token from the client configuration and let it sign in through OAuth.

The client keeps asking me to sign in​

  • Make sure the sign-in completes: after approving access, wait until the browser says you can return to the app. Closing the tab early leaves the client without a token.
  • Browser extensions that block pop-ups or third-party redirects can break the return to the client. Try again in a private window, or allow redirects for auth.namebeta.com.
  • Remove the server from the client and add it again. This clears a stored token that no longer works.

"Does not support dynamic client registration"​

Your client can only register itself through Dynamic Client Registration, which NameBeta does not offer. Cursor and Gemini CLI are such clients. Ask for a pre-registered client ID, or update the client if a newer version supports Client ID Metadata Documents.

Calls fail with 429 or "quota exceeded"​

You have used up an hourly or daily limit of your plan. Wait the number of seconds in the Retry-After header before calling that tool again.

  • Lookups you make on namebeta.com while signed in count against the same plan, so they can use up a limit too.
  • Check your current usage under Plan & Usage in your account panel.
  • Quotas explains how calls are counted, when each limit resets, and the limits of each plan.

A tool is missing, or "Tool … not found"​

NameBeta has five tools: check_availability, compare_prices, suggest_domains, lookup_whois and lookup_dns.

  • If the client lists fewer, you may have switched some off in its settings (ChatGPT and Cursor let you do this per tool).
  • If a call fails with MCP error -32602: Tool … not found, the client is using a cached tool list or a name from an older version of the server. Refresh the server's tools in the client, or reconnect. Changelog lists renamed and removed tools.

The wrong NameBeta account is connected​

Calls count against the account you signed in with during authorization. Switch accounts explains how to connect a different one.

A result looks wrong​

  • WHOIS records are cached for up to 1 hour. lookup_whois returns the record fetched the last time anyone looked the domain up, if that was less than an hour ago, and check_availability reports the status recorded by that lookup for the same hour. A domain that was just registered, dropped or moved into redemption can take up to an hour to show its new state. Apart from that, check_availability and lookup_dns query the nameservers when you call them.
  • unknown means the DNS check got no definite answer, usually because a nameserver did not respond in time. The same goes for a lookup that fails with a timeout; try again a little later.
  • Confirm availability and price with the registrar before you register.

Still stuck?​

Write to contact@namebeta.com with the client you use, the time of the failure in UTC, and the error message. There is no SLA, so we cannot promise a response time.