The meeting notetaker you host yourself.

Minutd joins your Google Meet and Microsoft Teams calls, records them, and writes a transcript that knows who said what. It runs on your server, with your keys.

  • Open source AGPL-3.0, read every line
  • Self-hosted Docker Compose on your own server
  • Bring your own keys or run transcription locally with none
  • No telemetry nothing phones home, no accounts
Minutd meeting page: audio player with a speaker timeline, and a transcript with every line labelled by speaker.

Demo meeting, running on Minutd

Joins

  • Google Meet
  • Microsoft Teams

Transcribes

  • faster-whisper (local)
  • OpenAI
  • Groq
  • Deepgram
  • AssemblyAI

Summarises

  • Ollama
  • OpenRouter
  • DeepSeek
  • Anthropic
  • any OpenAI-compatible API

Every line has a name on it.

The participant list and the active speaker are read from the meeting page about four times a second, then matched to the transcript by timestamp. Segments carry real names, not "Speaker 2".

Transcript with the playhead on a line from Jonas, the speaker timeline above it and talk time per speaker. A B C
  1. A

    The timeline is the scrubber. One lane per speaker, so you see who dominated and where the quiet stretches were. Click anywhere to jump.

  2. B

    Click a line, hear it. Every segment seeks the audio to where it was said, and the page follows along as it plays.

  3. C

    Take it with you. Download Markdown, JSON or the audio. Delete the audio after a set number of days and keep the text.

Pick your own engine, or run none.

Local faster-whisper needs no key and no account. Or use OpenAI, Groq, Deepgram or AssemblyAI with a key you hold. Summaries are off by default: point them at Ollama, OpenRouter, DeepSeek, any OpenAI-compatible endpoint or Anthropic, and edit the prompts.

Keys are encrypted with a secret that only your server holds. Test a provider from the settings page before you rely on it.

Provider docs
Minutd settings page: transcription provider selector with the fields for the chosen provider and a Test button.

Joins on its own

Reads your Google and Outlook calendars and joins at start time. Set a rule per calendar.

[email protected]   external guests only
[email protected]   every meeting
[email protected]       organiser only
[email protected]   never

Honest about failure

Teams tenants can block anonymous guests, and Meet hosts have to admit the bot. Minutd shows the reason in the meeting list instead of failing quietly.

Meeting list with one failed meeting and the reason it failed shown underneath.

One place for everything

One Postgres and one volume, or S3-compatible storage. Nothing else to keep in sync.

data/
  meetings/
    0f7d73e0/merged.opus   640 KB
    0f7d73e0/transcript.md
postgres: meetings, speakers, segments

What happens to a meeting

  1. any time

    Discover

    Calendar sync finds events with a Meet or Teams link. Or you paste one.

  2. -1:00

    Schedule

    A join job is queued for one minute before the start, if your rules allow it.

  3. 0:00

    Join

    The bot opens the link as a guest, mic and camera off, and waits in the lobby to be admitted.

  4. meeting

    Record

    Audio is saved as Opus segments while speakers and participants are logged with timestamps.

  5. end

    Leave

    It leaves when it is alone, when the host removes it, or at the maximum duration.

  6. +1:00

    Process

    Audio is merged and transcribed, speakers are aligned, and a summary runs if you set one up.

Against the hosted notetakers.

Fireflies and Otter are good products with more platforms and no setup. The difference is where the recording lives and who holds the keys.

Minutd compared with Fireflies and Otter
Feature Minutd Fireflies Otter
Where it runs Your server Their cloud Their cloud
Your own AI keys Yes, or fully local No No
Source code AGPL-3.0, on GitHub Closed Closed
Price Free, open source Free tier, paid plans per seat per month Free tier, paid plans per seat per month
Where your audio goes Your storage, plus the provider you pick Their servers Their servers
Meeting platforms Google Meet, Microsoft Teams Zoom, Meet, Teams and more Zoom, Meet, Teams
Setup You run and update it None, it is hosted None, it is hosted

Compared on 20 October 2026 from each product's public site. Plans change, so check theirs before you decide.

Three commands.

Minutd runs as a handful of containers. You need Docker with Compose, a machine with room for the meetings you want to record at once, and one secret value that encrypts stored keys.

Images are not published yet. Until the first release, build from source as described in CONTRIBUTING.md. The getting started guide covers the setup wizard.

Terminal
$ curl -O \
    https://raw.githubusercontent.com/dennisklappe/minutd/main/compose.yaml
$ export MINUTD_SECRET="$(openssl rand -hex 32)"
$ docker compose up -d
Containers
ContainerRole
webAPI and UI: setup wizard, settings, meeting list and detail pages.
workerCalendar sync, scheduling, transcription and summary jobs. No browser.
botChromium with Playwright, one browser context per meeting.
dbPostgres. The job queue lives here too, so there is no Redis.
whisperOptional faster-whisper service, only in the local image variant.

Questions

Does it work with Zoom?

No. Version 1 covers Google Meet and Microsoft Teams. Zoom and Webex are not planned for v1.

Is it ready to use?

Not yet. Minutd is pre-release: there is no tagged version and no published image. The status page lists what exists and what is next.

Does it send data anywhere?

Only where you point it. Audio and transcripts go to the transcription or summary provider you configure, or nowhere if you use local transcription and no summary. Minutd itself has no telemetry.

Will the other participants know?

Yes. The bot joins under its own name and can post a message in the meeting chat. You are responsible for the consent rules that apply to your meetings, and the docs say what to look at.

What does it cost to run?

Plan for about 1 vCPU and 1.5 GB of RAM for each meeting recorded at the same time, plus a small base for the web, worker and database containers. There is a setting to cap concurrency.

Do I need my own Google and Microsoft apps?

Yes. Calendar access goes through an OAuth client and an Azure app registration that you create. The docs walk through both step by step.

Is there a paid version?

Nothing. Minutd is free and open source under the AGPL-3.0, with no paid tier. The bot adds a short notice mentioning minutd.com to its join message in the meeting chat, and you can edit or remove that text in the settings.

Your meetings, your server.

Open source, pre-release, and honest about both.