使用说明
项目简介
Fetch MCP Server 是一个基于 Model Context Protocol (MCP) 的服务器,它提供了一组工具,用于从指定的 URL 获取网页内容并进行格式转换。该服务器旨在为大型语言模型 (LLM) 应用提供从互联网上抓取和处理信息的能力。
主要功能点
- 网页内容抓取: 能够根据提供的 URL 抓取网页的 HTML 源代码。
- JSON 数据获取: 可以从 URL 获取 JSON 格式的数据,并解析为结构化数据。
- 纯文本提取: 从网页中提取纯文本内容,去除 HTML 标签、脚本和样式,方便 LLM 理解和处理。
- Markdown 转换: 将网页内容转换为 Markdown 格式,保留基本的文本格式和结构。
- 自定义请求头: 支持在发送 HTTP 请求时添加自定义的请求头,以满足更复杂的网页抓取需求。
安装步骤
- 克隆仓库: 首先,你需要将仓库克隆到本地:
git clone https://github.com/MCP-Mirror/zcaceres_fetch-mcp.git - 进入目录: 进入克隆下来的仓库目录:
cd zcaceres_fetch-mcp - 安装依赖: 使用 npm 安装项目所需的依赖包:
npm install - 构建项目: 构建 TypeScript 代码到 JavaScript:
npm run build
服务器配置
要将 Fetch MCP Server 集成到 MCP 客户端应用中,你需要在应用的服务器配置文件中添加以下 JSON 配置。请注意,你需要将 '{ABSOLUTE PATH TO FILE HERE}/dist/index.js' 替换为 'dist/index.js' 文件在你本地文件系统中的绝对路径。
{ "mcpServers": { "fetch": { "command": "node", "args": [ "{ABSOLUTE PATH TO FILE HERE}/dist/index.js" // 请替换为 dist/index.js 文件的绝对路径 ] } } }
配置参数说明:
- 'server name': 'fetch' (服务器名称,客户端用此名称来引用该服务器)
- 'command': 'node' (启动服务器的命令,这里使用 Node.js 运行时)
- 'args': 包含启动参数的数组。
- '{ABSOLUTE PATH TO FILE HERE}/dist/index.js': 指向编译后的服务器入口文件 'index.js' 的绝对路径。你需要根据你的实际文件路径进行替换。
基本使用方法
-
启动服务器: 在仓库根目录下,运行以下命令启动 Fetch MCP Server:
npm start服务器将通过 stdio 监听 MCP 客户端的请求。
-
客户端调用: MCP 客户端可以通过 JSON-RPC 协议调用服务器提供的工具。例如,调用 'fetch_html' 工具获取网页 HTML 内容,需要提供 'url' 参数,可选 'headers' 参数。
具体的工具调用方法和参数请参考 MCP 客户端的文档和工具定义。例如,客户端可能会发送如下的 JSON-RPC 请求来调用 'fetch_html' 工具:
{ "jsonrpc": "2.0", "method": "call_tool", "params": { "name": "fetch_html", "arguments": { "url": "https://example.com", "headers": { "User-Agent": "My-MCP-Client" } } }, "id": 1 }服务器会返回包含网页 HTML 内容的 JSON-RPC 响应。其他工具('fetch_json', 'fetch_txt', 'fetch_markdown')的使用方法类似,只需更改 'name' 参数和根据工具定义提供相应的参数。
信息
分类
网页与API