CLI
Written By Anton
Last updated 19 days ago
The meetmic command-line tool drives MeetMic from the terminal — list models, transcribe a file, read a transcript, export subtitles, or run MeetMic as an MCP server for AI agents. Everything happens locally against the app on your Mac.
The CLI requires a MeetMic Pro license, and ships with the direct-download build only (not the Mac App Store version).
Installing the CLI
Open Settings → Command Line
Click Install tool
Choose a folder on your PATH. The panel starts at
/usr/local/bin, and you can create a folder such as~/.local/binfrom there if that one isn't writable.
Check it worked:
meetmic --versionMeetMic installs a symlink to the binary inside the app bundle rather than a copy, so the CLI stays in lockstep with the app - including across automatic updates. Moving or renaming MeetMic breaks the link; the app re-points it at the next launch, and the Command Line pane offers Repair when it can't.
If macOS won't let MeetMic write to the folder you picked, the pane shows a command you can run yourself:
sudo ln -sf "/Applications/MeetMic.app/Contents/MacOS/meetmic" /usr/local/bin/meetmicQuick start
meetmic transcribe ~/Recordings/standup.m4aThat transcribes with the active model and saves the result to History. The transcript goes to stdout; the progress bar and any errors go to stderr, so pipes stay clean:
meetmic transcribe interview.mp3 | pbcopyCommands at a glance
Running meetmic with no arguments prints this list. meetmic <command> --help gives the full options for any command.
Working with models
meetmic stt list ID NAME TYPE PROVIDER
* large-v3-turbo Large V3 Turbo on-device openAI
parakeet-tdt-0.6b-v3 Parakeet TDT 0.6b v3 on-device nvidia
whisper-1 Whisper (OpenAI API) cloud openAICloud* marks the active model. Only models you can actually use are listed — downloaded ones and cloud ones. Add --all to see the rest; those rows are marked x.
Switch the active model:
meetmic stt select parakeet-tdt-0.6b-v3Only downloaded or cloud models can be selected. Download anything else in MeetMic first.
The LLM configurations used for summaries and other AI features list the same way:
meetmic llm list NAME MODEL TYPE PROVIDER
* GPT-4o gpt-4o cloud OpenAI
Qwen3 4B qwen3-4b local MLXTranscribing files
meetmic transcribe meeting.m4a
meetmic transcribe meeting.m4a --model large-v3-turbo
meetmic transcribe voicenote.wav --no-persist
meetmic transcribe meeting.m4a --jsonThere is no built-in batch flag. A shell loop covers it:
for f in ~/Recordings/*.m4a; do meetmic transcribe "$f"; doneHistory, transcripts, and summaries
meetmic history --limit 10ID DATE DURATION NAME
B2DDF22B-C0B2-4A42-83D4-D1D4A34EC362 2026-02-23 15:22 00:36 Recording 2026-02-23Exporting
meetmic export B2DDF22B-C0B2-4A42-83D4-D1D4A34EC362 --format srt -o subtitles.srtFormats: txt (the default), srt, vtt, and json. Without -o the export goes to stdout.
Output and piping
In a terminal you get aligned tables. Piped or redirected, the same commands switch to tab-separated lines, so cut, awk, and grep work as expected:
meetmic history | cut -f1,4Add --json when you'd rather have structured output - status, stt list, llm list, history, and transcribe all support it.
Driving MeetMic from an AI agent
meetmic mcp runs MeetMic as an MCP server over stdio, so Claude Code, Claude Desktop, Cursor, and other MCP clients can use it directly.
{
"mcpServers": {
"meetmic": {
"command": "meetmic",
"args": ["mcp"]
}
}
}In Claude Code it's one line:
claude mcp add meetmic -- meetmic mcpThe tools exposed are transcribe_file, list_transcriptions, read_transcription, get_summary, list_summaries, list_stt_models, select_stt_model, and list_llm_models.
The server answers initialize and tools/list straight away; MeetMic itself is only launched on the first tool call.
Handy one-liners
# Transcribe and copy the result to the clipboard
meetmic transcribe standup.m4a | pbcopy
# Read back the most recent transcript
meetmic transcript "$(meetmic history --limit 1 | cut -f1)"
# Subtitles for everything recorded today
meetmic history | grep "$(date +%F)" | cut -f1 | while read id; do
meetmic export "$id" --format srt -o "$id.srt"
done
# Hand a transcript to your own tooling
meetmic transcript B2DDF22B-C0B2-4A42-83D4-D1D4A34EC362 | your-summarizerTroubleshooting
Exit codes: 0 success, 1 request or API error, 2 couldn't reach the app, 3 Pro required.
Uninstalling
Settings → Command Line → Uninstall tool. That removes the symlink; nothing else is left behind.