Close the loop after every Granola meeting in Notion and Linear
When a new Granola note lands, an agent files the recap in your Notion meetings database and creates Linear issues for the action items you committed to.
Build me a meeting follow-up agent that closes the loop after every call I take. I want it to run as an agent-style workflow with natural-language instructions.
Trigger: poll Granola for new meeting notes. When a new note appears in my Granola space, kick off the agent with that note's id.
Step 1. Call Granola Get Note for the new note id, including the transcript. Read the summary, the attendees list, the calendar event details, and the transcript.
Step 2. Use AI Generation (Generate Completion, medium intelligence) to extract a structured follow-up packet from the note. I want: a short recap paragraph (3 to 5 sentences), a list of action items where each item has an owner (name or email), a one-line description, and a due date if mentioned, and a list of open questions raised on the call. Use the transcript as the source of truth for action items and ground the recap in the Granola summary.
Step 3. Use Notion Create a Page to file the meeting in my Notion meetings database. The page should have: title (meeting title from Granola), date (the meeting date), attendees (multi-select or rich text), recap (the recap paragraph as page content), open questions (bulleted list as page content), and the full action item list (bulleted list as page content with owners and due dates shown). Ask me at setup time for the Notion database id and the property mapping.
Step 4. For every action item where the owner is me, call Linear Create Issue. Title is the action item description, description includes the due date and a link back to the Notion page from step 3, assignee is me, and team is the default Linear team I pick at setup. Do NOT create Linear issues for action items owned by other attendees. Those stay in the Notion recap only, so I am not spamming other people's queues with cross-team tickets.
Ownership rule: an action item is 'mine' if the owner field matches my name or my email (configurable at setup), or if the transcript clearly attributes the commitment to me with phrases like 'I will', 'I'll take', or 'I can own that'. Everything else is treated as someone else's and stays in Notion only.
Setup inputs I should be asked for: my name and email (for owner matching), my Notion meetings database id and the property mapping for title/date/attendees, my Linear team id and default priority, and an optional list of meeting titles or keywords to skip entirely (for example 1:1s).
Integrations: Granola (poll trigger plus Get Note), AI Generation (Generate Completion), Notion (Create a Page), Linear (Create Issue).
Additional information
What does this prompt do?
- Watches Granola for new meeting notes and triggers the moment one is ready.
- Pulls the summary, attendees, and transcript, then extracts action items with owners and due dates, a short recap, and a list of open questions.
- Files a structured page in your Notion meetings database with the recap, attendees, date, and open questions.
- Opens Linear issues only for action items you personally committed to, with due dates and a link back to the Notion page.
- Leaves other attendees' commitments in the Notion recap so you do not spam other people's queues.
What do I need to use this?
- A Granola Business or Enterprise account with a personal API key from the desktop app.
- A Notion workspace with a meetings database shared with your General Input connection.
- A Linear workspace where you can create issues, with your own user identified so the agent can self-assign.
- An OpenAI-style sign-in is not required, AI Generation is built into General Input.
How can I customize it?
- Point the agent at any Notion database you use for meetings, and tell it which columns map to recap, attendees, date, and open questions.
- Change the rule for what counts as an action item you own, for example match your name, your email, or phrases like 'I will' and 'I'll take'.
- Pick the Linear team and default priority for new issues, or skip Linear entirely for certain meeting types like 1:1s.
- Adjust the tone and length of the recap paragraph, from one-line summary to a full readout.
Frequently asked questions
Will this create Linear issues for other people on the call?
What goes into the Notion page?
How does the agent know which action items are mine?
Does it work for meetings I did not personally take?
Can I use this without Linear?
Stop forgetting what you said you'd do after every meeting.
Connect Granola, Notion, and Linear once, and Geni files the recap and your own action items every time a new note lands.