使用说明

项目简介

'quick-mcp-example' 是一个基于 Model Context Protocol (MCP) 的服务器示例,展示了如何构建一个能够提供文档搜索和分析能力的 MCP 服务器。该服务器集成了 ChromaDB 向量数据库,允许用户通过自然语言查询文档内容,并支持通过工具和 Prompt 模板扩展 LLM 应用的功能。

主要功能点

  • 文档资源管理: 托管 PDF 文档资源,客户端可以列出和读取这些文档。
  • 工具调用: 提供 'query_document' 工具,允许 LLM 客户端查询向量数据库,实现基于文档的问答 (RAG)。
  • Prompt 模板: 预设 'deep_analysis' 和 'extract_key_information' Prompt,支持用户对文档进行深层分析和信息提取。
  • 标准 MCP 协议: 使用 JSON-RPC over Stdio 与客户端通信,符合 MCP 协议规范。

安装步骤

  1. 克隆仓库:

    git clone https://github.com/ALucek/quick-mcp-example.git
    cd quick-mcp-example
  2. 创建 ChromaDB 数据库: 按照 'MCP_setup.ipynb' 的指引,创建向量数据库并导入 PDF 文档。

  3. 创建并激活虚拟环境:

    # 使用 uv (推荐)
    uv venv
    source .venv/bin/activate  # On macOS/Linux
    # OR
    .venv\Scripts\activate     # On Windows
  4. 安装依赖:

    uv sync

服务器配置

MCP 客户端需要配置以下信息来连接到 'quick-mcp-example' 服务器。

{
  "server name": "document-search-mcp",
  "command": "python",
  "args": ["mcp_server.py"]
}
  • 'server name': 服务器名称,用于客户端识别。
  • 'command': 启动服务器的命令,这里使用 'python'。
  • 'args': 启动命令的参数,指定服务器脚本为 'mcp_server.py'。

基本使用方法

  1. 启动 MCP 服务器: 在仓库根目录下,运行 'python mcp_server.py'。
  2. 启动 MCP 客户端: 在仓库根目录下,运行 'python client.py mcp_server.py'。
  3. 在客户端中输入查询或使用命令:
    • 输入自然语言问题进行文档搜索。
    • 使用 '/resources' 命令列出可用文档资源。
    • 使用 '/resource document://pdf/xxx' 命令读取指定文档内容。
    • 使用 '/prompts' 命令列出可用 Prompt 模板。
    • 使用 '/prompt deep_analysis 主题分析' 命令执行 Prompt 模板。

信息

分类

数据库与文件