ungroup-items
Uncluster items in a specific group on a Miro board by separating them into individual elements, with an option to remove the group's items permanently.
Instructions
Ungroup a specific group on a Miro board
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| boardId | Yes | ID of the board that contains the group | |
| deleteItems | No | Indicates whether the items should be removed. By default, false. | |
| groupId | Yes | ID of the group that you want to ungroup |
Input Schema (JSON Schema)
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"boardId": {
"description": "ID of the board that contains the group",
"type": "string"
},
"deleteItems": {
"description": "Indicates whether the items should be removed. By default, false.",
"type": "boolean"
},
"groupId": {
"description": "ID of the group that you want to ungroup",
"type": "string"
}
},
"required": [
"boardId",
"groupId"
],
"type": "object"
}
Implementation Reference
- src/tools/ungroupItems.ts:14-34 (handler)The asynchronous handler function that validates inputs, calls MiroClient.getApi().unGroup to ungroup the items, and returns a success or error response.fn: async ({ boardId, groupId, deleteItems }) => { try { if (!boardId) { return ServerResponse.error("Board ID is required"); } if (!groupId) { return ServerResponse.error("Group ID is required"); } const options: any = {}; if (deleteItems !== undefined) options.deleteItems = deleteItems; await MiroClient.getApi().unGroup(boardId, groupId, options); return ServerResponse.text(JSON.stringify({ success: true, message: "Group successfully ungrouped" }, null, 2)); } catch (error) { process.stderr.write(`Error ungrouping items: ${error}\n`); return ServerResponse.error(error); } }
- src/tools/ungroupItems.ts:10-13 (schema)Zod-based input schema defining required boardId and groupId strings, and optional boolean deleteItems.boardId: z.string().describe("ID of the board that contains the group"), groupId: z.string().describe("ID of the group that you want to ungroup"), deleteItems: z.boolean().optional().nullish().describe("Indicates whether the items should be removed. By default, false.") },
- src/index.ts:183-183 (registration)Registers the ungroupItemsTool with the ToolBootstrapper instance..register(ungroupItemsTool)
- src/index.ts:82-82 (registration)Imports the ungroup-items tool definition for registration.import ungroupItemsTool from './tools/ungroupItems.js';