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
- ツール
- 11
- ダウンロード数(30日間)
- 346
- 最新バージョン
- 0.1.13
- 最終コミット
- 2026年11月12日
- ライセンス
- MIT
commit-check MCPとは
commit-checkはMCPサーバーです。 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を開き、上記のインストールセクションに示すCursor設定を使ってmcpServersの下にサーバーを追加します。
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.