🧪 Skills

Granola Meeting Transcripts

--- name: granola description: Access Granola meeting transcripts and notes. homepage: https://granola.ai metadata: {"clawdbot":{"emoji":"🥣","requires":{"bins":["python3"]}}} --- # granola Access

v1.0.0
❤️ 3
⬇️ 1.9k
👁 1
Share

Description


name: granola description: Access Granola meeting transcripts and notes. homepage: https://granola.ai metadata: {"clawdbot":{"emoji":"🥣","requires":{"bins":["python3"]}}}

granola

Access Granola meeting transcripts, summaries, and notes.

Setup

Granola stores meetings in the cloud. To access them locally:

  1. Install dependencies:
pip install requests
  1. Run initial sync:
python ~/path/to/clawdbot/skills/granola/scripts/sync.py ~/granola-meetings
  1. Set up automatic sync via clawdbot cron:
clawdbot_cron({
  action: "add",
  job: {
    name: "Granola Sync",
    description: "Sync Granola meetings to local disk",
    schedule: { kind: "cron", expr: "0 */6 * * *", tz: "America/New_York" },
    sessionTarget: "isolated",
    wakeMode: "now",
    payload: {
      kind: "agentTurn",
      message: "Run the Granola sync: python {skillsDir}/granola/scripts/sync.py ~/granola-meetings",
      deliver: false
    }
  }
})

The sync script reads auth from ~/Library/Application Support/Granola/supabase.json (created when you sign into Granola on macOS).

Data Structure

After sync, each meeting is a folder:

~/granola-meetings/
  {meeting-id}/
    metadata.json   - title, date, attendees
    transcript.md   - formatted transcript  
    transcript.json - raw transcript data
    document.json   - full API response
    notes.md        - AI summary (if available)

Quick Commands

List recent meetings:

for d in $(ls -t ~/granola-meetings | head -10); do
  jq -r '"\(.created_at[0:10]) | \(.title)"' ~/granola-meetings/$d/metadata.json 2>/dev/null
done

Search by title:

grep -l "client name" ~/granola-meetings/*/metadata.json | while read f; do
  jq -r '.title' "$f"
done

Search transcript content:

grep -ri "keyword" ~/granola-meetings/*/transcript.md

Meetings on a specific date:

for d in ~/granola-meetings/*/metadata.json; do
  if jq -e '.created_at | startswith("2026-01-03")' "$d" > /dev/null 2>&1; then
    jq -r '.title' "$d"
  fi
done

Notes

  • Sync requires the Granola desktop app to be signed in (for auth tokens)
  • Tokens expire after ~6 hours; open Granola to refresh them
  • macOS only (auth file path is macOS-specific)
  • For multi-machine setups, sync on one machine and rsync the folder to others

Reviews (0)

Sign in to write a review.

No reviews yet. Be the first to review!

Comments (0)

Sign in to join the discussion.

No comments yet. Be the first to share your thoughts!

Compatible Platforms

Pricing

Free

Related Configs