QTask
Task and project management MCP server with OAuth for Claude Desktop, Cursor bridge, semantic search, staged write approval
README
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.
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
- API: http://localhost:3000
- Web client: http://localhost:5173
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.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.