@dwsm/changelog-mcp
Enables safe changelog management for AI assistants with append-only entries, automatic versioning, and backups to prevent accidental deletion or formatting inconsistencies.
README
@dwsm/changelog-mcp
Universeller MCP Server für Changelog-Management. Funktioniert mit jedem MCP-fähigen KI-Assistenten (Claude Code, Cursor, Windsurf, Cline, Claude Desktop).
Das Problem: KI-Assistenten löschen versehentlich Changelog-Inhalte, vergessen Versionsnummern oder formatieren inkonsistent.
Die Lösung: Ein MCP Server der Changelog-Einträge sicher hinzufügt (Append-Only), Versionen automatisch berechnet und Backups erstellt - bevor etwas kaputtgehen kann.
Installation
npm install @dwsm/changelog-mcp
Client-Konfiguration
Claude Code
claude mcp add changelog -- npx -y @dwsm/changelog-mcp
Oder in .mcp.json im Projekt-Root:
{
"mcpServers": {
"changelog": {
"command": "npx",
"args": ["-y", "@dwsm/changelog-mcp"]
}
}
}
Claude Desktop
In claude_desktop_config.json:
{
"mcpServers": {
"changelog": {
"command": "npx",
"args": ["-y", "@dwsm/changelog-mcp"]
}
}
}
Cursor / Windsurf / Cline
{
"changelog": {
"command": "npx",
"args": ["-y", "@dwsm/changelog-mcp"]
}
}
Tools
| Tool | Beschreibung |
|---|---|
init_changelog |
Erstellt eine neue Changelog-Datei + Config |
get_current_version |
Liest die aktuelle Version aus dem Changelog |
get_next_version |
Berechnet die nächste Version (major/minor/patch) |
preview_entry |
Zeigt Vorschau eines Eintrags ohne zu schreiben |
add_entry |
Schreibt einen Eintrag (Append-Only mit Backup) |
search_changelog |
Durchsucht das Changelog (Freitext, Version, Kategorie) |
get_entry |
Gibt den vollständigen Block einer Version zurück |
get_config |
Zeigt die aktive Konfiguration |
Konfiguration
Funktioniert ohne Konfiguration mit sinnvollen Standardwerten. Für individuelle Einstellungen eine Config-Datei anlegen.
Standard-Config
{
"format": "keep-a-changelog",
"changelog": {
"file": "CHANGELOG.md",
"path": "./",
"encoding": "utf-8",
"entrySpacing": 2
},
"backup": {
"enabled": true,
"path": "./changelog-backups",
"strategy": "daily",
"maxFiles": 30
},
"versioning": {
"mode": "semver",
"prefix": "",
"fixedMajor": null,
"fixedMinor": null
},
"dateFormat": "YYYY-MM-DD",
"language": "en"
}
Eigene Config-Datei
Für individuelle Einstellungen eine changelog-mcp-config.json oder .changelog-mcp.json im Projekt-Root anlegen. Nur geänderte Felder müssen angegeben werden - alles andere wird mit den Standardwerten aufgefüllt.
Soll die Config an einem anderen Ort liegen, den Pfad über die Umgebungsvariable CHANGELOG_MCP_CONFIG setzen.
Der Server sucht die Config in dieser Reihenfolge:
CHANGELOG_MCP_CONFIGUmgebungsvariable (expliziter Pfad zum Configfile)changelog-mcp-config.jsonoder.changelog-mcp.jsonim aktuellen Arbeitsverzeichnis- Gleiche Dateinamen im Git-Root
- Standard-Config (siehe oben)
Eigener Config-Pfad
Config-Pfad als env in der MCP-Server-Konfiguration (.mcp.json) setzen:
{
"mcpServers": {
"changelog": {
"command": "npx",
"args": ["-y", "@dwsm/changelog-mcp"],
"env": {
"CHANGELOG_MCP_CONFIG": "./documentation/changelog/changelog-mcp-config.json"
}
}
}
}
Beispiel: Individuelle Config
{
"format": "dwsm",
"changelog": {
"file": "CHANGELOG.md",
"path": "./documentation/changelog",
"encoding": "utf-8",
"entrySpacing": 1
},
"backup": {
"enabled": true,
"path": "./documentation/changelog/backups",
"strategy": "always",
"maxFiles": 15
},
"versioning": {
"mode": "patch-only",
"prefix": "v",
"fixedMajor": 1,
"fixedMinor": 0
},
"dateFormat": "YYYY-MM-DD",
"language": "de"
}
Nur geänderte Felder müssen angegeben werden - alles andere wird mit Standardwerten aufgefüllt.
Config-Felder
format - Changelog-Format
| Format | Beschreibung |
|---|---|
keep-a-changelog |
keepachangelog.com Standard (Standard) |
conventional |
Conventional Commits Format |
dwsm |
DWSM Format - freie Kategorien, kompaktes Layout |
Keep a Changelog (Standard)
Kategorien: Added, Changed, Deprecated, Removed, Fixed, Security
{ "format": "keep-a-changelog" }
## [0.1.0] - 2026-02-11
### Added
- Neue Export-Funktion implementiert
- PDF-Report-Generierung
- Excel-Export für Backtesting
### Files
- export.ts - Export-Klasse erstellt
- templates/report.html - Report-Template
Conventional Changelog
Kategorien: Features, Bug Fixes, Performance, Reverts, Breaking Changes
{ "format": "conventional" }
## 0.1.0 (2026-02-11)
### Features
* Neue Export-Funktion implementiert
* PDF-Report-Generierung
* Excel-Export für Backtesting
DWSM
Alle Kategorien frei wählbar. Empfohlen: Added, Changed, Deprecated, Removed, Fixed, Security, Documentation
{ "format": "dwsm" }
v0.1.0 (2026-02-11)
### Added
- Neue Export-Funktion implementiert
- PDF-Report-Generierung
### Files
- `export.ts`
- `templates/report.html`
changelog - Datei-Einstellungen
| Feld | Standard | Beschreibung |
|---|---|---|
file |
"CHANGELOG.md" |
Dateiname |
path |
"./" |
Verzeichnis relativ zum Projekt-Root |
encoding |
"utf-8" |
Zeichenkodierung |
entrySpacing |
2 |
Anzahl Leerzeilen zwischen Einträgen |
backup - Backup-Einstellungen
| Feld | Standard | Beschreibung |
|---|---|---|
enabled |
true |
Backup-System aktiv/inaktiv |
path |
"./changelog-backups" |
Backup-Verzeichnis |
strategy |
"daily" |
"always" / "daily" / "none" |
maxFiles |
30 |
Max. Anzahl Backup-Dateien |
versioning - Versionierung
| Feld | Standard | Beschreibung |
|---|---|---|
mode |
"semver" |
Versionierungs-Modus |
prefix |
"" |
Präfix (z.B. "v" für v1.2.3) |
fixedMajor |
null |
Feste Major-Version (für patch-only) |
fixedMinor |
null |
Feste Minor-Version (für patch-only) |
Versionierungs-Modi:
| Modus | Beispiel | Beschreibung |
|---|---|---|
semver |
1.2.3 | Frei wählbar via bump-Parameter (Standard) |
patch-only |
0.1.42 | Feste Major.Minor, nur Patch zählt hoch |
patch-only Beispiel - Major/Minor über Config steuerbar:
{
"versioning": {
"mode": "patch-only",
"fixedMajor": 0,
"fixedMinor": 1
}
}
Versionen: 0.1.0 → 0.1.1 → 0.1.2 → ...
Umstellung auf 0.2.0: einfach "fixedMinor": 2 setzen.
Empfehlung: Slash-Command in Claude Code
Für maximalen Komfort empfiehlt es sich, in Claude Code einen eigenen Slash-Command /changelog anzulegen. Damit lässt sich mit einem einzigen Befehl ein Changelog-Eintrag erstellen - ohne jedes Mal den Ablauf erklären zu müssen.
Einrichtung
Erstelle die Datei .claude/commands/changelog.md im Projekt-Root:
Erstelle einen Changelog-Eintrag für die soeben abgeschlossene Änderung.
Ablauf:
1. Analysiere die aktuellen Änderungen (git diff, git status)
2. Nutze `preview_entry` um den Eintrag zu prüfen
3. Frage den User ob der Eintrag passt
4. Nutze `add_entry` um den Eintrag zu schreiben
$ARGUMENTS
Verwendung
# Einfach aufrufen - analysiert automatisch die Änderungen
/changelog
Der Command analysiert die aktuellen Git-Änderungen, erstellt eine Vorschau und schreibt den Eintrag nach Bestätigung ins Changelog. Kategorien, Bump-Typen und weitere Optionen werden der KI automatisch vom MCP Server über die Tool-Schemas bereitgestellt - sie müssen nicht im Command definiert werden.
Plattformkompatibilität
Funktioniert überall wo Node.js 18+ läuft:
| Umgebung | Status |
|---|---|
| Windows (CMD/PowerShell) | Unterstützt |
| Windows (Git Bash) | Unterstützt |
| Linux | Unterstützt |
| WSL | Unterstützt |
| macOS | Unterstützt |
Alle Pfade werden intern mit path.resolve() / path.join() aufgelöst - keine hardcodierten Separatoren.
Lizenz
MIT License – siehe LICENSE für Details.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
Neon Database
MCP server for interacting with Neon Management API and databases
E2B
Using MCP to run code via e2b.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.