Webinar to content kit: clips, a recap and an unpublished blog draft
This recipe uses the official Fireflies and HubSpot MCP servers, and both work in Claude and ChatGPT. Steps that write, send or spend credits wait for your approval.
Who is this for?
Marketers who want a content kit from one webinar: the best quotes, a short recap, soundbite clips, and a blog draft that is not published. Fireflies can be swapped for Granola or Gong when you only need a read of the webinar. Only Fireflies creates soundbites, so the clip step stays on Fireflies. HubSpot can be swapped for Webflow if the draft should be a CMS item.
What do you get?
Quotes, a recap and a blog draft, nothing created yet. Sample output: every company and person in it is fictional.
Webinar: Late loads, early warnings. Fireflies meeting 'Fernhill webinar Oct 8', Oct 8. Summary, from Fireflies: three speakers on how an ops team hears about a late load before the customer calls. Quotes from the transcript of that meeting: 1. Guest, Dana Okafor, Larkspur Freightworks (fictional): "We used to find out a load was late when the customer did." 2. Guest, Sam Whitlock, Mossgate Labs (fictional): "A Monday recap is too slow if the truck is already late." 3. Host, Priya Raman, Fernhill Software (fictional): "The useful alert is the one that names the load." Left out of the result claims: quote 3. It is the host, not a customer. Also left out: a joke about coffee. Recap draft: Two guests said delay news arrives too late. Dana Okafor described finding out from the customer. Sam Whitlock said a Monday recap is too slow. The transcript states no percentage and no time saved, so the recap has no number. Soundbites (not created yet): quotes 1 and 2. Blog draft (not created yet): Title: Hear about a late load before your customer does Section 1 uses quote 1. Section 2 uses quote 2. No host line is written as a customer result. Nothing was clipped in Fireflies. Nothing was created or published in HubSpot. You publish the post yourself, later, in HubSpot.
How long does it take, and what does it cost?
Estimate About 25–40 minutes, most of it choosing quotes and reading the draft.
Assumptions: One webinar, one transcript, up to three soundbites, and one blog draft.
- Fireflies: Reads: one meeting lookup, its summary, and one transcript retrieval. Then one soundbite created per clip you approve, about three. No shares, renames or moves. Credit use not confirmed by Fireflies.
- HubSpot: One blog post created after you approve the copy. The recipe does not ask HubSpot to publish it. Credit use not confirmed by HubSpot.
Exact credit costs depend on your plan with each vendor. Check the tool pages before a large run.
Which MCP servers does it use?
Every server is confirmed in: ClaudeChatGPT
-
ClaudeChatGPTCursorRead + writeCredits not confirmed
https://api.fireflies.ai/mcp -
ClaudeChatGPTRead + writeCredits not confirmedNeeds admin or IT
https://mcp.hubspot.com
How do I set it up in a chat app?
Every server in this recipe is confirmed for Claude and ChatGPT. Connect each one, then paste the prompts below into one conversation.
- Connect Fireflies without code (Claude, ChatGPT)
- Connect HubSpot without code (Claude, ChatGPT)
Developer setup
Auth setup and mcp.json for Claude Code and Cursor
- Fireflies: Sign in with OAuth, or pass an API key as a Bearer token for headless use.
- HubSpot: Sign in with OAuth in your client (run
/mcpin Claude Code). Do it once interactively, and the client stores and refreshes the token.
Put this in .mcp.json (Claude Code, project root) or ~/.cursor/mcp.json (Cursor). Swap the example keys for your own, and don't commit real ones. Remove the // comment lines if your client requires strict JSON.
{
"mcpServers": {
"fireflies": {
"url": "https://api.fireflies.ai/mcp"
// headless alternative: "headers": { "Authorization": "Bearer YOUR_FIREFLIES_API_KEY" }
},
"hubspot": {
"url": "https://mcp.hubspot.com"
}
}
}
Step-by-step prompts
- Find my Fireflies meeting for the webinar {webinar_title}. Show the title, date and attendees, and the meeting summary. Don't change the meeting.
- Retrieve that meeting's transcript. List the best quotes for a recap: speaker, host or guest, the line, and the meeting title. Draft a short recap here from those lines and the summary. Flag any number that is not in the transcript or the summary. Don't create soundbites yet. I have not approved any clip.
- Show a clip list of the guest quotes worth keeping, with one line on why. Create a soundbite in Fireflies for each quote only after I approve it. Don't share, rename or move the meeting.
- Show the blog draft here, built from the quotes I kept and the recap. Include the title, the sections, and the transcript line each section relies on. Don't create it in HubSpot, and don't publish it, until I approve the copy.
- After I approve the copy, create the blog post in HubSpot and don't publish it. If creating the post would publish it, stop and leave the draft here as text. Tell me the post name so I can open it in HubSpot. Publishing stays a manual step for me.
Can I run it on a schedule? (optional)
- Run it by hand the day after the webinar, once Fireflies has the recording.
- Don't schedule the soundbite step or the blog step. Both wait for your approval, and you publish the post yourself.
- A rep can't connect HubSpot alone. A Super Admin has to approve the connector before the blog step will work. Do one manual run on a finished webinar first.
Where does this go wrong?
- A quote that is not in the transcript. Confirm the meeting title and date before you pull lines. Every quote needs the speaker and that meeting title, and it has to be a line from the transcript you retrieved. The summary is not a quote. If search misses the webinar, ask for that meeting's transcript directly. Fireflies' search and fetch tools are marked experimental.
- A number the speakers did not say. Recaps tend to add a percentage or a time saved. If the transcript and the summary do not state the number, delete it from the recap and from the blog draft.
- The host quoted as a customer. Mark each speaker as host or guest before a line goes into the recap. Keep host lines out of the result claims. A host describing the product is not a customer outcome.
- A blog post that goes live. HubSpot's tools create, edit and publish blog posts. The instruction is to create the post and not publish it. After it runs, open the post in HubSpot and confirm it is not live. If creating the post would publish it, stop and keep the draft as text. You publish it yourself later.
Gotchas
- In ChatGPT, Fireflies is used through Deep Research. The custom connector needs ChatGPT Plus, Team, or Enterprise. Claude's directory connector needs a paid Claude plan (Pro, Team, or Enterprise).
- Fireflies' search and fetch tools are marked experimental. If a search misses the webinar, ask for that meeting's transcript directly.
- Fireflies can share meetings with email addresses, revoke shared meeting access, rename meetings, and move meetings into channels/folders. It can also create soundbites (clips). This recipe only creates soundbites, and only after you approve each quote.
- A rep can't connect HubSpot alone. Non-admin users need a Super Admin to approve the connector first. HubSpot recommends setting the connector's Write tools to Needs Approval. With Always allow, edits may happen without asking. If you connected before write access was available, disconnect and reconnect to get write access.
- HubSpot creates, edits and publishes landing pages, website pages and blog posts. This recipe asks it to create the blog post and not to publish it. The listing does not describe a separate unpublished state, so you open the post and confirm it is not live. If creating it would publish it, stop. Publishing stays a manual step in HubSpot.
- Gong or Granola instead of Fireflies? Gong is read-only. No raw transcripts are returned, and private calls are excluded. It has no write actions, so it does not create soundbites. A Gong tech admin must first create an MCP server integration, and each question uses Gong credits based on the volume of calls and emails analyzed. Granola can read meeting transcripts and is read-only, with no write actions, so it does not create soundbites. Keep the clip step on Fireflies.
- Using Webflow instead? Webflow creates, updates, publishes and unpublishes CMS items, and it publishes the site to its domains. Create a CMS item only after you approve it, leave it unpublished, and don't publish the site. Only site owners/admins can authorize sites, so a marketer without that role can't connect it alone.
- Using Salesforce instead? This recipe does not read or edit CRM records. Salesforce creates, updates and deletes Salesforce records. It does not create blog posts. Keep the post in HubSpot. Salesforce needs Enterprise Edition or above (Developer Edition also works) and an admin-created External Client App. Every tool call counts against the org's daily Salesforce API request quota. ChatGPT requires developer mode.
Download
Get the prompts, guardrails and expected output as one Markdown file. Paste it into a Claude Project or ChatGPT project's instructions, or save it as CLAUDE.md for Claude Code.
Download webinar-content-kit.md
New recipe and breakage notes every week
Vendor sites: HubSpot. If we join an affiliate program, these links will be labeled as affiliate links.