This document provides an overview of the MCP (Machine-to-Machine Communication Protocol) interface for the Task Master application. The MCP interface is defined in the mcp-server/ directory and exposes the application's core functionalities as a set of tools that can be called remotely.
To optimize LLM context usage, you can control which Task Master MCP tools are loaded using the TASK_MASTER_TOOLS environment variable. This is particularly useful when working with LLMs that have context limits or when you only need a subset of tools.
Loads only 7 essential tools for daily development. Ideal for minimal context usage.
Core tools included:
get_tasks — List all tasksnext_task — Find the next task to work onget_task — Get detailed task informationset_task_status — Update task statusupdate_subtask — Add implementation notesparse_prd — Generate tasks from PRDexpand_task — Break down tasks into subtasks{
"mcpServers": {
"task-master-ai": {
"command": "npx",
"args": ["-y", "task-master-ai"],
"env": {
"TASK_MASTER_TOOLS": "core",
"ANTHROPIC_API_KEY": "your_key_here"
}
}
}
}
You can also use "lean" as an alias for "core". If TASK_MASTER_TOOLS is not set, core tools are loaded by default.
Loads 15 commonly used tools. Balances functionality with context efficiency.
Standard tools include all core tools plus:
initialize_project — Set up new projectsanalyze_project_complexity — Analyze task complexityexpand_all — Expand all eligible tasksadd_subtask — Add subtasks manuallyremove_task — Remove tasksgenerate — Generate task markdown filesadd_task — Create new taskscomplexity_report — View complexity analysis{
"mcpServers": {
"task-master-ai": {
"command": "npx",
"args": ["-y", "task-master-ai"],
"env": {
"TASK_MASTER_TOOLS": "standard",
"ANTHROPIC_API_KEY": "your_key_here"
}
}
}
}
Loads all 36 available tools. Use when you need full Task Master functionality.
{
"mcpServers": {
"task-master-ai": {
"command": "npx",
"args": ["-y", "task-master-ai"],
"env": {
"TASK_MASTER_TOOLS": "all",
"ANTHROPIC_API_KEY": "your_key_here"
}
}
}
}
Specify exactly which tools to load using a comma-separated list. Tool names are case-insensitive and support both underscores and hyphens.
{
"mcpServers": {
"task-master-ai": {
"command": "npx",
"args": ["-y", "task-master-ai"],
"env": {
"TASK_MASTER_TOOLS": "get_tasks,next_task,set_task_status,update_subtask",
"ANTHROPIC_API_KEY": "your_key_here"
}
}
}
}
core/lean: Default setting, ideal for basic task management workflows or when context limits are strictstandard: For most development workflows that include task creation and analysisall: When you need full functionality including tag management, dependencies, and advanced featuresWhen the MCP server starts, it logs which tools were loaded:
Task Master MCP Server starting...
Tool mode configuration: standard
Loading standard tools
Registering 15 MCP tools (mode: standard)
Successfully registered 15/15 tools
The MCP interface is built on top of the fastmcp library and registers a set of tools that correspond to the core functionalities of the Taskmaster application. These tools are defined in the mcp-server/src/tools/ directory and are registered with the MCP server in mcp-server/src/tools/index.js.
Each tool is defined with a name, a description, and a set of parameters that are validated using the zod library. The execute function of each tool calls the corresponding core logic function from scripts/modules/task-manager.js.
The MCP tools can be categorized in the same way as the core functionalities:
add_task: Creates a new task.add_subtask: Adds a subtask to a parent task.remove_task: Removes one or more tasks or subtasks.remove_subtask: Removes a subtask from its parent.update_task: Updates a single task.update_subtask: Appends information to a subtask.update: Updates multiple tasks.move_task: Moves a task or subtask.clear_subtasks: Clears all subtasks from one or more tasks.get_tasks: Lists all tasks.get_task: Shows the details of a specific task.next_task: Shows the next task to work on.set_task_status: Sets the status of a task or subtask.parse_prd: Parses a PRD to generate tasks.expand_task: Expands a task into subtasks.expand_all: Expands all eligible tasks.analyze_project_complexity: Analyzes task complexity.complexity_report: Displays the complexity analysis report.add_dependency: Adds a dependency to a task.remove_dependency: Removes a dependency from a task.validate_dependencies: Validates the dependencies of all tasks.fix_dependencies: Fixes any invalid dependencies.initialize_project: Initializes a new project.generate: Generates individual task files.models: Manages AI model configurations.research: Performs AI-powered research.add_tag: Creates a new tag.delete_tag: Deletes a tag.list_tags: Lists all tags.use_tag: Switches to a different tag.rename_tag: Renames a tag.copy_tag: Copies a tag.