MCP Hub
Back to servers

tasks-mcp

A task management MCP server that provides tools for creating, listing, completing, and deleting tasks with a pluggable storage backend architecture.

Tools
4
Updated
Jan 22, 2026

Tasks MCP Server

An MCP (Model Context Protocol) server for task management with pluggable storage backends.

Project Structure

tasks-mcp-server/
├── package.json          # Bun project config with MCP SDK dependencies
├── tsconfig.json         # TypeScript configuration
└── src/
    ├── index.ts          # Main MCP server entry point
    ├── types.ts          # Task types and Zod schemas
    └── services/
        ├── TaskService.ts       # Abstract TaskService interface
        └── InMemoryTaskService.ts  # In-memory implementation

Installation

bun install

Building

bun run build

Usage

# Start with default in-memory service
bun run start

# Specify service implementation
bun run start -- --service memory

# Show help
bun run start -- --help

Abstract TaskService Interface

The TaskService interface (src/services/TaskService.ts) defines the contract for task storage implementations:

  • list(status?) - List all tasks, optionally filtered by status
  • get(id) - Get a single task by ID
  • create(input) - Create a new task
  • complete(id) - Mark task as completed
  • delete(id) - Delete a task

Available Implementations

InMemoryTaskService (src/services/InMemoryTaskService.ts):

  • Stores tasks in a Map
  • Generates sequential IDs (task-1, task-2, etc.)
  • Tasks persist only during server runtime

MCP Tools

ToolDescription
tasks_listList all tasks (supports filtering by status and markdown/json output)
tasks_createCreate a new task with title and optional description
tasks_completeMark a task as completed by ID
tasks_deleteDelete a task permanently by ID

MCP Resources

ResourceDescription
task://{id}Access individual tasks by ID (template resource)
task://listList all tasks as JSON (static resource)

Integration

The server uses stdio transport, making it suitable for integration with MCP clients like Claude Desktop or other MCP-compatible applications.

Claude Desktop Configuration

Add to your Claude Desktop config:

{
  "mcpServers": {
    "tasks": {
      "command": "bun",
      "args": ["run", "/path/to/tasks-mcp-server/dist/index.js", "--service", "memory"]
    }
  }
}

Reviews

No reviews yet

Sign in to write a review