Deploys the MCP server on Cloudflare's edge network for global distribution, leveraging Workers, D1 Database, R2 Storage, and Durable Objects
Extracts API endpoints and structure from Django web applications
Analyzes Express.js applications to document API endpoints and routes
Detects and documents API endpoints from FastAPI projects
Discovers and documents API endpoints from Flask applications
Integrates with Git repositories for project analysis and documentation generation
Allows analysis of GitHub repositories to extract project structure, dependencies, and codebase metrics
Discovers and documents API endpoints from Spring framework applications
Document Automation
A sophisticated Model Context Protocol (MCP) server that enables AI assistants to automatically analyze codebases and generate comprehensive, professional documentation.
Overview
Document Automation is an intelligent documentation generation system that bridges the gap between AI assistants and code documentation workflows. By implementing the Model Context Protocol (MCP), it allows AI assistants like Claude to seamlessly analyze project structures, extract insights, and generate professional-grade documentation automatically.
Key Features
- Intelligent Codebase Analysis - Deep project structure and dependency analysis
- Professional Documentation Generation - Multi-format output (Markdown, HTML, RST, PDF)
- AI Assistant Integration - Native Claude Desktop and Cursor IDE support
- Multi-Platform Deployment - Local, Docker, and Google Cloud Run ready
- Advanced MCP Tools - 5 specialized analysis and generation tools
- Security-First Design - Built-in validation and safety measures
Architecture
Quick Start
Prerequisites
- Python 3.8+
- Git
- Claude Desktop or Cursor IDE (for AI integration)
Installation
Basic Usage
Once installed, you can use the system through your AI assistant:
The system will automatically:
- Analyze the project structure and dependencies
- Extract key architectural insights
- Generate professional documentation
- Format the output in your preferred style
MCP Tools Reference
analyze_codebase
Performs comprehensive codebase analysis and structure extraction.
Parameters:
path
(string): Local folder path or GitHub repository URLsource_type
(enum):"local"
|"github"
include_dependencies
(boolean): Include dependency analysis (default: true)
Returns:
- Project structure with file hierarchy
- Dependencies and versions
- Codebase metrics and statistics
- Language distribution analysis
Example:
generate_documentation
Creates comprehensive documentation from analyzed codebase.
Parameters:
analysis_id
(string): ID from previous analyze_codebase callformat
(enum):"markdown"
|"html"
|"rst"
|"pdf"
(default: "markdown")include_api_docs
(boolean): Include API documentation (default: true)include_architecture
(boolean): Include architecture diagrams (default: true)include_examples
(boolean): Include code examples (default: true)
Returns:
- Formatted documentation content
- Generation metadata
- Word count and statistics
list_project_structure
Provides detailed project structure with file information.
Parameters:
path
(string): Project pathsource_type
(enum):"local"
|"github"
max_depth
(integer): Maximum traversal depth (default: 5)
Returns:
- Hierarchical file structure
- File sizes and types
- Last modification timestamps
extract_api_endpoints
Discovers and documents API endpoints from web frameworks.
Parameters:
path
(string): Project pathsource_type
(enum):"local"
|"github"
framework
(enum):"auto"
|"fastapi"
|"flask"
|"django"
|"express"
|"spring"
Returns:
- List of discovered endpoints
- HTTP methods and paths
- Parameter documentation
analyze_dependencies
Analyzes project dependencies and generates dependency documentation.
Parameters:
path
(string): Project pathsource_type
(enum):"local"
|"github"
include_dev_dependencies
(boolean): Include development dependencies (default: false)
Returns:
- Dependency list with versions
- Security analysis
- Update recommendations
Configuration
Claude Desktop Integration
- Configure your
claude_desktop_config.json
:
- Restart Claude Desktop
Cursor IDE Integration
- Update your MCP settings:
- Follow the detailed setup guide in
CURSOR_MCP_SETUP_GUIDE.md
Project Structure
Core Components
MCP Server Infrastructure (src/server.py, src/main.py)
- Purpose: Core MCP protocol implementation
- Key Features:
- Tool registration and discovery
- Request/response handling
- Error management and validation
- Async operation support
- Size: 13.2KB server implementation
Analyzers Module (src/analyzers/)
- Base Analyzer (base_analyzer.py, 13.9KB)
- Abstract base class for all analysis operations
- Common analysis patterns and utilities
- File system traversal and parsing
- Codebase Analyzer (codebase_analyzer.py, 7.0KB)
- Project structure analysis
- Dependency extraction
- Language detection and metrics
- Git repository integration
Documentation Generators (src/generators/)
- Standard Generator (documentation_generator.py, 15.5KB)
- Basic documentation generation
- Multiple output formats support
- Template-based rendering
- Professional Generator (professional_doc_generator.py, 37.2KB)
- Advanced formatting and styling
- Enterprise-grade documentation
- Architecture diagrams and visualizations
- Largest file in the project (1,209 lines)
MCP Tools (src/tools/)
- Documentation Tools (documentation_tools.py, 18.5KB)
- Implementation of all MCP tools
- Tool parameter validation
- Response formatting
- Tool Registration (register_tools.py, 2.5KB)
- Dynamic tool discovery
- MCP protocol compliance
- Tool metadata management
Security Layer (src/security/)
- Validation Module (validation.py, 8.2KB)
- Input sanitization
- Path traversal protection
- Security policy enforcement
Type System (src/types.py, 5.1KB)
- Pydantic data models
- Request/response schemas
- Type safety enforcement
Dependencies
Core Framework Dependencies
- mcp - Model Context Protocol implementation
- fastapi - Modern async web framework
- uvicorn[standard] - ASGI server with standard extensions
- pydantic - Data validation and serialization
Documentation & Template Engine
- jinja2 - Template engine for documentation generation
- markdown - Markdown processing and rendering
- pygments - Syntax highlighting for code blocks
File & Data Processing
- aiofiles - Async file operations
- toml - TOML configuration file parsing
- PyYAML - YAML file processing
- python-dotenv - Environment variable management
External Communication
- httpx - Modern async HTTP client
- requests - Traditional HTTP library for compatibility
- gitpython - Git repository analysis and manipulation
Development Support
- typing-extensions - Extended type hints for better IDE support
Total Dependencies: 15 production packages
Deployment Options
Local Development
Docker Deployment
Google Cloud Run
Usage Examples
Basic Codebase Analysis
Ask your AI assistant:
This triggers:
- analyze_codebase tool call
- Automatic structure analysis
- Dependency extraction
- Metrics calculation
Generate Documentation
Ask your AI assistant:
This triggers:
- generate_documentation tool call
- Professional formatting
- Multiple output formats
- Architecture diagrams
API Endpoint Discovery
Ask your AI assistant:
This triggers:
- extract_api_endpoints tool call
- Framework detection
- Endpoint documentation
- Parameter extraction
Development & Testing
Testing Framework
- Unit Tests: tests/test_analyzer.py
- Integration Tests: test_mcp.py, test_mcp_simple.py
- Configuration: tests/conftest.py
Running Tests
Development Setup
Project Metrics
Scale
- Total Files: 134
- Total Lines of Code: 13,231
- Python Files: 20
- Documentation Files: 13 markdown files
- Configuration Files: 5 JSON + 2 YAML files
File Type Distribution
- Python Files: 20 (core functionality)
- Markdown Files: 13 (documentation)
- JSON Files: 5 (configuration)
- YAML Files: 2 (deployment config)
- Shell Scripts: 2 (setup automation)
Largest Components
- Professional Doc Generator: 1,209 lines (37.2KB)
- Documentation Tools: 18.5KB
- Documentation Generator: 15.5KB
- Base Analyzer: 13.9KB
- MCP Server: 13.2KB
Contributing
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
Support
For questions, issues, or feature requests:
- Open an issue on GitHub
- Check the documentation in the
docs/
folder - Review the setup guides for your specific use case
Acknowledgments
- Built on the Model Context Protocol (MCP)
- Integrates with Claude and Cursor IDE
- Uses modern Python async frameworks for optimal performance
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
A sophisticated server that enables AI assistants to automatically analyze codebases and generate comprehensive, professional documentation.
Related MCP Servers
- -securityFlicense-qualityA smart documentation server that provides AI-assisted code improvement and documentation management through Claude Desktop integration.Last updated -10
JSON Resume MCP Serverofficial
AsecurityAlicenseAqualityA server that enhances AI assistants with the ability to update your JSON Resume by analyzing your coding projects, automatically extracting skills and generating professional descriptions.Last updated -9756The Unlicense- -securityAlicense-qualityA server that enables AI assistants like Claude to safely run Python code and access websites, processing data for better AI understanding while providing helpful error messages.Last updated -3GPL 3.0
- -securityFlicense-qualityA local server that provides powerful code analysis and search capabilities for software projects, helping AI assistants and development tools understand codebases for tasks like code generation and refactoring.Last updated -3