Your meetings, filed into the right client folder

granola-organizer saves every Granola transcript as a markdown file and puts it where it belongs, on its own. Then you can ask Claude about any call you have ever had.

Download for Claude Desktop granola-organizer.mcpb · 20 MB · macOS

You need a Granola Business plan. This reads Granola's official API, and API keys are a Business feature. It cannot work on the free plan. Why that trade is deliberate.

What you get

One markdown file per meeting: the details up top, Granola's summary, then the full transcript with who said what and when.

---
title: "Quarterly review"
date: 2026-07-31 11:30 EDT
attendees:
  - [email protected]
---

# Quarterly review

## Transcript

[00:00] Me: Thanks for making the time.
[00:04] Dana Smith: Of course. Where do you want to start?
[01:12] Dana Smith: Twelve percent on the expedited tier,
        effective the first of next month.

That file lands in clients/Example Client/transcripts/ without you doing anything, because the meeting had someone from that company on the invite.

Installing it

Two ways. Pick the one that matches how you use Claude.

Claude Desktop, no terminal

1

Download the extension and double-click it. Claude Desktop installs it.

2

In Granola: Settings → Connectors → API keys, create a key, and save it to a file called api-key inside a folder named .granola-organizer in your home directory.

3

Ask Claude: "turn on always-on saving." That sets up the background job. From then on your meetings file themselves, whether or not Claude is open.

Signed and notarized with Apple, so it just opens. No terminal, no security warning to click through.

Claude Code or Cowork, one command

uv tool install git+https://github.com/adampaulwalker/granola-organizer

Then set it up:

# save your Granola API key
mkdir -p ~/.granola-organizer
echo 'grn_your_key_here' > ~/.granola-organizer/api-key
chmod 600 ~/.granola-organizer/api-key

# choose where transcripts go
echo '{"transcript_folder": "~/Documents/Meetings"}' > ~/.granola-organizer/settings.json

# pull your history, then turn on automatic filing
granola-organizer backfill --dry-run   # preview, writes nothing
granola-organizer backfill
granola-organizer install

granola-organizer status tells you whether automatic filing is on, and granola-organizer uninstall turns it off again.

How it decides where a meeting goes

It reads the attendees and the title. A call with [email protected] goes to that client's folder. Rules live in a small JSON file you control.

Matched onUse it for
Attendee email domainThe normal case
Title keywordCalls with nobody from the company on the invite
A single meeting, by idThe one-off nothing else reaches

When it cannot tell, it does not guess. The meeting goes to a holding folder and status tells you why. A transcript in the wrong client's folder is worse than one that is visibly unsorted, and roughly half of a normal calendar is one-to-ones on personal addresses where nothing identifies a company.

Where the files live

You choose the folder. It has been tested writing into Dropbox, Google Drive, OneDrive, an Obsidian vault, and plain local disk.

SurfaceCan read your transcripts
Claude CodeYes, directly
Claude CoworkYes, directly. No terminal needed
Claude DesktopYes, through this extension
Claude in a browserNo. It cannot reach your filesystem

Why it needs a paid plan

Granola encrypted its local cache in 2026. Every tool that read that file stopped working, and several have been retired by their authors since:

The official API is the durable way to get your own transcripts out. It needs Granola Business. That is a deliberate trade: paying for a stable interface beats rebuilding after every release.

Questions

Does Claude need to be open?

No. The filing is done by a small background program that macOS starts when you log in. Claude is only involved when you want to ask about a meeting.

How soon after a call does it appear?

A few minutes, not instantly. Granola has to finish writing its summary before the API will return the meeting.

How do I turn it off?

granola-organizer uninstall, or ask Claude to turn off always-on saving. Transcripts already saved stay where they are. Note that removing the Desktop extension does not stop the background job, since the job runs independently of Claude.

Does anything leave my machine?

Only the request to Granola's own API for your own meetings. Transcripts are written straight to your disk. There is no server in the middle, and the tool has no third-party dependencies.

Can I use it on Windows or Linux?

The command-line tool runs anywhere Python does. Automatic filing currently uses macOS launchd; on Linux, run granola-organizer poll --interval 120 from a systemd user service. The Desktop extension is macOS only for now.

What if I already used granola-saver?

That was the earlier version, which read the local cache and stopped working when Granola encrypted it. This is the replacement. It reuses your old config folder if it finds one.