使用说明
项目简介
'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 协议规范。
安装步骤
-
克隆仓库:
git clone https://github.com/ALucek/quick-mcp-example.git cd quick-mcp-example -
创建 ChromaDB 数据库: 按照 'MCP_setup.ipynb' 的指引,创建向量数据库并导入 PDF 文档。
-
创建并激活虚拟环境:
# 使用 uv (推荐) uv venv source .venv/bin/activate # On macOS/Linux # OR .venv\Scripts\activate # On Windows -
安装依赖:
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'。
基本使用方法
- 启动 MCP 服务器: 在仓库根目录下,运行 'python mcp_server.py'。
- 启动 MCP 客户端: 在仓库根目录下,运行 'python client.py mcp_server.py'。
- 在客户端中输入查询或使用命令:
- 输入自然语言问题进行文档搜索。
- 使用 '/resources' 命令列出可用文档资源。
- 使用 '/resource document://pdf/xxx' 命令读取指定文档内容。
- 使用 '/prompts' 命令列出可用 Prompt 模板。
- 使用 '/prompt deep_analysis 主题分析' 命令执行 Prompt 模板。
信息
分类
数据库与文件