项目简介

Jina AI MCP 服务器是基于 Model Context Protocol (MCP) 构建的远程应用后端,旨在以标准化方式向大型语言模型 (LLM) 客户端提供丰富的上下文信息和外部功能。它托管并管理各类工具 (Tools),允许 LLM 调用 Jina AI 的 Reader、Embeddings 和 Reranker API,以实现如网页内容提取、网络搜索、图像搜索、文本与图像的嵌入及重排序等功能。

主要功能点

该服务器提供了一系列强大的工具,LLM 可以通过这些工具执行复杂任务:

  • 上下文感知:'primer' 工具提供实时本地化信息,如当前时间、用户位置和网络环境,帮助 LLM 生成更具情境感的响应。
  • 网页内容处理
    • 'read_url':从网页或 PDF 文件中提取并转换为干净、可读的 Markdown 文本,并可选择性地提取所有链接和图片信息。
    • 'capture_screenshot_url':捕获网页的高质量截图,支持截取首屏或整个页面。
    • 'guess_datetime_url':分析网页,精确估算其上次更新或发布的时间,并提供置信度。
  • 智能搜索
    • 'search_web':在整个网络上进行搜索,获取最新的信息、新闻和文章。
    • 'search_arxiv':搜索 arXiv 预印本库中的学术论文和研究资料。
    • 'search_images':在网络上搜索图像,并可选择返回图片链接或直接下载为 Base64 格式。
    • 'parallel_search_web':并行执行多项网络搜索,以获取更全面和多样化的主题覆盖。
    • 'parallel_search_arxiv':并行执行多项 arXiv 搜索,以涵盖更广泛的学术研究视角。
  • 文本与图像处理
    • 'expand_query':基于查询扩展模型,扩展和重写搜索查询,用于更深入和多样化的搜索。
    • 'sort_by_relevance':使用 Jina Reranker API,根据查询的相关性对文档列表进行重排序。
    • 'deduplicate_strings':利用 Jina Embeddings 和子模优化,从字符串列表中获取语义上独一无二的顶 K 个字符串。
    • 'deduplicate_images':使用 Jina CLIP v2 嵌入和子模优化,从图像列表(URL 或 Base64 编码)中获取语义上独一无二的顶 K 个图像。

安装步骤

该服务器主要设计为远程服务,但您也可以选择在本地运行或部署到 Cloudflare Workers。

  • 本地开发运行:
    1. 克隆仓库:'git clone https://github.com/jina-ai/MCP.git'
    2. 进入目录:'cd MCP'
    3. 安装依赖:'npm install'
    4. 启动开发服务器:'npm run start'
  • 部署到 Cloudflare Workers: 您可以点击 Deploy to Workers 按钮,一键部署到您的 Cloudflare Workers 账户。部署后,您将获得一个类似 'jina-mcp-server.<your-account>.workers.dev/sse' 的服务 URL。

服务器配置

Jina AI MCP 服务器作为一个远程服务运行,您需要将其配置到支持 MCP 协议的 LLM 客户端中。

1. 对于直接支持远程 MCP 服务器的客户端 (如 LM Studio, Cursor):

您只需在客户端的 MCP 服务器配置中提供远程 URL 和可选的授权信息。'JINA_API_KEY' 是您在 jina.ai 免费获取的 API 密钥。

{
  "mcpServers": {
    "jina-mcp-server": {
      "url": "https://mcp.jina.ai/sse",
      "headers": {
        "Authorization": "Bearer ${JINA_API_KEY}" // 可选:您的 Jina AI API 密钥
      }
    }
  }
}
  • 'jina-mcp-server':自定义的 MCP 服务器名称。
  • 'url':MCP 服务器的端点 URL。推荐使用 '/sse' (Server-Sent Events) 端点,它支持流式传输和更稳定的连接。
  • 'headers.Authorization':用于 API 身份验证的 Bearer Token。如果您有 Jina AI API 密钥,请替换 '${JINA_API_KEY}' 为您的实际密钥。部分工具需要此密钥才能使用,或获得更高的速率限制。

2. 对于尚不支持远程 MCP 服务器的客户端 (需要本地代理):

如果您的 LLM 客户端无法直接连接远程 MCP 服务器,您可以使用 'mcp-remote' 作为本地代理。首先确保您已安装 Node.js 和 npm。

{
  "mcpServers": {
    "jina-mcp-server": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://mcp.jina.ai/sse",
        "--header",
        "Authorization: Bearer ${JINA_API_KEY}" // 可选:您的 Jina AI API 密钥
      ]
    }
  }
}
  • 'command':用于启动 'mcp-remote' 代理的命令,通常是 'npx'。
  • 'args':传递给 'mcp-remote' 命令的参数列表。
    • 第一个参数是远程 MCP 服务器的 URL('https://mcp.jina.ai/sse')。
    • '--header':用于传递 HTTP 请求头,例如 'Authorization: Bearer ${JINA_API_KEY}' 来包含您的 API 密钥。

基本使用方法

  1. 配置客户端:将上述 MCP 服务器配置添加到您选择的 LLM 客户端(如 Cursor、LM Studio)的设置中。
  2. 启动客户端:确保客户端已正确加载并识别 Jina AI MCP 服务器。
  3. 调用工具:在与 LLM 交互时,LLM 将能够自动识别并调用 Jina AI MCP 服务器提供的工具,例如:
    • 当 LLM 需要获取网页内容时,它可能会自动调用 'read_url'。
    • 当 LLM 需要最新信息时,它可能会调用 'search_web'。
    • 您可以尝试在对话中明确要求 LLM 使用某个工具,例如“请使用 'read_url' 工具读取 [网页链接] 的内容”。

信息

分类

AI与计算