Git Analytics MCP Server
Provides comprehensive analytics for Git repositories, including tools for tracking commit history, contributor activity, branch health, file modification patterns, and code churn metrics.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Git Analytics MCP Server give me a summary of top contributors and code churn"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Git Analytics MCP Server
π A comprehensive Model Context Protocol (MCP) server that provides detailed Git repository analytics and insights. Perfect for developers who want to understand their codebase better through data-driven insights.
π Features
Repository Analytics
Comprehensive Stats: Total commits, authors, branches, and code changes
Author Analysis: Contributor rankings, commit patterns, and activity periods
Branch Intelligence: Branch health, ahead/behind status, and activity metrics
File Insights: Most modified files, author contributions per file
Temporal Analysis: Commit frequency, code churn over time
Visual Reports: Beautifully formatted terminal output with colors and emojis
Available Tools
get_repository_overview- Executive summary with key metrics and top contributorsget_repository_stats- Detailed repository statisticsget_author_stats- Complete contributor analysisget_branch_stats- Branch health and comparison metricsget_file_stats- File modification patterns and hotspotsget_commit_history- Detailed commit timeline with filtersget_commit_frequency- Daily commit patterns over timeget_code_churn- Lines added/removed analysis
Related MCP server: MCP Git Analysis Server
π Installation
Prerequisites
Node.js 18+
npm or yarn
Git repository to analyze
Quick Setup
# Clone or create the project
cd ~/git-analytics-mcp-server
# Install dependencies
npm install
# Build the project
npm run build
# Test the server (optional)
npm testDevelopment Mode
# Run in development with auto-reload
npm run devπ Usage
As MCP Server
Add to your MCP client configuration:
{
"mcpServers": {
"git-analytics": {
"command": "node",
"args": ["/path/to/git-analytics-mcp-server/dist/index.js"]
}
}
}Direct CLI Usage
# Install globally
npm install -g .
# Use anywhere
git-analytics-mcpπ Example Analytics
Repository Overview
π REPOSITORY SUMMARY REPORT
ββββββββββββββββββββββββββββββββββββββββββββββββββ
Repository Statistics:
β’ Total Commits: 1,247
β’ Total Authors: 12
β’ Active Branches: 8
β’ Code Changes: +45,678 -12,345
β’ Repository Age: 2023-01-15 to 2024-06-15
Top Contributors:
π₯ John Doe - 456 commits
π₯ Jane Smith - 234 commits
π₯ Bob Wilson - 189 commits
π
Alice Brown - 145 commits
π
Mike Johnson - 123 commits
Recent Activity:
β’ a1b2c3d4 Add new authentication module (John Doe)
β’ e5f6g7h8 Fix critical security vulnerability (Jane Smith)
β’ i9j0k1l2 Update documentation and examples (Bob Wilson)Author Analysis
[
{
"name": "John Doe",
"email": "john@example.com",
"commits": 456,
"insertions": 12340,
"deletions": 3456,
"firstCommit": "2023-01-15T10:30:00Z",
"lastCommit": "2024-06-15T14:22:00Z"
}
]Code Churn Analysis
[
{
"date": "2024-06-01",
"insertions": 234,
"deletions": 45,
"net": 189
},
{
"date": "2024-06-02",
"insertions": 156,
"deletions": 89,
"net": 67
}
]π§ Configuration
Tool Parameters
Most tools accept these common parameters:
path(string): Repository path (default: current directory)days(number): Time range for analysis (default: 30)limit(number): Maximum results to return (default: 50)
Environment Variables
# Set default repository path
export GIT_ANALYTICS_DEFAULT_PATH="/path/to/repo"
# Enable debug logging
export GIT_ANALYTICS_DEBUG=trueπ§ͺ Testing
# Run all tests
npm test
# Run with coverage
npm run test:coverage
# Test specific functionality
npm run test -- --grep "author stats"Test Repository Setup
# Create test repository
mkdir test-repo && cd test-repo
git init
echo "# Test" > README.md
git add . && git commit -m "Initial commit"
# Test the server
node dist/index.jsπ Use Cases
Development Team Analytics
Code Review Insights: Identify files that need more attention
Team Productivity: Track commit patterns and contribution metrics
Technical Debt: Find files with high churn rates
Onboarding: Understand codebase structure and key contributors
Project Management
Release Planning: Analyze recent development velocity
Resource Allocation: Identify knowledge silos and areas needing support
Quality Metrics: Track code stability through churn analysis
Timeline Analysis: Understand development patterns and cycles
Repository Health
Branch Management: Identify stale or problematic branches
File Hotspots: Find files that may need refactoring
Contributor Onboarding: Welcome new team members with context
Historical Analysis: Learn from past development patterns
π Advanced Features
Custom Analytics
Extend the server with custom analytics:
// Add to git-analytics.ts
async getCustomMetric(): Promise<CustomMetric> {
// Your custom analysis logic
}Integration Examples
# Use with GitHub CLI
gh repo list | xargs -I {} git-analytics-mcp --path {}
# Batch analysis
find ~/projects -name ".git" -type d | \
xargs -I {} dirname {} | \
xargs -I {} git-analytics-mcp --path {}π Troubleshooting
Common Issues
"Invalid Git repository"
Ensure you're in a Git repository or provide correct path
Check Git installation:
git --version
"Permission denied"
Verify read access to repository
Check file permissions on .git directory
"No commits found"
Repository may be empty or newly initialized
Try with a repository that has commits
Debug Mode
# Enable verbose logging
DEBUG=git-analytics:* npm start
# Check server connectivity
echo '{}' | node dist/index.jsπ€ Contributing
Fork the repository
Create feature branch:
git checkout -b feature/amazing-featureCommit changes:
git commit -m 'Add amazing feature'Push to branch:
git push origin feature/amazing-featureOpen Pull Request
Development Setup
# Install dev dependencies
npm install
# Run in watch mode
npm run dev
# Lint code
npm run lint
# Format code
npm run formatπ License
MIT License - see LICENSE file for details.
π Acknowledgments
Model Context Protocol for the excellent framework
simple-git for Git operations
chalk for beautiful terminal output
date-fns for date manipulation
Happy Analyzing! πβ¨
For questions, issues, or feature requests, please open an issue on GitHub.
MCP-Server
MCP-Server
Available Tools
3 toolsget_author_statsC
Get detailed statistics for all contributors including commits, code changes, and activity periods
Inputs: path.
get_repository_overviewB
Get a comprehensive overview of the Git repository including stats, top contributors, and recent activity
Inputs: path.
get_repository_statsB
Get detailed repository statistics including commits, authors, branches, and code changes
Inputs: path.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelogβ¦
TDQS
Scored across 3 tools
The tools have significant overlap in purpose, making them hard to distinguish. Both get_repository_overview and get_repository_stats appear to provide repository-level statistics, with get_repository_stats explicitly mentioning 'commits, authors, branches, and code changes' while get_repository_overview mentions 'stats, top contributors, and recent activity'βthese descriptions suggest substantial redundancy. The only clearly distinct tool is get_author_stats, which focuses on contributor-level data.
All tool names follow a consistent verb_noun pattern using snake_case (get_author_stats, get_repository_overview, get_repository_stats). The naming is predictable and readable, with 'get' as the verb and descriptive nouns, showing no deviations in style or convention.
With only 3 tools, the server feels thin for a 'Git Analytics' domain, which typically involves more granular operations like trend analysis, commit filtering, or branch comparisons. While 3 tools can be appropriate for a minimal scope, the overlapping descriptions suggest this might be under-scoped, lacking depth in analytical capabilities.
The tool set is severely incomplete for a Git analytics server. It only provides 'get' operations for statistics, with no tools for filtering, comparing, trending, or analyzing specific aspects like code churn, hot spots, or temporal patterns. This limits agents to basic retrieval without supporting deeper analytical workflows, creating significant gaps in functionality.
Maintenance
Related MCP Connectors
Code intelligence for LLMs. Analyze, search, and retrieve code from any public git repository.
A Model Context Protocol (MCP) application for automated GitHub PR analysis and issue management.β¦
Evaluates any GitHub repository for license risk, maintenance velocity, stars/forks, and security.
Repo intel for AI coding agents: overview, PRs, contributors, hot files, CI, deps. Remote MCP.
Related MCP Servers
- AlicenseBqualityDmaintenanceAnalyzes git repository metrics to understand team health, development patterns, code quality, and collaboration through natural language queries. Provides insights on commit statistics, bus factor, velocity trends, technical debt, and burnout detection.1214 npm1MIT
- FlicenseNot gradedqualityDmaintenanceAnalyzes local Git repositories to provide detailed insights into commit statistics, contributor activity, and frequently changed files. It allows users to query repository history and access structured activity data through the Model Context Protocol.-
- FlicenseNot gradedqualityDmaintenanceEnables analysis of local Git repositories via standard git commands, providing insights like line authorship, commit frequency, code churn, and co-changed files.-
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to analyze local Git repositories with commit logs, diffs, blame, statistics, and branch analysis using native git commands without requiring a GitHub API.66 npmMIT