Skip to content

Professional documentation generator MCP server with multi-language AST analysis, OpenAPI 3.0, and sales-ready documentation

License

Notifications You must be signed in to change notification settings

ThaLoc0one/documentation-mcp-server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📚 Documentation MCP Server

A Model Context Protocol (MCP) Server for generating professional documentation with support for multiple frameworks.

✨ Features

  • 🔍 Deep Code Analysis - AST-based Multi-Language Analysis
    • TypeScript/JavaScript: TypeScript Compiler API
    • Python: Native Python AST module
    • Go: Go parser & AST
    • PHP: Regex-based analysis + PHP 8+ Features
    • Extracts classes, functions, interfaces, methods, properties
    • PHP 8+: Enums, Traits, Attributes
    • Captures JSDoc/Docstrings/Go Doc/PHPDoc and calculates documentation coverage
    • Analyzes imports/exports and module dependencies
  • 🌍 Multi-Language Projects - Automatic detection and parallel analysis of multiple languages
  • 📊 Project Analysis - Automatic code analysis for TypeScript, JavaScript, Python, Go, PHP
  • 🏗️ Structure Generation - Creates complete documentation scaffolds
  • ✍️ Page Editor - Creates and edits individual documentation pages
  • 📖 API Documentation - Generates API docs from code comments
  • 🌐 Static Site Builder - Builds static websites for hosting
  • 📄 PDF Export - Converts documentation to PDF
  • 👀 Live Preview - Local development server

🛠️ Supported Frameworks

  • Docusaurus (React-based, modern, various templates)
  • MkDocs (Python-based, Markdown-focused, simple)
  • Sphinx (Python, very powerful, for complex projects)

🚀 Quick Start

  1. Install globally:

    npm install -g documentation-mcp-server
  2. Configure in Claude Desktop (see SETUP.md):

    {
      "mcpServers": {
        "docs": {
          "command": "npx",
          "args": ["-y", "documentation-mcp-server"]
        }
      }
    }
  3. Start using the documentation tools in Claude!

📦 Tools

docs_analyze_project

Analyzes project structure and performs deep code analysis.

Parameters:

  • projectPath (string, required) - Path to project
  • language (enum, optional) - Programming language (typescript, javascript, python, go, rust, java, csharp)
  • deep (boolean, optional, default: true) - Enables deep code analysis

Deep Analysis Features:

  • 📦 Extracts Classes/Structs, Interfaces, Functions, Enums, Type Aliases
  • 🔍 Captures Methods, Properties, Constructors with complete details
  • 📝 Analyzes JSDoc/Docstrings/Go Doc and calculates documentation coverage
  • 🔗 Tracks Imports/Exports and Module Dependencies
  • 📊 Generates summary statistics
  • 🎯 Multi-Language Support:
    • ✅ TypeScript/JavaScript (TypeScript Compiler API)
    • ✅ Python (Native Python AST)
    • ✅ Go (go/parser & go/ast)
    • ✅ PHP v2 (nikic/php-parser AST) - New! 100% accurate
      • Namespaces & Use-Statements
      • Union/Intersection/Nullable Types
      • Enums, Traits, Attributes (PHP 8+)
      • Framework Detection:
        • CodeIgniter 3/4 (Controller, Model)
        • Laravel (Illuminate*)
        • Symfony (Symfony*)
        • MVC Pattern Recognition
      • Route Detection: 🚀
        • Convention-based: /controller/method/{param}
        • Attribute-based: #[Get('/')], #[Post('/')]
        • HTTP Methods: GET, POST, PUT, PATCH, DELETE
        • Parameter Types & Required/Optional Status
      • Middleware Detection: 🔒
        • Laravel: #[Middleware('auth')]
        • Symfony: #[IsGranted('ROLE_ADMIN')]
        • CodeIgniter 4: #[Filter('auth')]
        • CodeIgniter 3: @middleware (Docblocks)
        • Class-Level & Method-Level
        • Middleware Parameters
      • OpenAPI 3.0 Export: 📋
        • Auto-generates Swagger/OpenAPI specs
        • Routes → Paths conversion
        • Middleware → Security Schemes
        • JSON & YAML format support
    • ✅ PHP v1 (Regex-based) - Fallback
    • 🌍 Automatic Multi-Language Detection
    • 🔜 Rust, Java, C# (planned)

Example Response:

{
  "deepAnalysis": {
    "summary": {
      "totalFiles": 11,
      "totalClasses": 2,
      "totalInterfaces": 23,
      "totalFunctions": 16,
      "overallDocCoverage": 3.17
    }
  }
}

docs_generate_structure

Generates documentation scaffold.

Parameters:

  • projectPath (string, required) - Path to project
  • framework (enum, required) - docusaurus | mkdocs | sphinx
  • template (string, optional) - Template name
  • outputPath (string, optional) - Output path (default: ./docs)

docs_create_page

Creates or edits documentation page.

Parameters:

  • docsPath (string, required) - Path to docs
  • pagePath (string, required) - Relative path to page
  • title (string, required) - Page title
  • content (string, required) - Markdown content

docs_generate_api

Generates API documentation from code.

Parameters:

  • projectPath (string, required) - Path to source code
  • outputPath (string, required) - Output path
  • language (enum, required) - Programming language

docs_build_static

Builds static website.

Parameters:

  • docsPath (string, required) - Path to docs
  • framework (enum, required) - Framework
  • outputPath (string, optional) - Output path (default: ./build)

docs_export_pdf

Exports documentation as PDF.

Parameters:

  • docsPath (string, required) - Path to docs
  • outputPath (string, required) - PDF output path
  • includePages (array, optional) - Specific pages

docs_preview

Starts local dev server.

Parameters:

  • docsPath (string, required) - Path to docs
  • framework (enum, required) - Framework
  • port (number, optional) - Port (default: 3000/8000)

docs_generate_openapi

Generates OpenAPI 3.0 specification from PHP code.

Parameters:

  • projectPath (string, required) - PHP project path
  • outputPath (string, optional) - Output path (default: ./openapi.json)
  • format (enum, optional) - json | yaml (default: json)
  • title (string, optional) - API title
  • version (string, optional) - API version
  • serverUrl (string, optional) - API server URL

docs_generate_sales_docs 🎯 NEW!

Generates professional, sales-ready documentation for CodeCanyon, ThemeForest, etc.

Parameters:

  • projectPath (string, required) - PHP project path
  • outputDir (string, optional) - Output directory (default: ./sales-docs)
  • productName (string, required) - Product name
  • productVersion (string, optional) - Version (default: 1.0.0)
  • author (string, required) - Author/Company
  • description (string, required) - Product description
  • price (string, optional) - Price (e.g., "$49")
  • demoUrl (string, optional) - Live demo URL
  • supportEmail (string, optional) - Support email
  • features (array, optional) - List of key features

Generated Files:

  1. README.md (2.5 KB) - Product overview with features, statistics, requirements
  2. INSTALLATION.md (3.2 KB) - Step-by-step setup guide
  3. API_REFERENCE.md (24.2 KB) - Complete API documentation
  4. CONFIGURATION.md (2.1 KB) - Environment variables, security
  5. EXAMPLES.md (4.0 KB) - Code examples (JS, PHP, Python)
  6. FAQ.md (2.2 KB) - Frequently asked questions
  7. CHANGELOG.md (0.9 KB) - Version history
  8. COMPLETE_DOCUMENTATION.md (39.0 KB) - All-in-one for PDF

Total: ~78 KB professional documentation!

🏗️ Architecture

src/
├── index.ts                    # MCP Server main file
├── core/                       # Core modules for deep analysis
│   ├── types.ts               # Type definitions for all languages
│   └── analyzer.ts            # Abstract base class & factory
├── analyzers/                  # Language-specific analyzers
│   ├── typescript.ts          # TypeScript/JavaScript (TS Compiler API)
│   ├── python.ts              # Python wrapper (subprocess)
│   ├── go.ts                  # Go wrapper (subprocess)
│   └── helpers/               # Native language parsers
│       ├── python_analyzer.py # Python AST parser
│       └── go_analyzer.go     # Go AST parser
└── tools/                      # MCP tool implementations
    ├── analyzeProject.ts      # Deep analysis integration
    ├── generateStructure.ts
    ├── createPage.ts
    ├── generateApi.ts
    ├── buildStatic.ts
    ├── exportPdf.ts
    └── preview.ts

🔬 Deep Analysis Pipeline

  1. File Scanning - Scans project directory
  2. Language Detection - Detects dominant programming language
  3. Analyzer Selection - Selects appropriate AST parser (Factory Pattern)
  4. AST Parsing - Parses code files with language-specific parser
    • TypeScript: TS Compiler API (in-process)
    • Python: Python AST module (subprocess)
    • Go: go/parser & go/ast (subprocess)
  5. Symbol Extraction - Extracts all code symbols (Classes, Functions, etc.)
  6. Documentation Analysis - Captures documentation comments
  7. Summary Generation - Calculates statistics and coverage

📝 License

MIT

About

Professional documentation generator MCP server with multi-language AST analysis, OpenAPI 3.0, and sales-ready documentation

Resources

License

Stars

Watchers

Forks

Packages

No packages published