Mcp.TaskAndResearch 1.0.0-beta1

This is a prerelease version of Mcp.TaskAndResearch.
There is a newer version of this package available.
See the version list below for details.
dotnet tool install --global Mcp.TaskAndResearch --version 1.0.0-beta1
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local Mcp.TaskAndResearch --version 1.0.0-beta1
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=Mcp.TaskAndResearch&version=1.0.0-beta1&prerelease
                    
nuke :add-package Mcp.TaskAndResearch --version 1.0.0-beta1
                    

MCP Task and Research Server

A Model Context Protocol (MCP) server for task management and research workflows, with an optional Blazor Server UI dashboard.


Quick Start (5 minutes)

Step 1: Clone & Publish

git clone https://github.com/your-repo/mcp-task-and-research.git
cd mcp-task-and-research
dotnet publish src/Mcp.TaskAndResearch/Mcp.TaskAndResearch.csproj -c Release -o ./publish

Step 2: Add VS Code MCP Configuration

Create or edit .vscode/mcp.json in any project where you want to use the task manager:

{
  "servers": {
    "task-and-research": {
      "type": "stdio",
      "command": "dotnet",
      "args": [
        "C:/path/to/mcp-task-and-research/publish/Mcp.TaskAndResearch.dll"
      ],
      "env": {
        "DATA_DIR": "C:/path/to/your-project/.mcp-tasks",
        "TASK_MANAGER_UI": "true",
        "TASK_MANAGER_UI_AUTO_OPEN": "true"
      }
    }
  }
}

Important: Use absolute paths for both the DLL and DATA_DIR to ensure the server works correctly regardless of the working directory.

Example Configuration (Windows)
{
  "servers": {
    "task-and-research": {
      "type": "stdio",
      "command": "dotnet",
      "args": [
        "C:\\dg-task manager\\mcp-task-and-research\\publish\\Mcp.TaskAndResearch.dll"
      ],
      "env": {
        "DATA_DIR": "C:\\projects\\my-project\\.mcp-tasks",
        "TASK_MANAGER_UI": "true",
        "TASK_MANAGER_UI_AUTO_OPEN": "true"
      }
    }
  }
}

Step 3: Start Using

  1. Reload VS Code or use "Developer: Reload Window" (Ctrl+Shift+P)
  2. The browser opens automatically to the Tasks UI (if TASK_MANAGER_UI_AUTO_OPEN=true)
  3. Use MCP tools via Copilot/Claude: plan_task, execute_task, verify_task, etc.

Environment Variables

Variable Default Description
DATA_DIR .mcp-tasks Use absolute path! Folder for task data storage
TASK_MANAGER_UI false Enable Blazor web dashboard (auto-selects available port starting at 9998)
TASK_MANAGER_UI_AUTO_OPEN false Auto-open browser when server starts

Features

MCP Tools

  • Task Management: Create, update, split, verify, and manage tasks with dependencies
  • Research Mode: In-depth exploration of programming topics
  • Process Thought: Record structured reasoning steps
  • Project Rules: Initialize and manage project conventions

Blazor UI Dashboard

When TASK_MANAGER_UI=true:

  • Tasks View: DataGrid with sorting, filtering, search, status indicators
  • Task Details: Dialog for viewing/editing tasks, dependencies, related files
  • History View: Browse all task activity including archived tasks (see below)
  • Settings View: Configure preferences, theme, language
History & Task Archival

When you clear the task list (via clear_all_tasks MCP tool or UI), completed tasks are automatically saved to snapshot files in the memories/ folder. The History View displays:

  • Active tasks: Current tasks from tasks.json
  • Archived tasks: Previously cleared tasks from all snapshot files

This means you never lose visibility into past work - cleared tasks remain viewable in History indefinitely.

UI Features

  • Dark/Light Theme: Toggle with persistent preference
  • Keyboard Shortcuts: Ctrl+N (new), Ctrl+F (search), Ctrl+S (save), Ctrl+R (refresh), Esc (close), ? (help)
  • Responsive Layout: Mobile-friendly with adaptive navigation
  • Real-time Updates: Tasks sync instantly between MCP and UI
  • Error Handling: User-friendly error messages with recovery

Architecture

How It Works

┌─────────────────┐     ┌──────────────────┐
│   MCP Client    │────▶│  MCP Server      │
│ (Copilot/Claude)│     │  (stdio)         │
└─────────────────┘     └────────┬─────────┘
                                 │
                        ┌────────▼─────────┐
                        │   Shared DI      │
                        │   Container      │
                        └────────┬─────────┘
                                 │
              ┌──────────────────┼──────────────────┐
              │                  │                  │
     ┌────────▼────────┐ ┌──────▼───────┐ ┌───────▼───────┐
     │   TaskStore     │ │ MemoryStore  │ │  RulesStore   │
     │   (tasks)       │ │ (context)    │ │  (conventions)│
     └────────┬────────┘ └──────────────┘ └───────────────┘
              │
     ┌────────▼────────┐
     │  Blazor UI      │  (optional, auto-port)
     │  (MudBlazor)    │
     └─────────────────┘
  • Shared Services: UI and MCP share the same data stores via DI
  • Real-time Sync: Changes via MCP tools appear instantly in UI and vice versa
  • Conditional Hosting: UI only starts when TASK_MANAGER_UI=true

Project Structure

src/Mcp.TaskAndResearch/
├── Config/           # Configuration and path resolution
├── Data/             # TaskStore, MemoryStore, data models
├── Prompts/          # Prompt template builders
├── Server/           # MCP server configuration
├── Tools/            # MCP tool implementations
├── UI/               # Blazor UI (when enabled)
│   ├── Components/   # Razor components
│   ├── Services/     # UI services
│   └── Theme/        # MudBlazor theme
└── wwwroot/          # Static assets

Development

Prerequisites

  • .NET 9 SDK
  • VS Code with GitHub Copilot or Claude extension

Build from Source

# Clone the repository
git clone https://github.com/your-repo/mcp-task-and-research.git
cd mcp-task-and-research

# Build (debug)
dotnet build

# Run tests
dotnet test

# Publish release build
dotnet publish src/Mcp.TaskAndResearch/Mcp.TaskAndResearch.csproj -c Release -o ./publish

Rebuilding After Updates

When you pull updates from the repository:

cd mcp-task-and-research
git pull
dotnet publish src/Mcp.TaskAndResearch/Mcp.TaskAndResearch.csproj -c Release -o ./publish

Note: You must stop the MCP server before republishing (reload VS Code or close it), otherwise the DLL will be locked.

Run Standalone (Development)

For development without an MCP client:

# MCP server only (no UI)
dotnet run --project src/Mcp.TaskAndResearch

# With UI enabled
set TASK_MANAGER_UI=true && dotnet run --project src/Mcp.TaskAndResearch
# Then open http://localhost:9998

Using dotnet run vs Published DLL

Method Command Best For
dotnet run dotnet run --project path/to/csproj Development, debugging
Published DLL dotnet path/to/Mcp.TaskAndResearch.dll Production, multi-project use

For production use, always use the published DLL - it's faster to start and doesn't require recompilation.


Known Limitations

  1. JSON File Storage: Tasks are persisted to DATA_DIR/tasks.json - changes from both UI and MCP tools are saved immediately
  2. Single Project: Currently reads from one DATA_DIR; no multi-project switching in UI
  3. No Authentication: UI has no auth; use for local development only
  4. SignalR Reconnection: Brief stale data possible during connection recovery

License

MIT License - See LICENSE file for details

Product Compatible and additional computed target framework versions.
.NET net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
1.2.8 196 1/27/2026
1.2.1 136 1/26/2026
1.1.0 141 1/26/2026
1.0.23 142 1/21/2026
1.0.22 135 1/16/2026
1.0.21 138 1/16/2026
1.0.12 137 1/13/2026
1.0.11 133 1/13/2026
1.0.10 140 1/13/2026
1.0.9 130 1/12/2026
1.0.8 137 1/12/2026
1.0.7 134 1/12/2026
1.0.6 127 1/12/2026
1.0.5 121 1/12/2026
1.0.3 130 1/12/2026
1.0.2 132 1/12/2026
1.0.1 140 1/12/2026
1.0.0 132 1/12/2026
1.0.0-beta1 119 1/12/2026