使用说明
项目简介
本项目是一个基于 Model Context Protocol (MCP) 的服务器,旨在为大型语言模型 (LLM) 应用提供清晰、结构化的网页内容。它使用 Readability 算法从网页中提取核心内容,去除广告、导航和其他干扰信息,并将其转换为 Markdown 格式,方便 LLM 理解和处理。
主要功能点
- 网页内容提取: 使用 Readability 算法智能提取网页正文,过滤掉广告、侧边栏、页眉页脚等非必要内容。
- HTML to Markdown 转换: 将提取的 HTML 内容转换为结构清晰的 Markdown 格式,降低 token 使用量,提升 LLM 处理效率。
- 元数据提取: 提取网页标题、描述、作者和站点名称等元数据,提供更丰富的上下文信息。
- 易于集成: 作为 MCP 服务器,可以方便地与支持 MCP 协议的 LLM 客户端集成。
安装步骤
-
克隆仓库 在本地克隆仓库代码:
git clone https://github.com/jmh108/MCP-server-readability-python.git cd MCP-server-readability-python -
创建并激活虚拟环境 为了隔离项目依赖,建议创建并激活虚拟环境:
python -m venv venv source venv/bin/activate # Linux/macOS venv\Scripts\activate # Windows -
安装依赖 安装项目所需的 Python 库:
pip install -r requirements.txt
服务器配置
要将此 MCP 服务器配置到 MCP 客户端,您需要在客户端的 MCP 配置文件中添加以下服务器配置信息。这告诉 MCP 客户端如何启动和连接到 'readability' 服务器。
{ "mcpServers": { "readability": { "command": "fastmcp", // MCP 服务器启动命令 "args": ["run", "server.py"], // MCP 服务器启动参数,指定运行 server.py 文件 "env": {} } } }
基本使用方法
-
启动服务器 在项目根目录下,运行以下命令启动 MCP 服务器:
fastmcp run server.py或者使用开发模式启动,方便调试:
fastmcp dev server.py -
调用 'extract_content' 工具 使用 MCP 客户端向服务器发送请求,调用 'extract_content' 工具并提供目标网页 URL。以下是一个使用 'curl' 的示例:
curl -X POST http://localhost:8000/tools/extract_content \ -H "Content-Type: application/json" \ -d '{"url": "https://example.com/article"}'服务器将返回 JSON 格式的响应,包含提取的网页标题、Markdown 内容和元数据。
信息
分类
网页与API