使用说明
项目简介
hide-mcp 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在为大型语言模型 (LLM) 客户端提供安全且功能丰富的上下文服务。它集成了文件编辑工具和 Bash Shell 工具,允许 LLM 客户端在隔离的沙箱环境中执行代码操作和文件管理任务。此服务器特别针对需要与代码项目进行交互的 LLM 应用场景设计,例如代码生成、调试和自动化任务。
主要功能点
- 资源管理 (Resources): 提供对 "Hide Projects" 的抽象资源访问,虽然示例中只列出了 "New Hide Project",但设计上支持列出和访问多个项目资源。
- 工具注册和执行 (Tools):
- String Replace Editor (文件编辑工具): 允许 LLM 客户端查看、创建和编辑文件,支持行号显示、目录浏览、字符串替换、行插入和编辑历史记录等功能。
- Bash (Bash Shell 工具): 提供持久化的 Bash Shell 环境,支持常用 Linux/Python 包、后台进程和输出截断,使 LLM 客户端能够执行 shell 命令。
- 标准 MCP 协议: 通过 JSON-RPC 协议与客户端通信,支持 Stdio 和 SSE 传输协议,并遵循 MCP 服务器规范进行会话管理和能力声明。
- 沙箱环境: 使用 e2b 沙箱技术隔离执行环境,确保安全性和可控性。
安装步骤
-
安装 Claude Desktop 客户端 (如果需要与 Claude 集成):
- 根据您的操作系统 (MacOS 或 Windows) 找到 Claude Desktop 的配置文件 'claude_desktop_config.json'。
- MacOS: '~/Library/Application\ Support/Claude/claude_desktop_config.json'
- Windows: '%APPDATA%/Claude/claude_desktop_config.json'
-
配置 MCP 服务器:
- 打开 'claude_desktop_config.json' 文件。
- 在 '"mcpServers"' 字段下添加 "hide-mcp" 服务器的配置信息。
- 根据您的需求选择 "Development/Unpublished Servers Configuration" (开发/未发布服务器配置) 或 "Published Servers Configuration" (已发布服务器配置)。
服务器配置 (JSON 格式)
以下是 "Development/Unpublished Servers Configuration" 的配置示例,适用于开发和调试阶段。您需要将 '/path/to/hide-mcp' 替换为 hide-mcp 仓库在您本地文件系统中的实际路径。
"mcpServers": { "hide-mcp": { "command": "uv", "args": [ "--directory", "/path/to/hide-mcp", "run", "hide-mcp" ] } }
- server name (服务器名称): 'hide-mcp' - 服务器的唯一标识符,在客户端配置中引用。
- command (启动命令): 'uv' - 用于运行 Python 包和虚拟环境的工具 (这里假设您使用 'uv' 来运行服务器)。
- args (命令参数): 启动命令的参数列表。
- '--directory': 指定 hide-mcp 仓库的根目录,'uv' 将在该目录下查找并运行程序。请替换为实际路径。
- 'run': 'uv' 命令的子命令,用于运行指定的 Python 包。
- 'hide-mcp': 要运行的 Python 包名称,对应仓库中的 'hide-mcp' 包。
基本使用方法
- 启动 MCP 服务器: 根据您选择的配置方式,Claude Desktop 客户端将会在需要时启动 hide-mcp 服务器。
- 客户端请求资源和工具: LLM 客户端 (例如配置了 hide-mcp 的 Claude) 可以通过 MCP 协议请求服务器提供的资源列表和工具列表。
- 客户端调用工具: LLM 客户端可以调用服务器注册的工具 (例如 "bash" 或 "str_replace_editor"),并传递相应的参数来执行操作。
- 服务器处理请求并返回响应: hide-mcp 服务器接收客户端的请求,执行相应的操作 (例如运行 Bash 命令或编辑文件),并将结果以 JSON-RPC 响应的形式返回给客户端。
调试
如需调试 hide-mcp 服务器,可以使用 MCP Inspector 工具,详情请参考 README.md 中的 "Debugging" 部分。
信息
分类
开发者工具