Back to Browse

Udacity Commit MCP Server

Developer ToolsLow Risk10.0MCP RegistryLocal
Free

Server data from the Official MCP Registry

Validate & format git commit messages per the Udacity Git Commit Message Style Guide.

About

Validate & format git commit messages per the Udacity Git Commit Message Style Guide.

Security Report

10.0
Low Risk10.0Low Risk

Valid MCP server (3 strong, 2 medium validity signals). No known CVEs in dependencies. Package registry verified. Imported from the Official MCP Registry. Trust signals: trusted author (3/3 approved).

6 files analyzed · 1 issue found

Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.

Permissions Required

This plugin requests these system permissions. Most are normal for its category.

file_system

Check that this permission is expected for this type of plugin.

How to Install

Add this to your MCP configuration file:

{
  "mcpServers": {
    "io-github-qwertymuzaffar-udacity-commit": {
      "args": [
        "-y",
        "mcp-udacity-commit"
      ],
      "command": "npx"
    }
  }
}

Documentation

View on GitHub

From the project's GitHub README.

mcp-udacity-commit

npm version npm downloads License: MIT MCP

An MCP server that validates and formats git commit messages according to the Udacity Git Commit Message Style Guide.

Install

One line — paste it into your terminal:

claude mcp add udacity-commit -- npx -y mcp-udacity-commit

For Claude Desktop, add to claude_desktop_config.json:

{
  "mcpServers": {
    "udacity-commit": {
      "command": "npx",
      "args": ["-y", "mcp-udacity-commit"]
    }
  }
}
git clone https://github.com/qwertymuzaffar/mcp-udacity-commit
cd mcp-udacity-commit
npm install
npm run build
claude mcp add udacity-commit -- node "$(pwd)/build/index.js"

What it exposes

PrimitiveNamePurpose
Resourceudacity://commit-styleguideThe style-guide rules, as markdown
Resourceudacity://branch-namingThe companion type/kebab-case branch-naming rules, as markdown
Toolvalidate_commit_messageChecks a message against every rule (type, ≤50-char subject, capitalization, no trailing period, blank line, ≤72-char body wrap)
Toolformat_commit_messageBuilds a compliant message from type + subject + optional body/footer
Toolvalidate_branch_nameChecks a branch name against the companion type/kebab-case convention (e.g. feat/add-dark-mode); release/* is a typed branch with a version-style description (release/1.2.0), and base branches like main are exempt

Example

format_commit_message turns loose parts into a compliant commit:

in:  type=fix  subject="prevent duplicate auth token refresh."
     body="The refresh timer could fire twice under load, minting two tokens…"
     footer="Resolves: #142"

out:
fix: Prevent duplicate auth token refresh

The refresh timer could fire twice under load, minting two tokens and
logging the user out. Serialize refreshes behind a single in-flight
promise so concurrent callers await the same request.

Resolves: #142

validate_commit_message flags every violation:

"Fixed the login bug."  →  ❌ Not compliant.
  • Subject must follow "type: Subject".
  • Subject must not end with a period.

validate_branch_name enforces the companion type/kebab-case convention:

"feat/add-dark-mode"     →  ✅ Compliant branch name.
"release/1.2.0"          →  ✅ Compliant branch name.
"Feature/Add_Dark_Mode"  →  ❌ Not compliant.
  • Unknown type "Feature". Use one of: feat, fix, docs, style, refactor, test, chore, release.
  • Description must be lowercase kebab-case. Got: "Add_Dark_Mode".
"main"                   →  ✅ (base branch — feature-branch rules don't apply)

Develop

npm install
npm run build          # → build/index.js
npm run test:client    # spawns the server and exercises the tools

License

MIT

Reviews

No reviews yet

Be the first to review this server!