WebToolsHub

WebToolsHub

MCP server providing domain name checking and other web tools, accessible via MCP, REST API, and CLI for AI assistants.

Category
访问服务器

README

<div align="center">

WebToolsHub

Free, open-source web tools you can use inside your AI

Every tool runs in your browser, ships with a command line, and connects to Claude, ChatGPT, Gemini and Kimi through MCP and a REST API. First tool live: Domain Name Checker.

Built by Konko Maji · MIT licensed

Works with: Claude · ChatGPT / OpenAI · Gemini · Kimi · Cursor · Windsurf · any MCP client

</div>


The differentiator: use it inside your AI

Most domain checkers are a website and nothing more. WebToolsHub also speaks the Model Context Protocol (MCP) and ships a REST API, so your AI assistant can check domains for you. Connect once, then just ask.

  • Local MCP (mcp_server.py) - stdio, zero dependencies. Works with Claude Desktop, Claude Code, Gemini CLI, Cursor, Windsurf, Kimi, and any MCP client. Nothing to host.
  • Remote MCP (mcp_http.py or the Vercel function /api/mcp) - connect web assistants (Claude.ai, ChatGPT) by URL.
  • REST API (/api/check) - call it from anything. OpenAPI schema in openapi.yaml.

Full setup for every platform: CONNECTORS.md and the on-site Connect to AI guide.

# try the local MCP server by hand
printf '%s\n' \
'{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{}}}' \
'{"jsonrpc":"2.0","id":2,"method":"tools/list"}' \
| python mcp_server.py

Live tools

Tool What it does Status
Domain Name Checker (/domain-name-checker/) Check if a domain name is available across all common TLDs at once, or in bulk. Priority on .com and .in. Live
WHOIS Lookup Registration, registrar, and expiry details Planned
DNS Checker A, MX, NS, TXT records from multiple resolvers Planned
Domain Name Generator Brandable name ideas plus instant availability Planned
SSL Checker Certificate issuer and expiry Planned
Website Speed Test Load time and core web vitals Planned

Domain Name Checker

The flagship tool answers one question: is a domain available to register, or taken?

  • Single check across about 20 common TLDs in one action.
  • Bulk check up to 200 names from a pasted list or an uploaded .txt / .csv file.
  • .com and .in priority, always shown first.
  • Accurate: authoritative RDAP registry data first, DNS cross-check second. Unconfirmed results are marked unknown, never guessed, so no false positives.
  • CSV export, register links, filters, mobile friendly, Material 3 light UI.

Project structure

webtoolshub/                     (repo root = the hub)
  index.html                     hub homepage (lists all tools)
  domain-name-checker/
    index.html                   the Domain Name Checker tool page
  connect/
    index.html                   Connect-to-AI guide (SEO page)
  checker.py                     domain availability logic (RDAP + DNS)
  cli.py                         one CLI for every tool (subcommands)
  server.py                      local dev server (serves pages + /api)
  mcp_server.py                  local MCP server (stdio) for AI clients
  mcp_http.py                    remote MCP server (HTTP) for web AI clients
  api/
    check.py                     Vercel function: REST API
    mcp.py                       Vercel function: remote MCP endpoint
  vercel.json  requirements.txt  one-deploy hosting on Vercel
  openapi.yaml                   REST API schema (GPT Actions / Gemini)
  og-image.svg
  robots.txt  sitemap.xml  llms.txt   (SEO / AEO / GEO)
  CONNECTORS.md                  connect to Claude, ChatGPT, Gemini, Kimi
  .github/workflows/deploy.yml   GitHub Pages deploy
  LICENSE  CONTRIBUTING.md  .gitignore  .nojekyll

Each tool lives in its own folder so it gets its own indexable, keyword-targeted URL. This is the pattern every future tool follows.

Command line

One CLI, one subcommand per tool.

# domain availability (live)
python cli.py domain mycoolsite
python cli.py domain mycoolsite --tlds com,in,io,ai

# bulk from a file, .com and .in only, available ones as CSV
python cli.py domain --file names.txt --tlds com,in --available --csv > free.csv

# read names from stdin, JSON output
cat names.txt | python cli.py domain --file - --json

domain flags: -f/--file, -t/--tlds, -a/--available, --json, --csv, --no-color. Exit code is 0 when at least one domain is available, else 1, so it scripts cleanly.

Run locally with the RDAP backend

python server.py
# hub:  http://localhost:8000/
# tool: http://localhost:8000/domain-name-checker/

The tool page auto-detects the backend and uses RDAP for the most accurate results. On GitHub Pages there is no backend, so it runs fully client-side via DNS-over-HTTPS.

How availability is decided

  1. RDAP registry lookup. 200 means registered (taken), 404 means possibly free.
  2. DNS cross-check. If the domain resolves, it is taken even when RDAP said free (catches TLDs with no RDAP server).
  3. Only with no registration record and no DNS record is a domain available.
  4. If nothing authoritative can confirm it, the result is unknown, never a false positive.

Deploy everything on one URL (Vercel, recommended)

GitHub Pages is static and cannot run the API or remote MCP endpoint. Vercel runs the Python as-is, so one deploy hosts the website, the REST API, and the remote MCP connector on a single domain.

  1. Push this repo to GitHub.
  2. Import it at vercel.com/new (no settings needed, vercel.json is included).
  3. You get:
    • Website: https://webtoolshub-blond.vercel.app/
    • REST API: https://webtoolshub-blond.vercel.app/api/check?name=mycoolsite&tlds=com,in
    • Remote MCP: https://webtoolshub-blond.vercel.app/api/mcp

Cloudflare Pages works too, but Workers run JavaScript, so it would need a small port of checker.py to JS. Ask if you want that version.

Deploy the website only (GitHub Pages)

  1. Create a GitHub repo named webtoolshub and push this folder.
  2. In Settings > Pages, set the source to GitHub Actions.
  3. The included workflow publishes on every push to main.
  4. Live at https://<username>.github.io/webtoolshub/.

One required edit: replace konkomaji with your GitHub username everywhere it appears (index.html, domain-name-checker/index.html, robots.txt, sitemap.xml, llms.txt). Do it in one pass:

grep -rl konkomaji . | xargs sed -i 's/konkomaji/your-github-username/g'

If you later buy a domain, the planned one is webtoolshub.in. Point it at Pages and swap the github.io/webtoolshub base URLs for webtoolshub.in.

SEO, AEO and GEO

  • Per-tool folders and keyword-targeted titles, descriptions, and H1s.
  • Structured data: WebSite, ItemList, WebApplication, BreadcrumbList, HowTo, FAQPage.
  • Open Graph and Twitter cards with a share image.
  • robots.txt (allows AI crawlers), sitemap.xml, and llms.txt.
  • Visible FAQ and how-to content for answer engines.

Requirements

Python 3.8 or newer. No packages to install. No build step.

Fork and self-host

WebToolsHub is fully open source. Fork it, download it, and run your own copy.

  1. Fork https://github.com/konkomaji/webtoolshub or download the ZIP.
  2. Run locally with python server.py, or deploy your own copy to Vercel (see above).
  3. If you host under a different URL, update the base URLs in index.html, domain-name-checker/index.html, connect/index.html, robots.txt, sitemap.xml, and llms.txt.

Contact

  • Feature requests, bug reports, and feedback: work.konkomaji@gmail.com
  • Or open an issue at https://github.com/konkomaji/webtoolshub/issues
  • Author: Konko Maji on LinkedIn

Trademarks (Claude, ChatGPT, OpenAI, Gemini, Kimi, Cursor) belong to their respective owners and are shown only to indicate compatibility.

License

MIT. Free to use, change, and share. See LICENSE. Built by Konko Maji.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选