Provides tools for analyzing git repositories, including commit history analysis, branch comparison, file change detection, and automatic generation of merge request summaries from git logs
Enables automatic generation of comprehensive merge request summaries and descriptions for GitHub pull requests by analyzing commit history and categorizing changes
MCP Merge Request Summarizer
An MCP (Model Context Protocol) tool that automatically generates comprehensive merge request summaries from git logs. This tool analyzes commit history, categorizes changes, and produces structured summaries suitable for merge request descriptions.
🚀 Features
- Automatic Commit Analysis: Analyzes git logs between branches to understand changes
- Smart Categorization: Categorizes commits by type (features, bug fixes, refactoring, etc.)
- Comprehensive Summaries: Generates detailed merge request descriptions with:
- Overview and statistics
- Key changes and significant commits
- Categorized changes (features, bug fixes, refactoring)
- Breaking changes detection
- File categorization and impact analysis
- Estimated review time
- Multiple Output Formats: Supports both Markdown and JSON output
- Flexible Integration: Works standalone or as MCP server
- Cross-Platform: Compatible with Windows, macOS, and Linux
📦 Installation
🚀 Quick Start (Recommended)
- Clone the repository:
- Run the installation script:
- Windows: Double-click
install.bat
or runinstall.bat
in PowerShell - Mac/Linux: Run
chmod +x install.sh && ./install.sh
- Windows: Double-click
- Configure your editor:
- See
QUICK_START.md
for 30-second setup instructions - Or check
configs/README.md
for detailed configuration options
- See
Manual Installation
From PyPI
Note: This package is not yet published to PyPI. For now, use the installation scripts or manual installation.
🔧 Usage
As a Standalone Tool
As an MCP Server
- Configure your MCP client (e.g., Claude Desktop, Cursor, VSCode):
- Set up working directory context (recommended):
- Use the tools and resources through your MCP client interface:
Tools (Actions)
set_working_directory
: Set the agent's working directory contextget_working_directory
: Get the current working directory contextgenerate_merge_request_summary
: Creates full MR summariesanalyze_git_commits
: Provides detailed commit analysis
Resources (Data)
git://repo/status
: Current repository status and informationgit://commits/{base_branch}..{current_branch}
: Commit history between branchesgit://branches
: List of all repository branchesgit://files/changed/{base_branch}..{current_branch}
: Files changed between branches
📊 Example Output
🛠️ Configuration
Quick Configuration (Recommended)
For VSCode/Cursor:
- Open Settings (Ctrl/Cmd + ,)
- For VSCode: Search for "mcp" and click "Edit in settings.json"
- For Cursor: Go to Tools & Integrations → New MCP Server
- Add this configuration:
VSCode (settings.json):
Cursor (GUI or settings.json):
- Name:
merge-request-summarizer
- Command:
python
- Arguments:
["-m", "mcp_mr_summarizer.server"]
Cursor (alternative JSON format):
For Claude Desktop:
- Go to Settings → MCP Servers
- Add new server with this configuration:
Ready-to-Use Config Files
Copy the appropriate configuration from the configs/
folder:
configs/vscode_settings.json
- For VSCodeconfigs/cursor_settings.json
- For Cursorconfigs/claude_desktop_config.json
- For Claude Desktop
See configs/README.md
for detailed setup instructions.
🎯 Customization
Adding Custom Commit Categories
Extend the categorization by modifying the categorize_commit
method:
Customizing File Categories
Add custom file type categories:
🧪 Testing
🤝 Contributing
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature
) - Make your changes
- Add tests for your changes
- Run the test suite
- Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
📝 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
- Built for the Model Context Protocol (MCP) ecosystem
- Inspired by the need for better merge request documentation
- Thanks to all contributors and users
📞 Support
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Documentation: Wiki
Made with ❤️ for developers who want better merge request summaries
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
Automatically generates comprehensive merge request summaries from git logs, analyzing commit history and categorizing changes into structured descriptions. Provides tools to analyze git repositories, compare branches, and create detailed summaries with change categorization, impact analysis, and review time estimates.
Related MCP Servers
- AsecurityAlicenseAqualityAnalyzes git changes in repositories and generates conventional commit messages using OpenAI's GPT models, supporting both staged and unstaged changes with detailed summaries.Last updated -2012MIT License
- -securityAlicense-qualityIntegrates GitLab merge request analysis with Confluence documentation, allowing users to fetch merge request details, analyze code changes, and store analysis results in Confluence pages.Last updated -MIT License
- AsecurityFlicenseAqualityProvides automated Git workflow tools for committing, creating pull requests, and merging with proper GitHub authentication handling. Supports complete Git workflows from commit to merge with dry run capabilities and conventional commit formatting.Last updated -41
- AsecurityAlicenseAqualityAutomatically generates conventional commit messages from staged git changes and checks repository status. Analyzes git diffs to create properly formatted commit messages following conventional commit standards.Last updated -26MIT License