A comprehensive Model Context Protocol (MCP) server that provides full access to Doxygen's documentation generation capabilities. This server enables AI assistants like Claude to generate, configure, and manage documentation for any supported programming language through a clean, powerful interface.
Refer to the docs/ directory in this repository for more comprehensive documentation.
The Doxygen MCP Server automates the generation of documentation from source code comments, parsing information about classes, functions, and variables to produce output in formats like HTML and PDF. By simplifying and standardizing the documentation process, it enhances collaboration and maintenance across diverse programming languages and project scales.
- Project Management: Initialize and configure Doxygen projects with intelligent defaults
- Multi-Language Support: Full support for C/C++, Python, PHP, Java, C#, JavaScript, and more
- Documentation Generation: Generate comprehensive documentation in multiple formats
- Validation & Analysis: Check documentation coverage and identify missing documentation
- Diagram Generation: Create UML diagrams, inheritance graphs, and call graphs
- Configuration Management: Advanced Doxyfile creation and management
Primary Support:
- C, C++, Python, PHP
Extended Support:
- Java, C#, JavaScript, Objective-C, Fortran, VHDL, IDL
Additional Support (via extension mapping):
- Batch, PowerShell, Bash, Perl, Go, and more
- HTML (with interactive navigation)
- LaTeX and PDF
- XML (for further processing)
- RTF (Rich Text Format)
- Man pages
- DocBook
- Python 3.11+
- Doxygen (required) - Installation guide
- uv package manager - Installation guide
- Graphviz (optional, for diagrams) - Installation guide
- LaTeX (optional, for PDF) - Installation guide
- Claude Desktop or Claude for Windows
# Ubuntu/Debian
sudo apt-get install doxygen
# macOS
brew install doxygen
# Windows
# Download from https://www.doxygen.nl/download.html# Clone repository
git clone <repository-url>
cd doxygen-mcp
# Install with uv
uv syncEdit your Claude Desktop configuration file:
- Windows:
%APPDATA%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
Add Doxygen MCP to mcpServers:
{
"mcpServers": {
"doxygen-mcp": {
"command": "uv",
"args": [
"--directory",
"/absolute/path/to/doxygen-mcp",
"run",
"doxygen-mcp"
],
"env": {}
}
}
}Windows Example:
{
"mcpServers": {
"doxygen-mcp": {
"command": "C:\\Users\\YourName\\.local\\bin\\uv.exe",
"args": [
"--directory",
"D:\\dev\\doxygen-mcp",
"run",
"doxygen-mcp"
],
"env": {}
}
}
}Close and reopen Claude Desktop to load the new MCP server.
In Claude, try:
What MCP tools do you have available?
You should see Doxygen MCP tools listed.
Create a Doxygen project for my C++ codebase at /path/to/project
Claude will initialize a Doxygen project with appropriate configuration.
For comprehensive documentation, see:
- Installation & Usage: USING.md
- Troubleshooting: BUGS.md
- Contributing: CONTRIBUTING.md
See CONTRIBUTING.md for contribution guidelines.
This project is licensed under the GNU General Public License version 3 (GPLv3). See COPYING.md for the full license text.
For bug reports and troubleshooting, see BUGS.md.
- Real-time documentation preview
- Integration with popular IDEs
- Custom theme support
- Advanced search capabilities
- Multi-repository documentation
- CI/CD integration helpers
- Performance analytics
- Documentation quality scoring
- v1.0.0: Initial release with full MCP support for all features of Doxygen up to and including version 1.14.0.
For more information about Doxygen itself, visit doxygen.nl.