使用说明

项目简介

Documentation-MCP 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在扩展 Claude 等 LLM 应用的能力。它通过 get_docs 工具,允许 Claude 直接在对话中搜索并访问 LangChain, LlamaIndex 和 OpenAI 等热门库的官方文档。

主要功能点

  • 文档搜索工具 (get_docs): 允许 Claude 检索指定库的文档内容。
  • 支持多种文档库: 目前支持 LangChain, LlamaIndex, OpenAI 的官方文档。
  • 智能内容提取: 使用 BeautifulSoup 库解析 HTML 内容,提取文档的主体信息,过滤掉冗余内容。
  • 可配置的返回长度: 允许限制返回的文档片段长度,以适应不同的使用场景和限制。

安装步骤

  1. 安装 uv 包管理器: 按照仓库 README.md 中的指引,安装 uv 包管理器。
    curl -LsSf https://astral.sh/uv/install.sh | sh
  2. 克隆或下载仓库: 将仓库代码克隆或下载到本地。
    git clone https://github.com/sagacious-satadru/Documentation-MCP
    cd Documentation-MCP
  3. 创建并激活虚拟环境: 使用 uv 创建和激活 Python 虚拟环境。
    uv venv
    # 激活虚拟环境 (根据你的操作系统选择命令)
    # On Windows:
    .venv\Scripts\activate
    # On macOS/Linux:
    source .venv/bin/activate
  4. 安装项目依赖: 使用 uv 安装项目依赖。
    uv pip install -e .
  5. 配置 Serper API 密钥:
    • 在项目根目录下创建 '.env' 文件。
    • 在 '.env' 文件中添加你的 Serper API 密钥。你需要在 serper.dev 注册并获取 API 密钥。
      SERPER_API_KEY=your_serper_api_key_here

服务器配置

要让 Claude Desktop 连接到此 MCP 服务器,你需要编辑 Claude 的配置文件 'claude_desktop_config.json',并添加以下服务器配置信息。

配置文件路径:

  • Windows: '/C:/Users/[Your Username]/AppData/Roaming/Claude/claude_desktop_config.json'
  • macOS: '~/Library/Application Support/Claude/claude_desktop_config.json'

添加到 'mcpServers' 字段的配置信息:

"documentation": {
  "command": "uv",
  "args": [
    "--directory",
    "/ABSOLUTE/PATH/TO/YOUR/documentation",  // 替换为你的项目绝对路径
    "run",
    "main.py"
  ]
}

参数说明:

  • server name (documentation): 服务器名称,在 Claude 中引用时使用。
  • command (uv): 启动服务器的命令,这里使用 uv 包管理器来运行 Python 代码。
  • args: 启动命令的参数列表。
    • '--directory': 指定 uv 命令的工作目录为你的项目根目录的绝对路径。请务必将 '/ABSOLUTE/PATH/TO/YOUR/documentation' 替换为你的 'Documentation-MCP' 项目在电脑上的实际绝对路径
    • 'run': uv 命令的子命令,用于运行 Python 模块或脚本。
    • 'main.py': 要运行的 Python 脚本,即 MCP 服务器的入口文件。

配置完成后,重启 Claude Desktop 使配置生效。

基本使用方法

配置完成后,在 Claude 中,你可以通过以下方式调用文档搜索工具:

"Can you look up information about vector stores in LangChain documentation?"

Claude 将会使用 'get_docs' 工具搜索 LangChain 文档中关于 "vector stores" 的信息,并将结果返回给你。

'get_docs' 工具参数:

  • 'query': 搜索关键词,例如 "vector stores", "embedding models"。
  • 'library': 要搜索的文档库,可选值包括 "langchain", "llama-index", "openai"。
  • 'max_chars': 返回的最大字符数(可选,默认为 1000)。

信息

分类

AI与计算