@dwsm/changelog-mcp
Allows creating and managing changelogs following the Keep a Changelog standard, with predefined categories and formatting.
Supports semantic versioning (SemVer) for automatic version calculation and bumping (major, minor, patch).
Click on "Install 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., "@@dwsm/changelog-mcpadd a new entry for the bug fix release"
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.
@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-mcpRelated MCP server: MCP Memory Server
Client-Konfiguration
Claude Code
claude mcp add changelog -- npx -y @dwsm/changelog-mcpOder 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 |
| Erstellt eine neue Changelog-Datei + Config |
| Liest die aktuelle Version aus dem Changelog |
| Berechnet die nächste Version (major/minor/patch) |
| Zeigt Vorschau eines Eintrags ohne zu schreiben |
| Schreibt einen Eintrag (Append-Only mit Backup) |
| Durchsucht das Changelog (Freitext, Version, Kategorie) |
| Gibt den vollständigen Block einer Version zurück |
| 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 ArbeitsverzeichnisGleiche 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 |
| keepachangelog.com Standard (Standard) |
| Conventional Commits Format |
| 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-TemplateConventional 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 BacktestingDWSM
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 |
|
| Dateiname |
|
| Verzeichnis relativ zum Projekt-Root |
|
| Zeichenkodierung |
|
| Anzahl Leerzeilen zwischen Einträgen |
backup - Backup-Einstellungen
Feld | Standard | Beschreibung |
|
| Backup-System aktiv/inaktiv |
|
| Backup-Verzeichnis |
|
|
|
|
| Max. Anzahl Backup-Dateien |
versioning - Versionierung
Feld | Standard | Beschreibung |
|
| Versionierungs-Modus |
|
| Präfix (z.B. |
|
| Feste Major-Version (für |
|
| Feste Minor-Version (für |
Versionierungs-Modi:
Modus | Beispiel | Beschreibung |
| 1.2.3 | Frei wählbar via bump-Parameter (Standard) |
| 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
$ARGUMENTSVerwendung
# Einfach aufrufen - analysiert automatisch die Änderungen
/changelogDer 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.
Available Tools
8 toolsadd_entryA
Fügt einen neuen Eintrag zum Changelog hinzu (Append-Only mit Backup).
| Name | Required | Description | Default |
|---|---|---|---|
| bump | No | Version-Bump-Typ (Default: "patch") | |
| files | No | Optionale Liste geänderter Dateien | |
| details | No | Optionale Detail-Punkte als Array. Kein Markdown (z.B. ###) verwenden - wird als Heading interpretiert. | |
| category | Yes | Kategorie des Eintrags. Erlaubte Werte: Added, Changed, Deprecated, Removed, Fixed, Security | |
| description | Yes | Beschreibung der Änderung |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It explicitly states that the operation is 'Append-Only' (non-destructive) and includes a backup, which provides key behavioral context for safety. However, it does not mention permissions, rate limits, or reversibility, but for a simple append tool this is sufficient.
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?
The description is a single sentence that front-loads the core action and key behavioral traits (append-only, backup). No wasted words; every part earns its place.
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?
Given 5 parameters and no output schema, the description covers the basic purpose and safety (append-only, backup) but does not explain what the tool returns (e.g., success message, entry ID) or how 'backup' works. It is adequate for a straightforward add operation but leaves some context unclear.
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?
All 5 parameters are described in the schema (100% coverage), so the description adds no new parameter-level meaning. Baseline is 3. The description's 'Append-Only' context implicitly informs the action but does not elaborate on individual parameters.
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 a specific verb ('Fügt...hinzu') and clearly states the resource ('einen neuen Eintrag zum Changelog'). The mention of 'Append-Only mit Backup' distinguishes it from siblings like get_entry or preview_entry, which serve different purposes.
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 tells what the tool does but provides no guidance on when to use it versus alternatives such as preview_entry (which presumably adds a pending entry) or other sibling tools. Implied usage is clear but lacks explicit context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_configA
Zeigt die aktuelle Konfiguration des Changelog MCP Servers an.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It states a read operation, which is accurate. No side effects or auth requirements are mentioned, but given the simplicity of the tool, this is adequate.
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?
The description is a single short sentence that is front-loaded and contains no unnecessary words. It efficiently conveys the tool's purpose.
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?
Given the tool's simplicity (no parameters, no output schema, and a straightforward read operation), the description is complete and sufficient for an agent to understand and invoke it correctly.
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?
The tool has zero parameters, so the baseline is 4. The description does not add parameter information, but none is needed.
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 tool shows the current configuration of the server. It uses a specific verb ('shows') and resource ('configuration'), distinguishing it from sibling tools that deal with entries or versions.
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 explicit guidance on when to use or when not to use. Since it's a simple getter with no parameters, the context is implied, but no alternatives or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_current_versionA
Liest die aktuelle höchste Versionsnummer aus dem Changelog.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description only states the basic function but does not disclose any behavioral nuances such as what happens if the changelog is empty, whether it returns a string or number, or any error conditions. With no annotations, this is insufficient for full transparency.
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?
The description is a single, clear sentence that quickly conveys the tool's purpose with no unnecessary words.
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?
While the description covers the core function, it lacks information about prerequisites (like changelog existence), the format of the returned version number, and potential error states. Given the simplicity, it is partially complete but not fully informative.
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?
No parameters exist, so the schema fully covers parameter semantics. The description does not need to add anything, achieving high value by being unnecessary.
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 tool reads the current highest version number from the changelog, using a specific verb and resource, and implicitly distinguishes from sibling tools like get_entry or get_next_version.
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 explicit usage context or alternatives are mentioned; the description only states what it does without indicating when it should be preferred over siblings like get_next_version or search_changelog.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_entryB
Gibt den vollständigen Changelog-Block einer bestimmten Version zurück.
| Name | Required | Description | Default |
|---|---|---|---|
| version | Yes | Versionsnummer (z.B. 0.1.0, 1.2.3) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It only states it returns data, implying a read operation, but lacks detail about error behavior (e.g., version not found), authorization needs, or side effects. The single sentence is insufficient for behavioral transparency.
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?
The description is a single, efficient sentence that communicates core functionality without redundancy. It is front-loaded and achieves conciseness, though it could benefit from slight expansion on the return content.
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?
Given the tool has 1 parameter, no output schema, and no annotations, the description lacks detail on the return format, what constitutes a 'changelog block,' and behavior for invalid input. It is minimally complete for a simple read tool but leaves gaps.
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 coverage is 100% with a clear description of the 'version' parameter. The description adds no additional meaning beyond what the schema already provides, meeting the baseline for a fully covered 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?
The description clearly states 'Returns the complete changelog block of a specific version,' specifying the action, resource, and scope. It effectively distinguishes from siblings like 'get_current_version' or 'search_changelog' by indicating a targeted retrieval of a full block for a given version.
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 over alternatives such as 'preview_entry' or 'search_changelog.' There is no mention of prerequisites, limitations, or context that helps the agent decide which tool is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_next_versionB
Berechnet die nächste Versionsnummer basierend auf dem Bump-Typ.
| Name | Required | Description | Default |
|---|---|---|---|
| bump | No | Art des Version-Bumps (Default: "patch") |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so description carries full burden. It discloses it calculates (a read-only computation) but doesn't state whether it has side effects or requires any preconditions. Adequate for a simple calculation, but could specify it's read-only.
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 concise and front-loaded. No unnecessary words, but could benefit from brief additional context like 'given a current version'.
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 one-param computation tool with no output schema, the description is minimally adequate. However, it doesn't mention that it relies on a current version (presumably from get_current_version), which could be helpful for context.
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 coverage is 100% and already describes bump as an enum with default 'patch'. Description adds 'based on the bump type' which aligns but adds no new info beyond 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?
The description clearly states the tool calculates the next version number based on bump type (verb 'berechnet', resource 'Versionsnummer'). It distinguishes from siblings like get_current_version which returns the current version, but the differentiation is implicit.
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 is provided on when to use this tool vs alternatives (e.g., when to bump vs. just retrieving version). No explicit context or exclusion statements.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
init_changelogC
Erstellt eine neue Changelog-Datei und optional eine .changelog-mcp.json Config.
| Name | Required | Description | Default |
|---|---|---|---|
| file | No | Dateiname (Default aus Config) | |
| format | No | Format-Preset (Default aus Config) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It indicates a write operation but does not disclose if files are overwritten, what happens on existing config, or other side effects.
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?
The description is a single concise sentence. It is efficient but lacks structure; key information is not front-loaded, and there is no separation of concerns.
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 simple initialization tool, the description is minimally adequate. It does not explain return values, side effects, or usage context, which could be improved.
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 coverage is 100%, so baseline is 3. The description adds no extra meaning beyond the schema's parameter descriptions; it only restates the tool's effect.
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 tool creates a new changelog file and optionally a config file. It distinguishes the tool's purpose from siblings which focus on entries and versions, but does not explicitly differentiate.
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 tool versus alternatives like add_entry or get_config. No exclusions or prerequisites provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
preview_entryA
Zeigt eine Vorschau des formatierten Changelog-Eintrags ohne zu schreiben.
| Name | Required | Description | Default |
|---|---|---|---|
| bump | No | Version-Bump-Typ (Default: "patch") | |
| files | No | Optionale Liste geänderter Dateien | |
| details | No | Optionale Detail-Punkte als Array. Kein Markdown (z.B. ###) verwenden - wird als Heading interpretiert. | |
| category | Yes | Kategorie des Eintrags. Erlaubte Werte: Added, Changed, Deprecated, Removed, Fixed, Security | |
| description | Yes | Beschreibung der Änderung |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description only conveys that the tool does not write. It does not disclose other behaviors such as required authentication, what the response contains, or if any state is affected. Minimal behavioral disclosure beyond the name.
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?
One concise sentence that front-loads the action. Efficient for a simple tool, though it could be slightly more structured.
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?
Given the tool has 5 parameters, no output schema, and no annotations, the description is incomplete. It does not explain what the preview looks like (return format) or any prerequisites, leaving questions for the agent.
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?
All parameters have descriptions in the input schema (100% coverage), so the tool description adds no extra meaning beyond the schema. Baseline score of 3 is appropriate.
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 tool shows a preview of the formatted changelog entry without writing, which distinguishes it from sibling tools like add_entry (which writes) and get_entry (which retrieves existing entries).
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 implies usage for previewing before writing, but does not explicitly state when not to use or mention alternatives. The context is clear enough for a simple preview tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_changelogB
Durchsucht das Changelog nach Einträgen. Filtert nach Freitext, Version und/oder Kategorie.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max. Anzahl Ergebnisse (Default: 10) | |
| query | No | Volltextsuche (case-insensitive) | |
| version | No | Nach bestimmter Version filtern (exakt oder Präfix) | |
| category | No | Nach Kategorie filtern (z.B. Added, Fixed, Features) |
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. It implies a read-only search operation but does not specify behavior such as pagination, ordering, or whether the search is case-insensitive (though the schema indicates case-insensitive for query). Details about response format or potential side effects are missing.
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?
The description is extremely concise at two sentences, with no wasted words. It front-loads the core purpose ('searches the changelog') and then lists the filtering options efficiently.
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?
Given no output schema and only 4 parameters with full schema coverage, the description is minimally adequate for a search tool. However, it lacks information about result format, pagination (though limit is a parameter), and default behavior. It is functional but not complete.
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 coverage is 100% with all parameters described. The description only reiterates that filters are available (freetext, version, category) without adding new semantics beyond the schema. The baseline of 3 is appropriate since the schema already fully documents parameters.
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 that the tool searches the changelog and mentions filtering by free text, version, and/or category, which distinguishes it from get_entry (single entry retrieval) and preview_entry (preview). However, it could be more specific about the return type (list of entries).
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 alternatives like get_entry or preview_entry. It only states the filtering capabilities, but does not indicate when to prefer search over direct lookup.
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. Dates show when Glama detected each change.
8 tool updates
v1.1.8- First observed
add_entry - First observed
get_config - First observed
get_current_version - First observed
get_entry - First observed
get_next_version - First observed
init_changelog - First observed
preview_entry - First observed
search_changelog
TDQS
Each tool has a clearly distinct purpose: adding entries, configuration, version reading, entry retrieval, next version calculation, initialization, preview, and search. No two tools overlap in functionality.
All tool names follow a consistent verb_noun snake_case pattern (e.g., add_entry, get_config, search_changelog), making them predictable and easy to understand.
With 8 tools, the server covers all core changelog operations (init, add, read, search, version management) without being bloated or too minimal. The count is well-scoped for its purpose.
The tool set covers essential workflows (init, add, read, preview, search, version handling). It intentionally omits update/delete (append-only design). A minor gap is the lack of a list-all-versions tool, but search can compensate.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Cross-agent artifact workspace with provenance across Claude Code, Codex, Cursor, LangGraph.
External Brain for AI Agents - persistent versioned memory for creators
Hash-chained HMAC-signed audit log MCP for A2A (agent-to-agent) calls. Every tool-call, agent-ha...
Bitcoin-anchored, tamper-evident audit log for AI agents — record, disclose and verify actions.
Related MCP Servers
- FlicenseBqualityCmaintenanceEnables AI assistants to automatically log and manage conversation history with developers in structured markdown format. Provides powerful search and context suggestions to help AI understand project history and maintain continuity across sessions.41-
- AlicenseBqualityDmaintenanceGives AI coding assistants persistent memory, safety controls, and project awareness by tracking coding sessions, protecting critical files from modifications, and managing approval workflows with automatic changelog generation.1918MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to perform advanced file editing operations with enhanced security, automatic backups, and undo functionality.MIT

statecli-mcp-serverofficial
AlicenseNot gradedqualityDmaintenanceGives AI agents memory, undo, and self-awareness by tracking file changes and enabling checkpoints and rollbacks.742MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/dwsmorg/changelog_mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server