Commit Conventional Message Court (CCMCP)
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Commit Conventional Message Court (CCMCP)Rewrite my lazy commit message 'updates' based on the current diff."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Commit Conventional Message Court MCP
Please write better commits with AI.
Give this repo to your AI and ask it to install the MCP for you.
Seriously. That is a valid setup flow.
I take your vague commit messages, drag them into court, point at the diff, and ask the question your teammates are too tired to ask:
"What exactly did you do?"
Add to Codex
Add this to ~/.codex/config.toml:
[mcp_servers.commit-message-court]
command = "node"
args = ['C:\Users\chrisdnm\Desktop\commimWizard\dist\index.js']Then restart Codex.
Related MCP server: Cursor Auto-Review MCP Server
Add to Claude Code
On Windows, add it as a local stdio server with:
claude mcp add --transport stdio commit-message-court -- node C:\Users\chrisdnm\Desktop\commimWizard\dist\index.jsIf you want it available everywhere, add --scope user.
claude mcp add --transport stdio --scope user commit-message-court -- node C:\Users\chrisdnm\Desktop\commimWizard\dist\index.jsAdd to Claude Desktop
Add this to your claude_desktop_config.json:
{
"mcpServers": {
"commit-message-court": {
"type": "stdio",
"command": "node",
"args": ["where code is"],
"env": {}
}
}
}Then restart Claude Desktop.
What This Thing Does
It sees
fix stuffand objects.It sees
final_final_realand requests counsel.It sees a risky diff and asks for evidence.
It sees your commit history and tries, against all odds, to make it readable.
License
WTFPL -- Do What The Fuck You Want To Public License.
Available Tools
3 toolscourt.prosecute_commitProsecute CommitB
Put a commit subject and diff on trial and return a structured verdict.
| Name | Required | Description | Default |
|---|---|---|---|
| subject | Yes | Commit subject line to put on trial. | |
| body | No | Optional commit body. | |
| diff | Yes | Unified diff or patch text. | |
| pr_body | No | Optional PR description. | |
| style | No | Courtroom voice preset. | |
| language | No | Rendered verdict language. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. While it mentions returning a 'structured verdict,' it fails to disclose whether the operation is destructive, if it persists data, rate limits, underlying LLM usage, or what the verdict actually contains (criticisms, scores, etc.).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with zero filler. The core action and return value are front-loaded. No redundant words or tautology.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 6-parameter tool with enum constraints and sibling relationships, the description is minimally viable. It states the core function and hints at output structure ('structured verdict'), but lacks workflow context and behavioral details that would be necessary given the absence of output schema or annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline expectations are met by the schema itself. The description mentions 'commit subject and diff' which reinforces the two required parameters, but adds no syntactic details, format constraints, or semantic relationships between parameters (e.g., how style affects the verdict).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the core action ('Put on trial') and inputs ('commit subject and diff'), distinguishing it from sibling tools like 'require_better_subject' (which focuses only on subjects) and 'render_verdict' (which likely displays rather than prosecutes). The courtroom metaphor is consistent with the tool name, though 'put on trial' requires slight interpretation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus its siblings (court.render_verdict, court.require_better_subject) or whether this is the first step in a multi-tool workflow. No prerequisites or exclusion criteria are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
court.render_verdictRender VerdictC
Render the courtroom opinion for a commit message case.
| Name | Required | Description | Default |
|---|---|---|---|
| subject | Yes | Commit subject line to put on trial. | |
| body | No | Optional commit body. | |
| diff | Yes | Unified diff or patch text. | |
| pr_body | No | Optional PR description. | |
| style | No | Courtroom voice preset. | |
| language | No | Rendered verdict language. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full disclosure burden. It fails to indicate what the tool returns (presumably a string containing the verdict text), whether it has side effects, or if it calls external services. 'Render' implies generation but lacks specifics on output format.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence of 9 words is efficiently structured and front-loaded. However, extreme brevity is detrimental given the 6-parameter complexity and lack of output schema—every word earns its place, but there aren't enough of them.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Incomplete for a 6-parameter tool with no output schema. The description omits return value specification, courtroom metaphor explanation, and workflow context with siblings. Relies entirely on schema for parameter understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the schema adequately documents all 6 parameters. The description adds minimal semantic context beyond the schema, though 'courtroom opinion' loosely hints at the 'style' enum purpose. Baseline score appropriate given schema quality.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses specific verb 'Render' and resource 'courtroom opinion' within the commit message domain. It hints at the courtroom metaphor aligning with sibling tools, though it could more explicitly differentiate from 'prosecute_commit' (arguments) vs this tool (final judgment).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance provided on when to use this versus 'court.prosecute_commit' or 'court.require_better_subject'. The workflow relationship between these three tools is unclear from the description alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
court.require_better_subjectRequire Better SubjectC
Force a better commit subject and provide rewrite suggestions.
| Name | Required | Description | Default |
|---|---|---|---|
| subject | Yes | Commit subject line to put on trial. | |
| body | No | Optional commit body. | |
| diff | Yes | Unified diff or patch text. | |
| pr_body | No | Optional PR description. | |
| style | No | Courtroom voice preset. | |
| language | No | Rendered verdict language. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, but description fails to disclose the courtroom metaphor/personality evident in the 'style' parameter (judge/prosecutor/defense), does not clarify what 'Force' means behaviorally, and omits return format details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence is front-loaded but extremely terse. Given 6 parameters, no annotations, and no output schema, the brevity undermines completeness rather than demonstrating efficient communication.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, description should explain return values (suggestions format) and theatrical courtroom behavior. Six parameters with thematic complexity require more contextual framing than provided.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, establishing baseline 3. Description mentions 'commit subject' aligning with the subject parameter but adds no semantic depth beyond well-documented schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear verb 'provide' and resource 'commit subject' with specific focus on rewrite suggestions. However, does not explicitly differentiate from sibling tools like 'prosecute_commit' or explain the 'court' theme.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this versus 'court.prosecute_commit' or other siblings. No mention of prerequisites (e.g., when diff is required vs optional).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
v0.1.0- First observed
court.prosecute_commit - First observed
court.render_verdict - First observed
court.require_better_subject
TDQS
Scored across 3 tools
While each tool has a distinct function, the relationship between prosecute_commit and render_verdict is unclear—agents may not know if they need to call both in sequence or if prosecute_commit alone suffices. require_better_subject also feels like it could be a sub-operation of the prosecution rather than a standalone tool.
All tools follow a consistent court.<verb>_<object> pattern using lowercase snake_case. The 'court.' prefix acts as a namespace, and the verb choices (prosecute, render, require) are thematically appropriate, though 'require' breaks the pure verb_noun pattern slightly with the 'better' modifier.
Three tools is at the lower bound of acceptable for this domain. While the core analysis and suggestion functions are present, the set feels thin—missing configuration, batch processing, or actual commit amendment capabilities that would make this a complete solution.
The set covers analysis (prosecute), presentation (render), and suggestion (require), but lacks obvious lifecycle operations like applying fixes, configuring rules/standards, or handling commit metadata beyond the subject line. The separation between rendering and prosecution creates a potential gap if agents expect a single 'check and report' operation.
Maintenance
Related MCP Connectors
A MCP server built for developers enabling Git based project management with project and personal…
- JamOAuthdev.jam.mcp
The Jam MCP server provides AI tools with instant bug context without manual prompting, enabling a streamlined workflow from bug identification to ticket creation and pull request generation without switching between tools.
Driflyte MCP server which lets AI assistants query topic-specific knowledge from web and GitHub.
Related MCP Servers
- AlicenseBqualityFmaintenanceAn intelligent MCP server that automatically generates Conventional Commits style commit messages by analyzing git diffs using LLM providers like DeepSeek and Groq. It enables developers to maintain standardized version history through natural language interactions in supported MCP clients.12MIT
- FlicenseNot gradedqualityDmaintenanceAn MCP server that automates code reviews through linting, testing, and git diff analysis. It also generates conventional commit messages and detailed pull request descriptions based on file changes and code patterns.-
- AlicenseAqualityBmaintenanceCommit Message AI - MCP server providing AI-powered tools and automation by MEOK AI Labs49 npmMIT
- AlicenseAqualityDmaintenanceMCP server to automate Pull Request creation with AI. Analyzes Git branches, generates descriptions, titles, suggests reviewers, and performs code reviews.84MIT