Validates commit messages, branch names, and author information against team policies to ensure compliance before pushing code.
다른 이름 commit-check/commit-check-mcp, commit-check-mcp
- 스타
- 1
- Tools
- 11
- 다운로드, 30일
- 346
- 최신 버전
- 0.1.13
- 마지막 커밋
- 2026년 11월 9일
- 라이선스
- MIT
commit-check MCP란?
commit-check은(는) MCP server입니다. Validates commit messages, branch names, and author information against team policies to ensure compliance before pushing code. 11개 도구를 제공합니다. 예: validate_commit_message, validate_branch_name, validate_author_info.
프로젝트 README에서 생성된 요약
commit-check MCP server 정보
Commit-check MCP provides a way for coding agents to follow team-specific git policies by validating commit messages, branch names, and author information. It acts as a local bridge between your AI agent and the rules typically enforced by continuous integration systems. By using this server, an agent can check its own work for compliance before attempting to commit or push code to a repository.
Developers can integrate this server into various clients including Claude Desktop, Cursor, VS Code, and Zed using the uvx command. The server operates via stdio and can be configured to use specific repository settings or inline overrides. It includes specialized tools like validate_commit_message for checking Conventional Commits and validate_push_safety to prevent accidental force pushes. When a validation fails, the server provides specific fixes that an agent can apply to resolve the issue automatically.
활용 사례
- 1Validate commit message complianceAsk your AI agent to check if a proposed commit message follows Conventional Commits and length requirements.
프로젝트의 README를 바탕으로 작성되었습니다. 모든 활용 사례는 해당 내용의 인용문과 대조하여 확인합니다.
commit-check MCP 설치 방법
형식 확인: 2026년 11월 10일Claude Code에 commit-check MCP 설치
$ claude mcp add commit-check-mcp -- uvx commit-check-mcpCursor에 commit-check MCP 설치
~/.cursor/mcp.json
{
"mcpServers": {
"commit-check-mcp": {
"command": "uvx",
"args": [
"commit-check-mcp"
]
}
}
}VS Code에 commit-check MCP 설치
.vscode/mcp.json
{
"servers": {
"commit-check-mcp": {
"type": "stdio",
"command": "uvx",
"args": [
"commit-check-mcp"
]
}
}
}Claude Desktop에 commit-check MCP 설치
claude_desktop_config.json
{
"mcpServers": {
"commit-check-mcp": {
"command": "uvx",
"args": [
"commit-check-mcp"
]
}
}
}Codex에 commit-check MCP 설치
~/.codex/config.toml
[mcp_servers.commit-check-mcp] command = "uvx" args = ["commit-check-mcp"]
Gemini CLI에 commit-check MCP 설치
~/.gemini/settings.json
{
"mcpServers": {
"commit-check-mcp": {
"command": "uvx",
"args": [
"commit-check-mcp"
]
}
}
}commit-check MCP 도구 11
README에서 감지됨validate_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 | — |
자동 검사
2026년 11월 12일에 실행됨전체 보고서 →자동 검사를 통과했습니다. 이는 보안 감사가 아닙니다. 코드를 직접 읽고 서버에 필요한 최소한의 권한만 부여하십시오. 검사 방식
- 소스 저장소 연결 및 접근 가능통과
- 오픈 소스 라이선스 (OSI)통과
- 최근 1년 내 커밋 또는 릴리스통과
- 패키지 이름이 인기 패키지와 유사하지 않음통과
- 원격 엔드포인트가 HTTPS 사용검사되지 않음
- 파괴적인 도구에 라벨 표시됨통과
- 모델에 대한 숨겨진 지침 없음통과
- 패키지와 의존성에 심각한 보안 권고 없음통과
README
GitHub에서 보기Catch 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
commit-check MCP 질문
commit-check MCP를 Claude Code에 추가하려면 어떻게 하나요?
터미널에서 claude mcp add commit-check-mcp -- uvx commit-check-mcp를 실행합니다. 모든 프로젝트에서 사용할 수 있게 하려면 --scope user를 추가합니다.
commit-check MCP를 Cursor에 추가하려면 어떻게 하나요?
~/.cursor/mcp.json를 열고 mcpServers 아래에 서버를 추가합니다. 위 설치 섹션에 표시된 Cursor 구성을 사용합니다.
commit-check MCP는 어떤 도구를 제공하나요?
11개 도구를 제공합니다. 예: validate_commit_message, validate_branch_name, validate_author_info, validate_commit_context, validate_push_safety.
What does this server validate?
It validates commit messages, branch names, author information, and push safety (such as preventing force pushes).
Does the server change my code or commits?
No, the tools are read-only and do not modify the working tree or commits.
How can an AI agent fix a failed validation?
When a validation fails, the server provides a 'fix' that the agent can apply verbatim to resolve the issue.