内容
# mcp-site-gateway
[](https://www.npmjs.com/package/mcp-site-gateway)
[](https://github.com/asish-singh/mcp-site-gateway/actions/workflows/ci.yml)
将任何现有的网站转变为可用的 MCP 服务器,让 AI 助手可以搜索和使用它,而不仅仅是读取它。
大多数网站都是为人类眼睛设计的。AI 助手最多可以读取它们,但不能正确搜索或可靠地提取事实。该工具指向一个网站,学习其内容,并将其作为 MCP 服务器提供,这是一种标准插件,允许 Claude 和 ChatGPT 等助手直接与网站合作。
它是与 [agent-readiness-auditor](https://github.com/asish-singh/agent-readiness-auditor)(评估网站)和 [Agentic Web Index](https://asishsingh.in/agentic-web-index/)(排名 200 个网站)一起使用的一个漏斗的修复部分。
## 尝试一个在线网关(1 分钟,无需安装)
使用此工具构建的两个网关在生产环境中运行,为 [asishsingh.in](https://asishsingh.in) 和 [freeyoutubetranscribe.com](https://freeyoutubetranscribe.com) 提供服务。连接其中一个,看看您的网站可以提供什么。
在 Claude 代码中:
```bash
claude mcp add asish --transport http https://gateway.asishsingh.in/asishsingh.in/mcp
```
在 Claude.ai 上,打开设置,然后打开连接器,然后添加自定义连接器,并粘贴相同的地址。Cursor 和 Windsurf 在其设置中接受它作为远程 MCP 服务器 URL。
然后向助手提问,例如“这个网站关于 Agentic Web Index 说了什么?”,并观察它调用 `search_site` 和 `get_page` 而不是爬取。
## 为您的网站构建网关
### 您需要
- 一台带有终端的计算机(Mac 上的 Terminal,Windows 上的 PowerShell)。
- [Node.js](https://nodejs.org) 22.13 或更新版本。使用 `node --version` 检查。如果打印错误或较低的数字,请先从 nodejs.org 安装 LTS 版本。
就是这样。无需下载,无需构建,无需编程知识,下面每个步骤都是复制和粘贴,每个步骤都说明您应该看到的内容。
### 步骤 1,为您的网站构建网关
将 `example.com` 替换为您的网站 URL。
```bash
npx mcp-site-gateway build https://example.com
```
第一次运行会询问 npx 是否安装该软件包,请回答是。然后,构建会礼貌地爬取您的网站(它尊重您的 robots.txt),对于大型网站可能需要几分钟。如果它以打印类似以下内容的摘要结束,则表示构建成功:
```
{ "dir": "gateways/example.com", "pages": 42, "skipped": 3 }
```
您的网站的可搜索索引现在位于 `gateways/example.com/` 文件夹中,该文件夹位于您运行命令的目录中,旁边是 `crawl-report.json`,该文件列出了每个访问或跳过的页面以及原因。
### 步骤 2,将其连接到 Claude 并测试
在同一目录中运行:
```bash
claude mcp add example-gateway -- npx -y mcp-site-gateway serve example.com --out "$PWD/gateways"
```
现在向 Claude Code 询问有关您网站的问题,例如“使用 example-gateway,您的网站关于定价说了什么?”。您应该看到它调用名为 `search_site` 或 `get_page` 的工具,并从您的实际页面回答。这就是整个产品的运行方式。
每个网关都暴露四个工具,`search_site`(全文搜索),`get_page`(单个页面的干净内容),`list_sections`(网站结构)和 `get_site_info`(商业基础知识)。
### 步骤 3,保持更新
当您的网站发生变化时,使用以下命令从同一目录更新索引:
```bash
npx mcp-site-gateway refresh https://example.com
```
## 将其放在互联网上
到目前为止,所有操作都只在您的计算机处于唤醒状态时运行。要创建一个 AI 助手可以随时访问的网关,请在小型服务器上运行相同的工具:
```bash
npx mcp-site-gateway serve --http 8080 --token <secret>
```
一个进程为 `gateways/` 文件夹中的所有网关提供服务。您应该看到类似以下内容的一行:
```
mcp-site-gateway serving 2 gateway(s) on http://127.0.0.1:8080, endpoints /example.com/mcp /other.com/mcp
```
每个网站的端点是 `/<hostname>/mcp`,`/healthz` 列出了正在提供的内容(可作为正常运行时间检查),而 token 标志是私有网关的可选 bearer 保护。[docs/deploy.md](docs/deploy.md) 逐步介绍了两种实际的托管设置,一种是 VPS 后面带有 HTTPS,另一种是 Hostinger 共享托管,后者是上述在线网关的部署方式。
## 帮助代理找到它
一个网关如果没有人发现就没有任何用处。生成两个发现文件:
```bash
npx mcp-site-gateway manifest example.com --endpoint https://gateway.example.com/example.com/mcp
```
这会将 `llms.txt` 和 `agents.json` 写入您的 `gateways/example.com/` 文件夹中。将它们上传到您的网站,`llms.txt` 在网站根目录(因此可以在 `example.com/llms.txt` 访问),而 `agents.json` 在名为 `.well-known` 的文件夹中(可以在 `example.com/.well-known/agents.json` 访问)。它们是告诉 AI 代理正确入口存在且位置的标志。两个在线网站都发布了这两个文件,您可以查看实际示例。
## 如果出现问题
- **`node: command not found`** Node.js 未安装或终端在安装前已打开。请从 nodejs.org 安装,然后打开新的终端窗口。
- **构建发现 0 个页面。** 您的网站可能会阻止自动化访问者(常见于激进的机器人保护)。请在 `gateways/<your-site>/crawl-report.json` 中查看原因,并运行 `npx agent-readiness-auditor <your-site>` 以查看您的网站立场。
- **Claude 未列出网关。** 运行 `claude mcp list` 以确认它已注册。注册存储了网关文件夹的完整路径,因此如果您移动了该文件夹,请删除并重新添加服务器。
- **其他问题。** 请附上您的 `crawl-report.json` 文件并创建一个问题,实际报告有助于改进爬虫。
## 从源代码工作
```bash
git clone https://github.com/asish-singh/mcp-site-gateway
cd mcp-site-gateway
npm install && npm run build
node dist/cli.js --help
```
`npm test` 在本地固定网站上运行测试套件,因此测试永远不会触及网络。`npm run lint` 和 `npm run typecheck` 保持代码正确,CI 在每次推送和拉取请求时运行所有三个。
## 项目文档
第一版规范在 [SPEC.md](SPEC.md) 中,设计决策记录在 [docs/adr/](docs/adr/) 中,变更记录在 [CHANGELOG.md](CHANGELOG.md) 中。MIT 许可。