68 lines
2.8 KiB
Plaintext
68 lines
2.8 KiB
Plaintext
---
|
|
title: MCP Tools
|
|
sidebarTitle: "MCP Tools"
|
|
---
|
|
|
|
# MCP Tools
|
|
|
|
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.
|
|
|
|
## Core Concepts
|
|
|
|
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 Task Master 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`.
|
|
|
|
## Tool Categories
|
|
|
|
The MCP tools can be categorized in the same way as the core functionalities:
|
|
|
|
### 1. Task and Subtask Management
|
|
|
|
- **`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.
|
|
|
|
### 2. Task Information and Status
|
|
|
|
- **`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.
|
|
|
|
### 3. Task Analysis and Expansion
|
|
|
|
- **`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.
|
|
|
|
### 4. Dependency Management
|
|
|
|
- **`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.
|
|
|
|
### 5. Project and Configuration
|
|
|
|
- **`initialize_project`**: Initializes a new project.
|
|
- **`generate`**: Generates individual task files.
|
|
- **`models`**: Manages AI model configurations.
|
|
- **`research`**: Performs AI-powered research.
|
|
|
|
### 6. Tag Management
|
|
|
|
- **`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. |