domains_search
Description
Search Squarespace's domain catalog for a keyword. Returns availability, pricing, renewal pricing, and a checkoutLink for each result when the domain is available. The tool does not register domains or take payment—checkout happens on squarespace.com when an end user opens the link.
When to use: End users (or your app) already have a keyword, brand, or domain in mind—for example "acmecoffee" or "is sarahbakes.com available?". If they only describe a business in prose without a name yet, use domains_generate_names first.
checkoutLink: Markdown link text pointing at Squarespace domain checkout (for example https://domains.squarespace.com/domain-search?atc=spiceupdallas.com&source=mcp&mcp_client=claude-code&mcp_client_version=2.1.215). Query parameters include the domain (atc), source=mcp, and client attribution (mcp_client, mcp_client_version) set by the connecting MCP client. Your UI can render the markdown as-is or extract the URL.
Not for: WHOIS lookups, DNS or hosting configuration, or general web search.
Connected MCP clients receive additional tool instructions from the server at runtime (for example, how the model should format chat replies). Those are not duplicated here.
Input schema
Pass these fields inside arguments.body on tools/call.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
query | string | Yes | — | Short keyword to base suggestions on, e.g. 'acmecoffee' or 'nova labs'. Not a sentence. |
limit | integer | No | 20 | Max results to return (1-50, default 20). |
availableOnly | boolean | No | true | Return only available domains (default true). Ignored when checkAvailability=false. |
checkAvailability | boolean | No | true | Whether to check registration availability. Set false for suggestion-only requests to skip availability lookups and respond faster; results will have available=null. Default true. |
Example tool call
Server URL: https://mcp.squarespace.com/mcp. Send a JSON-RPC tools/call message (your MCP client handles transport):
Code
If you call the server over HTTP directly (for example when debugging), use headers Content-Type: application/json and Accept: application/json, text/event-stream.
Example response
JSON-RPC envelope
Code
Tool payload (parse result.content[0].text)
The text string is JSON with:
query— echoes the keyword you sent inarguments.body.query.totalChecked— how many domain candidates were evaluated.results— array of domain rows. Each item includes:domain,suggestionType(exactMatch,featured,sponsored,premium,related,additional, …)available,price,renewalPrice,oneTimeFeecheckoutLink— markdown purchase link whenavailableistrue(see example below).
Example after parsing (truncated; a full response includes more results entries):
Code
Example user request
"Is sarahbakes.com available, and what are some alternatives under $20 per year?"