Skip to main content
Glama

documcp

by tosin2013
user-onboarding.md12 kB
# DocuMCP User Onboarding Guide Welcome to DocuMCP! This comprehensive guide will help you get started with DocuMCP in your own environment, from initial setup to advanced usage patterns. ## 🚀 Quick Start ### Prerequisites - **Node.js**: Version 20.0.0 or higher - **npm**: Version 8.0.0 or higher - **Git**: For repository analysis - **GitHub Account**: For GitHub Pages deployment ### Installation ```bash # Install DocuMCP globally npm install -g documcp # Or install locally in your project npm install documcp --save-dev ``` ### Verify Installation ```bash # Check if DocuMCP is installed correctly documcp --version # Should output: DocuMCP v0.3.4 ``` ## 📋 Basic Usage Patterns ### Pattern 1: Repository Analysis Start by analyzing your repository to understand its structure and documentation needs. ```bash # Basic repository analysis documcp analyze-repository --path ./my-project --depth standard # Quick analysis for large repositories documcp analyze-repository --path ./large-project --depth quick # Deep analysis for comprehensive documentation documcp analyze-repository --path ./complex-project --depth deep ``` **Example Output:** ```json { "success": true, "data": { "id": "analysis_abc123_def456", "structure": { "totalFiles": 150, "totalDirectories": 25, "languages": { ".ts": 100, ".md": 20, ".json": 10 }, "hasTests": true, "hasCI": true, "hasDocs": false }, "recommendations": { "primaryLanguage": "TypeScript", "projectType": "Library", "teamSize": "small" } } } ``` ### Pattern 2: SSG Recommendation Get intelligent recommendations for the best static site generator for your project. ```bash # Get SSG recommendation based on analysis documcp recommend-ssg --analysis-id analysis_abc123_def456 # With user preferences documcp recommend-ssg --analysis-id analysis_abc123_def456 --priority performance --ecosystem javascript # For enterprise users documcp recommend-ssg --analysis-id analysis_abc123_def456 --priority simplicity ``` **Example Output:** ```json { "success": true, "data": { "recommended": "docusaurus", "confidence": 0.92, "reasoning": [ "React-based project detected", "Documentation focus identified", "Team size suitable for Docusaurus" ], "alternatives": [ { "name": "hugo", "score": 0.85, "pros": ["Performance", "Fast builds"], "cons": ["Learning curve", "Go templates"] } ] } } ``` ### Pattern 3: Documentation Structure Setup Create a Diataxis-compliant documentation structure. ```bash # Set up documentation structure documcp setup-structure --path ./docs --ssg docusaurus --include-examples # Minimal structure for existing projects documcp setup-structure --path ./site --ssg hugo --include-examples false ``` ### Pattern 4: Configuration Generation Generate configuration files for your chosen SSG. ```bash # Generate Docusaurus configuration documcp generate-config --ssg docusaurus --project-name "My Project" --output-path ./docs # Generate Hugo configuration documcp generate-config --ssg hugo --project-name "My Site" --output-path ./site ``` ### Pattern 5: Content Population Populate your documentation with intelligent content based on your repository. ```bash # Populate documentation content documcp populate-content --analysis-id analysis_abc123_def456 --docs-path ./docs # With specific focus areas documcp populate-content --analysis-id analysis_abc123_def456 --docs-path ./docs --focus-areas api,examples ``` ### Pattern 6: GitHub Pages Deployment Deploy your documentation to GitHub Pages. ```bash # Deploy to GitHub Pages documcp deploy-pages --repository "user/repo" --ssg docusaurus # With custom domain documcp deploy-pages --repository "user/repo" --ssg docusaurus --custom-domain "docs.example.com" ``` ## 🎯 Common Use Cases ### Use Case 1: New Open Source Project For a new open source project, follow this workflow: ```bash # 1. Analyze your repository ANALYSIS_ID=$(documcp analyze-repository --path . --depth standard | jq -r '.data.id') # 2. Get SSG recommendation documcp recommend-ssg --analysis-id $ANALYSIS_ID --priority community_focused # 3. Set up documentation structure documcp setup-structure --path ./docs --ssg docusaurus --include-examples # 4. Generate configuration documcp generate-config --ssg docusaurus --project-name "My Open Source Project" --output-path ./docs # 5. Populate content documcp populate-content --analysis-id $ANALYSIS_ID --docs-path ./docs # 6. Deploy to GitHub Pages documcp deploy-pages --repository "$(git remote get-url origin | sed 's/.*github.com[:/]\([^.]*\).*/\1/')" --ssg docusaurus ``` ### Use Case 2: Enterprise Documentation For enterprise documentation with specific requirements: ```bash # 1. Analyze with enterprise focus ANALYSIS_ID=$(documcp analyze-repository --path . --depth deep | jq -r '.data.id') # 2. Get enterprise-focused recommendation documcp recommend-ssg --analysis-id $ANALYSIS_ID --priority enterprise_focused # 3. Set up minimal structure documcp setup-structure --path ./enterprise-docs --ssg hugo --include-examples false # 4. Generate enterprise configuration documcp generate-config --ssg hugo --project-name "Enterprise Documentation" --output-path ./enterprise-docs # 5. Populate with enterprise focus documcp populate-content --analysis-id $ANALYSIS_ID --docs-path ./enterprise-docs --focus-areas security,compliance,api ``` ### Use Case 3: API Documentation For API-focused projects: ```bash # 1. Analyze API project ANALYSIS_ID=$(documcp analyze-repository --path . --depth standard | jq -r '.data.id') # 2. Get API-focused recommendation documcp recommend-ssg --analysis-id $ANALYSIS_ID --priority features # 3. Set up API documentation structure documcp setup-structure --path ./api-docs --ssg docusaurus --include-examples # 4. Generate API documentation configuration documcp generate-config --ssg docusaurus --project-name "API Documentation" --output-path ./api-docs # 5. Populate with API focus documcp populate-content --analysis-id $ANALYSIS_ID --docs-path ./api-docs --focus-areas api,examples,integration ``` ## 🔧 Advanced Configuration ### Environment Variables Set up environment variables for advanced configuration: ```bash # GitHub token for deployment export GITHUB_TOKEN="your_github_token" # Custom storage directory for memory export DOCUMCP_STORAGE_DIR="./.documcp" # Development mode for debugging export NODE_ENV="development" ``` ### Memory System Configuration Configure the memory system for learning and pattern recognition: ```bash # Initialize memory system documcp memory initialize --storage-dir ./.documcp # Export memories for backup documcp memory export --format json --output ./documcp-memories.json # Import memories from backup documcp memory import --format json --input ./documcp-memories.json ``` ### User Preferences Set up user preferences for personalized recommendations: ```bash # Set user preferences documcp preferences set --user-id "developer123" --priority performance --ecosystem javascript # Get personalized recommendations documcp recommend-ssg --analysis-id $ANALYSIS_ID --user-id "developer123" # Export preferences documcp preferences export --user-id "developer123" --output ./preferences.json ``` ## 🚨 Troubleshooting ### Common Issues #### Issue 1: Repository Analysis Fails **Problem:** `Permission denied: Cannot read directory` **Solution:** ```bash # Check directory permissions ls -la /path/to/repository # Fix permissions if needed chmod -R 755 /path/to/repository # Run analysis again documcp analyze-repository --path /path/to/repository --depth standard ``` #### Issue 2: SSG Recommendation Returns Low Confidence **Problem:** Low confidence scores in recommendations **Solution:** ```bash # Try deeper analysis documcp analyze-repository --path . --depth deep # Use specific preferences documcp recommend-ssg --analysis-id $ANALYSIS_ID --priority simplicity --ecosystem any # Check for similar projects in memory documcp memory similar --analysis-id $ANALYSIS_ID ``` #### Issue 3: GitHub Pages Deployment Fails **Problem:** Deployment fails with permission errors **Solution:** ```bash # Check GitHub token permissions curl -H "Authorization: token $GITHUB_TOKEN" https://api.github.com/user # Ensure token has repo and pages permissions # Regenerate token with correct permissions if needed # Try deployment again documcp deploy-pages --repository "user/repo" --ssg docusaurus ``` #### Issue 4: Content Population Generates Empty Content **Problem:** No content is generated during population **Solution:** ```bash # Check if repository has sufficient content documcp analyze-repository --path . --depth deep # Ensure documentation structure exists documcp setup-structure --path ./docs --ssg docusaurus # Try with different population level documcp populate-content --analysis-id $ANALYSIS_ID --docs-path ./docs --population-level comprehensive ``` ## 📚 Best Practices ### 1. Repository Organization - Keep your repository well-organized with clear directory structure - Include a comprehensive README.md file - Use consistent naming conventions - Include package.json or equivalent dependency files ### 2. Documentation Structure - Follow Diataxis framework principles - Use clear, descriptive headings - Include code examples and use cases - Keep documentation up-to-date with code changes ### 3. Memory System Usage - Regularly export memories for backup - Use consistent user IDs for preference tracking - Clean up old memories periodically - Share memories across team members for better recommendations ### 4. Deployment Strategy - Test documentation locally before deployment - Use staging environments for testing - Monitor deployment success rates - Keep deployment configurations in version control ## 🔗 Integration Examples ### GitHub Actions Integration ```yaml name: Deploy Documentation on: push: branches: [main] paths: ["docs/**", "src/**"] jobs: deploy: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Setup Node.js uses: actions/setup-node@v4 with: node-version: "20" - name: Install DocuMCP run: npm install -g documcp - name: Analyze Repository id: analyze run: | ANALYSIS_ID=$(documcp analyze-repository --path . --depth standard | jq -r '.data.id') echo "analysis_id=$ANALYSIS_ID" >> $GITHUB_OUTPUT - name: Deploy Documentation run: | documcp deploy-pages --repository ${{ github.repository }} --ssg docusaurus env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} ``` ### Docker Integration ```dockerfile FROM node:20-alpine # Install DocuMCP RUN npm install -g documcp # Set working directory WORKDIR /app # Copy project files COPY . . # Analyze and deploy documentation RUN documcp analyze-repository --path . --depth standard && \ documcp recommend-ssg --analysis-id $(documcp analyze-repository --path . | jq -r '.data.id') && \ documcp deploy-pages --repository $REPOSITORY --ssg docusaurus EXPOSE 3000 CMD ["documcp", "serve", "--port", "3000"] ``` ## 📖 Additional Resources - [API Reference](../api/) - Complete API documentation - [Configuration Guide](../reference/configuration.md) - Detailed configuration options - [MCP Tools Reference](../reference/mcp-tools.md) - MCP tool specifications - [GitHub Pages Deployment](../how-to/github-pages-deployment.md) - Deployment guide - [Troubleshooting Guide](../how-to/troubleshooting.md) - Common issues and solutions ## 🤝 Getting Help - **GitHub Issues**: Report bugs and request features - **GitHub Discussions**: Ask questions and share ideas - **Documentation**: Check the comprehensive documentation - **API Reference**: Explore the complete API documentation Welcome to the DocuMCP community! 🎉

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/tosin2013/documcp'

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