Analyzes JavaScript codebases to extract functions, classes, and methods, providing documentation coverage metrics and generating improvement suggestions
Generates professional markdown documentation from analyzed codebases, creating organized documentation by file and element type
Analyzes Python codebases to extract code elements including functions, classes, and variables, detecting missing docstrings and generating documentation templates
Analyzes TypeScript codebases to extract functions, classes, methods, interfaces, and types, generating comprehensive documentation and detecting missing documentation
Smart Docs MCP Server
A production-ready Model Context Protocol (MCP) server that intelligently analyzes codebases and generates comprehensive documentation. Built with TypeScript and tree-sitter for accurate code parsing.
Features
Multi-Language Support: Analyze TypeScript, JavaScript, and Python codebases
Smart Analysis: Extract functions, classes, methods, interfaces, types, and variables
Documentation Coverage: Calculate documentation coverage metrics
Missing Doc Detection: Identify undocumented code with severity levels (critical, medium, low)
AI-Powered Suggestions: Generate documentation templates and improvement recommendations
Markdown Output: Professional documentation in markdown format
Installation
Usage
As an MCP Server
Add to your MCP client configuration (Claude Desktop):
Windows: %APPDATA%\Claude\claude_desktop_config.json
Then restart Claude Desktop.
Available Tools
1. analyze_codebase
Analyze a codebase or file to extract code elements and calculate documentation coverage.
Input:
Output:
Total files analyzed
Total code elements found
Documentation coverage percentage
Detailed breakdown by file and element
2. generate_documentation
Generate comprehensive markdown documentation for a codebase.
Input:
Output:
Complete markdown documentation
Summary statistics
Organized by file and element type
3. detect_missing_docs
Detect code elements missing documentation with severity classification.
Input:
Severity Levels:
Critical: Public classes, interfaces, and exported functions
Medium: Type aliases and exported types
Low: Private methods and internal variables
Output:
List of missing documentation by severity
Summary statistics by severity and type
Detailed element information
4. suggest_improvements
Analyze existing documentation and suggest improvements.
Input:
Output:
Documentation templates for missing docs
Suggestions for incomplete documentation
Parameter and return value documentation hints
Project Structure
How It Works
Parsing: Uses tree-sitter to parse source code into Abstract Syntax Trees (AST)
Extraction: Identifies code elements (functions, classes, etc.) from the AST
Documentation Detection: Checks for JSDoc, docstrings, and inline comments
Analysis: Calculates coverage and detects missing documentation
Generation: Creates markdown documentation and improvement suggestions
Severity Classification
The server uses intelligent severity classification:
Public APIs (classes, interfaces, exported functions) → Critical
Type definitions and complex types → Medium
Private methods and internal variables → Low
Error Handling
All tools include comprehensive error handling:
Invalid paths return descriptive error messages
Unsupported file types are gracefully skipped
Parse errors include file location and context
Development
Requirements
Node.js >= 18.0.0
TypeScript 5.3+
Dependencies
@modelcontextprotocol/sdk
: MCP protocol implementationtree-sitter
: Code parsing enginetree-sitter-typescript
: TypeScript/JavaScript grammartree-sitter-python
: Python grammarzod
: Schema validation
Testing
A test project is included in the test-project/
directory with sample files demonstrating various documentation scenarios.
License
MIT
Contributing
Contributions are welcome! Please ensure:
Code follows TypeScript best practices
All new features include error handling
Documentation is updated according
local-only server
The server can only run on the client's local machine because it depends on local resources.
Enables intelligent analysis of codebases to generate comprehensive documentation, calculate documentation coverage, and identify missing documentation with severity levels. Supports TypeScript, JavaScript, and Python with AI-powered suggestions for documentation improvements.