Skip to main content
Glama
Task Trellis MCP

Task Trellis MCP

Task Trellis MCP

Project planning and task management built specifically for AI agents

npm version License: GPL v3

Task Trellis is an MCP server for project planning and task management built specifically for AI agents. It helps by breaking down complex projects and tracking their progress with built-in task management, complete with progress tracking, dependency management, and workflow automation. By default, all data is stored locally in Markdown files.

Primarily built as a much better alternative to managing markdown checklists. Task Trellis will make it easier to define requirements, specifications, and tasks in a structured way that the agents can actually use directly.

Full documentation is available in the docs folder.

Table of Contents

Related MCP server: gotask-mcp

At a Glance

Prompt

Result

/task-trellis:create-project (my project details)

project created with epics, features and tasks defined and dependencies identified

Complete the next available task

next open task with dependencies satisfied is claimed and worked on

Work on all of the tasks for feature F-my-feature

all tasks for the specified feature are claimed and worked on

Show me all open tasks in (my project)

list of all open tasks in the specified project

After working on (feature), there's a bug. Look at what changed and fix it.

bug identified by examining all the files that were modified while working on that feature and fixed

/task-trellis:create-features (feature details). Look at (other feature) and follow the same pattern

new feature created by mirroring the pattern of the other feature

(after finding issue with design) Update all tasks in F-my-feature and update the design specifications

all tasks in the specified feature are updated to reflect the new design specifications

Why Task Trellis?

Without Task Trellis

  • AI agents lose track of complex, multi-step projects

  • Agents spin out of control with no clear task structure

  • Tasks are often too large or vague, leading to confusion

  • No way to manage dependencies or prerequisites

  • No visibility into what's been completed vs. what's pending

  • Tasks get forgotten, duplicated, or done out of order

  • Zero coordination between multiple AI sessions

  • Complex projects become chaotic and overwhelming

With Task Trellis

  • Structured Breakdown: Automatically organize projects into hierarchical tasks (depending on the size of the effort required)

  • Smart Dependencies: Prevent tasks from starting until prerequisites are complete

  • Progress Tracking: Real-time visibility into what's done, in-progress, and pending

  • Session Continuity: Pick up exactly where you left off across AI conversations

  • Workflow Management: Built-in task claiming, completion, and validation workflows

  • File Change Tracking: Automatic documentation of what files were modified for each task

  • Learn from History: AI agents can reference past work to inform future tasks

Core Benefits

Focused Execution: AI agents work on one clearly-defined task at a time
Progress Visibility: Always know project status and what's next
Dependency Management: Automatic task ordering based on prerequisites
Audit Trail: Complete history of all work completed and changes made
Multi-Session Support: Seamlessly collaborate across different AI conversations
Productivity Boost: Reduce context switching and eliminate forgotten tasks

Usage

See full documentation at Task Trellis MCP Documentation

Basic Workflow

  1. Create Tasks

    • Determine your starting point based on the expected size of your project

      • Project - For sprawling initiatives with many moving parts

      • Epic - For large feature groupings

      • Feature - For specific functionality

      • Task - For individual work items

  2. Claim & Work on Tasks

    • AI agent claims next available task

      • Excludes tasks that have incomplete prerequisites

      • Grabs the next highest priority available task

      • Mark a task as draft if you don't want it to be worked on yet - it won't be claimed when the tool looks for the next available task

    • Works on the specific task requirements

    • Marks task complete with file changes documented

      • Automatically tracks which files were modified

      • Logs summary of changes made

      • Work done in the future could reference this to better understand the current state of the project

  3. Track Progress

    • View completed vs. pending work

    • See dependency relationships

    • Monitor overall project health

Installation and Configuration

See installation instructions.

Configuration

CLI Flags and Environment Variables

Flag / Env var

Description

Required

--projectDir <path>

Override the project directory (default: process.cwd())

No

$TRELLIS_PROJECT_DIR

Same as --projectDir; used when the flag is not passed

No

$TRELLIS_DATA_DIR

Override the shared data root (default: ~/.trellis)

No

$TRELLIS_UI_PORT

Override the browser UI port (default: 3717)

No

The MCP server resolves the project directory in this order: --projectDir flag → $TRELLIS_PROJECT_DIR → current working directory. Since Claude Code launches MCP servers with the workspace as CWD, no flag is normally needed.

Shared Data Directory Layout

Data is stored in ~/.trellis/ (shared across all sessions), not inside the repo directory.

~/.trellis/
  projects/
    <12-char-key>/        ← sha1(gitOriginUrl or absolutePath).slice(0,12)
      p/ e/ f/ t/         ← issues (unchanged internal layout)
      meta.json           ← { "label": "<gitOriginUrl or absolutePath>" }

Browser UI

When the first Claude Code session starts the MCP server, it binds http://127.0.0.1:3717 and logs:

Task Trellis UI: http://127.0.0.1:3717
  • Subsequent sessions detect the port is taken and run STDIO-only.

  • The UI shows all projects under ~/.trellis/projects/ and supports creating, editing, and deleting issues directly in the browser.

  • When the leader session exits, the port is released automatically.

Project Tree Navigation

The project tree view includes several features for navigating and filtering issues:

  • Expand/Collapse: Click the chevron next to an issue to expand or collapse its children. Open/closed state is automatically saved per project.

  • Hide Completed: Click the filter icon (top toolbar) to toggle hiding completed (done/wont-do) issues. This preference is saved per project.

  • Search: Use the search box to filter issues by title or content. Search results are displayed flat and ignore the hide-completed preference.

  • Issue Details: Click any issue row to view and edit its full details in the side panel.

Breaking Changes

Breaking change: --projectRootFolder has been removed. Use --projectDir instead.

Breaking change: The activate MCP tool has been removed. The project directory defaults to the current working directory; override with --projectDir or $TRELLIS_PROJECT_DIR.

Note: Data previously stored in <repo>/.trellis/ is not migrated automatically. Move or recreate your data under ~/.trellis/.

Available Tools

Core Issue Management

  • create_issue - Create projects, epics, features, or tasks with hierarchical relationships

  • update_issue - Modify issue properties, status, priority, prerequisites, or labels

  • get_issue - Retrieve detailed issue information with history and relationships

  • list_issues - Query and filter issues by type, status, priority, or scope (returns issue summaries)

  • delete_issue - Remove issues (with dependency validation)

  • replace_issue_body_regex - Make targeted body content edits using regex patterns

Task Workflow Management

  • claim_task - Claim available tasks for execution with automatic priority ordering

  • complete_task - Mark tasks complete with file change documentation

  • get_next_available_issue - Use this tool to find the next available issue that's ready to work on.

  • append_issue_log - Add progress notes and status updates to task history (occurs automatically on task completion)

  • append_modified_files - Record files modified during task execution with change descriptions (occurs automatically on task completion)

Attachment Management

  • add_attachment - Copy a file into the managed attachments folder for an issue (errors if the issue or source file does not exist, or a file with the same name already exists)

  • remove_attachment - Delete a named file from an issue's attachments folder (errors if the issue or file does not exist)

Attachments are returned as a list of filenames when calling get_issue and are linked in the browser UI detail view.

Project Files

  • write_project_file - Write a UTF-8 text file to the project's files directory. Overwrites by default; pass failIfExists: true to error on collision instead.

  • read_project_file - Read a UTF-8 text file from the project's files directory.

  • list_project_files - List filenames in the project's files directory (returns [] if the directory does not yet exist).

  • delete_project_file - Delete a named file from the project's files directory.

Project files live at ~/.trellis/projects/<key>/files/<filename> and are scoped to the project — not tied to any individual issue. Filenames must not contain path separators or .. (path-traversal protection); v1 supports a flat namespace of UTF-8 text files.

Browser UI

  • get_ui_info - Returns the URL and port of the Task Trellis browser UI; use when the user asks about the UI or wants to view issues in a browser

System Management

  • prune_closed - Clean up old completed/cancelled issues for maintenance

Troubleshooting

Common Issues

Configuration issues:

  • Validate JSON syntax in MCP client configuration

  • Ensure absolute paths are used for --projectDir

  • Restart your MCP client after configuration changes

Getting Help

License

GPL-3.0-only - see LICENSE file for details.

Available Tools

11 tools
activateA

Activates the task trellis system in local or remote mode

Use this tool to initialize and configure the task trellis system for operation. Must be called before any other task management operations can be performed.

Activation modes:

  • 'local': Uses local file system for task storage and management

  • 'remote': Connects to remote task trellis service via API

Local mode requirements:

  • 'projectRoot': Absolute path to project directory where tasks will be stored

  • Creates local .task-trellis directory for data persistence

  • Suitable for single-user development workflows

  • No network dependencies once activated

Remote mode requirements:

  • 'apiToken': Authentication token for remote service access

  • 'remoteProjectId': Unique identifier for remote project instance

  • 'url': Service endpoint (optional, uses default if not specified)

  • Enables collaborative task management across distributed teams

  • Requires network connectivity for all operations

Activation process:

  1. Validates mode-specific parameters and connectivity

  2. Initializes data storage (local directory or remote connection)

  3. Verifies authentication and permissions

  4. Sets up task trellis schema and configuration

  5. Prepares system for task creation and management

Error conditions:

  • Invalid projectRoot path (local mode)

  • Authentication failure (remote mode)

  • Network connectivity issues (remote mode)

  • Insufficient file system permissions (local mode)

Must be successfully completed before using any other task trellis tools. Re-activation with different parameters switches modes and resets system state.

Inputs: mode (required), projectRoot, apiToken, url, +1 more.

append_issue_logA

Appends content to an issue's log in the task trellis system

Use this tool to add progress updates, notes, or activity records to an issue's audit trail. Essential for tracking work history, documenting decisions, and maintaining transparency in task execution.

Log entry purposes:

  • Record progress milestones and status changes

  • Document challenges encountered and solutions applied

  • Note important decisions or changes in approach

  • Track time spent or resources used

  • Log external dependencies or blockers

  • Record completion details and outcomes

Log content guidelines:

  • Use clear, descriptive entries with context

  • Include timestamps (automatically added by system)

  • Reference specific files, commits, or external resources when relevant

  • Note any changes to scope, requirements, or approach

  • Document lessons learned or insights gained

Activity tracking patterns:

  • Starting work: "Started implementation of feature X"

  • Progress updates: "Completed database schema changes, moving to API layer"

  • Blocking issues: "Blocked on external API access, contacted team"

  • Problem resolution: "Resolved memory leak by optimizing data structure"

  • Completion: "Task completed, all tests passing, PR submitted"

The log creates a permanent audit trail that helps with project retrospectives, debugging issues, and understanding work evolution over time.

Inputs: id (required), contents (required).

append_modified_filesA

Appends modified files information to a trellis issue in the task trellis system

Use this tool to record files that have been modified during task execution, along with descriptions of the modifications made. This helps maintain a comprehensive record of changes associated with each work item for tracking and audit purposes.

File modification tracking purposes:

  • Record which files were changed during task execution

  • Document the nature of changes made to each file

  • Maintain audit trail of file-level modifications

  • Support code review and change management processes

  • Enable impact analysis for future changes

Input requirements:

  • Issue ID: The unique identifier of the trellis issue to update

  • Files Changed: A record mapping file paths to descriptions of modifications

File path guidelines:

  • Use relative paths from project root (e.g., "src/components/Button.tsx")

  • Include file extensions for clarity

  • Use forward slashes for path separators

Description guidelines:

  • Provide clear, concise descriptions of what was changed

  • Focus on the purpose and impact of changes rather than implementation details

  • Use consistent terminology across related modifications

The tool automatically merges descriptions for files that were previously modified, creating a comprehensive change history for each file within the context of the trellis issue.

Inputs: id (required), filesChanged (required).

claim_taskA

Claims a task in the task trellis system

Use this tool to assign yourself to available tasks for execution. Essential for AI agents to pick up work items from the task queue and begin execution.

Claiming behavior:

  • Without 'taskId': Claims the next available task based on priority and readiness

  • With 'taskId': Claims a specific task by ID if available and ready

  • 'scope': Limits claiming to tasks within a specific project or area

  • 'force': Overrides normal claiming restrictions (use with caution)

Task readiness criteria:

  • Task status allows claiming (typically 'draft' or 'open' states)

  • All prerequisites are satisfied (prerequisite tasks completed)

  • Task is not already claimed by another agent

  • Task falls within specified scope if provided

Claiming workflow:

  1. System evaluates available tasks against readiness criteria

  2. Selects highest priority task that meets requirements

  3. Updates task status to 'in-progress

  4. Associates task with the claiming agent

  5. Returns claimed task details for execution

Common patterns:

  • Claim any ready task: (no parameters)

  • Claim from project: scope='P-project-name'

  • Claim specific task: taskId='T-specific-task-id'

  • Force claim blocked task: taskId='T-task-id', force=true

Essential for autonomous task execution workflows where agents need to discover and claim work items dynamically.

Inputs: scope, taskId, force.

complete_taskA

Completes a task in the task trellis system

Use this tool to mark a task as finished and record completion details. Critical for task lifecycle management and maintaining accurate project status.

Required completion data:

  • 'taskId': Unique identifier of the task being completed

  • 'summary': Concise description of what was accomplished

  • 'filesChanged': Map of modified files with descriptions of changes made

Completion process:

  1. Validates task is in a completable state ('in-progress')

  2. Updates task status to 'done'

  3. Records completion timestamp and summary

  4. Associates file changes with the task for traceability

  5. Updates parent-child relationships and dependency chains

  6. Triggers any dependent tasks that were waiting for this completion

File change tracking:

  • Key: relative file path from project root

  • Value: description of changes made to that file

  • Example: {'src/api/users.ts': 'Added user authentication endpoints', 'tests/auth.test.ts': 'Added comprehensive auth test coverage'}

Best practices:

  • Provide clear, actionable summaries that explain the outcome

  • Document all meaningful file changes for future reference

  • Complete tasks only when all acceptance criteria are met

  • Verify dependent tasks can now proceed before completion

  • Include any important notes or lessons learned in the summary

Task completion automatically notifies dependent tasks and may trigger workflow progression for related work items.

Inputs: taskId (required), summary (required), filesChanged (required).

create_issueA

Creates a new issue in the task trellis system

Use this tool to create new issues such as tasks, projects, or other work items within the task management hierarchy. Issues can have parent-child relationships and dependencies through prerequisites.

Available issue types and hierarchy requirements:

  • 'project': Top-level containers, cannot have a parent

  • 'epic': Can have no parent or a project as a parent

  • 'feature': Can have no parent or an epic as a parent

  • 'task': Can have no parent or a feature as a parent

Supported hierarchy structures:

  • Full hierarchy: project → epic → feature → task

  • Simplified: epic → feature → task

  • Simplified: feature → task

  • Standalone: epic

  • Standalone: task

Available status values:

  • 'draft': Initial state for new issues

  • 'open': Ready to begin work (default)

  • 'open': Ready to begin work

  • 'in-progress': Currently being worked on

  • 'done': Completed successfully

  • 'wont-do': Cancelled or decided against

Available priority values:

  • 'high': Critical or urgent work

  • 'medium': Standard priority (default)

  • 'low': Nice-to-have or future work

Key aspects:

  • Issues support hierarchical organization via parent relationships

  • Prerequisites define execution order dependencies between issues

  • Parent-child relationships must follow the hierarchy rules above

  • The system validates parent types during creation

Best practices:

  • Use descriptive titles that clearly indicate the work to be done

  • Follow the hierarchy constraints for proper organization

  • Set appropriate status based on current work state

  • Define prerequisites to ensure proper task ordering

  • Include detailed descriptions to provide context for the work

Inputs: type (required), title (required), parent, priority, +3 more.

delete_issueA

Deletes an issue from the task trellis system

Use this tool to permanently remove issues from the task hierarchy. Exercise caution as deletion affects related issues and cannot be easily undone.

Safety considerations:

  • Standard deletion validates relationships and prevents deletion of issues with dependencies

  • Issues with children or that serve as prerequisites for other issues may be protected

  • Use 'force=true' to bypass safety checks for administrative cleanup

  • Consider updating status to 'cancelled' instead of deletion for audit trail preservation

Deletion impacts:

  • Removes issue and all associated metadata permanently

  • Updates parent-child relationships by removing deleted issue from parent's children list

  • Other issues referencing this as a prerequisite may become invalid

  • Historical references in logs and activity trails are preserved but point to non-existent issue

Best practices:

  • Verify issue has no active dependencies before deletion

  • Use list/get tools to understand relationships before deletion

  • Prefer status updates to 'cancelled' over deletion for important work items

  • Use force deletion only for cleanup of test data or administrative maintenance

This operation is irreversible - ensure you have the correct issue ID before proceeding.

Inputs: id (required), force.

get_issueA

Gets an issue from the task trellis system

Use this tool to retrieve detailed information about a specific issue by its unique ID. Returns the complete issue data including metadata, relationships, content, and activity history.

Key information retrieved:

  • Issue metadata (type, title, status, priority, timestamps)

  • Hierarchical relationships (parent, children, prerequisites)

  • Content body and description

  • Activity log and change history

  • File associations and modifications

  • Current state and progress indicators

Usage scenarios:

  • Review task details before starting work

  • Check issue status and dependencies

  • Examine change history and activity logs

  • Understand parent-child relationships

  • Verify prerequisite completion

  • Access associated file changes

Essential for understanding the full context of a work item before making modifications or planning next steps.

Inputs: id (required).

get_next_available_issueA

Gets the next available issue of a specific type

Use this tool to find the next available issue that's ready to work on. Essential for discovering what work is available when you're ready to start on a new project, epic, feature, or task.

Behavior:

  • Returns the highest priority available issue of the specified type

  • Does not modify task status or claim ownership

  • Finds issues that are ready to work on (all prerequisites complete)

  • Helps you discover what work is available without having to browse through all issues

Available issue types:

  • 'project': Top-level containers

  • 'epic': Large features within projects

  • 'feature': Specific functionality within epics

  • 'task': Individual work items

Required parameters:

  • 'issueType': Must specify exactly one object type (project, epic, feature, or task)

Optional parameters:

  • 'scope': Limits search to issues within a specific project or area (e.g., 'P-project-name')

Usage patterns:

  • Find next project to work on: issueType='project'

  • Find which epic to tackle next in a project: issueType='epic', scope='P-project-name'

  • Discover what feature needs work: issueType='feature'

  • Get the next task ready for development: issueType='task'

  • Find work within a specific project scope: issueType='task', scope='P-specific-project'

Return format:

  • Success: Returns complete issue object with all metadata, prerequisites, and readiness status

  • No issues available: Returns appropriate message indicating no available issues of the specified type

  • Error cases: Returns error details with specific failure reasons

Essential for discovering what work is ready to be done. Use this when you need to know what project, epic, feature, or task you should work on next without having to manually browse through all the available issues.

Inputs: issueType (required), scope.

list_issuesA

Lists issues from the task trellis system

Use this tool to retrieve and filter issues based on various criteria. Essential for discovering existing work items, understanding project structure, and finding issues that need attention.

Available issue types:

  • 'project': Top-level containers

  • 'epic': Large features within projects

  • 'feature': Specific functionality within epics

  • 'task': Individual work items

Available status values:

  • 'draft': Initial state for new issues

  • 'open': Ready to begin work (default for new issues)

  • 'in-progress': Currently being worked on

  • 'done': Completed successfully

  • 'wont-do': Cancelled or decided against

Available priority values:

  • 'high': Critical or urgent work

  • 'medium': Standard priority

  • 'low': Nice-to-have or future work

Key filtering options:

  • 'type': Filter by issue category (project, epic, feature, task) - accepts single value or array

  • 'scope': Limit results to a specific project or area of work

  • 'status': Find issues in particular states (draft, open, in-progress, done, wont-do) - accepts single value or array

  • 'priority': Filter by importance level (high, medium, low) - accepts single value or array

  • 'includeClosed': Whether to show completed/archived issues (defaults to false)

Usage patterns:

  • List all tasks in progress: type='task', status='in-progress'

  • Find high priority work: priority='high', includeClosed=false

  • Review project scope: type='project', scope='specific-project'

  • Audit completed work: includeClosed=true, status='done'

  • Find cancelled items: status='wont-do', includeClosed=true

  • List features and tasks: type=['feature', 'task']

  • List all open objects: status='open' (no type filter)

  • Multiple statuses: status=['open', 'in-progress']

  • Multiple priorities: priority=['high', 'medium']

The results provide issue summaries (TrellisObjectSummary instances) containing id, type, title, status, priority, parent, prerequisites, childrenIds, created, and updated fields to enable efficient filtering and further operations.

Inputs: type, scope, status, priority, +1 more.

update_issueA

Updates an existing issue in the task trellis system

Use this tool to modify properties of existing issues such as changing status, priority, prerequisites, or content. Essential for managing work item lifecycle and maintaining project state.

Available status values:

  • 'draft': Initial state for new issues

  • 'open': Ready to begin work (default for new issues)

  • 'in-progress': Currently being worked on

  • 'done': Completed successfully

  • 'wont-do': Cancelled or decided against

Available priority values:

  • 'high': Critical or urgent work

  • 'medium': Standard priority

  • 'low': Nice-to-have or future work

Updatable properties:

  • 'title': Title of the work item

  • 'status': Progress state (follows workflow: draft → open → in-progress → done)

  • 'priority': Importance level (high, medium, low)

  • 'prerequisites': Dependency relationships (add/remove prerequisite issues)

  • 'body': Detailed description or content of the work item

  • 'force': Bypass certain validation checks when necessary

Common update patterns:

  • Update title: title='New task title'

  • Mark task as ready: status='open'

  • Start working: status='in-progress'

  • Change priority: priority='high'

  • Add dependencies: prerequisites=[...existing, 'new-prereq-id']

  • Update description: body='detailed work description'

  • Complete work: status='done'

  • Cancel work: status='wont-do'

The update maintains issue integrity by validating relationships and preserving audit trail. Use 'force=true' only when bypassing standard validation is necessary for administrative operations.

Updates automatically refresh the 'updated' timestamp while preserving creation metadata and change history.

Inputs: id (required), title, priority, prerequisites, +3 more.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.4/5.0

    Scored across 11 tools

    Disambiguation4/5

    Most tools have distinct purposes, such as create_issue, get_issue, and delete_issue. However, append_issue_log and append_modified_files could be confusing as both involve appending data to issues, with overlapping use cases for tracking changes. The descriptions help clarify that one is for general logs and the other for file modifications, but the boundary is not entirely clear.

    Naming Consistency5/5

    All tool names follow a consistent snake_case pattern with clear verb_noun structures, such as create_issue, list_issues, and update_issue. The naming is predictable and readable throughout, with no deviations or mixed conventions.

    Tool Count5/5

    With 11 tools, the count is well-scoped for a task management system. It covers essential operations like activation, CRUD for issues, task claiming/completion, and logging, without being overly complex or too sparse. Each tool serves a clear purpose in the domain.

    Completeness5/5

    The tool set provides comprehensive coverage for task management, including system activation, full CRUD lifecycle for issues (create, get, update, delete, list), task workflow (claim, complete), and logging (append logs, file changes). There are no obvious gaps; it supports hierarchical structures, dependencies, and audit trails effectively.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      D
      maintenance
      An MCP server that enables AI agents to list and run tasks defined in Taskfile.yml, useful for automated development workflows.
      2
      4
      MIT
    • F
      license
      A
      quality
      D
      maintenance
      A modular MCP server that provides custom tools for AI assistants to interact with the DemoTool project codebase, starting with a hello world tool.
      7
      -
    • A
      license
      Not graded
      quality
      D
      maintenance
      An MCP server that wraps the Taskwarrior CLI to allow AI assistants to create, query, modify, and manage tasks directly from agentic coding tools.
      11 npm
      MIT