mcpField
C
claudia

claudia

Local
github.com/yuvalsuedeProductivity15Updated 35w ago

About claudia

claudia is a task-management system for AI agents, available through a CLI and MCP server. It supports structured project work with task hierarchies, dependencies, sprints, acceptance checks, and coordination between agents.

Key features

  1. 01Hierarchical tasks and dependencies
  2. 02Sprint and project organization
  3. 03Per-task JSON context storage
  4. 04Acceptance criteria verification
  5. 05Atomic task claiming and agent coordination
  6. 06CLI and web kanban dashboard

Use cases

  1. 01Break project work into dependent subtasks
  2. 02Coordinate agents sharing a project
  3. 03Preserve task context between sessions
  4. 04Verify acceptance criteria before completion

MCP support

The MCP server exposes tools for task creation, updates, transitions, dependencies, coordination, context, verification, sprints, and projects. Agents can claim, hand off, or release tasks through these tools.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"yuvalsuede-claudia": {
"command": "npx",
"args": [
"-y",
"claudia-cli"
]
}
}
}
Run commandnpx -y claudia-cli

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npmclaudia-cli0.1.3

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

Claudia

License: GPLv3 Bun MCP

A task management system built for AI agents.

Official website: https://claudiacli.com/

Claudia provides structured task tracking with a Model Context Protocol (MCP) server, enabling AI assistants like Claude to manage their own work through hierarchical tasks, dependencies, sprints, and acceptance criteria verification.

Claudia Dashboard Demo

Why Claudia?

AI agents need a way to:

  • Track progress across complex, multi-step tasks
  • Coordinate when multiple agents work on the same project
  • Remember context between sessions (64KB JSON storage per task)
  • Verify work against acceptance criteria before completion
  • Organize work into sprints and project hierarchies

Claudia provides all of this through both a CLI and MCP server interface.

Quick Start

# Install Bun if you haven't already
curl -fsSL https://bun.sh/install | bash

# Clone and build
git clone https://github.com/yuvalsuede/claudia.git
cd claudia
bun install
bun run build

# Initialize and start using
./claudia db init
./claudia task create --title "My first task"
./claudia task list
Try the Demo

See Claudia in action with sample data:

# Seed demo project with sample tasks and sprints
bun run seed:demo

# Open the web dashboard
./claudia @@ --port 3333

Then open http://localhost:3333 in your browser to explore the kanban board and sprint views.

Screenshots

Task Board

Claudia Tasks View

Sprint Management

Claudia Sprints View

Features

FeatureDescription
Hierarchical TasksParent-child relationships with tree visualization
State MachineValidated transitions: pending → in_progress → verification → completed
DependenciesBlock tasks until prerequisites complete, with cycle detection
SprintsGroup tasks into time-boxed work periods
Multi-ProjectIsolated task namespaces with auto-detection from working directory
Agent Memory64KB JSON context storage per task
Acceptance CriteriaDefine and verify requirements before task completion
Multi-Agent CoordinationAtomic task claiming, optimistic locking, conflict detection
Web DashboardVisual kanban board with project/sprint filtering
MCP ServerDrop-in integration with Claude Code and other MCP clients

Installation

Prerequisites
  • Bun runtime (v1.0+)
From Source
git clone https://github.com/yuvalsuede/claudia.git
cd claudia
bun install
Build Standalone Binary
bun run build
# Creates ./claudia binary

# Optional: install globally
cp claudia ~/.bun/bin/

Usage

CLI Commands
Task Management
# Create a task
claudia task create --title "Implement feature X" --priority p1

# Create with acceptance criteria
claudia task create --title "Add login" --acceptance-criteria "Has email field" --acceptance-criteria "Has password field"

# List tasks
claudia task list
claudia task list --status in_progress --priority p0,p1

# Show task details
claudia task show <task-id>

# Update a task
claudia task update <task-id> --title "New title" --priority p0

# Transition status
claudia task transition <task-id> --to in_progress

# Delete a task
claudia task delete <task-id> --force
Task Hierarchy
# Create a subtask
claudia task create --title "Subtask" --parent <parent-id>

# View task tree
claudia task tree              # Full tree
claudia task tree <task-id>    # Subtree from task
Task Context (Agent Memory)
# Set context (overwrites)
claudia task context-set <task-id> '{"key": "value"}'

# Merge context (deep merge)
claudia task context-merge <task-id> '{"additional": "data"}'

# Get context
claudia task context-get <task-id>
Dependencies
# Add dependency (task depends on blocker)
claudia task depends <task-id> --on <blocker-id>

# Remove dependency
claudia task undepends <task-id> --on <blocker-id>

# Show dependencies
claudia task deps <task-id>

# List blocked tasks
claudia task blocked

# List ready tasks (all deps satisfied)
claudia task ready
Sprints
# Create a sprint
claudia sprint create --name "Sprint 1" --start 2024-01-15 --end 2024-01-29

# List sprints
claudia sprint list

# Show sprint with tasks
claudia sprint show <sprint-id>

# Activate a sprint
claudia sprint activate <sprint-id>
Projects
# Create a project
claudia project create --name "My Project" --path /path/to/project

# List projects
claudia project list

# Select active project
claudia project select <project-id>

# Show current project
claudia project current
Web Dashboard
# Open dashboard in browser
claudia @@

# Custom port
claudia @@ --port 8080

The dashboard provides:

  • Tasks View: Kanban board with drag-and-drop columns
  • Sprints View: Sprint cards with progress indicators
  • Project Filter: Scope views to specific projects
  • Clear Completed: Archive finished tasks
MCP Server Integration

Start the MCP server for use with Claude Code:

claudia mcp
Claude Code Configuration

Add to .mcp.json in your project root:

{
  "mcpServers": {
    "claudia": {
      "command": "/path/to/claudia",
      "args": ["mcp"]
    }
  }
}

Or for development (without building):

{
  "mcpServers": {
    "claudia": {
      "command": "bun",
      "args": ["run", "/path/to/claudia/src/mcp/server.ts"],
      "cwd": "/path/to/claudia"
    }
  }
}

After adding the config, restart Claude Code to connect.

Available MCP Tools

Compound Operations (Recommended for agents)

ToolDescription
task_startCreate and start a task in one operation
task_finishComplete a task with optional summary
task_workspaceGet current agent's workspace context
task_handoffTransfer task to another agent
task_abandonRelease task back to pending

Task Management

ToolDescription
task_createCreate a new task
task_readGet task by ID
task_updateUpdate task fields
task_deleteDelete a task
task_listQuery tasks with filters
task_transitionChange task status
task_treeGet hierarchical task view

Coordination

ToolDescription
task_claimAtomically claim a task
task_releaseRelease a claimed task
task_blockedList blocked tasks
task_readyList ready tasks
task_dependency_addAdd task dependency

Verification

ToolDescription
task_verifyMark criterion as verified
task_verification_statusGet verification progress

See the full MCP tools reference below for complete documentation.

Task Workflow

┌─────────┐     ┌─────────────┐     ┌──────────────┐     ┌───────────┐
│ pending │────▶│ in_progress │────▶│ verification │────▶│ completed │
└─────────┘     └─────────────┘     └──────────────┘     └───────────┘
     │                │                    │                    │
     ▼                ▼                    ▼                    ▼
┌─────────┐                         ┌──────────┐
│ blocked │                         │ archived │ (terminal)
└─────────┘                         └──────────┘

Valid transitions:

  • pending → in_progress, blocked, archived
  • in_progress → pending, verification, completed, blocked, archived
  • verification → in_progress, completed, blocked, archived
  • blocked → pending, in_progress, archived
  • completed → in_progress, archived
  • archived → (terminal state)

Tasks can skip verification if no acceptance criteria are defined.

Multi-Agent Coordination

Claudia supports multiple AI agents working concurrently on the same project.

Task Claiming
// Claim before working
const result = await task_claim({ task_id: "uuid", agent_id: "agent-1" });
if (result.success) {
  // Task is yours - proceed
} else {
  // Already claimed by another agent
}

// Release when done or on failure
await task_release({ task_id: "uuid", agent_id: "agent-1" });
Optimistic Locking
// Read task first
const task = await task_read({ id: "uuid" });

// Update with version check
await task_update({
  id: task.id,
  title: "Updated",
  version: task.version  // Fails if modified by another agent
});
Recommended Pattern
  1. task_ready - List tasks with satisfied dependencies
  2. task_claim - Atomically reserve a task
  3. task_transition - Move to in_progress
  4. task_context_merge - Save progress
  5. task_transition - Move to completed
  6. On failure: task_release - Let another agent retry

Configuration

Environment VariableDescriptionDefault
CLAUDIA_DBDatabase file path~/.claudia/tasks.db

Development

# Development mode
bun run dev

# Run tests
bun test

# Type checking
bun run typecheck

Exit Codes

CodeMeaning
0Success
1General error
2Resource not found
3Conflict (version mismatch)
4Validation error
5Storage error

MCP Tools Reference

Compound Operations
task_start

Create and start a task in one operation. Auto-claims for the current agent.

{
  "title": "Task title",
  "description": "Optional description",
  "priority": "p0|p1|p2|p3",
  "parent_id": "optional-parent-uuid",
  "acceptance_criteria": ["criterion 1", "criterion 2"]
}
task_finish

Complete a task with optional summary.

{
  "id": "task-uuid",
  "summary": "Optional completion summary"
}
task_workspace

Get current agent's workspace context including claimed tasks.

{
  "include_completed": false
}
task_handoff

Transfer task to another agent.

{
  "task_id": "task-uuid",
  "to_agent_id": "target-agent",
  "notes": "Optional handoff notes"
}
task_abandon

Release task back to pending with reason.

{
  "task_id": "task-uuid",
  "reason": "Why abandoning"
}
Task CRUD
task_create
{
  "title": "Required title",
  "description": "Optional",
  "status": "pending",
  "priority": "p0|p1|p2|p3",
  "parent_id": "uuid",
  "sprint_id": "uuid",
  "tags": ["tag1", "tag2"],
  "assignee": "name",
  "acceptance_criteria": ["criterion"]
}
task_read
{ "id": "task-uuid" }
task_update
{
  "id": "task-uuid",
  "title": "New title",
  "version": 1
}
task_delete
{ "id": "task-uuid" }
task_list
{
  "status": ["pending", "in_progress"],
  "priority": ["p0", "p1"],
  "parent_id": "uuid",
  "sprint_id": "uuid",
  "assignee": "name",
  "limit": 100,
  "offset": 0
}
task_transition
{
  "id": "task-uuid",
  "to": "in_progress"
}
task_tree
{
  "id": "optional-root-uuid",
  "depth": 5
}
Bulk Operations
task_create_many
{
  "tasks": [
    { "title": "Task 1" },
    { "title": "Task 2" }
  ],
  "parent_id": "optional-common-parent",
  "sprint_id": "optional-common-sprint"
}
task_update_many
{
  "ids": ["uuid1", "uuid2"],
  "updates": {
    "priority": "p1",
    "assignee": "agent-1"
  }
}
task_transition_many
{
  "ids": ["uuid1", "uuid2"],
  "to": "completed",
  "skip_invalid": true
}
Dependencies & Coordination
task_dependency_add
{
  "task_id": "blocked-task",
  "depends_on_id": "blocking-task"
}
task_dependency_remove
{
  "task_id": "task-uuid",
  "depends_on_id": "dependency-uuid"
}
task_dependencies
{ "task_id": "task-uuid" }
task_blocked

List all tasks with unsatisfied dependencies.

task_ready

List all tasks ready to work on (dependencies satisfied).

task_claim
{
  "task_id": "task-uuid",
  "agent_id": "claiming-agent"
}
task_release
{
  "task_id": "task-uuid",
  "agent_id": "releasing-agent"
}
Context Storage
task_context_set

Overwrite task context (max 64KB).

{
  "id": "task-uuid",
  "context": { "any": "json data" }
}
task_context_merge

Deep merge into existing context.

{
  "id": "task-uuid",
  "context": { "additional": "data" }
}
task_context_get
{ "id": "task-uuid" }
Verification
task_verify

Mark an acceptance criterion as verified.

{
  "task_id": "task-uuid",
  "criterion_id": "criterion-uuid",
  "evidence": "Optional verification evidence"
}
task_verification_status

Get verification progress for a task.

{ "task_id": "task-uuid" }
Sprints
sprint_create
{
  "name": "Sprint 1",
  "start_at": "2024-01-15",
  "end_at": "2024-01-29"
}
sprint_list
{ "include_archived": false }
sprint_show
{ "id": "sprint-uuid" }
sprint_update
{
  "id": "sprint-uuid",
  "name": "New name",
  "status": "active"
}
sprint_delete
{ "id": "sprint-uuid" }
sprint_activate
{ "id": "sprint-uuid" }
Projects
project_create
{
  "name": "Project name",
  "description": "Optional",
  "path": "/optional/directory/path"
}
project_list

List all projects.

project_read
{ "id": "project-uuid" }
project_update
{
  "id": "project-uuid",
  "name": "New name"
}
project_delete
{ "id": "project-uuid" }
project_select
{ "id": "project-uuid" }
project_current
{ "cwd": "/optional/path/for/autodetect" }

Contributing

We welcome contributions! Please see CONTRIBUTING.md for guidelines.

License

GPLv3 - see LICENSE for details.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.