MCP server
by chriscarrollsmith
TaskQueue is a project tracking software for managing complex projects, featuring progress tracking and approval checkpo
Manages complex projects by breaking them into structured tasks with progress tracking and user approval checkpoints. Includes AI-powered project planning using multiple LLM providers.
TaskQueue is a community-built MCP server published by chriscarrollsmith that provides AI assistants with tools and capabilities via the Model Context Protocol. TaskQueue is a project tracking software for managing complex projects, featuring progress tracking and approval checkpo It is categorized under productivity. This server exposes 14 tools that AI clients can invoke during conversations and coding sessions.
You can install TaskQueue in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.
MIT
TaskQueue is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.
Add new capabilities to Claude beyond text generation
Example
Access external data sources, execute code, interact with tools and services
Transform Claude from chatbot to action-taking agent
Provide Claude with access to relevant context and data
Example
Load project documentation, access knowledge bases, query databases
Get more accurate, context-aware responses
Automate multi-step workflows combining AI and external tools
Example
Research → Summarize → Create document → Send notification
Complete complex tasks end-to-end without manual steps
Share your MCP server with the developer community
TaskQueue is among the better-indexed MCP projects we tried; the explainx.ai summary tracks the official description.
TaskQueue is among the better-indexed MCP projects we tried; the explainx.ai summary tracks the official description.
TaskQueue reduced integration guesswork — categories and install configs on the listing matched the upstream repo.
We evaluated TaskQueue against two servers with overlapping tools; this profile had the clearer scope statement.
TaskQueue is a well-scoped MCP server in the explainx.ai directory — install snippets and categories matched our Claude Code setup.
Useful MCP listing: TaskQueue is the kind of server we cite when onboarding engineers to host + tool permissions.
According to our notes, TaskQueue benefits from clear Model Context Protocol framing — fewer ambiguous “AI plugin” claims.
According to our notes, TaskQueue benefits from clear Model Context Protocol framing — fewer ambiguous “AI plugin” claims.
We wired TaskQueue into a staging workspace; the listing’s GitHub and npm pointers saved time versus hunting across READMEs.
TaskQueue has been reliable for tool-calling workflows; the MCP profile page is a good permalink for internal docs.
showing 1-10 of 68
MCP Task Manager (npm package: taskqueue-mcp) is a Model Context Protocol (MCP) server for AI task management. This tool helps AI assistants handle multi-step tasks in a structured way, with optional user approval checkpoints.
Usually you will set the tool configuration in Claude Desktop, Cursor, or another MCP client as follows:
{
"tools": {
"taskqueue": {
"command": "npx",
"args": ["-y", "taskqueue-mcp"]
}
}
}
To use the CLI utility, you can install the package globally and then use the following command:
npx taskqueue --help
This will show the available commands and options.
The task manager supports multiple LLM providers for generating project plans. You can configure one or more of the following environment variables depending on which providers you want to use:
OPENAI_API_KEY: Required for using OpenAI models (e.g., GPT-4)GOOGLE_GENERATIVE_AI_API_KEY: Required for using Google's Gemini modelsDEEPSEEK_API_KEY: Required for using Deepseek modelsTo generate project plans using the CLI, set these environment variables in your shell:
export OPENAI_API_KEY="your-api-key"
export GOOGLE_GENERATIVE_AI_API_KEY="your-api-key"
export DEEPSEEK_API_KEY="your-api-key"
Or you can include them in your MCP client configuration to generate project plans with MCP tool calls:
{
"tools": {
"taskqueue": {
"command": "npx",
"args": ["-y", "taskqueue-mcp"],
"env": {
"OPENAI_API_KEY": "your-api-key",
"GOOGLE_GENERATIVE_AI_API_KEY": "your-api-key",
"DEEPSEEK_API_KEY": "your-api-key"
}
}
}
}
The TaskManager now uses a direct tools interface with specific, purpose-built tools for each operation:
list_projects: Lists all projects in the systemread_project: Gets details about a specific projectcreate_project: Creates a new project with initial tasksdelete_project: Removes a projectadd_tasks_to_project: Adds new tasks to an existing projectfinalize_project: Finalizes a project after all tasks are donelist_tasks: Lists all tasks for a specific projectread_task: Gets details of a specific taskcreate_task: Creates a new task in a projectupdate_task: Modifies a task's properties (title, description, status)delete_task: Removes a task from a projectapprove_task: Approves a completed taskget_next_task: Gets the next pending task in a projectmark_task_done: Marks a task as completed with detailsTasks have a status field that can be one of:
not started: Task has not been started yetin progress: Task is currently being worked ondone: Task has been completed (requires completedDetails)The system enforces the following rules for task status transitions:
not started: Can only move to in progressin progress: Can move to either done or back to not starteddone: Can move back to in progress if additional work is neededcompletedDetails field must be provided to document what was completedThese rules help maintain the integrity of task progress and ensure proper documentation of completed work.
A typical workflow for an LLM using this task manager would be:
create_project: Start a project with initial tasksget_next_task: Get the first pending taskmark_task_done: Mark the task as complete with detailsapprove_task through the CLI)get_next_task: Get the next pending taskfinalize_project: Complete the project (requires user approval)To use the CLI, you will need to install the package globally:
npm install -g taskqueue-mcp
Alternatively, you can run the CLI with npx using the --package=taskqueue-mcp flag to tell npx what package it's from.
npx --package=taskqueue-mcp taskqueue --help
By default, all tasks and projects will be auto-approved when marked "done" by the AI agent. To require manual human task approval, set autoApprove to false when creating a project.
Task approval is controlled exclusively by the human user through the CLI:
npx taskqueue approve-task -- <projectId> <taskId>
Options:
-f, --force: Force approval even if the task is not marked as doneNote: Tasks must be marked as "done" with completed details by the AI agent before they can be approved (unless using --force).
The CLI provides a command to list all projects and tasks:
npx taskqueue list-tasks
To view details of a specific project:
npx taskqueue list-tasks -- -p <projectId>
This command displays information about all projects in the system or a specific project, including:
The task manager stores data in a JSON file that must be accessible to both the server and CLI.
The default platform-specific location is:
~/.local/share/taskqueue-mcp/tasks.json~/Library/Application Support/taskqueue-mcp/tasks.json%APPDATA% askqueue-mcp asks.jsonUsing a custom file path for storing task data is not recommended, because you have to remember to set the same path for both the MCP server and the CLI, or they won't be able to coordinate with each other. But if you do want to use a custom path, you can set the TASK_MANAGER_FILE_PATH environment variable in your MCP client configuration:
{
"tools": {
"taskqueue": {
"command": "npx",
"args": ["-y", "taskqueue-mcp"],
"env": {
"TASK_MANAGER_FILE_PATH": "/path/to/tasks.json"
}
}
}
}
Then, before running the CLI, you should export the same path in your shell:
export TASK_MANAGER_FILE_PATH="/path/to/tasks.json"
The JSON file uses the following structure:
TaskManagerFile
├── projects: Project[]
├── projectId: string # Format: "proj-{number}"
├── initialPrompt: string # Original user request text
├── projectPlan: string # Additional project details
├── completed: boolean # Project completion status
├── autoApprove: boolean # Set `false` to require manual user approval
└── tasks: Task[] # Array of tasks
├── id: string # Format: "task-{number}"
├── title: string # Short task title
├── description: string # Detailed task description
├── status: string # Task status: "not started", "in progress", or "done"
├── approved: boolean # Task approval status
├── completedDetails: string # Completion information (required when status is "done")
├── toolRecommendations: string # Suggested tools that might be helpful for this task
└── ruleRecommendations: string # Suggested rules/guidelines to follow for this task
MIT
Prerequisites
Time Estimate
15-60 minutes depending on server complexity
Steps
Troubleshooting
✓ Do
✗ Don't
💡 Pro Tips
Architecture
Model Context Protocol standardizes how AI hosts (Claude, Cursor) communicate with external tools and data sources through server implementations.
Protocols
Compatibility
✓ Use when
Use when you need Claude to access external data, execute actions, or integrate with tools. Best for extending AI capabilities beyond conversation.
✗ Avoid when
Avoid when native integrations exist (use official APIs directly), for real-time critical systems, or when security/compliance requires zero external dependencies.