Skip to main content
Glama
dbeasty
by dbeasty

QTask

Open-source task management with a built-in MCP server — connect Claude Desktop, Cursor, or any MCP client.

Works with: Claude Desktop · Cursor · Ollama (local agent)

Production: https://qtask.dev · MCP setup guide · User guide · Contribute on GitHub

  • MCP server — list, create, and update tasks and projects from Claude Desktop, Cursor, or other MCP clients

  • Staged writes — external AI proposes changes; you approve before they apply

  • Semantic search — find tasks by meaning, not just keywords

  • Self-hosted — your data stays on your infrastructure, with swappable AI backends (Ollama, MCP-compatible models)

Prerequisites

  • Node.js 20+

  • Docker (for MongoDB)

  • Ollama with tool-capable models:

ollama pull qwen3.5:2b
ollama pull nomic-embed-text

If upgrading an existing install, set OLLAMA_MODEL=qwen3.5:2b in .env and pull the model above.

Related MCP server: MCP Tasks

Quick start

docker compose up -d
cp .env.example .env
# Set JWT_SECRET in .env
# Optional: cp .env.local.example .env.local  # secrets / overrides (gitignored)

npm install
npm install --prefix client
npm run dev:all

Create an account on first visit. For local secrets (e.g. Resend API key), use .env.local — it overrides .env and is not committed. On the production server, put those values in .env instead (see docs/DEPLOY.md).

Documentation

Doc

Audience

docs/MCP.md

External AI clients — start here for Claude Desktop & Cursor (API keys, OAuth, staging)

docs/USER_GUIDE.md

End users — projects, tasks, agent, sharing

docs/QTask_Product_Requirements.md

Product specification

docs/DEPLOY.md

Operators — local and production deployment

In the web app, signed-in users can open Help from the account menu.

Scripts

Command

Description

npm run dev

Backend API only

npm run dev:client

React web client only

npm run dev:all

Backend + web client

npm run mcp

MCP stdio server (local dev / Cursor)

npm run mcp:bridge

Stdio bridge to hosted /api/mcp

npm test

Run integration tests

npm run build

Build API

npm start

Start production API (serves web client)

Authentication

Email/password accounts with JWT. All API routes except /health and /api/auth/* require Authorization: Bearer <token>.

MCP in Cursor

Log in via the web client, copy your JWT, and set MCP_JWT in your Cursor MCP config. See mcp-config.example.json.

For hosted qtask.dev, create an MCP API key in Account menu → External AI (MCP) and use npm run mcp:bridge. See docs/MCP.md.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    A comprehensive and efficient Model Context Protocol server for task management that works with Claude, Cursor, and other MCP clients, providing powerful search, filtering, and organization capabilities across multiple file formats.
    5
    145 npm
    47
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    MCP server for a self-hostable personal planner — exposes memo, todo, calendar event, and cross-resource full-text search tools so Claude, Cursor, or any MCP client can manage your schedule and notes in natural language.
    18
    1
    MIT