update_tile
Modify tile details like title, description, split attributes, and leaf status to maintain accurate hierarchical research organization.
Instructions
Update a tile's information (title, description, split attributes, etc.)
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| tileId | Yes | ID of the tile to update | |
| title | No | New title | |
| description | No | New description (precise definition) | |
| splitAttribute | No | Updated split attribute | |
| splitRationale | No | Updated split rationale | |
| isLeaf | No | Mark as leaf node |
Implementation Reference
- src/research-tree.ts:282-307 (handler)Core implementation of updateTile method in ResearchTreeManager class. Updates specified tile properties (title, description, split info, isLeaf) and updates timestamp.updateTile( tileId: string, updates: { title?: string; description?: string; splitAttribute?: string; splitRationale?: string; isLeaf?: boolean; } ): Tile { const tile = this.tiles.get(tileId); if (!tile) { throw new Error(`Tile ${tileId} not found`); } if (updates.title !== undefined) tile.title = updates.title; if (updates.description !== undefined) tile.description = updates.description; if (updates.splitAttribute !== undefined) tile.splitAttribute = updates.splitAttribute; if (updates.splitRationale !== undefined) tile.splitRationale = updates.splitRationale; if (updates.isLeaf !== undefined) tile.isLeaf = updates.isLeaf; tile.updatedAt = new Date(); return tile; }
- src/index.ts:489-505 (handler)MCP tool execution handler for 'update_tile'. Parses arguments, calls treeManager.updateTile, and returns JSON stringified result.case "update_tile": { const result = treeManager.updateTile(args.tileId as string, { title: args.title as string | undefined, description: args.description as string | undefined, splitAttribute: args.splitAttribute as string | undefined, splitRationale: args.splitRationale as string | undefined, isLeaf: args.isLeaf as boolean | undefined, }); return { content: [ { type: "text", text: JSON.stringify(result, null, 2), }, ], }; }
- src/index.ts:180-213 (registration)Tool registration in TOOLS array, including name, description, and input schema definition.{ name: "update_tile", description: "Update a tile's information (title, description, split attributes, etc.)", inputSchema: { type: "object", properties: { tileId: { type: "string", description: "ID of the tile to update", }, title: { type: "string", description: "New title", }, description: { type: "string", description: "New description (precise definition)", }, splitAttribute: { type: "string", description: "Updated split attribute", }, splitRationale: { type: "string", description: "Updated split rationale", }, isLeaf: { type: "boolean", description: "Mark as leaf node", }, }, required: ["tileId"], }, },
- src/index.ts:183-212 (schema)Input schema for update_tile tool, defining parameters and validation.inputSchema: { type: "object", properties: { tileId: { type: "string", description: "ID of the tile to update", }, title: { type: "string", description: "New title", }, description: { type: "string", description: "New description (precise definition)", }, splitAttribute: { type: "string", description: "Updated split attribute", }, splitRationale: { type: "string", description: "Updated split rationale", }, isLeaf: { type: "boolean", description: "Mark as leaf node", }, }, required: ["tileId"], },