DutyHub MCP Server
This server allows Claude to automate comprehensive project and task lifecycle management on the DutyHub platform.
Project Management
List all projects you have access to
Get details of a specific project
Create new projects with name, description, status, dates, and visibility settings
Sprint Management
List sprints within a project
Create new sprints with goals, dates, and status
Start a sprint (transition to active)
Complete/close a sprint (transition to completed)
Task Management
List tasks in a project with optional status filtering (pending / in_progress / completed)
Create tasks with title, description, priority, type (epic/story/task/subtask/bug), sprint, due date, and parent task
Update task status — move tasks through To Do → In Progress → Done, optionally with a comment
Update task fields — modify title, description, priority, sprint assignment, or due date
Delete tasks
Comment Management
Add a comment to a task
List comments on a task
Members & Assignment
List project members to find user IDs
Assign a task to a specific user
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., "@DutyHub MCP Server Create a high priority task in the Test project called 'Fix login bug'."
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.
DutyHub MCP Server
Claude'un (Claude Desktop / Claude Code) DutyHub üzerinde otomatik olarak proje açmasını, task eklemesini, task'ları Yapılacak → Devam Ediyor → Tamamlandı arasında taşımasını, sprint yönetmesini ve yorum bırakmasını sağlayan MCP server'ı.
DutyHub backend'i (ASP.NET Core / .NET 8, PostgreSQL) REST + JSON API'si üzerinden çalışır.
Kurulum
cd dutyhub-mcp
npm install
npm run buildRelated MCP server: ClickUp MCP Server
Yapılandırma (env değişkenleri)
Server, bir servis hesabı ile email/şifre kullanarak login olur ve 7 günlük JWT alır. Token süresi dolunca otomatik yeniden login eder. DutyHub'da ayrı API-key sistemi yoktur.
Değişken | Zorunlu | Varsayılan | Açıklama |
| ✅ | — | Servis hesabı email (örn. |
| ✅ | — | Servis hesabı şifresi |
| — |
| API kök adresi |
| — |
| Cihaz kimliği |
| — |
| Cihaz açıklaması |
⚠️ Şifreyi koda yazmayın, sohbete yapıştırmayın. Sadece aşağıdaki config'in
envbloğunda tutun.
Claude Desktop'a ekleme
claude_desktop_config.json dosyasına (macOS: ~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"dutyhub": {
"command": "node",
"args": ["/TAM/YOL/dutyhub-mcp/dist/index.js"],
"env": {
"DUTYHUB_EMAIL": "mcp-bot@dutyhub.net",
"DUTYHUB_PASSWORD": "buraya-sifre"
}
}
}
}Claude Desktop'ı yeniden başlatın. Araçlar otomatik görünür.
Claude Code'a ekleme
claude mcp add dutyhub \
--env DUTYHUB_EMAIL=mcp-bot@dutyhub.net \
--env DUTYHUB_PASSWORD=buraya-sifre \
-- node /TAM/YOL/dutyhub-mcp/dist/index.jsAraçlar (Tools)
Projeler
list_projects— erişilebilir projeleri listeleget_project— proje detayıcreate_project— yeni proje (New Project)
Sprintler
list_sprints— projenin sprintlericreate_sprint— yeni sprintstart_sprint— başlat (→ active)complete_sprint— tamamla (→ completed)
Task'lar
list_tasks— projenin task'ları (board sayımıyla birlikte; opsiyonel status filtresi)create_task— yeni task (New Task)update_task_status— Yapılacak → Devam Ediyor → Tamamlandı + opsiyonel yorumupdate_task— başlık/açıklama/öncelik/sprint/son tarih güncelledelete_task— sil
Yorumlar
add_comment— task'a yorum bıraklist_comments— task'ın yorumları
Üyeler / Atama
list_project_members— proje üyeleriassign_task— task'a kullanıcı ata
Örnek kullanım (Claude'a söyleyebilecekleriniz)
"DutyHub'da projelerimi listele."
"StormCorsairs projesine 'Ana menü müziği ekle' diye orta öncelikli bir task aç."
"Şu task'ı devam ediyor'a al."
"vfx setup task'ını tamamlandı yap ve 'Duman efektleri eklendi, test edildi' diye yorum bırak."
"Apex Empire için 'Sprint 2' adında yeni bir sprint oluştur ve başlat."
Önemli teknik notlar
Status/priority normalizasyonu (kritik): DutyHub'da bu alanlar serbest metindir ve istemciler farklı değerler yazmıştır (
pending/todo,completed/done,Active/in_progressvb.). Bu server yazarken ana uygulamanın kanonik değerlerini (pending/in_progress/completed, önceliklow/medium/high/urgent) gönderir; okurken tüm varyantları tek forma indirir. Türkçe girdiler (Yapılacak/Devam Ediyor/Tamamlandı, Düşük/Orta/Yüksek/Acil) de kabul edilir.Task güncelleme tam nesne ister:
update_task_statusveupdate_taskönce task'ı GET eder, alanı değiştirip tüm nesneyi PUT eder.titleboş olamaz (backend 400 döner). Tamamlandı'ya alırkencompleted_atotomatik set edilir.Status filtresi server'da yok:
list_tasksprojeye göre çekip filtrelemeyi istemcide yapar.Tarihler ISO 8601 UTC:
2026-06-20gibi yalın tarihler otomatikT00:00:00Z'ye çevrilir.Tek ortam production'dır. Denemeleri önce bir "Test" projesinde ve ayrı bir servis hesabıyla yapın.
Available Tools
16 toolsadd_commentA
Bir task'a (veya başka bir varlığa) yorum ekler. Durum değiştirmeden sadece yorum bırakmak için.
Inputs: entity_id (required), comment_text (required), entity_type.
assign_taskC
Bir task'a bir kullanıcı atar (task_assignee). Atama ayrı tabloda tutulur.
Inputs: task_id (required), user_id (required).
complete_sprintB
Sprinti tamamlar/kapatır (status → completed).
Inputs: sprint_id (required).
create_projectB
Yeni bir DutyHub projesi oluşturur (UI'daki 'New Project').
Inputs: name (required), description, status, start_date, +2 more.
create_sprintC
Bir projede yeni sprint oluşturur.
Inputs: project_id (required), name (required), goal, start_date, +2 more.
create_taskB
Bir projeye yeni task ekler ('New Task'). project_id ve title zorunludur.
Inputs: project_id (required), title (required), description, status, +5 more.
delete_taskC
Bir task'ı siler.
Inputs: task_id (required).
get_projectB
Tek bir projenin detayını getirir.
Inputs: project_id (required).
list_commentsC
Bir task'ın (varlığın) yorumlarını listeler.
Inputs: entity_id (required), entity_type.
list_project_membersA
Bir projenin üyelerini listeler (task atamak için user_id bulmak amacıyla).
Inputs: project_id (required).
list_projectsA
Kullanıcının erişebildiği tüm DutyHub projelerini listeler. Task eklemeden önce doğru project_id'yi bulmak için kullanın.
Inputs: no named parameters.
list_sprintsB
Bir projenin sprintlerini listeler.
Inputs: project_id (required).
list_tasksA
Bir projenin task'larını listeler. Server-side status filtresi olmadığı için istemci tarafında filtreleriz. status_filter verilirse (pending/in_progress/completed) sadece o durumdakiler döner.
Inputs: project_id (required), status_filter.
start_sprintC
Sprinti başlatır (status → active).
Inputs: sprint_id (required).
update_taskA
Bir task'ın alanlarını günceller (başlık, açıklama, öncelik, sprint, son tarih). Sadece verilen alanlar değişir; gerisi korunur.
Inputs: task_id (required), title, description, priority, +2 more.
update_task_statusA
Bir task'ın durumunu değiştirir (Yapılacak → Devam Ediyor → Tamamlandı). Backend tam nesne beklediği için önce task'ı çeker, status'u günceller, gerekirse yorum ekler. 'completed' yapılırken completed_at otomatik set edilir.
Inputs: task_id (required), status (required), comment.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 16 tools
Each tool targets a distinct action on a specific entity (project, sprint, task, comment) with clear boundaries. For example, update_task and update_task_status are separate because they modify different aspects. No overlapping purposes.
All tool names follow a consistent verb_noun pattern in snake_case (e.g., create_project, list_tasks, start_sprint). Verbs are imperative and nouns are plural for lists, singular for single items.
16 tools cover the core operations for project, sprint, task, and comment management. The count is well-scoped for a domain-specific server, not excessive or insufficient.
Tasks have full CRUD (create, update, delete, list) plus status updates, but projects and sprints lack update and delete tools. Comments only have add and list, no delete. These gaps are notable but not severe.
Maintenance
Related MCP Connectors
Manage Redbooth tasks, task lists, comments, tags and files from Claude and other AI assistants.
Task management for people and AI agents, with scoped OAuth access to issues, projects, and docs.
Task management for people and AI agents, with scoped OAuth access to issues, projects, and docs.
Create projects, nodes, and tasks in UluP Spaces by conversation with Claude.
Related MCP Servers
- FlicenseNot gradedqualityCmaintenanceEnables Claude Code to query, create, and modify Dooray tasks via natural language.-
- AlicenseAqualityDmaintenanceEnables natural language management of ClickUp workspaces, including task CRUD operations, task listing, and user profile retrieval via Claude Desktop.61MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants like Claude to interact with Jira for project management tasks, including issue creation, updates, workflow transitions, and bulk operations.32 npm4MIT
- AlicenseAqualityBmaintenanceEnables Claude Code and Claude Desktop to manage ClickUp tasks, sprints, reports, workspace navigation, and docs through 25+ MCP tools.28MIT