home / mcp / taskqueue mcp server
MCP tool for exposing a structured task queue to guide AI agent workflows. Great for taming an over-enthusiastic Claude.
Configuration
View docs{
"mcpServers": {
"chriscarrollsmith-taskqueue-mcp": {
"command": "npx",
"args": [
"-y",
"taskqueue-mcp"
],
"env": {
"OPENAI_API_KEY": "YOUR_OPENAI_API_KEY",
"DEEPSEEK_API_KEY": "YOUR_DEEPSEEK_API_KEY",
"GOOGLE_GENERATIVE_AI_API_KEY": "YOUR_GOOGLE_API_KEY"
}
}
}
}You can manage AI-driven, multi-step tasks with a dedicated MCP server that handles project planning, task progression, and optional user approvals. This server helps AI assistants organize work into clear tasks, track progress, and capture completion details for auditing and collaboration.
Set up your MCP client to connect to the Task Queue MCP server. You’ll use a local, stdio-based runtime so you can run the server locally and interact with it through the CLI. Create and manage projects, add tasks, and progress through each task with optional human approvals. The typical flow is to create a project with initial tasks, fetch the next pending task, complete it with details, optionally wait for approval, and move on to the next task until the project is finalized.
Prerequisites: you need Node.js and npm installed on your system.
Install the MCP server tool globally or use it via npx. You can install the CLI globally with npm and then run the CLI commands.
npm install -g taskqueue-mcpAlternatively, you can run the MCP CLI directly with npx from the package when you need to use a single command without a global install.
npx taskqueue --helpTo generate project plans using multiple providers, you can set environment variables for the providers you want to use. Common options include keys for OpenAI, Google's Gemini, and Deepseek. Set these in your shell or in your MCP client configuration to enable plan generation during task creation.
export OPENAI_API_KEY="your-api-key"
export GOOGLE_GENERATIVE_AI_API_KEY="your-api-key"
export DEEPSEEK_API_KEY="your-api-key"The server stores data in a JSON file shared between the server and CLI. If you need to customize the path, you can expose an environment variable to point to your own file. This keeps the server and CLI in sync when reading and writing project and task data.
Default locations by platform where the data file resides are typical starting points if you do not customize the path. Using a custom path requires setting the same path in both the server and CLI configuration.
Projects contain an initial prompt, a plan, a completion status, and a list of tasks. Each task has a title, description, status, approval state, and required completed details when marked as done. Tasks can be transitioned through defined states to preserve integrity and traceability.
1) Create a new project with initial tasks. 2) Retrieve the next pending task. 3) Work on the task and record details when finished. 4) Mark the task as done and optionally wait for human approval. 5) Retrieve the next pending task and repeat until all tasks are completed. 6) Finalize the project once all tasks are done and approved.
By default, tasks and projects may be auto-approved when marked done. To require manual approval, set autoApprove to false for the project. Approval and modification rules ensure only approved, completed tasks advance toward finalization.
The MCP server exposes a range of task and project management operations that your client can invoke. You’ll interact with these operations through an MCP client and the provided CLI.
If you encounter data syncing issues between the server and CLI, verify that the data file path is accessible from both processes and that environment variables for any provider APIs are correctly set. Ensure you have network access if you rely on remote provider services for plan generation.
List all projects in the system
Get details about a specific project
Create a new project with initial tasks
Remove a project
Add new tasks to an existing project
Finalize a project after all tasks are done
List all tasks for a specific project
Get details of a specific task
Create a new task in a project
Modify a task's properties (title, description, status)
Remove a task from a project
Approve a completed task
Get the next pending task in a project
Mark a task as completed with details