Git Insights

io.github.basitalisandhuv0.1.1更新于 Oct 5, 2026

Read-only git statistics for a local repository: log, blame ownership, churn, authors, large files.

已验证STDIO仅桌面Developer ToolsData & Analytics

概览

AI 生成的概览

对本地仓库进行只读的 git 统计:日志、blame 归属、改动频率、作者和大文件。

功能
针对你指定的仓库提供只读的 git 统计。工具包括 repo_summary(分支、HEAD、已去除凭据的远程地址、各类计数)、git_log(提交的哈希、作者、日期、标题及可选文件列表)、blame_summary(单个文件每位作者的行数与最近提交)、churn(按提交次数排序的文件及增删行数)、authors(按邮箱统计提交数及首末提交日期)和 large_files(某个树或全部历史中最大的 blob)。命令不经 shell、以固定参数列表执行,路径与修订号经过校验,并有 20 秒超时和输出上限。
适用场景
适合让助手在不改动仓库的前提下查看本地仓库的历史与归属:查看某几行由谁编写、找出改动频繁的热点文件,或了解是什么让克隆体积变大。
运行要求
以 stdio 运行的本地进程,需要 PATH 中有 git。可通过 npx 安装(请固定版本),或用 docker 运行容器镜像。未声明账号、API 密钥或环境变量。
安装前请注意
它不限制可读取的仓库路径,请在有权读取这些路径的账号下运行。它是只读的:不写入、不拉取、不检出,也不使用网络。远程地址在输出中已去除凭据。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Git Insights,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

git-insights MCP server

Read-only statistics for a local git repository: log, blame ownership, churn, authors and large files. Every command is spawned without a shell from a fixed argument list, with validated paths and revisions, a 20 s timeout, an output cap and GIT_OPTIONAL_LOCKS=0. Nothing is written, fetched or checked out.

Part of dev-mcp-servers. Stdio transport only; the server never opens a port.

Tools

ToolInputWhat it returns
repo_summaryrepoTop level, branch, HEAD commit, remotes (credentials stripped from URLs), commit, tag and branch counts, modified and untracked file counts.
git_logrepo, rev?, limit? (1 to 500), path?, author?, since?, until?, grep?, no_merges?, with_files?Commits newest first with hash, author, ISO date, subject and optionally the files touched.
blame_summaryrepo, path, rev?, ignore_whitespace?Lines, percentage and latest commit per author for one file.
churnrepo, rev?, since?, until?, path?, limit?, max_commits?Files ranked by commits touching them with lines added and removed; renames are followed to the current name.
authorsrepo, rev?, since?, until?, path?, include_merges?, limit?Commits per author (by email) with first and last commit dates.
large_filesrepo, rev?, limit?, include_history?Largest blobs in a tree, or across all history (what makes a clone big).

Install

Claude Code:

bash
claude mcp add git-insights -- npx -y @basitalisandhu/[email protected]

Add -s user to make it available in every project. Any client that reads .mcp.json (Claude Code, Claude Desktop, Cursor):

json
{  "mcpServers": {    "git-insights": {      "command": "npx",      "args": ["-y", "@basitalisandhu/[email protected]"]    }  }}

Pin the version as shown so that an update to the package cannot change what runs in your editor without you noticing. From a checkout, use "command": "node", "args": ["<path>/packages/git-insights/dist/index.js"] after npm install && npm run build at the repository root.

What it touches

  • Network: None. git is run with GIT_TERMINAL_PROMPT=0; no command that contacts a remote is on the allowlist.
  • Local files: Runs git rev-parse, log, blame, ls-tree, rev-list, cat-file, status, remote, tag and branch in the repository you name. Revisions must match [A-Za-z0-9._/^~-] without ..; paths must be relative without ..; free-text filters may not start with -.
  • Telemetry: none.

Notes

  • The server does not restrict which repository paths may be read; run it under an account that should be able to read them.
  • Requires git on PATH.

Build and test

bash
npm install        # at the repository rootnpm run build -w @basitalisandhu/mcp-git-insightsnpm test -w @basitalisandhu/mcp-git-insights

Tests use node:test and the SDK's in-memory transport; they do not reach the network.

Licence

MIT. See LICENSE.

来源:packages/git-insights/README.md,提交 58c8c95

工具

0
工具元数据尚未被收录。

版本历史

1
  1. v0.1.1最新Oct 5, 2026