A browser-first recorder. The tab holds the microphone, the server keeps the session, and whisper.cpp on your own machine does the transcription. The audio stays put.
The studio — every recording is a card carrying the opening words of its transcript
→ waiting for the browser to confirm the mic · recording
Only a real browser tab can reach a microphone, so recording has to happen there. But the session, the files and the transcript live on the dev server — which is what makes it one recorder two people can drive, instead of two recorders.
whisper.cpp does the whole transcription on your CPU. No API key, and it still works with the wifi off.
Press stop in the page and the agent sees it immediately. It works the other way round too.
Audio, transcript, subtitles and notes sit in one directory. You never need this tool to read your own files.
Whisper writes Simplified no matter what was spoken. Set the script and OpenCC converts it phrase by phrase — 软件 becomes 軟體, not 軟件 — every timestamp intact.
Point the agent at localhost:5274/mcp. Ask it to start recording before the meeting, stop and transcribe after, then write the summary next to the audio.
| start_recording | Press record. Returns once the browser confirms the mic is open. |
| stop_recording | Stop and finalize. Pass transcribe: true to run whisper too. |
| read_transcript | Timestamped Markdown, plain text, or timed segments. |
| search_transcripts | Search across every transcript, with millisecond offsets. |
| write_notes | Park a summary or action items beside the audio. |
| recorder_status | Is anything recording, and is a studio connected to record through. |
It refuses rather than pretend. Tab closed, microphone blocked — start_recording hands the agent a refusal that names the reason. Finding out after the meeting that nothing was recorded only has to happen once.
A finished meeting — and the summary the agent wrote into notes.md
Recording needs nothing else installed. Transcription wants whisper.cpp and ffmpeg — whichever is missing, doctor hands you the install command.
# studio at :5274, MCP endpoint at /mcp $ npx open-recording dev --mcp # optional — local transcription $ brew install whisper-cpp ffmpeg $ npx open-recording doctor ✓ ffmpeg ✓ whisper ✓ model ✓ script
Free and open source under the MIT license.
whisper.cpp does the whole transcription on your CPU. It works offline.