share-board
Share a Miro board with specific collaborators by setting access levels like view, comment, or edit permissions.
Instructions
Share a Miro board with specific access level and optional team assignment
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| boardId | Yes | ID of the board to share | |
| accessLevel | Yes | Access level for shared board | |
| teamId | No | Team ID to assign the board to |
Implementation Reference
- src/tools/shareBoard.ts:14-34 (handler)The handler function that executes the tool logic: validates input, constructs board changes for sharing policy and optional team, calls Miro API to update board, handles errors.fn: async ({ boardId, accessLevel, teamId }) => { try { if (!boardId) { return ServerResponse.error("Board ID is required"); } const boardChanges = { sharingPolicy: { access: accessLevel }, teamId }; const result = await MiroClient.getApi().updateBoard(boardId, boardChanges); return ServerResponse.text(JSON.stringify(result, null, 2)); } catch (error) { process.stderr.write(`Error sharing Miro board: ${error}\n`); return ServerResponse.error(error); } }
- src/tools/shareBoard.ts:7-13 (schema)Tool schema definition including name, description, and Zod input schema for parameters.name: "share-board", description: "Share a Miro board with specific access level and optional team assignment", args: { boardId: z.string().describe("ID of the board to share"), accessLevel: z.enum(['private', 'view', 'comment', 'edit']).describe("Access level for shared board"), teamId: z.string().optional().nullish().describe("Team ID to assign the board to"), },
- src/index.ts:176-176 (registration)Registration of the shareBoardTool with the ToolBootstrapper instance..register(shareBoardTool)