LibScope MCP Server
使用说明(Markdown 格式)
-
项目简介 LibScope 的 MCP 服务器是一个面向 LLM 客户端的后端服务,按 MCP(Model Context Protocol)标准提供资源托管、工具注册与执行、以及 Prompt 模板的定义与渲染。服务器通过 JSON-RPC 与客户端通信,支持多种传输协议(如 stdio、SSE、WebSocket),实现会话管理、能力声明,并为 LLM 应用提供可扩展的上下文服务框架。
-
主要功能点
- 资源管理:对知识库中的文档、文档片段、元数据等进行存储与访问,支持检索与上下文查询。
- 工具注册与执行:注册和调用外部功能,LLM 客户端可通过 MCP 工具调用实现外部能力(如检索、推理、数据变换等)。
- Prompt 模板:定义、渲染和管理提示模板,帮助 LLM 与知识库进行结构化交互。
- JSON-RPC 通信:服务器端实现 MCP 的请求/响应格式,处理请求并返回标准化的 JSON-RPC 响应或通知。
- 会话与能力声明:管理会话、能力(资源、工具、Prompts)的声明,确保客户端正确使用服务器提供的能力。
- 多传输协议与安全性:支持 stdio、SSE、WebSocket 等传输方式,具备会话隔离、权限控制等安全特性。
-
安装步骤
- 安装 Node.js 20 及以上运行环境。
- 安装依赖并构建项目(按仓库提供的常规步骤执行,如 npm install、npm run build)。
- 启动 MCP 服务器(示例命令:npm run dev 或 npm run start,具体端口/配置请参考后续服务器配置)。
- 使用 MCP 客户端连接:将服务器的启动命令和端口信息提供给客户端,通过 MCP 的 JSON-RPC 进行资源、工具和提示的交互。
-
服务器配置(MCP 客户端需要的最低信息) { "server": { "name": "libscope-mcp", "command": "npx", "args": ["-y", "libscope", "serve"] }, "transports": ["stdio", "sse", "websocket"], "resources": { "databasePath": "~/.libscope/libscope.db" }, "tools": [ "search-docs", "ask-question", "get-document", "list-documents", "update-document", "submit-document", "health-check", "reindex-documents" ], "prompts": [ "default" ], "notes": "该配置用于 MCP 客户端连接和调用,server 字段定义启动命令与参数,transports 指定可用传输通道,resources 指向资源存储位置,tools 列出可注册的工具,prompts 定义可渲染的提示模板。MCP 客户端不需要额外的实现细节,仅按该配置连接并通过 MCP API 进行请求。" }
-
基本使用方法
- 启动:在支持的环境中运行服务器,通过提供的启动命令启动 LibScope 的 MCP 服务。
- 连接与使用:将客户端配置中的 server、transports、resources、tools、prompts 等信息传递给 MCP 客户端,客户端即可通过 JSON-RPC 请求获取资源、执行工具、渲染提示等能力。
- 调试与扩展:通过日志输出和错误处理机制监控请求/响应,按需注册新的工具、扩展资源类型和提示模板,以适配不同的 LLM 工作流。
-
运行时注意事项
- 确保本地数据库/知识库文件有合适的权限,避免权限错误阻塞请求。
- MCP 客户端应正确处理返回的 JSON-RPC 响应,按规范解析结果或错误通知。
- 如需扩展传输协议,请遵循 MCP 的多通道设计,并确保对接方能正确切换传输层。
-
相关关键词 本地知识库, 向量检索, JSON-RPC, 提示模板, 工具执行
-
分类 5