git-training-wheels
Provides safe git commit and fixup capabilities, ensuring only specified files can be committed and allowing fixes to earlier commits.
Click on "Install 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-training-wheelscommit src/main.py and tests/test_main.py with message 'Add main functionality'"
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.
MCP Git Training Wheels
LLMs try to please, but as the context window gets larger and larger, errors
start to happen. In particular, current models have a tendency to just
git add -a the whole source tree, accidentally adding lots of random stuff
to their commits.
These issues become especially noticable when multiple agents are working on a codebase in parallel, or if you're doing quick fixes while an agent is working. And no current model has the ability to un-fuck a git history.
This MCP server gives the agent some training wheels for using git safely,. It
ensures that only a specific named set of files can be committed, and also
provides a convenient way to fixup earlier commits. For best results, use
permissions to automatically deny the use of Bash(git commit:*) or equivalent.
It's still using the regular git commit command under the hood, so global
and global git settings like username, email, and commit signing all apply
as usual.
Installation
Using uv
uvx mcp-git-training-wheelsFrom source
git clone https://github.com/lava/mcp-git-training-wheels
cd mcp-git-training-wheels
uv pip install -e .Related MCP server: Git Commit Message Generator MCP Server
Usage
Add the following
Depending on your agent of choice, run something like the following
claude mcp add git-commit -- uvx mcp-git-training-wheelsor drop the following JSON into .mcp.json or any other location of your
choice.
{
"mcpServers": {
"gtw": {
"type": "stdio",
"command": "uvx",
"args": [
"mcp-git-training-wheels"
],
"env": {}
}
}
}The specific command may change depending on your installation method.
Available Tools
git_commit
Commits specified files with a message and saves the commit information for later use.
Parameters:
files: List of file paths to commitmessage: Commit message
Example:
{
"tool": "git_commit",
"parameters": {
"files": ["src/main.py", "tests/test_main.py"],
"message": "Add main functionality and tests"
}
}fixup_commit
Adds files to a previously created commit. If the commit is still HEAD, it
uses git commit --amend. Otherwise, it uses the gitrevise module to edit
the commit in history.
Parameters:
files: List of file paths to add to the commit
Example:
{
"tool": "fixup_commit",
"parameters": {
"files": ["src/utils.py"]
}
}This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/lava/mcp-git-training-wheels'
If you have feedback or need assistance with the MCP directory API, please join our Discord server