项目简介
WebforAI文本提取MCP服务器是一个基于Cloudflare Workers的应用程序,它利用WebforAI库从指定的网页中提取清洗后的纯文本内容(Markdown格式),并将这些内容通过Model Context Protocol (MCP) 提供给大型语言模型(LLM)客户端。这使得LLM能够方便地访问和处理网页信息。
主要功能点
- 网页内容提取: 能从任何网页URL获取原始HTML内容。
- 转换为Markdown: 将提取的HTML转换为结构化的纯文本Markdown格式,移除冗余信息(如链接、表格、图片可选择转换为文本或隐藏)。
- MCP工具接口: 通过标准MCP JSON-RPC协议暴露一个名为 'extractWebPageText' 的工具,供LLM客户端调用。
- Cloudflare Workers部署: 方便地部署在Cloudflare的全球网络上,实现无服务器运行,具有高可用性和可伸缩性。
- MCP兼容性: 可与支持MCP协议的LLM客户端(如Claude Desktop, Cloudflare AI Playground等)无缝集成。
安装步骤
本项目可以部署到Cloudflare Workers,或者在本地进行开发和测试。
- 克隆仓库: 打开终端,执行以下命令克隆项目代码:
git clone https://github.com/yutakobayashidev/webforai-mcp-server.git cd webforai-mcp-server - 安装依赖: 确保您已安装 Node.js 和 pnpm。执行以下命令安装项目依赖:
pnpm install - 本地开发: 运行开发服务器(通常在 'http://localhost:8787'):
pnpm dev - 部署到Cloudflare Workers:
- 点击仓库README中的 "Deploy to Workers" 按钮,按照指引完成一键部署。
- 或者,确保您已安装并配置Cloudflare Wrangler CLI工具,然后执行 'wrangler deploy' 进行部署。
部署完成后,您将获得一个公开的Cloudflare Worker URL,例如 'webforai-mcp-server.<your-account>.workers.dev'。
服务器配置(供MCP客户端使用)
MCP客户端(如Claude Desktop、Cloudflare AI Playground或其他支持MCP的AI应用)需要配置本服务器的访问地址才能与之通信。本服务器通过 SSE (Server-Sent Events) 传输协议提供MCP服务。
您需要将部署后的Cloudflare Worker URL(或本地开发时的 'http://localhost:8787')加上 '/sse' 路径作为MCP服务器的地址配置到您的MCP客户端中。
- 如果部署在Cloudflare Workers: 将您的Worker URL (例如 'webforai-mcp-server.<您的账户名称>.workers.dev') 与 '/sse' 路径组合。配置地址示例:'https://webforai-mcp-server.<您的账户名称>.workers.dev/sse'
- 如果本地运行: 使用本地服务器地址与 '/sse' 路径组合。配置地址示例:'http://localhost:8787/sse'
具体的配置步骤和界面因MCP客户端而异,请参考您使用的客户端的文档。通常需要在客户端的设置或开发者配置中添加一个新的MCP服务器连接,指定上述地址。
基本使用方法
将本MCP服务器成功配置到您的MCP客户端后,您的LLM就可以通过调用服务器提供的工具来获取网页内容。
本服务器提供一个名为 'extractWebPageText' 的工具。要使用它,您需要在LLM的交互中通过工具调用的方式指定:
- 工具名称: 'extractWebPageText'
- 参数: 一个JSON对象,包含一个名为 'url' 的键,其值是要提取文本的网页地址字符串。例如:
{ "url": "https://www.example.com/some-article" }
LLM客户端会向本服务器发送请求,本服务器将抓取指定URL的网页内容,提取并转换为Markdown格式的纯文本,然后将结果返回给LLM。LLM便可以将这些提取出的文本用于生成回答或执行其他任务。
信息
分类
网页与API