MCP Hub
Back to servers

Meeting Chief Lite

Automatically synchronizes meeting transcripts from Otter.ai to a local SQLite database for easy browsing and management. It enables semantic and keyword-based search across meeting history through integrated MCP tools for Claude and Cursor.

Updated
Feb 4, 2026

Meeting Chief Lite

Minimal meeting transcript sync and search MCP. Downloads meetings from Otter.ai, stores them in SQLite, and provides semantic search via MCP tools.

Features

  • Otter.ai Sync: Download meeting transcripts automatically
  • Semantic Search: Find relevant transcript chunks using embeddings
  • Keyword Search: Fallback for exact text matching
  • MCP Tools: 3 focused tools for Claude/Cursor integration

Tools

ToolDescription
meetingsList, get, and browse meeting transcripts
searchSemantic and keyword search across transcripts
statusSystem health, sync status, and management

Quick Start

1. Configure Environment

cp .env.example .env
# Edit .env with your credentials:
# - OTTER_EMAIL
# - OTTER_PASSWORD
# - OPENROUTER_API_KEY

2. Run with Docker

# Build and run
docker compose up -d

# Or run directly
docker run -it \
  -e OTTER_EMAIL=your@email.com \
  -e OTTER_PASSWORD=yourpassword \
  -e OPENROUTER_API_KEY=sk-or-v1-xxx \
  -v meeting-chief-data:/data \
  ghcr.io/smcdonnell7/meeting-chief-lite

3. Configure MCP Client

Cursor (~/.cursor/mcp.json):

{
  "mcpServers": {
    "meeting-chief-lite": {
      "command": "docker",
      "args": ["run", "-i", "--rm",
        "-e", "OTTER_EMAIL",
        "-e", "OTTER_PASSWORD", 
        "-e", "OPENROUTER_API_KEY",
        "-v", "meeting-chief-data:/data",
        "ghcr.io/smcdonnell7/meeting-chief-lite"
      ]
    }
  }
}

Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "meeting-chief-lite": {
      "command": "docker",
      "args": ["run", "-i", "--rm",
        "-e", "OTTER_EMAIL=your@email.com",
        "-e", "OTTER_PASSWORD=yourpassword",
        "-e", "OPENROUTER_API_KEY=sk-or-v1-xxx",
        "-v", "meeting-chief-data:/data",
        "ghcr.io/smcdonnell7/meeting-chief-lite"
      ]
    }
  }
}

Usage Examples

# List recent meetings
meetings operation:list limit:10

# Get specific meeting
meetings operation:get id:meeting_123

# Search transcripts
search query:"API migration" mode:semantic

# Search with date filter
search query:"budget" after:2026-01-01

# Check system status
status operation:health

# Sync from Otter.ai
status operation:run_sync sync_days:30

# Generate embeddings for new meetings
status operation:generate_embeddings

Database

SQLite database with 7 tables:

  • meetings - Meeting metadata and transcripts
  • transcript_chunks - Parsed transcript segments
  • transcript_vectors - Embeddings for semantic search
  • embedding_jobs - Embedding generation queue
  • sync_runs - Sync audit log
  • speakers - People roster
  • app_settings - Configuration

Development

# Install dependencies
npm install

# Build
npm run build

# Run locally
npm start

License

MIT

Reviews

No reviews yet

Sign in to write a review