Git MCP Server
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 | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| git_statusB | Get the current git status of the repository |
| git_current_branchA | Get the current branch name |
| git_staged_changesB | Get the currently staged changes |
| git_diffC | Show diff between branches or commits |
| git_logC | Get commit history |
| git_branchesC | List all branches |
| git_show_fileC | Show contents of a file at a specific commit |
| git_working_directoryB | Get the current working directory of the git server |
| git_commitC | Create a new commit with the specified message and files |
| git_checkoutC | Switch to a different branch or create a new branch |
| git_pullC | Pull changes from remote repository |
| git_fetchA | Fetch changes from remote repository without merging |
| git_initC | Initialize a new git repository |
| git_addC | Add files to the staging area |
| git_create_branchB | Create a new branch and switch to it (git checkout -b) |
| git_pushC | Push changes to remote repository |
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 16 tools
Most tools have distinct purposes with clear boundaries, such as git_add for staging, git_commit for committing, and git_pull for fetching and merging. However, git_checkout and git_create_branch have overlapping functionality (both can create branches), which could cause slight confusion for an agent.
All tool names follow a consistent git_verb_noun pattern, using snake_case throughout. This predictability makes it easy for agents to understand and select tools based on their names, with no deviations or mixed conventions.
With 16 tools, the server is slightly heavy but reasonable for covering core Git operations like init, add, commit, push, pull, and branch management. It includes essential utilities but might benefit from consolidation, such as merging git_checkout and git_create_branch.
The tool set provides comprehensive coverage of Git workflows, including repository setup (git_init), staging (git_add), committing (git_commit), branching (git_branches, git_create_branch), remote operations (git_fetch, git_pull, git_push), and inspection (git_status, git_log, git_diff). No obvious gaps exist for typical agent tasks.