Skip to main content
Plugin ID: granola | Auth: API Key (Bearer token, grn_ prefix) Two distinct auth provider ids and two parallel sets of tools, so the model can pick personal vs team based on the user’s prompt without guessing which credential to use:
Auth provider idConnected viaTools
granola-personalDashboard “Granola (Personal)” tile (Personal tools section)granola.personal.notes.list, granola.personal.notes.get
granola-enterpriseDashboard “Granola (Enterprise)” tile (Team tools section)granola.enterprise.notes.list, granola.enterprise.notes.get
Both flavors call the same public API (https://public-api.granola.ai/v1/notes) — the difference is which Bearer token gets used at request time. Notes only appear in the response once they have a completed AI summary and transcript.
Tool descriptions are written so the model can disambiguate from natural-language prompts. Personal tools say “your own personal Granola account”; enterprise tools say “your team’s shared Granola Enterprise workspace (notes from teammates included)”. search_tools will return only the scopes the user has connected.

Personal scope

granola.personal.notes.list

Name: List Personal Meeting Notes Lists meeting notes from the user’s own Granola account, paginated.
ParameterTypeRequiredDefaultDescription
created_afterstringNoISO-8601 datetime to filter notes created after this time
limitintegerNo25Max notes to return
cursorstringNoPagination cursor from a previous response
Output:
{
  "notes": [
    {
      "id": "not_abc123",
      "title": "Weekly Standup",
      "summary": "Discussed sprint progress and blockers...",
      "created_at": "2026-04-20T10:00:00Z",
      "updated_at": "2026-04-20T10:30:00Z"
    }
  ],
  "next_cursor": "cursor_xyz"
}

granola.personal.notes.get

Name: Get Personal Meeting Note Fetch a single note by ID. Setting include_transcript: true returns the full transcript alongside the summary.
ParameterTypeRequiredDefaultDescription
noteIdstringYesNote ID (prefixed with not_)
include_transcriptbooleanNofalseInclude the full meeting transcript
Output:
{
  "id": "not_abc123",
  "title": "Weekly Standup",
  "summary": "Discussed sprint progress and blockers...",
  "transcript": "Speaker 1: Let's start with updates...",
  "created_at": "2026-04-20T10:00:00Z",
  "updated_at": "2026-04-20T10:30:00Z"
}

Enterprise scope

granola.enterprise.notes.list and granola.enterprise.notes.get have identical schemas to their personal counterparts. The only difference is the credential used (Granola Enterprise API key vs personal key) and the resulting visibility — enterprise sees notes across the team’s workspace.