GoMain
Domain availability and prices from 40+ registrars, name checks, DNS setup, and a domain broker
我该使用它吗
质量与安全性
基于对工具定义和协议合规性的自动分析。
上下文开销
这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。
安装
一键安装
将以下内容添加到你的 `claude_desktop_config.json` 文件中:
{
"mcpServers": {
"domains": {
"url": "https://gomain.hottub.workers.dev/mcp"
}
}
}远程端点
https://gomain.hottub.workers.dev/mcpstreamable-http它能做什么
工具清单
工具(15)
🟢check_availability(domains)
Check whether domain names are registered, asking each TLD's registry directly (RDAP). Returns registered, available, likely_available (no registry lookup service, but no DNS records either) or unknown, plus the registrar and dates for taken names and the cheapest prices for open ones. Up to 20 names per call. A lookup is not a reservation: names can be taken at any moment, and premium or reserved names may still be priced higher or blocked at checkout.
输入模式
{
"type": "object",
"properties": {
"domains": {
"description": "Domain names, like \"example.com\" or \"münchen.de\"",
"items": {
"type": "string"
},
"maxItems": 20,
"minItems": 1,
"type": "array"
}
},
"required": [
"domains"
]
}🟢compare_prices(limit, sort, tld)
Every tracked registrar's price for one TLD, in US dollars per year, refreshed daily from 40+ registrars. Sorted by 3-year cost (first year plus two renewals) by default, because a cheap first year often hides an expensive renewal. Each offer links to where to buy.
输入模式
{
"type": "object",
"properties": {
"limit": {
"default": 10,
"maximum": 60,
"minimum": 1,
"type": "integer"
},
"sort": {
"default": "three_year",
"enum": [
"three_year",
"registration",
"renewal",
"transfer"
],
"type": "string"
},
"tld": {
"description": "A TLD (\"ai\", \".co.uk\") or a domain to take it from (\"example.ai\")",
"type": "string"
}
},
"required": [
"tld"
]
}🟢suggest_names(keywords, limit, tlds)
Turn a few keywords into domain name candidates (the words joined, with common prefixes and suffixes, across several TLDs), check each with its registry, and return the available ones with prices. For your own name ideas, use check_availability.
输入模式
{
"type": "object",
"properties": {
"keywords": {
"description": "A few words about the project, like \"coffee map\"",
"type": "string"
},
"limit": {
"default": 15,
"description": "How many candidates to check",
"maximum": 20,
"minimum": 1,
"type": "integer"
},
"tlds": {
"description": "TLDs to try, first one preferred. Default: com, ai, io, dev, app, co",
"items": {
"type": "string"
},
"maxItems": 6,
"type": "array"
}
},
"required": [
"keywords"
]
}🟢tld_info(tld)
Who runs a TLD, its type (generic, country-code, ...), when it was delegated, its registry's website and lookup servers (from IANA), and its cheapest first-year, renewal and 3-year prices.
输入模式
{
"type": "object",
"properties": {
"tld": {
"description": "A TLD (\"ai\", \".co.uk\") or a domain to take it from (\"example.ai\")",
"type": "string"
}
},
"required": [
"tld"
]
}🟢price_history(registrar, tld)
Every recorded price change for one TLD, oldest first, from GoMain's daily archive. A registrar's first entry is its price when the archive began (or when it started selling the TLD); later entries are changes. Prices are per year, in US dollars unless `currency` says otherwise.
输入模式
{
"type": "object",
"properties": {
"registrar": {
"description": "Only this registrar's changes, by id (\"porkbun\")",
"type": "string"
},
"tld": {
"description": "A TLD (\"ai\", \".co.uk\") or a domain to take it from (\"example.ai\")",
"type": "string"
}
},
"required": [
"tld"
]
}🟢check_name(name, tlds)
Is a project name usable everywhere it'll be needed? Checks the domain across TLDs (with prices), GitHub, npm, PyPI and crates.io, and gives links for trademark and social-handle checks that can't be automated.
输入模式
{
"type": "object",
"properties": {
"name": {
"description": "The name, like \"tidepool\"",
"type": "string"
},
"tlds": {
"description": "TLDs to check. Default: com, ai, io, dev, app, co",
"items": {
"type": "string"
},
"maxItems": 6,
"type": "array"
}
},
"required": [
"name"
]
}🟢dns_setup(account, domain, email, website)
The exact DNS records to add so a domain serves a website (Vercel, Netlify, GitHub Pages, Cloudflare Pages) and receives email (Google Workspace, Microsoft 365, Fastmail, Zoho, Proton), plus a starting DMARC policy. Checks live DNS to show which records are already in place and warns about clashes such as two SPF records. Values a provider generates per account are marked as such.
输入模式
{
"type": "object",
"properties": {
"account": {
"description": "GitHub user, Netlify site or Cloudflare Pages project name, when the website host needs one",
"type": "string"
},
"domain": {
"type": "string"
},
"email": {
"enum": [
"google-workspace",
"microsoft-365",
"fastmail",
"zoho",
"proton"
],
"type": "string"
},
"website": {
"enum": [
"vercel",
"netlify",
"github-pages",
"cloudflare-pages"
],
"type": "string"
}
},
"required": [
"domain"
]
}🟢appraise_domain(domain)
A rough value range for a domain, from its length, how easy it is to say, its TLD, its age and how many popular TLDs have the same name registered. Use it to set a realistic budget before trying to buy a taken name. Not a comparable-sales appraisal.
输入模式
{
"type": "object",
"properties": {
"domain": {
"type": "string"
}
},
"required": [
"domain"
]
}🟢acquisition_report(domain)
For a domain someone already owns: whether it's listed for sale and where (with the asking price when the sale page shows one), when it could drop, its estimated value, the realistic chance of buying it, the options in order (buy now, make an offer, backorder, have GoMain broker it, watch it) and available alternatives with prices.
输入模式
{
"type": "object",
"properties": {
"domain": {
"type": "string"
}
},
"required": [
"domain"
]
}⚪request_acquisition(domain, email, max_budget, notes)
Ask GoMain's brokerage to acquire a domain someone else owns. GoMain researches it, approaches the owner without naming the buyer, negotiates within the budget (which the owner never sees), and closes through Escrow.com. Confirm the buyer's email and budget with the user before calling. Returns a deal id and status key for broker_status.
输入模式
{
"type": "object",
"properties": {
"domain": {
"type": "string"
},
"email": {
"description": "The buyer's email, for progress reports and the escrow invitation",
"type": "string"
},
"max_budget": {
"description": "The most the buyer will pay, in US dollars",
"minimum": 1,
"type": "integer"
},
"notes": {
"description": "Anything the broker should know, like a deadline",
"type": "string"
}
},
"required": [
"domain",
"max_budget",
"email"
]
}🟢search_domains_for_sale(keywords, max_price)
Search domains their owners have listed for sale with GoMain (each owner proved control of the name). Returns asking prices where set; make_offer buys or negotiates.
输入模式
{
"type": "object",
"properties": {
"keywords": {
"description": "Words the name should contain; empty lists everything",
"type": "string"
},
"max_price": {
"minimum": 1,
"type": "integer"
}
}
}⚪make_offer(amount, deal_id, domain, email, status_key)
Offer to buy a domain listed with GoMain. Offers at or above the asking price buy it outright; lower offers are negotiated automatically with a counter-offer, for up to three rounds, then the seller decides. An accepted offer opens an Escrow.com transaction, so the money is only released once the domain arrives. Confirm the amount and email with the user before calling; to answer a counter-offer, pass the deal_id and status_key from the last answer.
输入模式
{
"type": "object",
"properties": {
"amount": {
"description": "US dollars",
"minimum": 1,
"type": "integer"
},
"deal_id": {
"type": "string"
},
"domain": {
"type": "string"
},
"email": {
"description": "The buyer's email",
"type": "string"
},
"status_key": {
"type": "string"
}
},
"required": [
"domain",
"amount",
"email"
]
}🟢list_domain_for_sale(asking_price, domain, email, floor_price, listing_key, ...)
List a domain the user owns for sale. The first call returns a DNS TXT record that proves ownership; once it's added, calling again with the same domain and email activates the listing. asking_price is shown to buyers; floor_price, the lowest offer accepted automatically, never is. Sales close through Escrow.com.
输入模式
{
"type": "object",
"properties": {
"asking_price": {
"minimum": 1,
"type": "integer"
},
"domain": {
"type": "string"
},
"email": {
"description": "The owner's email",
"type": "string"
},
"floor_price": {
"minimum": 1,
"type": "integer"
},
"listing_key": {
"description": "Needed to change an active listing",
"type": "string"
},
"withdraw": {
"type": "boolean"
}
},
"required": [
"domain",
"email"
]
}⚪watch_domain(domain, email)
GoMain checks a domain daily and emails when it drops (or is about to), changes hands, or is listed for sale. Returns a watch id and status key for broker_status.
输入模式
{
"type": "object",
"properties": {
"domain": {
"type": "string"
},
"email": {
"type": "string"
}
},
"required": [
"domain",
"email"
]
}🟢broker_status(id, status_key)
The status and history of a brokerage deal (id d_…) or a watch (id w_…), given the id and status key returned when it was created.
输入模式
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"status_key": {
"type": "string"
}
},
"required": [
"id",
"status_key"
]
}社区
证据