get_granola_transcript
Retrieve a specific meeting transcript by its ID from the Granola API to access meeting-related content for review or reference.
Instructions
Get a specific Granola transcript by its ID.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The transcript ID to retrieve |
Implementation Reference
- src/index.ts:411-455 (handler)The switch case handler that implements the core logic for the 'get_granola_transcript' tool. It retrieves the document by ID, checks if it's a meeting transcript, converts ProseMirror content to Markdown, and formats the response as JSON.case "get_granola_transcript": { const id = args?.id as string; const doc = await apiClient.getDocumentById(id); if (!doc || doc.type !== "meeting") { return { content: [ { type: "text", text: JSON.stringify({ error: `Transcript with id ${id} not found`, }), }, ], isError: true, }; } let markdown = ""; if (doc.last_viewed_panel?.content) { markdown = convertProseMirrorToMarkdown( doc.last_viewed_panel.content ); } return { content: [ { type: "text", text: JSON.stringify( { id: doc.id, meeting_id: doc.id, title: doc.title, content: markdown, created_at: doc.created_at, updated_at: doc.updated_at, }, null, 2 ), }, ], }; }
- src/index.ts:122-135 (schema)The tool schema definition, including name, description, and input schema requiring a 'id' string parameter. This is part of the tools array registered for ListTools requests.{ name: "get_granola_transcript", description: "Get a specific Granola transcript by its ID.", inputSchema: { type: "object", properties: { id: { type: "string", description: "The transcript ID to retrieve", }, }, required: ["id"], }, },
- src/granola-api.ts:146-149 (helper)Helper method in GranolaApiClient used by the tool handler to fetch a specific document by ID from all loaded Granola documents.async getDocumentById(id: string): Promise<GranolaDocument | null> { const allDocs = await this.getAllDocuments(); return allDocs.find((doc) => doc.id === id) || null; }