Git MCP Server
An MCP server for performing Git operations and integrating with GitHub.
Git MCP Server
A Model Context Protocol (MCP) server that provides enhanced Git operations through a standardized interface. This server integrates with the MCP ecosystem to provide Git functionality to AI assistants.
Features
- Core Git Operations: init, clone, status, add, commit, push, pull
- Branch Management: list, create, delete, checkout
- Tag Operations: list, create, delete
- Remote Management: list, add, remove
- Stash Operations: list, save, pop
- Bulk Actions: Execute multiple Git operations in sequence
- GitHub Integration: Built-in GitHub support via Personal Access Token
- Path Resolution: Smart path handling with optional default path configuration
- Error Handling: Comprehensive error handling with custom error types
- Repository Caching: Efficient repository state management
- Performance Monitoring: Built-in performance tracking
Installation
- Clone the repository:
git clone https://github.com/yourusername/git-mcp-v2.git
cd git-mcp-v2
- Install dependencies:
npm install
- Build the project:
npm run build
Configuration
Add to your MCP settings file:
{
"mcpServers": {
"git-v2": {
"command": "node",
"args": ["path/to/git-mcp-v2/build/index.js"],
"env": {
"GIT_DEFAULT_PATH": "/path/to/default/git/directory",
"GITHUB_PERSONAL_ACCESS_TOKEN": "your-github-pat"
}
}
}
}
Environment Variables
GIT_DEFAULT_PATH: (Optional) Default path for Git operationsGITHUB_PERSONAL_ACCESS_TOKEN: (Optional) GitHub Personal Access Token for GitHub operations
Available Tools
Basic Operations
init: Initialize a new Git repositoryclone: Clone a repositorystatus: Get repository statusadd: Stage filescommit: Create a commitpush: Push commits to remotepull: Pull changes from remote
Branch Operations
branch_list: List all branchesbranch_create: Create a new branchbranch_delete: Delete a branchcheckout: Switch branches or restore working tree files
Tag Operations
tag_list: List tagstag_create: Create a tagtag_delete: Delete a tag
Remote Operations
remote_list: List remotesremote_add: Add a remoteremote_remove: Remove a remote
Stash Operations
stash_list: List stashesstash_save: Save changes to stashstash_pop: Apply and remove a stash
Bulk Operations
bulk_action: Execute multiple Git operations in sequence
Development
# Run tests
npm test
# Run tests with coverage
npm run test:coverage
# Run linter
npm run lint
# Format code
npm run format
License
MIT
Contributing
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Related Servers
Bitbucket Server MCP
Manage pull requests on Bitbucket Server.
GitHub Kanban MCP Server
Manage GitHub issues as a Kanban board using the gh CLI.
GitHub MCP Server
Interact with GitHub repositories, issues, pull requests, and more. Requires a GitHub personal access token.
GitHub MCP Server
Interact with the GitHub API for file operations, repository management, and search.
MCP Git Ingest
Reads the structure and important files of a GitHub repository.
GitHub
Interact with the GitHub API for file operations, repository management, and search.
MCP GitHub Project Manager
AI-powered GitHub project management with complete requirements traceability.
GitHub MCP Server
Seamlessly integrate with GitHub APIs for development automation and interaction.
Git
Tools to read, search, and manipulate Git repositories
GitHub
Interact with GitHub APIs for automation and repository management.