Skip to main content

Architectural Decision Records (ADRs)

This directory contains the Architectural Decision Records for the DocuMCP project - an intelligent MCP server for GitHub Pages documentation deployment.

ADR Index

ADRTitleStatusDateSummary
001MCP Server Architecture using TypeScript SDKAccepted2025-01-14Core server architecture decision using TypeScript MCP SDK with modular, stateless design
002Multi-Layered Repository Analysis Engine DesignAccepted2025-01-14Comprehensive repository analysis through multiple layers: file system, language ecosystem, content, metadata, and complexity assessment
003Static Site Generator Recommendation Engine DesignAccepted2025-01-14Multi-criteria decision analysis framework for intelligent SSG recommendations with confidence scoring
004Diataxis Framework Integration for Documentation StructureAccepted2025-01-14Integration of Diataxis framework as foundational information architecture for all generated documentation
005GitHub Pages Deployment Automation ArchitectureAccepted2025-01-14Comprehensive deployment orchestration with SSG-specific workflows, security best practices, and performance optimization
006MCP Tools API Design and Interface SpecificationAccepted2025-01-14Six core MCP tools providing comprehensive documentation workflow coverage with robust validation and error handling
007MCP Prompts and Resources Integration for AI AssistanceAccepted2025-01-14Native MCP prompts and resources for guided workflows and content access, leveraging built-in protocol capabilities (Implemented 2025-12-12)
008Intelligent Content Population Engine for Diataxis DocumentationAccepted2025-01-23Project-aware content generation engine that transforms repository analysis into contextually relevant Diataxis documentation (Fully Implemented, Verified 2026-01-16)
009Content Accuracy and Validation Framework for Generated DocumentationAccepted (Phase 2.5 superseded by ADR-014)2025-01-14Comprehensive accuracy assurance system with confidence scoring, reality-check validation, and interactive correction workflows. Phase 2.5 (LLM-enhanced semantic analysis) superseded by ADR-014 in favor of MCP Sampling.
010MCP Resource Pattern RedesignAccepted2025-01-14Redesigned resource patterns for improved efficiency and context management
011CE-MCP CompatibilityAccepted2025-01-14Compatibility with CE-MCP directive for improved token efficiency
012Priority Scoring System for Documentation Drift DetectionAccepted2025-01-14Multi-factor priority scoring system for documentation drift that considers complexity, usage, change magnitude, coverage, staleness, and feedback
013Release Pipeline and Package Distribution ArchitectureAccepted2025-01-14Automated release pipeline with npm publishing, conventional commits, automated changelog generation, and quality gates (Implemented)
014Removal of Server-Side LLM Dependency in Favor of MCP SamplingAccepted2026-04-30Removes the bundled LLM client and DOCUMCPLLM* env vars; defers semantic features to MCP Sampling. Supersedes Phase 2.5 of ADR-009. Tracks #106-#110 in milestone v0.6.0.
015Multi-Language AST Analysis via Tree-sitter Parser RegistryAccepted2026-04-30Lazy-loaded tree-sitter parser registry covering Python, Go, Rust, Java, Ruby, Bash, and YAML. Extends ADR-002. Tracks #112 in milestone v0.7.0.
016SSG Adapter Plugin Pattern for Recommendation, Configuration, and DeploymentAccepted2026-04-30Pluggable SSGAdapter interface replacing hard-coded enums in recommend-ssg, generate-config, and deploy-pages. Extends ADR-003. Tracks #122, #123 in milestone v1.0.0.
017Standalone CLI Surface for Non-MCP WorkflowsAccepted2026-04-30Adds documcp-cli binary mirroring tool names; thin transport over the existing handlers. Tracks #126 in milestone v1.0.0.
018Deploy Target Adapter Pattern for GitHub Pages, Vercel, Netlify, and Cloudflare PagesAccepted (revisits ADR-005 alternatives)2026-04-30Pluggable DeployTargetAdapter interface symmetric to ADR-016; medium depth (config + opt-in CLI). Vercel ships first; Netlify and Cloudflare Pages are help-wanted. Tracks D1-D4 in milestone v1.0.0.

ADR Process

This project follows the Architectural Decision Record (ADR) process as defined by Michael Nygard. Each ADR documents a significant architectural decision made during the project's development.

ADR Template

Each ADR follows a consistent structure:

  • Status: Proposed, Accepted, Deprecated, or Superseded
  • Context: The situation and requirements that led to the decision
  • Decision: The actual architectural decision made
  • Alternatives Considered: Other options that were evaluated
  • Consequences: Positive and negative outcomes of the decision
  • Implementation Details: Technical specifics and code examples where relevant

Decision Categories

Our ADRs are organized into the following categories:

Foundation Architecture (ADRs 001-002)

  • Core server architecture and technology choices
  • Repository analysis engine design

Intelligence & Recommendation (ADRs 003)

  • Static site generator recommendation algorithms
  • Decision-making frameworks

Content & Structure (ADRs 004, 008, 009)

  • Documentation framework integration
  • Information architecture decisions
  • Intelligent content population and generation
  • Content accuracy and validation frameworks

Deployment & Integration (ADRs 005-006)

  • GitHub Pages deployment automation
  • MCP tools API design

AI & Assistance (ADR 007)

  • MCP prompts and resources for guided workflows

Key Architectural Principles

Based on our ADRs, DocuMCP follows these core architectural principles:

1. Methodological Pragmatism

  • Evidence-based decision making with explicit confidence scoring
  • Systematic verification processes for all recommendations
  • Clear acknowledgment of limitations and uncertainty

2. Standards Compliance

  • Full adherence to MCP specification requirements
  • Industry best practices for static site generation
  • Proven frameworks like Diataxis for information architecture

3. Modular Design

  • Clear separation of concerns between analysis, recommendation, generation, and deployment
  • Extensible architecture supporting future enhancements
  • Stateless operation for consistency and reliability

4. Intelligent Automation

  • Deep repository analysis for informed decision making
  • Context-aware configuration generation
  • Performance-optimized deployment workflows

5. Developer Experience

  • Intuitive MCP tools API with comprehensive validation
  • Clear error messages and troubleshooting guidance
  • Progressive complexity from simple to advanced use cases

Decision Timeline

The ADRs were developed during the planning phase of DocuMCP, establishing the architectural foundation before implementation. The decisions build upon each other:

  1. Foundation (ADR-001): Established TypeScript/MCP SDK as the core platform
  2. Analysis (ADR-002): Defined multi-layered repository analysis approach
  3. Intelligence (ADR-003): Specified recommendation engine architecture
  4. Structure (ADR-004): Integrated Diataxis framework for quality documentation
  5. Deployment (ADR-005): Designed automated GitHub Pages deployment system
  6. Interface (ADR-006): Specified comprehensive MCP tools API

Confidence and Validation

Each ADR includes confidence assessments and validation strategies:

  • High Confidence Decisions: Technology choices with strong ecosystem support (TypeScript/MCP SDK)
  • Medium Confidence Decisions: Framework integrations with proven track records (Diataxis)
  • Validated Assumptions: Architectural patterns tested through prototype development
  • Risk Mitigation: Explicit identification and mitigation strategies for each decision

Future Considerations

Our ADRs acknowledge areas for future evolution:

  • Machine Learning Integration: Potential for AI-powered content analysis and recommendations
  • Performance Optimization: WebAssembly modules for intensive analysis operations
  • Extended SSG Support: Community-contributed static site generator profiles
  • Advanced Deployment: Multi-environment and blue-green deployment capabilities

References


Last Updated: April 30, 2026
Total ADRs: 18
Status: ADRs 001-013 Accepted and Implemented; ADRs 014-018 Accepted and pending implementation (tracked under milestones v0.6.0 / v0.7.0 / v1.0.0)
Latest Verification: ADR-008 DevOps templates verified 2026-01-16; ADRs 014-018 added 2026-04-30