Skip to main content
Glama

get_miro_board

Retrieve details for a specific Miro board by providing its board ID, enabling access to board information within the Learning Hour MCP server for technical coaching sessions.

Instructions

Get details about a specific Miro board

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
boardIdYesID of the Miro board to get details for

Implementation Reference

  • Main handler function for the 'get_miro_board' tool. Extracts boardId from input arguments, checks for Miro integration, calls MiroIntegration.getBoardInfo, and returns formatted text blocks with board details.
    private async getMiroBoard(args: any) { try { if (!this.miroIntegration) { throw new Error('Miro integration not initialized. Ensure MIRO_ACCESS_TOKEN is set in the environment.'); } const boardId = args.boardId; if (!boardId) { throw new Error('Board ID is required'); } const board = await this.miroIntegration.getBoardInfo(boardId); return { content: [ { type: "text", text: `Board Details:`, }, { type: "text", text: `Name: ${board.name}`, }, { type: "text", text: `ID: ${board.id}`, }, { type: "text", text: `Description: ${board.description || 'No description'}`, }, { type: "text", text: `View Link: ${board.viewLink}`, }, { type: "text", text: `Created: ${board.createdAt}`, }, { type: "text", text: `Modified: ${board.modifiedAt}`, }, ], }; } catch (error) { throw new Error(`Failed to get Miro board: ${error instanceof Error ? error.message : String(error)}`); } }
  • Core helper method in MiroIntegration class that performs the actual API call to Miro's /boards/{boardId} endpoint to fetch board information.
    async getBoardInfo(boardId: string): Promise<MiroBoard> { try { const response = await axios.get(`${this.miroApiUrl}/boards/${boardId}`, { headers: { 'authorization': `Bearer ${this.accessToken}`, } }); return response.data; } catch (error) { throw new Error(`Failed to get board info: ${error instanceof Error ? error.message : String(error)}`); } }
  • src/index.ts:202-215 (registration)
    Tool registration entry in the ListTools response, defining the tool name, description, and input schema requiring a 'boardId' string.
    { name: "get_miro_board", description: "Get details about a specific Miro board", inputSchema: { type: "object", properties: { boardId: { type: "string", description: "ID of the Miro board to get details for", }, }, required: ["boardId"], }, },
  • TypeScript interface defining the structure of a MiroBoard object returned by the getBoardInfo method.
    interface MiroBoard { id: string; name: string; description?: string; createdAt: string; modifiedAt: string; viewLink: string; }

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/SDiamante13/learning-hour-mcp'

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