check_name
Check brand-name availability across domains + namespaces
Check whether one or more candidate names are free to use as a brand — across domains and the GitHub / npm / PyPI namespaces — in a single call.
tldsnames必填surfaces
io.github.Sra1Phani由 GitHub 账号 Sra1Phani 发布v0.1.0更新于 Oct 24, 2026
Check if a brand name is free across domains, GitHub, npm and PyPI, and suggest available names.
发布方自己的服务:Finder Jobs
检查候选品牌名称在域名、GitHub、npm 和 PyPI 上是否可用,并生成按评分排序的名称建议。
Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。
把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。
阅读 https://sourceweft.com/mcp/io.github.Sra1Phani%2Fdomain-finder/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。把它添加到你客户端的 mcpServers 配置中。
{
"mcpServers": {
"domain-finder": {
"type": "http",
"url": "https://domain-finder-theta.vercel.app/api/mcp"
}
}
}Search and recommend good domain names to buy. Describe a product or idea; the app brainstorms brandable names (AI + rule-based combos), checks real availability via RDAP, and returns a ranked list of buy candidates.
Source-available under the Elastic License 2.0 (SPDX-License-Identifier: Elastic-2.0) — see License.
Domain Finder is also a remote MCP server — check a brand name across domains and the GitHub / npm / PyPI namespaces from any MCP-capable agent.
https://domain-finder-theta.vercel.app/api/mcp (Streamable HTTP)check_name — check whether one or more candidate names are free across
domains and the GitHub / npm / PyPI namespaces, in a single call.generate_names — generate candidate names from a description, each
pre-checked for domain availability; feed the favorites into check_name.Cursor (~/.cursor/mcp.json) and any client with native Streamable-HTTP
support:
Claude Desktop (claude_desktop_config.json) — bridge a remote server with
mcp-remote:
Generation (lib/generate.ts) — merges three sources of candidates:
get, try, -ly, -hq, -app, …), shorter-first.generateObject
lib/hacks.ts): read the word across the dot —
delicio.us, bit.ly, recip.es. Built from IANA's full TLD list; needs
no API. These ignore the TLD filter by design (the word picks the zone), so
they have their own toggle..com before any gets a second TLD).Availability (lib/availability.ts) — RDAP behind a swappable
AvailabilityProvider interface. Resolves each TLD to its authoritative
registry RDAP server via the IANA bootstrap file (+ curated overrides), then
queries the registry directly. Retries on 429.
Status taxonomy (lib/rdap-status.ts) — "taken" isn't one thing. Modelled
on Domainr's taxonomy, each domain
gets a status and a coarse bucket:
All derived free from RDAP's RFC 8056 status codes, expiration event, and
nameservers. deleting domains also get an estimatedDropAt (pendingDelete
is a fixed ~5-day window).
Ranking (lib/rank.ts) — a 0–100 score from availability (45), TLD
desirability (20), length (20), cleanliness/no-hyphens-or-digits (10), and a
brandability nudge (5, hack > AI > combo). Sorted by bucket first, then
score — so "buy it now" always outranks "might be gettable".
Swapping RDAP for a paid registrar API later (pricing + real buy flow) only
touches lib/availability.ts — nothing else in the pipeline knows the source.
Track a domain, get emailed when it enters the drop path, hand off to a
backorder service. This is a scheduler around availabilityProvider.check(),
not new availability logic.
lib/cadence.ts) — every domain carries a
next_check_at; the poller only touches what's due. Cadence follows status:
far-off active weekly → expiry <30d or redemption daily → pendingDelete
every 6h → hourly inside 24h of the estimated drop. RDAP load stays
proportional to how interesting a domain is, not how many watches exist.lib/db/schema.ts). A hundred
people watching the same short .com is one row, one RDAP call, one
transition, fanned out to a hundred inboxes. Load scales with unique domains
observed, not users × domains — which matters because registries don't sell
capacity.watch_events) is the source of truth. Alerts fire only
on a change, and alerts has unique(watch_id, event_id) so a cron retry
can't double-send.deleting (pendingDelete — the fixed ~5-day
window, i.e. the last moment a backorder can be placed) and available.
Everything else is logged and shown in the UI but stays silent.unknown is not a transition. A 429 or timeout means "we couldn't
tell", not "the domain changed" — the last known status stands, and the check
backs off exponentially (1h, 2h, 4h … capped at a day)..co/.es/.at/.gg
have no public RDAP server, so a watch on them could never fire. Better to say
so than to accept it and silently never alert.FREE_WATCH_LIMIT in lib/watch.ts).Identity is an email plus an unguessable manage token — no accounts, no
sessions, no users table. The token rides in alert links and authenticates
/watch/<token>.
Without RESEND_API_KEY alerts are printed to the console rather than sent,
so the whole flow is drivable with no third-party signup. Trigger a poll by hand:
.github/workflows/poll.yml hits /api/cron/poll hourly. Vercel's Hobby cron
only fires once per day, which can burn most of a ~5-day pendingDelete
warning, so the schedule lives in GitHub Actions instead. Set the POLL_URL and
CRON_SECRET repository secrets. GHA cron is best-effort and can lag a few
minutes — fine for a multi-day warning, and nothing here depends on being
punctual.
lib/rdap-status.test.ts and lib/cadence.test.ts are pure. lib/poll.test.ts
drives the real database with a fake availability provider — pendingDelete
and redemptionPeriod are too rare in the wild to find on demand, and they're
exactly what this feature exists to catch. It skips when DATABASE_URL is unset.
Search works with no configuration — availability (RDAP) and rule-based
generation need no keys. To enable AI brainstorming, copy .env.example to
.env.local and set an AI Gateway key:
The watchlist is the only part that needs a database; search keeps working
without one (getDb() is lazy and only throws when a watch route calls it).
See Watchlist above.
POST /api/search
OVERRIDES (lib/availability.ts): .io/.me/.sh/.ac,
.de, .us. No reachable endpoint was found for .co/.es/.at/.gg, so
those report unknown rather than guess. Add more if you find them.parked proves nothing. Real aftermarket data needs a paid source.backorderUrl() points at DropCatch for dropping domains.
Swapping in affiliate links is a one-line change in app/page.tsx.Source-available under the Elastic License 2.0 (SPDX-License-Identifier: Elastic-2.0). You may inspect, self-host, and modify the code freely. What
you may not do is provide it to third parties as a hosted or managed
service that exposes a substantial set of its features — i.e. running it as a
competing hosted service is not permitted. Full terms in LICENSE.
来源:README.md,提交 12f9911
Check brand-name availability across domains + namespaces
Check whether one or more candidate names are free to use as a brand — across domains and the GitHub / npm / PyPI namespaces — in a single call.
tldsnames必填surfacesGenerate candidate names, pre-checked for domain availability
Generate candidate names from a description, each pre-checked for domain availability. Then call check_name on the favorites for the full cross-namespace picture.
countuseHacksdescription必填已满足适用检查项的 90%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
请在仓库或注册中心条目中声明许可证。
work.finder官方发布者
实时职位空缺与薪资统计:俄罗斯、白俄罗斯、哈萨克斯坦、德国、法国等。AI 翻译

com.mambabuilt
通过 Apify 服务,按公司名称从海关提单记录中查找美国进口商及其海外供应商。

由 GitHub 账号 gdangalov 发布
一个远程 MCP 服务器,帮助助手按格式、JavaScript、认证和价格等条件查找有文档的网页抽取服务,并记录最终选用的服务。

由 GitHub 账号 Nero-Engine 发布
由 Apify 托管的远程 MCP 服务器,按你的 CPV 代码和关键词为 TED 上的欧盟公开招标评分匹配,并提供往届中标者与价格。

由 GitHub 账号 theluckystrike 发布
通过证书透明度(certspotter、crt.sh)进行被动子域名枚举,并进行DNS检查。AI 翻译
{ "mcpServers": { "domain-finder": { "type": "streamable-http", "url": "https://domain-finder-theta.vercel.app/api/mcp" } }}{ "mcpServers": { "domain-finder": { "command": "npx", "args": ["-y", "mcp-remote", "https://domain-finder-theta.vercel.app/api/mcp"] } }}query ─▶ generate ─▶ check availability ─▶ rank ─▶ results (AI + rules) (RDAP) (0–100 score)cron ─▶ due-queue ─▶ check ─▶ transition? ─▶ alert (deleting | available) (next_check_at) (watch_events) deduped via `alerts`# any Postgres will dodocker run -d --name df-pg -e POSTGRES_PASSWORD=domainfinder \ -e POSTGRES_USER=domainfinder -e POSTGRES_DB=domainfinder \ -p 5433:5432 postgres:16-alpine
cp .env.example .env.local # set DATABASE_URL + CRON_SECRETnpm run db:push # create the tablesnpm run devcurl -H "authorization: Bearer $CRON_SECRET" localhost:3000/api/cron/pollnpm testnpm installnpm run dev # http://localhost:3000cp .env.example .env.local# then set AI_GATEWAY_API_KEY=...// request{ "query": "vegan meal delivery", "tlds": [".com", ".io"], "useAi": true }
// response{ "query": "...", "results": [ { "domain": "...", "score": 92, "availability": {...}, ... } ], "meta": { "generated": 45, "checked": 45, "aiUsed": false, "availabilityProvider": "rdap", "tookMs": 1200 } }