three.ws Naming — Claude Code MCP server: what it does, how to install
Resolves Solana .sol domains, looks up wallet owners, and checks whether threews.sol handles are available for your assistant.
claude mcp add --env THREE_WS_BASE=<THREE_WS_BASE> --env THREE_WS_TIMEOUT_MS=<THREE_WS_TIMEOUT_MS> --transport stdio naming-mcp -- npx -y @three-ws/naming-mcpWhat three.ws Naming does
This stdio MCP server exposes public naming records from the Solana network to your assistant. It provides three tools: sns_resolve maps a .sol domain to a base58 public key, sns_reverse finds the primary name tied to a wallet, and threews_availability verifies whether an agent subdomain is free.
Every check hits public endpoints on mainnet without private keys or gas fees. The server only performs read operations. Because of this, claiming a chosen handle is not supported here; you must mint subdomains separately through your three.ws account.
Running the package requires Node.js version 20 or higher. The default request timeout is 20000 milliseconds via THREE_WS_TIMEOUT_MS.
What it helps with
- resolve a
.soldomain to its Solana wallet address - find the primary name for a base58 public key
- check handle availability for a
threews.solsubdomain
Example prompts for the agent
- Check if the handle
agentis available onthreews.sol. - Resolve the owner wallet address for
bonfida.sol. - Find the primary
.soldomain registered to this Solana wallet.
How to install three.ws Naming
Platform CLI
claude mcp add --env THREE_WS_BASE=<THREE_WS_BASE> --env THREE_WS_TIMEOUT_MS=<THREE_WS_TIMEOUT_MS> --transport stdio naming-mcp -- npx -y @three-ws/naming-mcpReplace <…> with your own values
Platform CLI
codex mcp add naming-mcp --env THREE_WS_BASE=<THREE_WS_BASE> --env THREE_WS_TIMEOUT_MS=<THREE_WS_TIMEOUT_MS> -- npx -y @three-ws/naming-mcpReplace <…> with your own values
Config file
{
"mcpServers": {
"naming-mcp": {
"command": "npx",
"args": [
"-y",
"@three-ws/naming-mcp"
],
"env": {
"THREE_WS_BASE": "<THREE_WS_BASE>",
"THREE_WS_TIMEOUT_MS": "<THREE_WS_TIMEOUT_MS>"
}
}
}
}Replace <…> with your own values
Config file
{
"servers": {
"naming-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@three-ws/naming-mcp"
],
"env": {
"THREE_WS_BASE": "<THREE_WS_BASE>",
"THREE_WS_TIMEOUT_MS": "<THREE_WS_TIMEOUT_MS>"
}
}
}
}Replace <…> with your own values
Platform CLI
gemini mcp add -e THREE_WS_BASE=<THREE_WS_BASE> -e THREE_WS_TIMEOUT_MS=<THREE_WS_TIMEOUT_MS> naming-mcp npx -y @three-ws/naming-mcpReplace <…> with your own values
Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more
Questions about three.ws Naming
How to install three.ws Naming in Claude Code?
Run claude mcp add naming-mcp -- npx -y @three-ws/naming-mcp in your terminal. You can pass custom endpoints or timeouts with --env flags if necessary.
What does three.ws Naming do?
It connects your assistant to Solana Name Service queries. The server resolves .sol records, identifies primary names for wallets, and verifies unclaimed threews.sol handles.
Can this tool register or claim domains directly?
No, all provided tools are strictly read-only. Minting an agent subdomain requires authentication and must be handled via the three.ws web account.