Skip to main content
Glama

create_new_task

Creates independent tasks for unrelated work, context switches, or parallel workstreams by adding new top-level tasks to your workspace while maintaining previous task status.

Instructions

Create an INDEPENDENT task for unrelated work. Use for: new topics, context switches, or parallel workstreams. Adds a new top-level task to your workspace. Previous task keeps its status. Example: working on Feature A, need to research Topic B → create_new_task for Topic B. For breaking down current work, use extend_current_task.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
titleYesBrief task description (max 256 chars)
bodyYesFull task context, notes, and details

Implementation Reference

  • Main handler function that creates a new independent task by calling task_manager.create_new_task and returns task info and focus path.
    async def handle_create_new_task(self, title: str, body: str) -> Dict[str, Any]:
        try:
            # Get previous task info before creating new one
            previous_task = self.task_manager.current_task
    
            task = self.task_manager.create_new_task(title, body)
    
            response = {
                "task_id": task.id,
                "message": f"Created independent task: {task.title}",
                "focus_path": self.task_manager.get_focus_path(),
                "is_current": True,
            }
    
            if previous_task:
                response["note"] = (
                    f"Previous task '{previous_task.title}' is now pending"
                )
    
            return response
        except ValueError as e:
            return {"error": str(e)}
  • Tool schema definition including input schema requiring title and body.
    Tool(
        name="create_new_task",
        description="Create an INDEPENDENT task for unrelated work. Use for: new topics, context switches, or parallel workstreams. Adds a new top-level task to your workspace. Previous task keeps its status. Example: working on Feature A, need to research Topic B → create_new_task for Topic B. For breaking down current work, use extend_current_task.",
        inputSchema={
            "type": "object",
            "properties": {
                "title": {
                    "type": "string",
                    "description": "Brief task description (max 256 chars)",
                },
                "body": {
                    "type": "string",
                    "description": "Full task context, notes, and details",
                },
            },
            "required": ["title", "body"],
        },
    ),
  • src/server.py:49-51 (registration)
    Registration of the tool handler in the MCP server's call_tool handler_map.
    "create_new_task": lambda: handlers.handle_create_new_task(
        arguments["title"], arguments["body"]
    ),
  • Core helper method in TaskManager that instantiates and appends a new MainTask to global_tasks, sets it as CURRENT, and pendings the previous current task.
    def create_new_task(self, title: str, body: str) -> MainTask:
        new_task = MainTask(title=title, body=body)
        new_task.status = TaskStatus.CURRENT
    
        if self.current_task:
            self.current_task.status = TaskStatus.PENDING
    
        self.global_tasks.append(new_task)
        self._manual_current_task = None  # Clear manual focus
        return new_task
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It explains that the new task is independent and top-level, and that the previous task retains its status, which adds useful context. However, it lacks details on permissions, error handling, or what happens if creation fails, leaving some behavioral aspects unclear.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core purpose, followed by usage guidelines and an example. Every sentence adds value—none are redundant or vague—and it efficiently conveys necessary information in a compact form.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (creation operation with 2 parameters) and no annotations or output schema, the description does a good job of explaining the tool's purpose, usage, and behavioral context. However, it could be more complete by addressing potential errors or the absence of an output schema, which might leave the agent uncertain about the return value.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, so the schema already documents both parameters (title and body) adequately. The description does not add any parameter-specific semantics beyond what the schema provides, such as formatting examples or constraints beyond the schema's max 256 chars for title.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Create an INDEPENDENT task for unrelated work' and 'Adds a new top-level task to your workspace.' It specifies the verb (create), resource (task), and scope (independent/top-level), and distinguishes it from sibling tools like extend_current_task.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance on when to use this tool ('for: new topics, context switches, or parallel workstreams') and when not to use it ('For breaking down current work, use extend_current_task'). It includes a concrete example and names the alternative tool, making it highly actionable.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/cheezcake/aidderall_mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server