mcpField
C
commitcheck

commitcheck

Local
github.com/CloudCorpRecordsVersion Control0Updated 2w ago

About commitcheck

commitcheck is a CLI and MCP server for checking recent Git commit history against message hygiene rules. It suits maintainers who want findings tied to specific commits, while adapting sign-off and style checks to the repository’s own conventions.

Key features

  1. 01Checks the most recent 50 commits
  2. 02Flags long or placeholder subjects
  3. 03Checks DCO sign-off trailers
  4. 04Detects dominant message style
  5. 05Reports findings with short commit SHAs

Use cases

  1. 01Review commit hygiene before merging
  2. 02Find missing sign-offs in DCO repositories
  3. 03Identify commits that depart from local message style

MCP support

The MCP server exposes the `check_commits` tool, which accepts a repository path and returns the check report as JSON.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"cloudcorprecords-commitcheck": {
"command": "npx",
"args": [
"-y",
"@reneturcios/commitcheck"
]
}
}
}
Run commandnpx -y @reneturcios/commitcheck

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@reneturcios/commitcheck0.1.0
ocighcr.io/cloudcorprecords/commitcheck:0.1.0

Tools

1

Saved tool list · updated 2w ago

ParameterTypeRequiredDescription
pathstringYesTarget path to check

Details

From the project README

commitcheck

Commit hygiene checker for a git repository's recent history. It reads the most recent 50 commits and checks subject length, placeholder subjects, DCO Signed-off-by trailers, malformed trailers, and whether each commit follows the message convention the repo itself actually uses. Every finding names the rule and the short sha of the commit it came from.

Install

npx @reneturcios/commitcheck check [path]

Or install it globally:

npm install -g @reneturcios/commitcheck

Requires Node 20 or newer and git on PATH.

CLI

commitcheck check [path] [--json]   # check a repo (default path: .)
commitcheck mcp                     # run the MCP server on stdio
commitcheck --version               # print the version

Exit codes: 0 when the verdict is CLEAN, 1 when it is FINDINGS, 2 for a usage error or an unreadable target, and 141 when the reader closed the output pipe early (the shell-visible equivalent of death by SIGPIPE).

Findings are printed in git log order, newest first, and the order is deterministic for a given history.

MCP

The MCP server exposes one tool:

  • check_commits with argument path: runs the same check as the CLI and returns the full report as JSON.

Rules

RuleSeverityWhat it means
SUBJECT-TOO-LONGmediumThe subject line is over 72 characters.
SUBJECT-VAGUElowThe subject is empty or a placeholder such as wip, fix, update, changes, or .
NO-SIGNOFFmediumThe commit has no Signed-off-by trailer, in a repo whose history follows the DCO convention (see below).
CONVENTION-BREAKlowThe subject breaks the dominant message style of the range (see below).
MERGE-COMMITinfoA merge commit, reported for context. Merge commits are never a finding above info.
TRAILER-MALFORMEDlowA Signed-off-by line without an email shape, for example Signed-off-by: Jane Doe with no <[email protected]>.

The verdict is CLEAN when the range has no medium findings, and FINDINGS otherwise. Low and info findings are reported but do not change the verdict.

The adaptive rules, stated plainly

commitcheck does not impose a house style. Both convention checks are learned from the range being checked:

  • DCO / sign-off. A commit is flagged NO-SIGNOFF only when the repo demonstrably uses sign-off: at least half of the other commits in the range carry a well-formed Signed-off-by trailer. If the repo does not use sign-off, no commit is flagged for missing it. A malformed sign-off line does not count as a sign-off.
  • Message convention. Two styles are tracked: conventional subjects (type: summary or type(scope): summary) and capitalized imperative subjects (Add the thing). When one style is used by at least 70 percent of the non-merge commits in the range, it is the dominant style, and a commit that breaks it is flagged CONVENTION-BREAK. When no style reaches 70 percent, nothing is flagged for style.

Limits

  • Only the last 50 commits are checked.
  • Style detection is statistical. A short or mixed history may have no dominant style, in which case no convention findings are produced.
  • Sign-off presence is checked, not signature validity. commitcheck verifies that a Signed-off-by trailer with an email shape exists; it does not verify that the signer is the author or that any signature is genuine.
  • Merge commits are detected from the Merge ... subject line, which is the default git shape; a hand-written subject that starts with Merge will be reported as one.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.