使用说明

项目简介

MCPdoc 是一个基于 Model Context Protocol (MCP) 的文档服务器,旨在为大型语言模型 (LLM) 应用提供结构化的文档知识访问能力。它通过读取和解析 'llms.txt' 文件中定义的文档源,将这些文档转化为可被 LLM 客户端检索和利用的资源。

主要功能点

  • 文档资源托管与管理:支持通过简单的 'llms.txt' 格式定义和管理多个文档来源,例如网站文档、API 文档等。
  • 文档内容检索工具:提供 'list_doc_sources' 和 'fetch_docs' 工具,允许 LLM 客户端查询可用的文档源列表,并根据 URL 获取文档内容。
  • 灵活的配置方式:支持通过 YAML、JSON 配置文件或命令行参数灵活配置文档源,满足不同场景的需求。
  • 标准 MCP 协议:遵循 MCP 协议标准,易于与各种 MCP 客户端集成,为 LLM 应用提供标准化的文档服务接口。

安装步骤

  1. 确保你的 Python 环境已配置完成。
  2. 使用 pip 命令安装 mcpdoc:
    pip install mcpdoc

服务器配置

MCP 服务器需要配置后才能被 MCP 客户端调用。客户端需要配置服务器的启动命令和参数。以下是 MCPdoc 服务器的典型配置信息(JSON 格式),客户端可以根据此配置连接到 MCPdoc 服务器:

{
  "server_name": "mcpdoc-server",
  "type": "stdio",
  "command": "mcpdoc",
  "args": ["--urls", "https://langchain-ai.github.io/langgraph/llms.txt", "LangGraph:https://langchain-ai.github.io/langgraph/llms.txt"]
}

配置参数说明:

  • 'server_name': 服务器的名称,可以自定义,用于在客户端标识不同的 MCP 服务器。
  • 'type': 指定 MCP 服务器使用的传输协议。 'stdio' 表示使用标准输入输出流进行通信,这是一种常用的本地进程间通信方式。
  • 'command': 启动 MCPdoc 服务器的命令。 这里设置为 'mcpdoc',前提是 'mcpdoc' 命令已经被添加到系统的环境变量中,可以直接在命令行中执行。
  • 'args': 传递给 'mcpdoc' 命令的参数列表。
    • '--urls': 指定文档来源的 URL。可以配置多个 URL,每个 URL 可以是简单的链接,或者使用 '名称:链接' 的格式,为文档源指定一个名称。
    • 在上面的例子中,配置了两个文档源:
      • 'https://langchain-ai.github.io/langgraph/llms.txt': 一个匿名的文档源,没有指定名称。
      • 'LangGraph:https://langchain-ai.github.io/langgraph/llms.txt': 一个名为 "LangGraph" 的文档源。

注意: 实际使用时,'args' 中的 URL 可以替换为你需要使用的文档源 'llms.txt' 文件的 URL。

基本使用方法

  1. 启动 MCPdoc 服务器
    • 你可以使用 'claude code' 集成的方式启动,如 README.md 中 Claude Code 部分所示。
    • 或者,你也可以直接在命令行中使用 'mcpdoc' 命令启动服务器,并根据需要添加配置文件路径或文档源 URL 参数,例如:
      mcpdoc --urls https://example.com/llms.txt MyDocs:https://another-example.com/docs/llms.txt
  2. 配置 MCP 客户端
    • 在你的 MCP 客户端应用中,根据上述 “服务器配置” 部分的 JSON 示例,配置连接到 MCPdoc 服务器的信息。 确保 'command' 和 'args' 参数与你启动服务器的方式一致。
  3. 使用文档检索工具
    • 在 LLM 应用中,首先调用 'list_doc_sources' 工具,获取可用的文档源列表及其名称和 URL。
    • 然后,根据需要,调用 'fetch_docs' 工具,并传入目标文档的 URL,即可获取该 URL 对应的文档内容(Markdown 格式)。
    • 获取到的文档内容可以作为上下文信息提供给 LLM,辅助 LLM 进行问答、文档摘要等任务。

信息

分类

数据库与文件