基本能力
产品定位
Hanzo MCP 是一个开发工具,旨在通过 MCP 协议提供代码管理和项目开发的高级功能,支持多种编程语言和工具集成。
核心功能
- 代码理解与分析:通过文件访问和模式搜索分析代码库。
- 代码修改:在权限控制下对文件进行针对性编辑。
- 命令执行:支持多种语言的命令和脚本执行,具有改进的错误处理和 shell 支持。
- 文件操作:通过 shell 命令管理文件,具备安全控制。
- 项目分析:理解项目结构、依赖和框架。
- Jupyter Notebook 支持:读取和编辑 Jupyter Notebook,包括单元格和输出处理。
- 向量搜索:支持多种嵌入提供者的语义代码搜索。
适用场景
- 代码库的探索和分析
- 代码修改和重构
- 项目依赖和结构分析
- 语义代码搜索
- Jupyter Notebook 的管理和编辑
工具列表
| 工具名称 | 描述 |
|----------|------|
| read_files
| 读取一个或多个文件,支持编码检测 |
| write_file
| 创建或覆盖文件 |
| edit_file
| 对文本文件进行基于行的编辑 |
| directory_tree
| 获取目录的递归树视图 |
| get_file_info
| 获取文件或目录的元数据 |
| search_content
| 在文件内容中搜索模式 |
| content_replace
| 替换文件内容中的模式 |
| run_command
| 执行 shell 命令 |
| run_script
| 使用指定解释器执行脚本 |
| script_tool
| 在特定编程语言中执行脚本 |
| project_analyze_tool
| 分析项目结构和依赖 |
| rule_check
| 搜索和检索定义 AI 编码标准的规则 |
| run_mcp
| 管理和交互多个 MCP 服务器 |
| read_notebook
| 从 Jupyter Notebook 中提取和读取源代码 |
| edit_notebook
| 编辑、插入或删除 Jupyter Notebook 中的单元格 |
| symbol_find
| 在文件或目录中查找符号定义 |
| symbol_references
| 在文件或目录中查找符号引用 |
| ast_explore
| 探索和可视化文件的 AST |
| ast_query
| 使用 tree-sitter 查询语言查询 AST |
| symbolic_search
| 执行各种符号搜索操作 |
| vector_index
| 在向量存储中索引文件或目录 |
| vector_search
| 使用语义搜索能力搜索向量存储 |
| vector_delete
| 从向量存储中删除文档 |
| vector_list
| 列出向量存储中的索引文档 |
| think
| 用于复杂推理和分析的结构化空间 |
常见问题解答
- 如何配置 Claude Desktop 使用 Hanzo MCP?
在 Claude Desktop 配置文件中添加 MCP 服务器配置,指定uvx
命令和项目路径。 - 如何启用符号工具支持?
安装可选依赖hanzo-mcp[symbols]
或hanzo-mcp[all]
。 - 如何配置向量搜索的嵌入提供者?
设置相应的环境变量(如VOYAGE_API_KEY
)或安装本地嵌入支持。
使用教程
使用依赖
安装 Python 和 pip,然后运行以下命令安装依赖:
bash
pip install hanzo-mcp[all]
安装教程
- 安装 Hanzo MCP:
bash
pip install hanzo-mcp - 配置 Claude Desktop 使用 Hanzo MCP,编辑配置文件添加 MCP 服务器配置。
调试方式
运行 Hanzo MCP 并检查日志:
bash
uvx run hanzo-mcp --allow-path /path/to/project
检查输出日志以确认服务正常运行。