diff --git a/AGENTS.md b/AGENTS.md index 4aab2ba9edcbe9962003168930fe1d7180bb0eb1..140a69435800d31f19047d15e87542d0ba2e0bdd 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -54,9 +54,9 @@ The project requires license headers (SPDX format) on all source files and uses The server exposes four MCP tools that map directly to planning manager methods: - `update_goal(goal: string)`: Sets overarching goal with length validation -- `add_tasks(tasks: []TaskInput)`: Batch task creation with duplicate detection -- `get_tasks()`: Returns markdown-formatted task list with legend and sorted by creation time -- `update_task_status(task_id: string, status: string)`: Updates task status and returns full list +- `add_tasks(tasks: []TaskInput)`: Batch task creation with duplicate detection. Encourages breaking tasks down into smallest units of work and regular progress tracking. +- `get_tasks()`: Returns markdown-formatted task list with legend and sorted by creation time. Should be called frequently to stay organized. +- `update_task_status(task_id: string, status: string)`: Updates task status and returns full list. Helps maintain planning workflow by tracking progress. ### Configuration System diff --git a/README.md b/README.md index a64a863c4ff3bd23e16e2c6af0c2bfb644794578..9492220b2dcf2cb1fe9f6bc9edf3f45ce9fa0d01 100644 --- a/README.md +++ b/README.md @@ -7,9 +7,9 @@ A Model Context Protocol (MCP) server that provides planning tools for LLMs to t The server provides four core tools that constitute a comprehensive planning workflow: - **`update_goal`**: Set or update the overarching goal for your planning session -- **`add_tasks`**: Add one or more tasks to work on -- **`get_tasks`**: Get current task list with status indicators and legend -- **`update_task_status`**: Update the status of a specific task +- **`add_tasks`**: Add one or more tasks to work on. Break tasks down into the smallest units of work possible and track progress. +- **`get_tasks`**: Get current task list with status indicators and legend. Call frequently to stay organized. +- **`update_task_status`**: Update the status of a specific task. Maintain your planning workflow by updating statuses regularly. ## Installation diff --git a/internal/mcp/server.go b/internal/mcp/server.go index 4e5635bef33ed315baf7425f9e5f6207150f7dd6..642ad5304d98bec9d43239bf43bf6887de356ef3 100644 --- a/internal/mcp/server.go +++ b/internal/mcp/server.go @@ -70,7 +70,7 @@ func (s *Server) registerTools(mcpServer *server.MCPServer) { // Register add_tasks tool addTasksTool := mcp.NewTool("add_tasks", - mcp.WithDescription("Add one or more tasks to work on"), + mcp.WithDescription("Add one or more tasks to work on. Break tasks down into the smallest units of work possible. If there are more than one, use me to keep track of where you are in fulfilling the user's request. Call get_tasks often to stay on track."), mcp.WithArray("tasks", mcp.Required(), mcp.Description("Array of tasks to add"), @@ -94,13 +94,13 @@ func (s *Server) registerTools(mcpServer *server.MCPServer) { // Register get_tasks tool getTasksTool := mcp.NewTool("get_tasks", - mcp.WithDescription("Get current task list with status indicators"), + mcp.WithDescription("Get current task list with status indicators. Call this frequently to stay organized and track your progress."), ) mcpServer.AddTool(getTasksTool, s.handleGetTasks) // Register update_task_status tool updateTaskStatusTool := mcp.NewTool("update_task_status", - mcp.WithDescription("Update the status of a specific task"), + mcp.WithDescription("Update the status of a specific task. Maintain your planning workflow by regularly updating task statuses as you make progress."), mcp.WithString("task_id", mcp.Required(), mcp.Description("The task ID to update"),