Minutes
minutes
A local-first MCP server for meeting memory: on-device recording and transcription into Markdown, searchable from Claude Code, Codex, Cursor and any MCP client
Medium risk
We rate an entry medium when the tool runs code, makes network calls or reads project files. Check what exactly it does before installing.
Why this level
- Records and stores audio and notes locally and reads those files
- The MCP server exposes meeting content to the agent, and with a cloud assistant the authorized context goes to the provider
Install
In your terminal, with SkillFoxx CLI
npx skillfoxx add mcp/minutesDetects the agents on your machine, checks the risk and pins the version.
Other ways to install
Run in a terminal
claude mcp add --transport stdio minutes -- npx -y minutes-mcp@0.26.3Or add to the file .mcp.json, in the project
{
"mcpServers": {
"minutes": {
"command": "npx",
"args": [
"-y",
"minutes-mcp@0.26.3"
]
}
}
}If the file already exists, add the server inside the mcpServers key.
The button opens the agent and offers to add the server. If nothing happens, copy the config below.
Add to the file ~/.cursor/mcp.json, for all projects
{
"mcpServers": {
"minutes": {
"command": "npx",
"args": [
"-y",
"minutes-mcp@0.26.3"
]
}
}
}If the file already exists, add the server inside the mcpServers key. For a single project, put the same block into .cursor/mcp.json.
The button opens the agent and offers to add the server. If nothing happens, copy the config below.
Run in a terminal
code --add-mcp '{"name":"minutes","type":"stdio","command":"npx","args":["-y","minutes-mcp@0.26.3"]}'Or add to the file .vscode/mcp.json, in the project
{
"servers": {
"minutes": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"minutes-mcp@0.26.3"
]
}
}
}If the file already exists, add the server inside the servers key.
Run in a terminal
codex mcp add minutes -- npx -y minutes-mcp@0.26.3Or add to the file ~/.codex/config.toml, for all projects
[mcp_servers.minutes]
command = "npx"
args = ["-y", "minutes-mcp@0.26.3"]If the file already exists, append the block to the end.
Add to the file ~/.gemini/settings.json, for all projects
{
"mcpServers": {
"minutes": {
"command": "npx",
"args": [
"-y",
"minutes-mcp@0.26.3"
]
}
}
}If the file already exists, add the server inside the mcpServers key.
Add to the file ~/.config/devin/mcp_config.json, for all projects
{
"mcpServers": {
"minutes": {
"command": "npx",
"args": [
"-y",
"minutes-mcp@0.26.3"
]
}
}
}If the file already exists, add the server inside the mcpServers key. Legacy Cascade keeps the MCP config in ~/.codeium/windsurf/mcp_config.json.
Formerly Windsurf.
Add to the file cline_mcp_settings.json, for all projects
{
"mcpServers": {
"minutes": {
"command": "npx",
"args": [
"-y",
"minutes-mcp@0.26.3"
]
}
}
}If the file already exists, add the server inside the mcpServers key. Open the settings file in Cline: MCP Servers tab, Configure MCP Servers.
Add to the file .roo/mcp.json, in the project
{
"mcpServers": {
"minutes": {
"command": "npx",
"args": [
"-y",
"minutes-mcp@0.26.3"
]
}
}
}If the file already exists, add the server inside the mcpServers key.
A fork of Roo Code, same .roo folders.
Add to the file opencode.json, in the project
{
"mcp": {
"minutes": {
"type": "local",
"command": [
"npx",
"-y",
"minutes-mcp@0.26.3"
]
}
}
}If the file already exists, add the server inside the mcp key.
Add to the file ~/.config/zed/settings.json, for all projects
{
"context_servers": {
"minutes": {
"command": "npx",
"args": [
"-y",
"minutes-mcp@0.26.3"
]
}
}
}If the file already exists, add the server inside the context_servers key.
Add to the file .codeassistant/mcp.json, in the project
{
"mcpServers": {
"minutes": {
"command": "npx",
"args": [
"-y",
"minutes-mcp@0.26.3"
]
}
}
}If the file already exists, add the server inside the mcpServers key.
Add the MCP server: claude mcp add minutes -- npx -y minutes-mcp. To test without a mic, seed demo meetings: minutes demo --full, then ask about them.
Other ways from the author
claude mcp add minutes -- npx -y minutes-mcpAdds the MCP server to Claude Code. For other clients run npx minutes-mcp.
This is third-party code. Review the repository files before installing.
What it does
Minutes records and transcribes meetings, calls, voice memos and dictation right on the device and stores them as Markdown files with YAML frontmatter in the user's directory. The MCP server exposes those meetings to the agent: Claude Code, Codex, Cursor and any other MCP client can search the history and call the server's tools. Besides the server it ships a CLI with a set of commands, a desktop app with menu-bar capture and a Claude Code plugin with ready skills. Capture, transcription and storage run locally, and only the meeting context you authorize is sent to a cloud assistant or summarizer. The files stay yours and open in Obsidian, grep and any Markdown tool.
Who it is for. For people who want a local, fully owned meeting memory that the agent can reach over MCP.
Good fit when
- You want the agent to answer from the history of your meetings and calls
- You need local transcription of meetings and voice memos without sending audio to the cloud
- You want your own Markdown notes archive that opens in Obsidian and grep
Not a fit when
- You need a cloud service with a shared workspace and team sync
- You do not use an MCP client or agent and do not need a local archive
Example request
What did we decide about monthly billing in past meetings, and did that decision stick?Limitations
Capture, transcription and storage are local, but if you pick a cloud assistant or summarizer, the authorized meeting context goes to that provider, whose availability from Russia may need a VPN. Installation needs Homebrew, Cargo or Node depending on the method. If Homebrew reports an untrusted tap, run brew trust silverstein/tap once. The MCP server exposes only the meetings you have allowed.
How to disable. Remove the server from the agent with claude mcp remove minutes, or delete it from the MCP client config. The app and CLI uninstall via brew uninstall or cargo uninstall.
MCP
- Transport
- stdio
- Authentication
- not required
Security check
- Records and stores audio and notes locally and reads those files
- The MCP server exposes meeting content to the agent, and with a cloud assistant the authorized context goes to the provider
README in short
The README describes Minutes as a free local-first alternative to Granola and Otter: recording and transcription run on the device and meetings are stored as Markdown in your directory. Four surfaces give agents access: the desktop app, a CLI, an MCP server and a Claude Code plugin, and any MCP client can search the meetings. Install is via Homebrew or Cargo, and the MCP server is added separately through npx minutes-mcp. Privacy has its own section: audio stays on the machine and only authorized text leaves it. MIT licensed with no paid tiers in this repository.
FAQ
Where are meetings stored?
Locally, as Markdown files with YAML frontmatter in your directory. They open in Obsidian, grep and any Markdown tool.
Can I try it without recording from a mic?
Yes. The minutes demo --full command seeds sample meetings, and minutes demo --clean removes them.
Related
A self-hosted knowledge base with block-level references and a built-in MCP server for connecting AI agents to your notes
A CLI for every Google Workspace API with JSON output and agent skills: Drive, Gmail, Calendar, Sheets and more
Local search over Markdown notes, docs and meeting transcripts: keywords, semantic search and reranking, with an MCP server
A task manager for AI-driven development: breaks a PRD into dependent tasks and guides the agent through them via MCP or CLI