Skip to main content

MCP server for comprehensive documentation lifecycle management

Project description

Documentation Manager

PyPI version Python Version License

Comprehensive documentation lifecycle management powered by an MCP (Model Context Protocol) server. Automates documentation creation, maintenance, quality assessment, and synchronization for software projects.

Features

  • Automatic change detection - Track code changes and affected documentation
  • Link validation - Find broken links and missing assets
  • Quality assessment - Evaluate docs against 7 quality criteria
  • Symbol tracking - TreeSitter-based code symbol extraction (Python, Go, TypeScript, Rust)
  • Dependency mapping - Automatic code-to-docs relationships
  • Platform detection - Auto-detect MkDocs, Sphinx, Hugo, Docusaurus, etc.
  • Documentation migration - Restructure docs with git history preservation

Installation

Claude Code Plugin (Recommended)

The doc-management plugin provides an interactive documentation workflow with specialized agents and quick commands, powered by the doc-manager MCP server.

Install:

# Add the marketplace
/plugin marketplace add arimxyer/doc-manager-mcp

# Install the plugin (automatically configures MCP server)
/plugin install doc-manager@doc-manager-suite

What you get:

  • @doc-expert - Documentation expert who analyzes state and directs next steps
  • @doc-writer - Content specialist who creates/updates docs
  • /doc-status, /doc-sync, /doc-quality - Quick commands for common workflows

Example workflow:

You: "Set up documentation management"
Claude: [Invokes @doc-expert to detect platform and initialize]

You: "/doc-sync"
Claude: [Detects changes, updates docs via @doc-writer, validates, updates baselines]

You: "Check quality before release"
Claude: [Runs quality assessment and shows actionable findings]

See the Claude Code Plugin guide for details.


Standalone MCP Server

For using the MCP server without the plugin.

Claude Code:

claude mcp add doc-manager --scope project -- uvx doc-manager-mcp

Claude Desktop:

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "doc-manager": {
      "command": "uvx",
      "args": ["doc-manager-mcp"]
    }
  }
}

Restart your client. Your AI assistant can then use the 8 doc-manager tools directly.

Other MCP clients:

See Installation Guide for local development setup and alternative installation methods.

Quick Start

With Claude Code plugin:

You: "Set up documentation management for this project"
You: "/doc-sync"

With any MCP client:

Ask your AI assistant to initialize documentation management, check sync status, or validate quality. The AI will use the appropriate tools (docmgr_init, docmgr_sync, etc.) automatically.

See Quick Start Guide for complete workflows and examples.

MCP Server Tools

The doc-manager MCP server provides 8 tools for documentation management:

  • docmgr_init - Initialize doc-manager for a project (modes: existing, bootstrap)
  • docmgr_detect_changes - Detect code/doc changes (read-only, never writes baselines)
  • docmgr_detect_platform - Auto-detect documentation platform (MkDocs, Sphinx, Hugo, etc.)
  • docmgr_validate_docs - Check for broken links, missing assets, invalid code snippets
  • docmgr_assess_quality - Evaluate documentation against 7 quality criteria
  • docmgr_update_baseline - Update all baselines atomically (repo, symbols, dependencies)
  • docmgr_sync - Orchestrate change detection + validation + quality + baseline updates
  • docmgr_migrate - Restructure/migrate documentation with git history preservation

See Tools Reference for complete API documentation.

Architecture

Baseline System

Doc-manager maintains 3 baseline files in .doc-manager/memory/:

  1. repo-baseline.json - File checksums and metadata
  2. symbol-baseline.json - TreeSitter code symbols (functions, classes, config fields)
  3. dependencies.json - Code-to-docs dependency mappings

Workflow:

1. docmgr_init              → Create initial baselines
2. (make code changes)
3. docmgr_detect_changes    → Detect changes (read-only)
4. (update documentation)
5. docmgr_update_baseline   → Refresh baselines

Or use docmgr_sync mode="resync" to combine steps 3-5.

Configuration

Example .doc-manager.yml:

platform: mkdocs
use_gitignore: true
exclude:
  - "tests/**"
sources:
  - "src/**/*.py"
docs_path: docs
metadata:
  language: Python
  created: '2025-01-19T20:00:00'
  version: '2.0.0'

See Configuration Reference for all options.

Development

Running tests

# All tests
uv run pytest

# Unit tests only
uv run pytest tests/unit/

# With coverage
uv run pytest --cov=doc_manager_mcp

Running the server locally

# Install in development mode
pip install -e .

# Run server (stdio transport)
doc-manager-mcp

# Or with uv
uvx --from . doc-manager-mcp

Linting

# Ruff (linter + formatter)
uv run ruff check .
uv run ruff format .

# Pyright (type checker)
uv run pyright

Adding new tools

  1. Create implementation in doc_manager_mcp/tools/
  2. Define Pydantic model in doc_manager_mcp/models.py
  3. Register tool in doc_manager_mcp/server.py with @mcp.tool
  4. Add tests in tests/unit/ and tests/integration/
  5. Update documentation

Documentation

License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

doc_manager_mcp-1.2.6.tar.gz (371.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

doc_manager_mcp-1.2.6-py3-none-any.whl (178.2 kB view details)

Uploaded Python 3

File details

Details for the file doc_manager_mcp-1.2.6.tar.gz.

File metadata

  • Download URL: doc_manager_mcp-1.2.6.tar.gz
  • Upload date:
  • Size: 371.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for doc_manager_mcp-1.2.6.tar.gz
Algorithm Hash digest
SHA256 55409a7f9c6e60df82ec792f296d106c96016633201d115c005d87e194382854
MD5 b1255113854fd60671f0501bb1f84243
BLAKE2b-256 5e409c373fe7ea18130c4bfbf03340b4aed721c9eb5213d6a42634dc0121c88f

See more details on using hashes here.

Provenance

The following attestation bundles were made for doc_manager_mcp-1.2.6.tar.gz:

Publisher: publish.yml on arimxyer/doc-manager-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file doc_manager_mcp-1.2.6-py3-none-any.whl.

File metadata

  • Download URL: doc_manager_mcp-1.2.6-py3-none-any.whl
  • Upload date:
  • Size: 178.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for doc_manager_mcp-1.2.6-py3-none-any.whl
Algorithm Hash digest
SHA256 677bc9761bafe6bde47874faa1f9419856f69655f56f201502fda050671cf9d8
MD5 a242eebbffdd5172c3f028bde84d5b20
BLAKE2b-256 d401b58cef0f78a7802ca141089c56a917d4499710041becb44d9a720666a67d

See more details on using hashes here.

Provenance

The following attestation bundles were made for doc_manager_mcp-1.2.6-py3-none-any.whl:

Publisher: publish.yml on arimxyer/doc-manager-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page