Skip to main content
Glama
user_guide.md9.01 kB
# 优化版文件夹文档生成MCP服务器 - 用户指南 ## 概述 这是一个功能强大的MCP服务器,专为文件夹结构分析和文档生成而设计。它提供了丰富的功能,包括: - 🔍 **智能项目分析**:深度分析项目结构和文件关系 - 📝 **自动文档生成**:生成README文件和思维导图 - 🚀 **批量处理**:支持多项目批量操作 - ⚡ **性能优化**:双重缓存机制,显著提升处理速度 - 🎨 **灵活模板**:基于Jinja2的自定义模板系统 - 🛡️ **安全可靠**:完整的输入验证和安全控制 - 📊 **进度跟踪**:实时显示操作进度和状态 ## 快速开始 ### 1. 安装依赖 ```bash pip install -r requirements.txt ``` ### 2. 初始化配置 首次使用时,运行交互式配置: ```bash python -m src.cli config ``` 这将引导您完成基本配置设置,包括: - 输出目录设置 - 模板选择 - 缓存配置 - 日志级别等 ### 3. 启动服务器 ```bash # 使用默认配置启动 python -m src.cli start # 指定配置文件 python -m src.cli start --config /path/to/config.yaml # 设置交互级别 python -m src.cli start --interaction-level verbose ``` ### 4. 健康检查 验证服务器是否正常运行: ```bash python -m src.cli health-check ``` ## 命令行界面 ### 基本命令 #### 启动服务器 ```bash python -m src.cli start [options] ``` 选项: - `--config PATH`: 指定配置文件路径 - `--interaction-level LEVEL`: 设置交互级别 (silent/basic/normal/verbose/debug) #### 配置管理 ```bash # 交互式配置 python -m src.cli config # 显示当前配置 python -m src.cli config --show # 重置为默认配置 python -m src.cli config --reset # 验证配置 python -m src.cli config --validate ``` #### 健康检查 ```bash python -m src.cli health-check ``` ### 高级命令 #### 生成文档 ```bash python -m src.cli generate <目录> [选项] ``` 选项: - `--output PATH`: 指定输出目录 - `--template NAME`: 使用指定模板 - `--format FORMAT`: 生成格式 (readme/mindmap/both) 示例: ```bash # 生成完整文档 python -m src.cli generate ./my-project --format both # 只生成README python -m src.cli generate ./my-project --format readme # 指定输出目录 python -m src.cli generate ./my-project --output ./docs ``` #### 分析项目 ```bash python -m src.cli analyze <目录> [选项] ``` 选项: - `--depth NUM`: 分析深度 (默认: 10) - `--export PATH`: 导出分析结果 示例: ```bash # 分析项目结构 python -m src.cli analyze ./my-project # 深度分析并导出 python -m src.cli analyze ./my-project --depth 20 --export ./analysis.json ``` ## 配置选项 ### 基本配置 | 配置项 | 类型 | 默认值 | 说明 | |--------|------|--------|------| | `output_dir` | 目录 | "docs" | 生成的文档保存目录 | | `template_dir` | 目录 | "config/templates" | 模板文件目录 | | `cache_enabled` | 布尔 | true | 是否启用缓存 | | `cache_dir` | 目录 | ".cache" | 缓存文件保存目录 | | `log_level` | 选择 | "INFO" | 日志级别 | | `interaction_level` | 选择 | "normal" | 用户交互程度 | ### 高级配置 | 配置项 | 类型 | 默认值 | 说明 | |--------|------|--------|------| | `auto_confirm` | 布尔 | false | 自动确认所有提示 | | `include_hidden` | 布尔 | false | 处理隐藏文件和目录 | | `max_depth` | 整数 | 10 | 最大递归深度 | | `file_extensions` | 列表 | [] | 文件扩展名过滤 | | `exclude_patterns` | 列表 | ["node_modules", ".git"] | 排除模式 | ### 配置文件示例 ```yaml # 用户配置文件示例 output_dir: "docs" template_dir: "config/templates" cache_enabled: true cache_dir: ".cache" log_level: "INFO" interaction_level: "normal" auto_confirm: false include_hidden: false max_depth: 10 file_extensions: [".py", ".js", ".md", ".json"] exclude_patterns: - "node_modules" - ".git" - "__pycache__" - "*.pyc" ``` ## 交互级别 不同级别提供不同详细程度的用户反馈: - **silent**: 静默模式,不输出任何信息 - **basic**: 只显示关键结果和错误信息 - **normal**: 显示进度和基本信息(默认) - **verbose**: 显示详细操作信息 - **debug**: 显示所有详细信息,包括调试信息 ## 模板系统 ### 内置模板 服务器提供了以下内置模板: 1. **README简单模板** (`readme_simple.md.j2`) - 基本项目结构 - 文件列表 - 简单说明 2. **README详细模板** (`readme_detailed.md.j2`) - 详细项目分析 - 模块说明 - 依赖关系 3. **思维导图模板** (`mindmap.mm.j2`) - 层级结构可视化 - Mermaid格式输出 ### 自定义模板 您可以创建自己的Jinja2模板: 1. 在模板目录中创建`.j2`文件 2. 使用以下变量: - `{{ project_name }}`: 项目名称 - `{{ project_path }}`: 项目路径 - `{{ analysis }}`: 分析结果 - `{{ file_tree }}`: 文件树结构 - `{{ modules }}`: 模块信息 模板示例: ```jinja2 # {{ project_name }} ## 项目概述 路径: {{ project_path }} 生成时间: {{ timestamp }} ## 文件结构 {% for file in file_tree %} {{ file.indentation }}{{ file.name }}{% if file.is_dir %}/{% endif %} {% endfor %} ## 模块信息 {% for module in modules %} ### {{ module.name }} {% if module.description %} {{ module.description }} {% endif %} {% endfor %} ``` ## 性能优化 ### 缓存机制 服务器使用双重缓存系统: 1. **内存缓存**: 快速访问最近使用的数据 2. **磁盘缓存**: 持久化缓存,重启后仍然有效 缓存配置: ```yaml cache: memory_size: 100 # 内存缓存大小(MB) disk_enabled: true # 启用磁盘缓存 disk_dir: ".cache" # 磁盘缓存目录 disk_max_size: 500 # 磁盘缓存大小(MB) ttl: 3600 # 缓存过期时间(秒) ``` ### 性能建议 1. **合理设置深度**: `max_depth`设置过大会影响性能 2. **使用排除模式**: 排除不需要的目录(如node_modules) 3. **启用缓存**: 对重复操作有显著性能提升 4. **限制文件类型**: 只处理需要的文件类型 ## 故障排除 ### 常见问题 #### 1. 配置文件错误 ```bash # 验证配置文件 python -m src.cli config --validate # 重置配置 python -m src.cli config --reset ``` #### 2. 权限问题 确保对以下目录有读写权限: - 输出目录 (`output_dir`) - 缓存目录 (`cache_dir`) - 模板目录 (`template_dir`) #### 3. 性能问题 - 检查是否排除了大目录(如node_modules) - 减少分析深度 - 清理缓存:删除`.cache`目录 #### 4. 模板错误 - 检查Jinja2语法 - 验证变量名是否正确 - 查看错误日志 ### 调试模式 启用调试模式获取详细信息: ```bash python -m src.cli start --interaction-level debug ``` 这会显示: - 详细的操作步骤 - 错误堆栈信息 - 性能统计 - 缓存状态 ## 最佳实践 ### 1. 项目组织 - 保持项目结构清晰 - 使用有意义的文件和目录名 - 添加必要的文档和注释 ### 2. 配置管理 - 为不同项目使用不同配置 - 定期备份配置文件 - 使用版本控制管理配置 ### 3. 性能优化 - 根据项目大小调整配置参数 - 定期清理缓存 - 监控性能指标 ### 4. 安全考虑 - 不要处理敏感文件 - 使用排除模式避免处理临时文件 - 定期检查生成的文档内容 ## 高级用法 ### 1. 批量处理 ```python # 批量处理多个项目 projects = [ {"path": "./project1", "output": "./docs1"}, {"path": "./project2", "output": "./docs2"} ] for project in projects: # 处理每个项目 pass ``` ### 2. 自定义分析器 扩展分析功能: ```python # 自定义文件分析器 def custom_analyzer(file_path): # 自定义分析逻辑 return analysis_result ``` ### 3. 插件系统 服务器支持插件扩展,可以: - 添加新的分析器 - 创建自定义模板 - 集成外部工具 ## API参考 ### MCP工具 服务器提供以下MCP工具: 1. `generate_readme`: 生成README文件 2. `generate_mindmap`: 生成思维导图 3. `analyze_project`: 分析项目结构 4. `batch_generate`: 批量生成文档 5. `list_templates`: 列出可用模板 详细API文档请参考[API参考](api_reference.md)。 ## 更新日志 ### v2.0.0 (当前版本) - ✨ 新增用户交互系统 - ⚡ 性能优化和缓存机制 - 🎨 灵活的模板系统 - 🛡️ 增强的安全控制 - 📊 实时进度跟踪 - 🧪 完整的测试覆盖 ### v1.0.0 - 🎉 初始版本 - 📝 基本文档生成功能 - 🔍 项目结构分析 - 💾 基础缓存支持 ## 社区和支持 - 📖 [完整文档](https://docs.example.com) - 🐛 [问题反馈](https://github.com/example/folder-docs-mcp/issues) - 💬 [讨论区](https://github.com/example/folder-docs-mcp/discussions) - 📧 [邮件支持](mailto:support@example.com) ## 许可证 本项目采用MIT许可证,详情请查看[LICENSE](../LICENSE)文件。

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/kscz0000/Zhiwen-Assistant-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server