Provides Git repository management capabilities, including listing repositories and accessing repository information within Backlog projects.
Enables pull request management including creating, updating, listing pull requests and adding or updating comments on pull requests across repositories.
Backlog MCP-Server
Ein Model Context Protocol (MCP)-Server für die Interaktion mit der Backlog-API. Dieser Server bietet Tools zur Verwaltung von Projekten, Problemen, Wiki-Seiten und mehr im Backlog über KI-Agenten wie Claude Desktop, Cline, Cursor usw.
Merkmale
- Projektverwaltung (Erstellen, Lesen, Aktualisieren, Löschen)
- Problemverfolgung (Erstellen, Aktualisieren, Löschen, Auflisten)
- Wiki-Seitenverwaltung
- Git-Repository-Verwaltung
- Pull Request-Verwaltung (Erstellen, Aktualisieren, Auflisten, Kommentieren)
- Benachrichtigungsverwaltung
- Beobachtungslistenverwaltung
- Feldauswahl im GraphQL-Stil für optimierte Antworten
- Token-Begrenzung für große Antworten
- Verbesserte Fehlerbehandlung
- Und weitere Backlog-API-Integrationen
Anforderungen
- Docker
- Ein Backlog-Konto mit API-Zugriff
- API-Schlüssel aus Ihrem Backlog-Konto
Installation
Option 1: Installation über Docker
Die einfachste Möglichkeit, diesen MCP-Server zu verwenden, ist die MCP-Konfiguration für Claude Desktop oder Cline:
- Öffnen Sie die Claude Desktop- oder Cline-Einstellungen
- Navigieren Sie zum MCP-Konfigurationsbereich
- Fügen Sie die folgende Konfiguration hinzu:
Ersetzen Sie your-domain.backlog.com
durch Ihre Backlog-Domäne und your-api-key
durch Ihren Backlog-API-Schlüssel.
Erweiterte Konfigurationsoptionen
Dies ist ein experimenteller Ansatz und nicht die übliche Methode zur Verkleinerung des Kontextfensters. Sollten Sie Probleme mit der Verwendung dieses MCP mit KI-Agenten haben, versuchen Sie bitte, die folgenden Einstellungen anzupassen. Sie können zusätzliche Optionen hinzufügen, um das Serververhalten anzupassen:
MAX_TOKENS
: Maximale Anzahl an Token, die in Antworten zulässig sind (Standard: 50000)OPTIMIZE_RESPONSE
: Aktivieren Sie die Feldauswahl im GraphQL-Stil, um die Antwortgröße zu optimieren (Standard: „false“)
Das Docker-Image auf dem neuesten Stand halten
Standardmäßig verwendet Docker ein lokal zwischengespeichertes Image, wenn es bereits zuvor abgerufen wurde. Um sicherzustellen, dass Sie immer die neueste Version von ghcr.io/nulab/backlog-mcp-server
verwenden, ziehen Sie eine der folgenden Methoden in Betracht:
Option 1: --pull always
verwenden (empfohlen)
Wenn Sie Docker 20.10 oder höher verwenden, können Sie das args
Array so ändern, dass es das Flag --pull always
enthält:
Dadurch wird sichergestellt, dass Docker vor der Ausführung immer das neueste Image aus der GitHub Container Registry abruft.
Option 2: Manuelles Herunterladen des neuesten Images
Wenn Ihre Docker-Version --pull nicht immer unterstützt, können Sie das neueste Image manuell abrufen, bevor Sie den Server ausführen:
Option 2: Manuelle Installation
- Klonen Sie das Repository:
- Installieren Sie Abhängigkeiten:
- Erstellen Sie das Projekt:
- Legen Sie Ihr JSON zur Verwendung als MCP fest
Verfügbare Tools
Der Server bietet die folgenden Tools zur Interaktion mit Backlog:
Weltraumwerkzeuge
Werkzeugname | Beschreibung |
---|---|
get_space | Gibt Informationen über den Backlog-Speicherplatz zurück |
get_users | Gibt eine Liste der Benutzer im Backlog-Bereich zurück |
get_myself | Gibt Informationen über den authentifizierten Benutzer zurück |
get_priorities | Prioritätenliste der Rücksendungen |
get_resolutions | Gibt eine Liste mit Problemlösungen zurück |
get_issue_types | Gibt eine Liste der Problemtypen für ein Projekt zurück |
Projekt-Tools
Werkzeugname | Beschreibung |
---|---|
get_project_list | Gibt eine Liste der Projekte zurück |
add_project | Erstellt ein neues Projekt |
get_project | Gibt Informationen zu einem bestimmten Projekt zurück |
update_project | Aktualisiert ein vorhandenes Projekt |
delete_project | Löscht ein Projekt |
get_custom_fields | Gibt eine Liste benutzerdefinierter Felder für ein Projekt zurück |
Ausgabetools
Werkzeugname | Beschreibung |
---|---|
get_issue | Gibt Informationen zu einem bestimmten Problem zurück |
get_issues | Gibt eine Liste der Probleme zurück |
count_issues | Gibt die Anzahl der Probleme zurück |
add_issue | Erstellt ein neues Problem im angegebenen Projekt |
update_issue | Aktualisiert ein vorhandenes Problem |
delete_issue | Löscht ein Problem |
Kommentartools
Werkzeugname | Beschreibung |
---|---|
get_issue_comments | Gibt eine Liste mit Kommentaren zu einem Problem zurück |
add_issue_comment | Fügt einem Problem einen Kommentar hinzu |
Wiki-Tools
Werkzeugname | Beschreibung |
---|---|
get_wiki_pages | Gibt eine Liste der Wiki-Seiten zurück |
get_wikis_count | Gibt die Anzahl der Wiki-Seiten in einem Projekt zurück |
get_wiki | Gibt Informationen zu einer bestimmten Wiki-Seite zurück |
add_wiki | Erstellt eine neue Wiki-Seite |
Kategorie Werkzeuge
Werkzeugname | Beschreibung |
---|---|
get_categories | Gibt eine Liste der Kategorien für ein Projekt zurück |
Benachrichtigungstools
Werkzeugname | Beschreibung |
---|---|
get_notifications | Gibt eine Liste der Benachrichtigungen zurück |
count_notifications | Gibt die Anzahl der Benachrichtigungen zurück |
reset_unread_notification_count | Anzahl ungelesener Benachrichtigungen zurücksetzen |
mark_notification_as_read | Eine Benachrichtigung als gelesen markieren |
Git-Repository-Tools
Werkzeugname | Beschreibung |
---|---|
get_git_repositories | Gibt eine Liste der Git-Repositorys für ein Projekt zurück |
get_git_repository | Gibt Informationen zu einem bestimmten Git-Repository zurück |
Pull Request-Tools
Werkzeugname | Beschreibung |
---|---|
get_pull_requests | Gibt eine Liste der Pull Requests für ein Repository zurück |
get_pull_requests_count | Gibt die Anzahl der Pull Requests für ein Repository zurück |
get_pull_request | Gibt Informationen zu einem bestimmten Pull Request zurück |
add_pull_request | Erstellt einen neuen Pull Request |
update_pull_request | Aktualisiert eine vorhandene Pull-Anforderung |
get_pull_request_comments | Gibt eine Liste mit Kommentaren für eine Pull-Anfrage zurück |
add_pull_request_comment | Fügt einem Pull Request einen Kommentar hinzu |
update_pull_request_comment | Aktualisiert einen Kommentar zu einer Pull-Anfrage |
Überwachungstools
Werkzeugname | Beschreibung |
---|---|
get_watching_list_items | Gibt eine Liste der beobachteten Elemente für einen Benutzer zurück |
get_watching_list_count | Gibt die Anzahl der von einem Benutzer beobachteten Elemente zurück |
Anwendungsbeispiele
Sobald der MCP-Server in KI-Agenten konfiguriert ist, können Sie die Tools direkt in Ihren Konversationen verwenden. Hier sind einige Beispiele:
Projekte auflisten
Erstellen eines neuen Problems
Projektdetails abrufen
Arbeiten mit Git-Repositorys
Verwalten von Pull Requests
Beobachtete Artikel
Verwenden der Feldauswahl
Wenn die Option OPTIMIZE_RESPONSE
aktiviert ist, können Sie mit einer Syntax im GraphQL-Stil angeben, welche Felder Sie abrufen möchten:
Die KI nutzt die Feldauswahl, um die Antwort zu optimieren:
Dies reduziert die Antwortgröße und Verarbeitungszeit, insbesondere bei großen Objekten.
Erweiterte Funktionen
Reaktionsoptimierung
Feldauswahl
Wenn OPTIMIZE_RESPONSE=true
aktiviert ist, können Sie eine Syntax im GraphQL-Stil verwenden, um bestimmte Felder auszuwählen:
Dies ermöglicht Ihnen:
- Reduzieren Sie die Antwortgröße, indem Sie nur die erforderlichen Felder anfordern
- Konzentrieren Sie sich auf bestimmte Datenpunkte
- Verbessern der Leistung bei großen Antworten
Token-Begrenzung
Um ein Überschreiten der Token-Grenzen zu verhindern, werden große Antworten automatisch begrenzt:
- Standardlimit: 50.000 Token
- Konfigurierbar über die Umgebungsvariable
MAX_TOKENS
- Antworten, die das Limit überschreiten, werden mit einer Nachricht abgeschnitten
i18n / Überschreiben von Beschreibungen
Sie können die Beschreibungen der Tools überschreiben, indem Sie in Ihrem Home-Verzeichnis eine Datei .backlog-mcp-serverrc.json
erstellen.
Die Datei sollte ein JSON-Objekt mit den Toolnamen als Schlüssel und den neuen Beschreibungen als Werte enthalten.
Zum Beispiel:
Wenn der Server startet, bestimmt er die endgültige Beschreibung für jedes Tool basierend auf der folgenden Priorität:
- Umgebungsvariablen (z. B.
BACKLOG_MCP_TOOL_ADD_ISSUE_COMMENT_DESCRIPTION
) - Einträge in
.backlog-mcp-serverrc.json
– Unterstützte Konfigurationsdateiformate: .json, .yaml, .yml - Integrierte Fallbackwerte (Englisch)
Beispielkonfiguration:
Aktuelle Übersetzungen exportieren
Sie können die aktuellen Standardübersetzungen (einschließlich aller Überschreibungen) exportieren, indem Sie die Binärdatei mit dem Flag --export-translations ausführen.
Dadurch werden alle Toolbeschreibungen, einschließlich aller von Ihnen vorgenommenen Anpassungen, auf die Standardausgabe gedruckt.
Beispiel:
oder
Verwenden einer japanischen Übersetzungsvorlage
Eine japanische Beispielkonfigurationsdatei finden Sie unter:
Um es zu verwenden, kopieren Sie es als .backlog-mcp-serverrc.json in Ihr Home-Verzeichnis:
Sie können die Datei dann bearbeiten, um die Beschreibungen nach Bedarf anzupassen.
Verwenden von Umgebungsvariablen
Alternativ können Sie Toolbeschreibungen über Umgebungsvariablen überschreiben.
Die Namen der Umgebungsvariablen basieren auf den Tool-Schlüsseln, haben das Präfix BACKLOG_MCP_ und werden in Großbuchstaben geschrieben.
Beispiel: So überschreiben Sie TOOL_ADD_ISSUE_COMMENT_DESCRIPTION:
Der Server lädt die Konfigurationsdatei synchron beim Start.
Umgebungsvariablen haben immer Vorrang vor der Konfigurationsdatei.
Entwicklung
Ausführen von Tests
Neue Tools hinzufügen
- Erstellen Sie eine neue Datei in
src/tools/
nach dem Muster vorhandener Tools - Erstellen Sie eine entsprechende Testdatei
- Fügen Sie das neue Tool zu
src/tools/tools.ts
hinzu - Erstellen und testen Sie Ihre Änderungen
Befehlszeilenoptionen
Der Server unterstützt mehrere Befehlszeilenoptionen:
--export-translations
: Alle Übersetzungsschlüssel und -werte exportieren--optimize-response
: Feldauswahl im GraphQL-Stil aktivieren--max-tokens=NUMBER
: Maximales Token-Limit für Antworten festlegen
Beispiel:
Lizenz
Dieses Projekt ist unter der MIT-Lizenz lizenziert.
Bitte beachten Sie: Dieses Tool wird unter der MIT-Lizenz ohne jegliche Garantie oder offiziellen Support bereitgestellt.
Verwenden Sie es auf eigene Gefahr, nachdem Sie den Inhalt geprüft und festgestellt haben, ob es für Ihre Anforderungen geeignet ist.
Wenn Sie auf Probleme stoßen, melden Sie diese bitte über GitHub Issues .
You must be authenticated.
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Tools
Ein Model Context Protocol-Server, der Claude die Interaktion mit Backlog-Projektmanagement-Tools über API-Integration ermöglicht und so die Verwaltung von Projekten, Problemen, Wiki-Seiten und anderen Backlog-Ressourcen ermöglicht.
Related MCP Servers
- -securityAlicense-qualityA Model Context Protocol server that allows Claude to interact with Linear's API for managing teams, issues, projects, and cycles.Last updated -181TypeScriptMIT License
- -securityAlicense-qualityA Model Context Protocol server that enables Claude to interact with the ConnectWise Manage API to perform operations like retrieving, creating, updating, and deleting tickets, companies, contacts, and other entities.Last updated -JavaScriptMIT License
- -securityFlicense-qualityIntegrates Backlog project management with Claude via Model Context Protocol, enabling access to projects, issues, and wiki pages through natural language interactions.Last updated -TypeScript
- -securityFlicense-qualityA Model Context Protocol server that enables interaction with Shortcut (formerly Clubhouse) project management tool, allowing users to view and search projects, stories, epics, and objectives, as well as create new items through natural language.Last updated -3Python