MCP Git Commit Generator
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| git_status_toolC | Shows the working tree status. |
| git_diff_unstaged_toolB | Shows changes in the working directory that are not yet staged. |
| git_diff_staged_toolB | Shows changes that are staged for commit. |
| git_diff_toolB | Shows differences between branches or commits. |
| git_commit_toolB | Records staged changes to the repository with the given commit message. |
| git_add_toolA | Adds file contents to the staging area. |
| git_reset_toolA | Unstages all staged changes (non-destructive — does not discard modifications). |
| git_log_toolB | Shows the commit log of the repository. |
| git_create_branch_toolB | Creates a new branch from an optional base branch. |
| git_checkout_toolC | Switches to the specified branch. |
| git_show_toolB | Shows the metadata and diff of a specific commit. |
| git_init_toolB | Initialises a new Git repository at the given path. |
| git_branch_toolB | Lists Git branches (local, remote, or all). |
| generate_commit_messageA | Analyses staged changes and produces a conventional commit message suggestion. Reads staged diffs and file metadata to generate a commit message in the
format |
| git_optimized_statusA | Fast status check using GitPython — shows staged, unstaged, and untracked files. Preferred over |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 15 tools
Most tools are clearly distinct, but git_optimized_status and git_status_tool overlap in purpose; however, the description helps differentiate them. Diff tools are separated into staged/unstaged and general, which is clear.
All tools follow snake_case and most use the git_ prefix, but generate_commit_message lacks the prefix, and git_optimized_status deviates from the verb_noun pattern.
15 tools cover the essential Git commit generation workflow without being excessive. Each tool serves a distinct purpose in the pipeline.
The tool set provides full coverage for generating commits: staging, committing, status checks, diffs, branching, and history. No obvious gaps for the intended domain.