KanbanX MCP Server
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., "@KanbanX MCP ServerAdd a task to TODO: Write documentation"
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.
KanbanX MCP Server 📋
Ein vollständiger Model Context Protocol (MCP) Server für KanbanX - Dein persönliches Kanban Task Management System mit erweiterten Features wie Subtasks, Notizen und Code-Clips.
🌟 Features
📊 Kanban Board Management
Drei-Spalten-System: TODO, DOING, DONE
Drag-and-Drop-ähnlich: Verschiebe Tasks zwischen Spalten
Eindeutige IDs: Jede Task erhält eine unveränderliche ID
Timestamps: Automatische Zeitstempel für alle Aktionen
📝 Erweiterte Task-Features
Hierarchische Subtasks: Erstelle Unteraufgaben mit eigenem Status
Detaillierte Notizen: Füge mehrzeilige Notizen zu Tasks hinzu
Code Clips: Speichere Code-Schnipsel, Links und wichtige Informationen
Rich Text Support: Unicode-Support für Emojis und Sonderzeichen
🔌 MCP Integration
Vollständige MCP 2024-11-05 Kompatibilität
RESTful-ähnliche Tools: Intuitive Tool-Namen und Parameter
Ressourcen-Zugriff: Direkter JSON-Zugriff auf das komplette Board
Fehlerbehandlung: Robuste Fehlerbehandlung und Logging
💾 Daten-Persistierung
JSON-basiert: Einfach lesbare und editierbare Datenspeicherung
Automatische Backups: Sichere Datenspeicherung
Portable: Alle Daten in einer einzigen JSON-Datei
Versionskontrolle-freundlich: Git-kompatible Datenstruktur
Related MCP server: Google Sheets Kanban MCP Server
🚀 Schnellstart (Windows)
Voraussetzungen
Windows 10/11 (PowerShell 5.1+ oder PowerShell 7+)
Python 3.8+ (Download hier)
MCP-kompatibler Client (Claude Desktop, Gemini CLI, etc.)
⚡ Automatische Installation
Repository klonen oder herunterladen
git clone https://github.com/DonDmGeR/MCP-KanbanX.git cd MCP-KanbanXSetup-Script ausführen
.\setup.ps1Pfad zur Server-Datei eingeben (ohne Anführungszeichen!)
Pfad: C:\path\to\kanbanx_mcp_server.pyMCP Client neu starten und testen:
list_board()
🔧 Manuelle Installation
Schritt 1: Python und Dependencies installieren
# Python Version prüfen
python --version
# MCP SDK installieren
pip install mcpSchritt 2: Server-Datei erstellen
Erstelle kanbanx_mcp_server.py mit dem bereitgestellten Code im Repository.
Schritt 3: Konfiguration erstellen
# Konfigurationsverzeichnis erstellen
$configDir = "$env:APPDATA\Claude"
New-Item -ItemType Directory -Path $configDir -Force
# Konfigurationsdatei erstellen
$config = @{
mcpServers = @{
kanbanx = @{
command = "python"
args = @("C:\full\path\to\kanbanx_mcp_server.py")
env = @{}
}
}
}
$config | ConvertTo-Json -Depth 10 | Out-File -FilePath "$configDir\claude_desktop_config.json" -Encoding UTF8Schritt 4: Server testen
# Server direkt testen
python kanbanx_mcp_server.py
# Konfiguration prüfen
Get-Content "$env:APPDATA\Claude\claude_desktop_config.json"📖 Verfügbare Tools
🆕 Task Management
add_task
Erstellt eine neue Aufgabe in der gewünschten Spalte.
Parameter:
column(string, required):"todo","doing", oder"done"title(string, required): Titel der Aufgabenote(string, optional): Zusätzliche Beschreibung
Beispiel:
add_task({
column: "todo",
title: "Website entwickeln",
note: "Responsive React-App mit modernem Design"
})move_task
Verschiebt eine Aufgabe zwischen Spalten.
Parameter:
task_id(string, required): ID der Aufgabe (z.B."ID-abc123")target_column(string, required): Zielspalte
Beispiel:
move_task({
task_id: "ID-abc123",
target_column: "doing"
})delete_task
Löscht eine Aufgabe permanent.
Parameter:
task_id(string, required): ID der zu löschenden Aufgabe
Beispiel:
delete_task({
task_id: "ID-abc123"
})📋 Subtask Management
add_subtask
Fügt eine Unteraufgabe zu einer bestehenden Aufgabe hinzu.
Parameter:
task_id(string, required): ID der Hauptaufgabetext(string, required): Beschreibung der Unteraufgabe
Beispiel:
add_subtask({
task_id: "ID-abc123",
text: "Navigation komponente erstellen"
})complete_subtask
Markiert eine Unteraufgabe als erledigt.
Parameter:
task_id(string, required): ID der Hauptaufgabesubtask_id(string, required): ID der Unteraufgabe
Beispiel:
complete_subtask({
task_id: "ID-abc123",
subtask_id: "ID-def456"
})📝 Content Management
add_note
Fügt eine Notiz zu einer Aufgabe hinzu oder erweitert bestehende Notizen.
Parameter:
task_id(string, required): ID der Aufgabenote(string, required): Notiztext (unterstützt Mehrzeilen)
Beispiel:
add_note({
task_id: "ID-abc123",
note: "Wichtig: Mobile-First Ansatz verwenden\nFarben: #3498db, #2ecc71"
})add_clip
Speichert Code-Schnipsel, Links oder wichtige Informationen zu einer Aufgabe.
Parameter:
task_id(string, required): ID der Aufgabesnippet(string, required): Code, Link oder Information
Beispiel:
add_clip({
task_id: "ID-abc123",
snippet: "npm install react-router-dom @types/react-router-dom"
})👁️ Viewing Tools
list_board
Zeigt das komplette Kanban Board an.
Parameter:
format(string, optional):"detailed"(Standard) oder"summary"
Beispiel:
// Detaillierte Ansicht
list_board({ format: "detailed" })
// Zusammenfassung
list_board({ format: "summary" })🔧 Konfiguration
MCP Client-spezifische Konfiguration
Konfigurationsdatei: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"kanbanx": {
"command": "python",
"args": ["C:\\path\\to\\kanbanx_mcp_server.py"],
"env": {}
}
}
}Installiere Gemini CLI:
npm install -g @google/gemini-cliKonfiguration: Siehe Gemini CLI MCP Dokumentation
Für eigene MCP Clients verwende die Standard MCP 2024-11-05 Spezifikation:
import asyncio
from mcp.client import ClientSession
from mcp.client.stdio import stdio_client
async def main():
async with stdio_client("python", "kanbanx_mcp_server.py") as streams:
async with ClientSession(streams[0], streams[1]) as session:
await session.initialize()
# Tools verwenden
result = await session.call_tool("list_board", {})
print(result)
asyncio.run(main())Erweiterte Konfiguration
Umgebungsvariablen
# Datenverzeichnis anpassen
$env:KANBANX_DATA_DIR = "C:\MyProjects\kanban-data"
# Debug-Modus aktivieren
$env:KANBANX_DEBUG = "true"Mehrere Board-Instanzen
{
"mcpServers": {
"kanbanx-work": {
"command": "python",
"args": ["C:\\path\\to\\kanbanx_mcp_server.py"],
"env": {
"KANBANX_DATA_FILE": "work_board.json"
}
},
"kanbanx-personal": {
"command": "python",
"args": ["C:\\path\\to\\kanbanx_mcp_server.py"],
"env": {
"KANBANX_DATA_FILE": "personal_board.json"
}
}
}
}📊 Ressourcen
kanbanx://board
Direkter Zugriff auf das komplette Board als JSON.
Verwendung:
// Board-Daten abrufen
const boardData = await client.readResource("kanbanx://board");
console.log(JSON.parse(boardData));Datenstruktur:
{
"todo": [
{
"id": "ID-abc123",
"title": "Website entwickeln",
"note": "Responsive Design mit React",
"subs": {
"ID-def456": {
"text": "Navigation erstellen",
"done": false
}
},
"clips": [
{
"ts": "2024-01-15T10:30:00",
"text": "npm install react"
}
],
"created": "2024-01-15T09:00:00"
}
],
"doing": [],
"done": []
}🎯 Anwendungsbeispiele
Beispiel 1: Neues Projekt Setup
// 1. Hauptaufgabe erstellen
add_task({
column: "todo",
title: "E-Commerce Website",
note: "Online-Shop mit React und Node.js"
})
// 2. Subtasks hinzufügen
add_subtask({
task_id: "ID-abc123",
text: "Database Schema entwerfen"
})
add_subtask({
task_id: "ID-abc123",
text: "API Endpoints implementieren"
})
add_subtask({
task_id: "ID-abc123",
text: "Frontend Komponenten erstellen"
})
// 3. Wichtige Links und Commands speichern
add_clip({
task_id: "ID-abc123",
snippet: "Database: PostgreSQL 14, Redis für Caching"
})
add_clip({
task_id: "ID-abc123",
snippet: "git clone https://github.com/project/ecommerce-template"
})Beispiel 2: Sprint Planning
// Sprint Board übersicht
list_board({ format: "summary" })
// Task in Bearbeitung nehmen
move_task({
task_id: "ID-abc123",
target_column: "doing"
})
// Progress-Update
add_note({
task_id: "ID-abc123",
note: "Sprint 1 - Tag 3: Database Schema 80% fertig"
})
// Subtask abhaken
complete_subtask({
task_id: "ID-abc123",
subtask_id: "ID-def456"
})Beispiel 3: Bug Tracking
// Bug-Report erstellen
add_task({
column: "todo",
title: "🐛 Login-Validation Bug",
note: "Users können sich mit leeren Feldern einloggen"
})
// Investigation Details
add_clip({
task_id: "ID-bug001",
snippet: "Reproduktion: Chrome 120, leere Email + Passwort → Login successful"
})
add_clip({
task_id: "ID-bug001",
snippet: "Betroffene Datei: /src/components/LoginForm.tsx Zeile 45"
})
// Fix-Tasks hinzufügen
add_subtask({
task_id: "ID-bug001",
text: "Input validation implementieren"
})
add_subtask({
task_id: "ID-bug001",
text: "Unit tests für validation schreiben"
})🛠️ Troubleshooting
Häufige Probleme
Lösung:
# 1. Python-Pfad prüfen
where python
# 2. Server direkt testen
python "C:\path\to\kanbanx_mcp_server.py"
# 3. Port-Konflikte prüfen
netstat -an | findstr :LISTENING
# 4. Neustart des MCP ClientsLösung:
# 1. MCP SDK Version prüfen
pip show mcp
# 2. Konfigurationsdatei validieren
Get-Content "$env:APPDATA\Claude\claude_desktop_config.json" | ConvertFrom-Json
# 3. Server-Logs prüfen
python kanbanx_mcp_server.py 2>&1 | Tee-Object -FilePath debug.logLösung:
# 1. Backup-Datei suchen
Get-ChildItem -Path "." -Filter "*.json.backup" -Recurse
# 2. Manuelle Wiederherstellung
Copy-Item "kanbanx_mcp_server.json.backup" "kanbanx_mcp_server.json"
# 3. Automatische Backups einrichten (in Server-Code)Lösung:
# PowerShell UTF-8 Encoding setzen
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
$PSDefaultParameterValues['Out-File:Encoding'] = 'utf8'
# Oder PowerShell 7+ verwenden
winget install Microsoft.PowerShellDebug-Modus
Aktiviere erweiterte Logs:
# Umgebungsvariable setzen
$env:KANBANX_DEBUG = "true"
# Server mit Logs starten
python kanbanx_mcp_server.py 2>&1 | Tee-Object debug.logPerformance-Optimierung
Für große Boards (1000+ Tasks):
{
"mcpServers": {
"kanbanx": {
"command": "python",
"args": ["kanbanx_mcp_server.py"],
"env": {
"KANBANX_CACHE_SIZE": "1000",
"KANBANX_LAZY_LOAD": "true"
}
}
}
}🔒 Sicherheit
Daten-Schutz
Lokale Speicherung: Alle Daten bleiben auf deinem Computer
Keine Cloud-Verbindung: Server kommuniziert nur über lokale Pipes
Backup-System: Automatische Sicherung bei kritischen Operationen
Access Control
# Datei-Berechtigungen setzen (optional)
icacls "kanbanx_mcp_server.json" /grant:r "$env:USERNAME:(R,W)"
icacls "kanbanx_mcp_server.json" /remove "Everyone"🚀 Erweiterte Features
Custom Commands
Erweitere den Server mit eigenen Tools:
@server.call_tool()
async def handle_custom_tool(name: str, arguments: dict):
if name == "export_csv":
# CSV Export implementieren
return export_board_as_csv(arguments)
elif name == "import_github_issues":
# GitHub Issues importieren
return import_from_github(arguments)Integrationen
# GitHub Issues als Tasks importieren
def import_github_issues(repo_url, token):
issues = fetch_github_issues(repo_url, token)
for issue in issues:
add_task({
"column": "todo",
"title": f"#{issue.number} {issue.title}",
"note": issue.body
})# Jira Tickets synchronisieren
def sync_with_jira(jira_url, credentials):
tickets = fetch_jira_tickets(jira_url, credentials)
for ticket in tickets:
update_or_create_task(ticket)Plugins
Erstelle eigene Plugin-Dateien:
# plugins/time_tracking.py
class TimeTrackingPlugin:
def start_timer(self, task_id):
# Timer für Task starten
pass
def stop_timer(self, task_id):
# Timer stoppen und Zeit loggen
pass📈 Roadmap
Version 1.1 (geplant)
Time Tracking: Eingebaute Zeiterfassung
Tags System: Kategorisierung mit Tags
Board Templates: Vorgefertigte Board-Layouts
Export Features: PDF, CSV, Markdown Export
🤝 Contributing
Beiträge sind willkommen! Siehe CONTRIBUTING.md für Details.
Development Setup
# Repository forken und klonen
git clone https://github.com/DonDmGeR/MCP-KanbanX.git
cd kanbanx-mcp
# Development-Dependencies installieren
pip install -r requirements-dev.txt
# Pre-commit hooks einrichten
pre-commit install
# Tests ausführen
python -m pytest tests/Code Style
# Code formatieren
black kanbanx_mcp_server.py
# Linting
flake8 kanbanx_mcp_server.py
# Type checking
mypy kanbanx_mcp_server.py📄 Lizenz
Dieses Projekt ist unter der MIT-Lizenz lizenziert - siehe LICENSE für Details.
🙏 Danksagungen
Anthropic für Claude und MCP
Python Community für die großartigen Tools
Alle Contributors und Beta-Tester
📞 Support
Issues: GitHub Issues
Discussions: GitHub Discussions
⭐ Star this repo wenn es dir hilft!
Made with ❤️ for the productivity community
This server cannot be deployed
Maintenance
Related MCP Connectors
Task & board management for AI agents + humans. Kanban, comments, digests via MCP.
Remote MCP for Kanban AI boards—manage projects, tasks, and comments from AI tools.
Kanban board for teams and coding agents: manage tasks, subtasks, sprints and wiki pages via MCP.
AI-native Kanban board — connect Claude to claim, work and move your tasks over MCP.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that provides AI assistants with structured access to kanban board functionality for managing tasks, columns, labels, and sprints.14 npm2MIT
- FlicenseAqualityDmaintenanceEnables task management and Kanban board tracking using Google Sheets as a database via the Model Context Protocol. It supports advanced filtering, batch operations, and full lifecycle management of project tasks within a spreadsheet.6-
- AlicenseNot gradedqualityAmaintenanceEnables AI agents to create, update, list, and delete tasks on a Kanban board via the Model Context Protocol, supporting multi-project management and real-time collaboration.102MIT
- AlicenseBqualityCmaintenanceEnables AI agents to manage kanban boards with tasks, including creating boards, items, moving between columns, and searching.81MIT