domainavail について
domainavailは、ドメイン登録前に候補名を調べる人向けのツールです。DNS、RDAP、WHOISで一括確認し、利用可能に見える名前の登録確認や価格表示も行いますが、登録はしません。
主な機能
- 01ドメイン候補の一括確認
- 02DNS、RDAP、WHOISの利用
- 03利用状況と確認根拠の報告
- 04レジストラの価格とオファー表示
- 05TLD展開と保存名への対応
活用シーン
- 01設定したTLDで候補名を絞り込む場面
- 02利用可能な名前の購入先を比較する場面
MCP 対応
MCP サーバーは一括確認用の `check_domains` ツールを公開します。TLD、レジストラ確認、詳細な根拠、保存済みドメインを指定できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
1掲載時のツール一覧 · 1 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| tlds | array | いいえ | この呼び出しの tlds。 |
| saved | array | いいえ | この呼び出しで保存された内容。 |
| confirm | boolean | いいえ | この呼び出しの確認フラグ。 |
| details | boolean | いいえ | この呼び出しの詳細。 |
| domains | array | はい | この呼び出しのドメイン。 |
詳細
domainavail
候補にしたい名前のリストがあるとします。その中で実際に登録できるのはどれでしょうか。domainavail はリスト全体を一度に確認します。候補名を渡すと、それぞれに一連の公開チェックを行い、空いているように見える名前、すでに取得されている名前、そして空いている名前については価格と購入先を知らせます。完全な読み取り専用で、登録、予約、変更は一切行いません。
名前の確認方法
まず名前を正規化します(スキームとパスを取り除き、小文字に変換します)。ドットのない名前は、設定済みの各 TLD に展開します。完全なドメイン名はそのまま確認します。展開された各名前は、次の手順で確認されます。
- DNS 委任 — 名前に NS レコードがある場合は委任されているため、
takenになります。ENOTFOUND/ENODATAは委任されていないことを示します。それ以外の DNS エラーが発生した場合は、名前は不明のままです。 - RDAP — 200 は名前が登録済みであることを示し(
taken)、有効期限イベントはexpiresとして報告されます。削除保留中のステータスには、being deleted; may become available soonという注記が付きます。404 は名前が空いているように見えることを示します。 - WHOIS フォールバック — TLD に RDAP がない場合、または RDAP が失敗した場合に使用します。
No match/NOT FOUND/No Data Foundに一致するテキストは空いているように見えることを示し、レコードがあればtaken、WHOIS の失敗はunknownになります。 - レジストラによる確認 — 空いているように見える名前は、設定済みのレジストラが確認しない限り
likely_availableのままです。レジストラには Name.com → Cloudflare → Spaceship → Porkbun の順で問い合わせ、いずれかが確定的な回答を返すまで続けます。その場合、名前はavailableになり(レジストラがプレミアムと判定した場合はpremium: trueが付き、価格が提示されていればその価格も付きます)、reserved、またはtakenになります。
ステータスは available、likely_available、taken、reserved、unknown です。
出力は 1 つの JSON オブジェクトです。ステータスごとの件数を含む summary、入力順の results(ただし、saved ドメインは saved: true としてマークされ、先頭に表示されます)、ドメイン名ではない入力や展開上限を超えた入力の skipped リスト、そして warnings が含まれます。details: true を指定すると、各結果には evidence も含まれます。これは DNS、RDAP、WHOIS、レジストラが返した内容を手順ごとに記録したものです。
設定
すべての設定は DOMAINSCOUT_* 環境変数で行います。
DOMAINSCOUT_TLDS— 短い名前を展開する TLD(デフォルトはcom,net,ai)。呼び出しごとのtlds引数で上書きできます。DOMAINSCOUT_REGISTRARS— オファーと確認に使用するレジストラを絞り込むカンマ区切りリスト。DOMAINSCOUT_MAX_CONCURRENCY— 並列チェック数(デフォルトは 10)。DOMAINSCOUT_PER_HOST_CONCURRENCY— デフォルトは 2。この再構築版では値を解析しますが、個別には適用されません(明示的な簡略化)。DOMAINSCOUT_TIMEOUT_MS— リクエストごとのタイムアウト(デフォルトは 10000)。DOMAINSCOUT_MAX_DOMAINS— 展開上限(デフォルトは 500、最大 10000)。超過した名前は、理由over DOMAINSCOUT_MAX_DOMAINSとともにskippedに追加されます。DOMAINSCOUT_CONFIRM_MAX— 1 回の呼び出しでレジストラに確認する名前の最大数(デフォルトは 50)。DOMAINSCOUT_DNS— DNS 手順のオン/オフ(デフォルトはオン)。DOMAINSCOUT_DNS_SERVERS— カスタム DNS サーバー。DOMAINSCOUT_PRICES— 価格オファーのオン/オフ(デフォルトはオン)。DOMAINSCOUT_AFFILIATE— 受け付けます(デフォルトはオン)。ここでの購入リンクは通常のリンクで、アフィリエイト用テンプレートは含まれません。- レジストラのキー:
DOMAINSCOUT_NAMECOM_USERNAME/DOMAINSCOUT_NAMECOM_TOKEN、DOMAINSCOUT_CLOUDFLARE_ACCOUNT_ID/DOMAINSCOUT_CLOUDFLARE_API_TOKEN、DOMAINSCOUT_SPACESHIP_API_KEY/DOMAINSCOUT_SPACESHIP_API_SECRET、DOMAINSCOUT_PORKBUN_API_KEY/DOMAINSCOUT_PORKBUN_SECRET_KEY。各レジストラのキーは、そのレジストラにのみ送信されます。
価格は Porkbun の公開価格 API と Cloudflare の価格ミラーから取得し、安い順に並べられます。オファーは {registrar, price, renewal?, url} です。
エンドポイントの出典
RDAP の検索では https://rdap.org/domain/<domain> を使用します
(エンドポイントの選択として明記)。レジストラの確認用
エンドポイントと 2 つの価格情報ソースの URL は
再構成したものであり、その旨を明記しています。Cloudflare の検索
URL https://www.cloudflare.com/domains/search/?q=<domain>
は文書化された例で、Porkbun のチェックアウト URL は
同じ考え方に基づいてこちらで作成したものです。
ツール
check_domains— ドメイン名が登録可能かどうかを、価格と登録可能な ドメインの購入先とともに確認します。引数:domains(必須の文字列配列、 1~1,000 件)、tlds(任意の文字列配列)、confirm(任意のブール値、デフォルトは true)、details(任意のブール値、デフォルトは false)、saved(任意の文字列配列)。検証に失敗するとdomains must be an array of 1 to 1000 namesが返されます。正規化後に 空になるエントリーは、理由not a domain nameとともにskippedに 含まれます。
CLI
npx @reneturcios/domainavail check_domains '{"domains":["example","widget.com"],"details":true}'
npx @reneturcios/domainavail --version
出力はツールの結果テキストです(上記の JSON)。終了コード:成功時は
0、実行時エラー(検証エラーを含む)時は 1、使用方法のエラー時は 2。
MCP サーバー
npx -y @reneturcios/domainavail mcp
MCP クライアントの設定:
{
"mcpServers": {
"domainavail": {
"command": "npx",
"args": ["-y", "@reneturcios/domainavail", "mcp"]
}
}
}
Docker
docker run -i ghcr.io/cloudcorprecords/domainavail
docker run --rm ghcr.io/cloudcorprecords/domainavail check_domains '{"domains":["widget.com"]}'
開発
npm install
npm run build # tsc -> dist/
npm test # tsx --test test/*.test.ts (injected fakes only, no network)
npm run dev # run the CLI from source
ライセンス
MIT — Copyright (c) 2026 Rene Turcios
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。