Memvalidasi commit message, nama branch, dan informasi author sesuai dengan kebijakan tim untuk memastikan kepatuhan sebelum melakukan push code.
Juga dikenal sebagai commit-check/commit-check-mcp, commit-check-mcp
- Stars
- 1
- Tools
- 11
- Unduhan, 30 hari
- 346
- Versi terbaru
- 0.1.13
- Commit terakhir
- 12 Nov 2026
- Lisensi
- MIT
Apa itu commit-check MCP?
commit-check adalah MCP server. Memvalidasi commit message, nama branch, dan informasi author sesuai dengan kebijakan tim untuk memastikan kepatuhan sebelum melakukan push code. Server ini menyediakan 11 tool, seperti validate_commit_message, validate_branch_name, validate_author_info.
Ringkasan dibuat dari README proyek
Tentang commit-check MCP server
Commit-check MCP menyediakan cara bagi coding agent untuk mengikuti kebijakan git spesifik tim dengan memvalidasi commit message, nama branch, dan informasi author. Server ini bertindak sebagai jembatan lokal antara AI agent Anda dengan aturan yang biasanya diterapkan oleh sistem continuous integration. Dengan menggunakan server ini, agent dapat memeriksa kepatuhan pekerjaannya sendiri sebelum mencoba melakukan commit atau push code ke sebuah repository.
Developer dapat mengintegrasikan server ini ke berbagai client termasuk Claude Desktop, Cursor, VS Code, dan Zed menggunakan perintah uvx. Server ini beroperasi via stdio dan dapat dikonfigurasi untuk menggunakan pengaturan repository tertentu atau inline overrides. Server ini menyertakan tool khusus seperti validate_commit_message untuk memeriksa Conventional Commits dan validate_push_safety untuk mencegah accidental force push. Ketika validasi gagal, server menyediakan perbaikan spesifik yang dapat diterapkan agent untuk menyelesaikan masalah secara otomatis.
Apa yang bisa Anda lakukan dengannya
- 1Validasi kepatuhan commit messageMinta AI agent Anda untuk memeriksa apakah usulan commit message sudah mengikuti aturan Conventional Commits dan persyaratan panjang karakter.
Ditulis berdasarkan README proyek. Setiap use case diperiksa terhadap kutipan dari README tersebut.
Cara menginstal commit-check MCP
Format diverifikasi 10 Nov 2026Instal commit-check MCP di Claude Code
$ claude mcp add commit-check-mcp -- uvx commit-check-mcpInstal commit-check MCP di Cursor
~/.cursor/mcp.json
{
"mcpServers": {
"commit-check-mcp": {
"command": "uvx",
"args": [
"commit-check-mcp"
]
}
}
}Instal commit-check MCP di VS Code
.vscode/mcp.json
{
"servers": {
"commit-check-mcp": {
"type": "stdio",
"command": "uvx",
"args": [
"commit-check-mcp"
]
}
}
}Instal commit-check MCP di Claude Desktop
claude_desktop_config.json
{
"mcpServers": {
"commit-check-mcp": {
"command": "uvx",
"args": [
"commit-check-mcp"
]
}
}
}Instal commit-check MCP di Codex
~/.codex/config.toml
[mcp_servers.commit-check-mcp] command = "uvx" args = ["commit-check-mcp"]
Instal commit-check MCP di Gemini CLI
~/.gemini/settings.json
{
"mcpServers": {
"commit-check-mcp": {
"command": "uvx",
"args": [
"commit-check-mcp"
]
}
}
}Tool commit-check MCP 11
Terdeteksi dari READMEvalidate_commit_messagevalidate_branch_namevalidate_author_infovalidate_commit_contextvalidate_push_safetyvalidate_repository_statedescribe_validation_rulesserver_healthrepo_pathconfig_pathconfig
| validate_commit_message | — | |
| validate_branch_name | — | |
| validate_author_info | — | |
| validate_commit_context | — | |
| validate_push_safety | — | |
| validate_repository_state | — | |
| describe_validation_rules | — | |
| server_health | — | |
| repo_path | — | |
| config_path | — | |
| config | — |
Pengecekan otomatis
Berjalan 12 Nov 2026Laporan lengkap →Lolos checks otomatis kami. Ini bukan audit keamanan: baca kodenya dan berikan server akses paling terbatas yang dibutuhkannya. Cara kerja checks
- Source repository terhubung dan dapat dijangkauLolos
- Lisensi open source (OSI)Lolos
- Ada commit atau release dalam satu tahun terakhirLolos
- Nama package tidak mirip dengan package populerLolos
- Remote endpoint menggunakan HTTPSTidak diperiksa
- Tools yang bersifat destruktif telah diberi labelLolos
- Tidak ada instruksi tersembunyi untuk modelLolos
- Tidak ada advisory kritis di paket maupun dependensinyaLolos
README
Lihat di GitHubCatch bad commits before they merge — inside your AI agent.
Docs · Rules · CLI · GitHub Action · GitHub App
The Model Context Protocol server for Commit Check, commit policy as code for teams and AI agents. It gives your coding agent the rules your CI enforces: the agent validates its commit message, branch name and author before it commits or pushes, and when a correction is unambiguous it gets the fix to apply.
Quick start
claude mcp add commit-check -- uvx commit-check-mcp
Every other client launches the same command. This is the object to register:
{
"mcpServers": {
"commit-check": {
"command": "uvx",
"args": ["commit-check-mcp"]
}
}
}
No uv yet? curl -LsSf https://astral.sh/uv/install.sh | sh — or use
pip install commit-check-mcp, as in the last row below.
Where each client keeps it
| Client | Where it goes | Notes |
|---|---|---|
| Claude Code | claude mcp add commit-check -- uvx commit-check-mcp |
Add --scope project to write a shareable .mcp.json at the repo root (--scope user makes it available in all your projects). You can also commit a .mcp.json containing the block above; "type": "stdio" may be added inside the server object. MCP servers are not configured in ~/.claude/settings.json. |
| Claude Desktop | macOS ~/Library/Application Support/Claude/claude_desktop_config.json; Windows %APPDATA%\Claude\claude_desktop_config.json |
Block above as-is; restart Claude Desktop. |
| Cursor | project .cursor/mcp.json or global ~/.cursor/mcp.json |
Block above as-is (or Settings → Cursor Settings → MCP → Add new MCP server with command uvx commit-check-mcp). |
| VS Code (Copilot agent mode) | .vscode/mcp.json |
Different key: {"servers": {"commit-check": {"type": "stdio", "command": "uvx", "args": ["commit-check-mcp"]}}} |
| Cline | MCP Servers panel → Configure → cline_mcp_settings.json (check your client's docs) |
Block above as-is. |
| Roo Code | project .roo/mcp.json or global mcp_settings.json (Edit Global MCP) |
Block above as-is; optional "alwaysAllow": [...]. |
| Windsurf | ~/.codeium/windsurf/mcp_config.json (check your client's docs) |
Block above as-is. |
| Continue | config.yaml (or a file in .continue/mcpServers/) |
YAML list under mcpServers:, see below. Continue also picks up the JSON block above when dropped into .continue/mcpServers/. |
| Zed | ~/.config/zed/settings.json |
Different key: {"context_servers": {"commit-check": {"command": "uvx", "args": ["commit-check-mcp"]}}} |
| Anything else | your client's MCP config | If the client cannot run uvx: pip install commit-check-mcp, then set "command" to the absolute path of the installed binary and drop args. Find it with which commit-check-mcp (macOS/Linux), where commit-check-mcp (Windows cmd) or Get-Command commit-check-mcp | Select-Object -ExpandProperty Source (PowerShell). |
Continue's config.yaml entry in full (name, version and schema are required by Continue; drop them if you are adding only the mcpServers fragment to an existing file, or save this as a standalone file in .continue/mcpServers/):
name: commit-check
version: 0.0.1
schema: v1
mcpServers:
- name: commit-check
command: uvx
args: ["commit-check-mcp"]
Tools
| Tool | What it checks | Arguments |
|---|---|---|
validate_commit_message |
A commit message: Conventional Commits, subject length and case, body, sign-off, WIP and fixup markers, AI attribution | message |
validate_branch_name |
A branch name, or the checked-out one, and its rebase target when configured | branch? |
validate_author_info |
Author name and email, and whether an AI tool is the author (CC017); read from the repository's git config when omitted | author_name? author_email? |
validate_commit_context |
Message, branch and author in one call, for whichever you pass | message? branch? author_name? author_email? |
validate_push_safety |
That a push is not a force push (CC301) | push_refs? — pre-push lines; omit to compare the branch with its upstream |
validate_repository_state |
The latest commit's message and author, the checked-out branch and, optionally, the push | include_message include_branch include_author (default true), include_push (default false) |
describe_validation_rules |
Nothing: returns the merged config and the rules it enables | — |
server_health |
Nothing: returns the server, commit-check and MCP SDK versions | — |
Every tool but server_health also takes:
repo_path— the repository whosecchk.toml/commit-check.tomlapplies. It must be a git repository when the tool reads git state; a plain directory holding a config file is enough when you pass every value yourself.config_path— a config file to use instead of the repository's own; relative paths resolve fromrepo_path.config— inline overrides merged on top, e.g.{"commit": {"require_body": true}}.
No tool changes the working tree or the commits. validate_push_safety and
validate_repository_state may run git fetch to resolve a SHA, so only they
are annotated as not read-only; a client that gates on MCP tool hints can
auto-approve the other six.
Validate a message with the repository's rules:
{
"message": "feat(api): add MCP validation tool",
"repo_path": "/path/to/repo"
}
Check the repository as it stands, including the push:
{
"repo_path": "/path/to/repo",
"include_push": true
}
Validate push safety from git pre-push ref metadata (<local_ref> <local_sha> <remote_ref> <remote_sha>):
{
"repo_path": "/path/to/repo",
"push_refs": "refs/heads/main abc123 refs/heads/main def456"
}
See which rules apply once an override is merged in:
{
"repo_path": "/path/to/repo",
"config": {
"commit": {
"require_body": true
}
}
}
Results
Every validate_* tool returns the shape commit-check --format json prints:
{
"status": "pass|fail|skip",
"warnings": 0,
"checks": [
{
"rule_id": "CC001",
"check": "message",
"status": "pass|fail|warn|skip",
"value": "...",
"error": "...",
"suggest": "...",
"fix": "...",
"docs_url": "https://commit-check.com/rules/#cc001",
"reason": ""
}
]
}
- Only
failis a rejection.skipmeans nothing was validated — never read it as approval — andwarnis reported without failing the run. With commit-check 2.19.0 or later, a skipped check names why inreason, e.g."author dependabot[bot] is in [commit].ignore_authors"; older releases leave the field out. - On
fail, apply a non-emptyfixverbatim, otherwise followsuggest, then validate again. The server's instructions teach the agent this loop. - A call that cannot run at all — an empty
message, arepo_paththat does not exist or is not a git repository where one is needed, an invalid config, apush_refsSHA that cannot be resolved — comes back as an MCP tool error that names the problem, never as a pass.
Development
pip install -e .[dev]
python -m pytest
The server speaks stdio, so an MCP client launches it; run uvx commit-check-mcp
by hand only to see that it starts.
Community
Questions and ideas go to Discussions, bugs to Issues. Releases follow Semantic Versioning. Released under the MIT License.
mcp-name: io.github.commit-check/commit-check-mcp
Pertanyaan tentang commit-check MCP
Bagaimana cara menambahkan commit-check MCP ke Claude Code?
Jalankan claude mcp add commit-check-mcp -- uvx commit-check-mcp di terminal Anda. Tambahkan --scope user agar tersedia di semua proyek.
Bagaimana cara menambahkan commit-check MCP ke Cursor?
Buka ~/.cursor/mcp.json dan tambahkan server di bawah mcpServers, menggunakan config Cursor yang ditunjukkan di bagian instalasi di atas.
Tool apa yang disediakan commit-check MCP?
Server ini menyediakan 11 tool, termasuk validate_commit_message, validate_branch_name, validate_author_info, validate_commit_context, validate_push_safety.
Apa saja yang divalidasi oleh server ini?
Server ini memvalidasi commit message, nama branch, informasi author, dan push safety (seperti mencegah force push).
Apakah server ini mengubah code atau commit saya?
Tidak, tool yang tersedia bersifat read-only dan tidak akan memodifikasi working tree maupun commit Anda.
Bagaimana cara AI agent memperbaiki validasi yang gagal?
Saat validasi gagal, server akan memberikan 'fix' yang dapat diterapkan langsung oleh agent untuk menyelesaikan masalah tersebut.