Skip to main content
Glama
TAgents

Planning System MCP Server

by TAgents

batch_update_nodes

Update multiple planning nodes simultaneously to modify status, titles, and descriptions across a project plan.

Instructions

Update multiple nodes at once

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
plan_idYesPlan ID
updatesYesList of node updates

Implementation Reference

  • The handler function that implements the core logic of the batch_update_nodes tool. It iterates through the list of updates, calls the underlying API to update each node individually, and returns a summary of successful updates and any errors encountered.
    if (name === "batch_update_nodes") {
      const { plan_id, updates } = args;
      
      const results = [];
      const errors = [];
      
      for (const update of updates) {
        const { node_id, ...updateData } = update;
        try {
          const result = await apiClient.nodes.updateNode(plan_id, node_id, updateData);
          results.push({ node_id, success: true, data: result });
        } catch (error) {
          errors.push({ node_id, success: false, error: error.message });
        }
      }
      
      return formatResponse({
        total: updates.length,
        successful: results.length,
        failed: errors.length,
        results,
        errors
      });
    }
  • src/tools.js:348-375 (registration)
    The tool registration entry in the listTools response, defining the name, description, and complete input schema (including validation for plan_id and array of node updates with required node_id).
    {
      name: "batch_update_nodes",
      description: "Update multiple nodes at once",
      inputSchema: {
        type: "object",
        properties: {
          plan_id: { type: "string", description: "Plan ID" },
          updates: {
            type: "array",
            description: "List of node updates",
            items: {
              type: "object",
              properties: {
                node_id: { type: "string", description: "Node ID" },
                status: { 
                  type: "string",
                  enum: ["not_started", "in_progress", "completed", "blocked"]
                },
                title: { type: "string" },
                description: { type: "string" }
              },
              required: ["node_id"]
            }
          }
        },
        required: ["plan_id", "updates"]
      }
    },
  • The input schema defining the expected parameters for the batch_update_nodes tool, including plan_id (required), and updates array where each item requires node_id and optionally status, title, description.
    inputSchema: {
      type: "object",
      properties: {
        plan_id: { type: "string", description: "Plan ID" },
        updates: {
          type: "array",
          description: "List of node updates",
          items: {
            type: "object",
            properties: {
              node_id: { type: "string", description: "Node ID" },
              status: { 
                type: "string",
                enum: ["not_started", "in_progress", "completed", "blocked"]
              },
              title: { type: "string" },
              description: { type: "string" }
            },
            required: ["node_id"]
          }
        }
      },
      required: ["plan_id", "updates"]

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/TAgents/agent-planner-mcp'

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