Skip to main content
Glama
AleBrito124356

mcp-git-historian

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

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

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
repo_summaryA

Overview of a local git repository: current branch, total and merge commits, first and last commit (short hash + date), number of authors, top 10 contributors by authored commits and commit activity per month for the 12 calendar months ending at the most recent commit. Good first call.

hotspotsA

Rank the most frequently changed files (churn hotspots): commits touching each file and total lines added/deleted, following renames (older commits under a former name count towards the current name, listed in 'renamed_from'). Deleted files and merge commits are excluded. Each row has 'churn_percentile'; only files with >= 3 commits in the top decile carry a 'hint' marking them as refactoring / extra-review candidates.

file_historyA

List the commits that touched one file, newest first: short hash, date, author, subject, and lines added/deleted per commit. Follows the file across renames (rename commits include a 'renamed_from' key).

blame_summaryA

Summarize line ownership of a file at HEAD: percentage of surviving lines per author, the dominant author, and the dates of the oldest and newest lines. Answers "who wrote / who knows this file?".

bus_factorA

Analyze knowledge concentration by commits. Per top-level directory: dominant author and their share of commits; directories with >= 3 commits where one author made more than 80% of them are flagged as knowledge silos. Also returns the global bus factor: the minimum number of authors whose commits cover more than 50% of all commits (lower = riskier). For line-level ownership and inactive authors use knowledge_risk.

search_commitsA

Search commit messages case-insensitively, optionally filtered by author and date. Returns matches newest first (hash, date, author, subject).

find_changeA

Find when a piece of code appeared or disappeared using git's pickaxe (log -S): returns the commits where the number of occurrences of the pattern changed, i.e. the code was actually added or removed (unlike -G, which also matches lines that merely moved). Great for "when was this constant/function introduced?" forensics.

change_couplingA

Temporal coupling: files that keep changing in the same commits, a hidden dependency static analysis cannot see (e.g. code and the test or config that must always be edited with it). Per pair: shared commits, each file's revisions, degree = shared / min(revisions) (1.0 = every change to the rarer file also touched the other) and jaccard = shared / union. Rename-aware; merges and huge commits are ignored.

knowledge_riskA

What breaks if someone leaves? Blames the tracked text files and compares line ownership with each author's last commit. Files where inactive authors own more than 50% of the lines are 'orphaned'. Returns the riskiest files, a per-author rollup (lines owned, files they are the main owner of, last commit) and a per-directory rollup.

commit_detailsB

Inspect one commit: full message, author and committer with dates, parents (merge detection), every file changed with status (A/M/D/R/C/T), old path for renames and +/- lines, totals, and the branches and tags that contain it (plus the first tag that includes it). Merges are diffed against their first parent.

health_reportA

One-call Markdown health report combining repo_summary, hotspots, change_coupling, bus_factor and knowledge_risk, with a "what to look at first" list of files that change often AND are orphaned, single-owner or strongly coupled. Use it for an overview; use the individual tools to dig into details. Returns {"markdown": ...}.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.9/5.0

Scored across 11 tools

Disambiguation5/5

Each tool targets a distinct git-history analysis: bus_factor for commit concentration, hotspots for churn, blame_summary for line ownership, etc. The descriptions explicitly clarify boundaries (e.g., bus_factor notes 'For line-level ownership and inactive authors use knowledge_risk'). health_report is an aggregator but is clearly marked as a combined overview, not a replacement.

Naming Consistency3/5

Mostly snake_case but mixed conventions: bus_factor and repo_summary are noun phrases, while search_commits and find_change are verb phrases. The pattern is not strictly consistent, though readable and domain-appropriate.

Tool Count5/5

11 tools for a git historian server is well-scoped, covering key analysis dimensions (bus factor, hotspots, coupling, ownership, etc.) without redundancy. The inclusion of health_report as an aggregator is justified for quick overviews.

Completeness4/5

Comprehensive for historical analysis but lacks tools for comparing branches or examining uncommitted changes (e.g., diff, status), which are common in git toolkits. Minor gap, but core forensic and health workflows are well-covered.

Maintenance

ActivityMaintained
ResponsivenessNo issues