Mac · Free · macOS 15+

Every call, written down.

Simple Meeting Recorder records both sides of a call and transcribes it on your Mac. Your audio never leaves it.

Transcribed on-device Remembers voices Action items with quotes No account

The tour. 41 seconds, no sound. Real app, scripted meetings.

Recording

It asks when the call starts.

When Teams or Webex starts a call, a small card offers to record. Click Record and it lives in the menu bar until the call ends.

  • Never in your screen share — the card and the timer stay off it
  • Offers to stop when the call ends
  • Any other app — start from the menu bar
Settings, General: microphone and system audio allowed; Live Transcription on, High-Accuracy Live Transcription off, Detect Meetings on.
Detection reads whether the mic is in use. It doesn't listen to notice a call.

Both sides

Your mic is Me. Everyone else is Them.

Your microphone and your Mac's system audio are recorded as two separate files and transcribed separately, so you never get mixed up with the person you're talking to.

While you talk

Live transcript

A streaming model on the Neural Engine writes turns as they happen, in the menu-bar app's Meetings window.

When you stop

Polished transcript

A larger offline model re-reads both files, adds punctuation and numbers, and splits remote voices into speakers.

~/Recordings/meeting-2026-10-23-093000/
├─ me.m4a          your microphone
├─ them.m4a        system audio
├─ mix.m4a         both
└─ transcript.txt  plain text

Plain files

One folder per meeting

No database and no export step. Back it up, grep it, or delete the folder and it's gone.

Voices

Name a voice once.

Click “Speaker 1”, pick who it is, and that voice is labeled in every meeting after it, live and in the polished pass.

  • Not Marcus? One click puts it back
  • People in Settings lists every voice you've named
Who is this? popover on Marcus in a transcript, listing Karen, Eddy, Moira and Priya, with Not Marcus and Clear Name.
Who is this? Pick a name or type a new one.

Action items

Every to-do, with the line it came from.

One click pulls out who agreed to what and by when. Each item quotes the transcript, and an item whose quote isn't actually in the meeting is flagged so you can check it.

OwnerDue dateQuoteSend to Clientry
Action Items for Q4 launch sync: Add an onboarding explanation screen (Priya, Oct 28), Update and share the pricing page draft (Marcus, Oct 30), Write and share the release notes (Me, Oct 26), each with its quote.
Five items from a two-minute call. The Me filter shows only yours.

Ask

Ask the meeting.

A chat panel sits next to every transcript. Ask for a summary, the decisions, or the thing you half remember someone saying.

  • Your choice of model — a local server like LM Studio or Ollama, OpenAI, or Claude
  • Nothing is sent until you ask, and only to the endpoint you set
Chat panel: 'What did Marcus commit to, and by when?' Answer: Marcus committed to update the pricing page draft and send it around by Friday, and offered to add the two Bluetooth headset bugs to the known-issues doc.
“What did Marcus commit to, and by when?”

Tags

Tags that suggest themselves.

Suggest Tags ranks the tags you already use by how much a meeting looks like the ones that carry them: same people, same client, same weekly slot.

  • AI picks show their evidence — a quote from the transcript
  • Nothing saved until you hit Save
  • Review Tag Suggestions works through the whole library
Edit Meeting sheet for Northwind kickoff with suggested tags northwind and customer, and the AI's quote: Thanks for setting this up, we're excited to try it.
#northwind and #customer, suggested for an untagged call.

Agent API

Your agent can read your meetings.

Claude Code and other agents can list, filter and search your meetings and read transcripts, over MCP (works even when the app is closed) or a local REST server you turn on in Settings. It only listens on 127.0.0.1.

list_meetingsget_meetingsearch_transcriptsread_transcriptlist_tagsset_tags
# Settings → Agent API has this line with your path filled in
claude mcp add smr -- ~/Applications/SimpleMeetingRecorder.app/Contents/MacOS/SimpleMeetingRecorder --mcp
✓ then ask Claude: “what did we decide about pricing last week?”

Three short demos.

Each one is the real app on a Mac. The meetings in them are scripted calls read by macOS voices.

Action items

From “I'll have that by Wednesday” to a to-do.

Voices

Name someone once.

Ask, tag, find

Chat, tag suggestions, search.

Lights out.

Built from standard macOS controls, so it follows your Mac into dark mode.

Dark mode transcript of Design review: settings window, with Moira and Eddy.
Three people, two remote
Dark mode transcript of Northwind onboarding call with Karen.
Customer call
Dark mode action items sheet.
Action items

Also in the app.

Speakers

Echo cancellation

On laptop speakers, the other side's voice no longer shows up as a second “Me”. Auto turns it off for headphones.

Redo

Reprocess any meeting

Run the polish pass again on an old meeting. A failed pass never blanks the transcript you have.

Playback

Play from any line

Click a timestamp to hear that moment. Space plays and pauses; the line being played stays highlighted.

Updates

Signed and up to date

Developer ID signed, notarized by Apple, and updated in place with Sparkle.

Free for Mac.

Apple silicon Mac with macOS 15 or later. macOS asks for Microphone and System Audio Recording on your first recording. The transcription models download once on first run; after that it works offline.

$ brew install --cask sooth/tap/simple-meeting-recorder

version 1.19.0 · 13 MB zip · notarized · no account

Download for Mac Unzip and open it. It offers to move itself to ~/Applications.
Work network blocking it? Get it from GitHub.

Screenshots show the real app. The meetings in them are scripted calls read by macOS voices.