使用说明

项目简介

'mcp-jinaai-reader' 是一个基于 Model Context Protocol (MCP) 构建的服务器,它集成了 Jina AI 的 Reader API。该服务器的主要功能是将网页 URL 转换为 LLM (大型语言模型) 友好的结构化文本,特别优化了文档和网页内容的分析和提取。通过 'read_url' 工具,LLM 客户端可以方便地获取网页内容,用于知识检索、问答等应用。

主要功能点

  • 网页内容提取: 利用 Jina.ai Reader API 高效、全面地提取网页内容。
  • 结构化文本: 提取的文本保留了网页结构,并进行了优化,更适合 LLM 理解和处理。
  • 多种格式支持: 支持 JSON 和流式 (stream) 两种响应格式。
  • 灵活配置: 提供多种可选参数,如缓存控制、超时设置、CSS 选择器等,以满足不同的网页提取需求。
  • 基于 MCP 协议: 遵循 MCP 协议标准,易于与各种 MCP 客户端集成。

安装步骤

  1. 克隆仓库
    git clone https://github.com/spences10/mcp-jinaai-reader.git
    cd mcp-jinaai-reader
  2. 安装依赖 确保已安装 Node.js 和 npm (或 yarn)。运行以下命令安装项目依赖:
    npm install
  3. 构建项目 (可选,但推荐)
    npm run build

服务器配置

MCP 服务器需要配置 Jina AI API 密钥才能正常工作。您需要在 MCP 客户端的服务器配置中指定启动命令和环境变量。以下是通用的配置示例,以 JSON 格式提供:

{
  "mcpServers": {
    "jinaai-reader": {
      "command": "node",
      "args": ["dist/index.js"],
      "env": {
        "JINAAI_API_KEY": "YOUR_JINAAI_API_KEY"  // 替换为您的 Jina AI API 密钥
      }
    }
  }
}

配置参数说明:

  • '"jinaai-reader"': 服务器名称,可以自定义,用于在 MCP 客户端中标识该服务器。
  • '"command": "node"': 启动服务器的命令,这里使用 Node.js 运行环境。
  • '"args": ["dist/index.js"]': 传递给 'node' 命令的参数,指定服务器入口文件。如果未执行 'npm run build',可以使用 '["src/index.ts"]',但需要确保客户端环境可以执行 TypeScript 代码或已安装 'ts-node'。
  • '"env": { "JINAAI_API_KEY": "YOUR_JINAAI_API_KEY" }': 设置环境变量,'JINAAI_API_KEY' 是必需的,请替换 '"YOUR_JINAAI_API_KEY"' 为您在 Jina AI 平台申请的 API 密钥。

注意: 不同的 MCP 客户端配置方式可能略有不同,请参考您使用的 MCP 客户端的文档进行配置。例如,README.md 中提供了 Cline 和 Claude Desktop 的配置示例,您可以参考进行配置。确保 'JINAAI_API_KEY' 环境变量被正确设置,服务器才能成功调用 Jina.ai Reader API。

基本使用方法

  1. 启动服务器 在配置好 MCP 客户端后,启动 'jinaai-reader' 服务器。服务器将在标准输入/输出 (stdio) 上监听 MCP 客户端的请求。

  2. 调用 'read_url' 工具 在 MCP 客户端中,可以使用 'read_url' 工具来提取网页内容。以下是一个调用示例,展示了 'read_url' 工具的参数及其作用:

    {
      "jsonrpc": "2.0",
      "method": "call_tool",
      "params": {
        "name": "read_url",
        "arguments": {
          "url": "https://example.com/document.html",  //  要提取内容的网页 URL (必需)
          "no_cache": true,                             //  (可选) 忽略缓存,获取最新内容 (默认为 false)
          "format": "json",                             //  (可选) 响应格式,可选 "json" 或 "stream" (默认为 "json")
          "timeout": 30,                               //  (可选) 网页加载超时时间,单位秒
          "target_selector": ".article",                //  (可选) CSS 选择器,仅提取匹配选择器的元素内容
          "wait_for_selector": ".content-loaded",      //  (可选) CSS 选择器,等待该选择器出现后才开始提取
          "remove_selector": ".ads",                    //  (可选) CSS 选择器,排除匹配选择器的元素
          "with_links_summary": true,                   //  (可选) 在响应末尾添加链接汇总
          "with_images_summary": true,                  //  (可选) 在响应末尾添加图片汇总
          "with_generated_alt": true,                  //  (可选) 为缺少 alt 文本的图片生成 alt 文本
          "with_iframe": false                           //  (可选) 是否包含 iframe 内容 (默认为 false)
        }
      },
      "id": 1
    }

    请根据实际需求配置 'read_url' 工具的参数。服务器将返回提取的网页内容,通常以 JSON 格式的文本形式呈现。

通过以上步骤,您就可以成功配置和使用 'mcp-jinaai-reader' 服务器,为您的 LLM 应用提供强大的网页内容提取能力。

信息

分类

网页与API