freshcrate
Home > MCP Servers > vexa

vexa

Open-source meeting transcription API for Google Meet, Microsoft Teams & Zoom. Auto-join bots, real-time WebSocket transcripts, MCP server for AI agents. Self-host or use hosted SaaS.

Description

Open-source meeting transcription API for Google Meet, Microsoft Teams & Zoom. Auto-join bots, real-time WebSocket transcripts, MCP server for AI agents. Self-host or use hosted SaaS.

README

Vexa Logo

Vexa

Open-source meeting bot API & transcription API

meeting bots • real-time transcription • interactive bots • MCP server • self-hosted

Google Meet Google Meet     •     Microsoft Teams Microsoft Teams     •     Zoom Zoom

StarsLicenseDiscord What's newQuickstartAPIDocsRoadmapDiscord


Vexa is an open-source, self-hostable meeting bot API and meeting transcription API for Google Meet, Microsoft Teams, and Zoom. Alternative to Recall.ai, Otter.ai, and Fireflies.ai — self-host so meeting data never leaves your infrastructure, or use vexa.ai hosted.


Data sovereignty — self-host so meeting data never leaves your infrastructure

Cost — replace $20/seat SaaS with your own infrastructure

Embed in your product — multi-tenant meeting bot API with scoped tokens

AI agents — MCP server with 17 tools


Capabilities

Meeting bot API Send a bot to any meeting: auto-join, record, speak, chat, share screen. Open-source alternative to Recall.ai.
Meeting transcription API Real-time transcripts via REST API and WebSocket. Self-hosted alternative to Otter.ai and Fireflies.ai.
Real-time transcription Sub-second per-speaker transcripts during the call. 100+ languages via Whisper. WebSocket streaming.
Interactive bots Make bots speak, send/read chat, share screen content, and set avatar in live meetings.
Browser bots CDP + Playwright browser automation with persistent authenticated sessions via S3.
MCP server 17 meeting tools for Claude, Cursor, Windsurf. AI agents join calls, read transcripts, speak in meetings.
Multi-tenant Users, scoped API tokens, isolated containers. Deploy once, serve your team.
Dashboard Open-source Next.js web UI — meetings, transcripts, agent chat, browser sessions. Ready to use out of the box.
Self-hostable Run on your infra. Meeting data never leaves your infrastructure.

Every feature is a separate service. Pick what you need, skip what you don't. Self-host everything or use vexa.ai hosted.


Why Self-Host Meeting Transcription?

For regulated industries — banks, financial services, healthcare — meeting data can't leave your infrastructure. Self-hosting Vexa means zero external data transmission and full audit trail on your own infrastructure.

For cost-conscious teams — replace per-seat SaaS pricing. A team paying $17/seat/mo for meeting transcription can self-host Vexa and drop that to infrastructure cost.

For developers — embed a meeting bot API in your product. Multi-tenant, scoped API tokens, no per-user infrastructure.

Build meeting assistants like Otter.ai, Fireflies.ai, or Fathom — or build a meeting bot API like Recall.ai — self-hosted on your infrastructure.

  • Vexa (self-host) — your infra cost. Data never leaves your infrastructure. Meeting bot API, real-time transcription, interactive bots, MCP server. Open source, Apache 2.0. Google Meet, Teams, Zoom*.
  • Recall.ai — $0.50/hr. No self-hosting. Meeting bot API, real-time transcription. No MCP, limited interactive bots. Closed source. Meet, Teams, Zoom, Webex.
  • Otter.ai — $17-20/seat/mo. No self-hosting. No API. Limited real-time transcription. Closed source. Meet, Teams, Zoom.

* Zoom support is experimental

Or use vexa.ai hosted — get an API key and start sending bots immediately, no infrastructure needed.

Built for Data Sovereignty

Meeting data never leaves your infrastructure. Self-host for complete control. Modular architecture scales from edge devices to millions of users.

1. Hosted service At vexa.ai — get an API key and start sending bots. No infrastructure needed. Ready to integrate


2. Self-host with Vexa transcription Run Vexa yourself, use vexa.ai for transcription — ready to go, no GPU needed. Control with minimal DevOps — see deploy/ for setup guides.


3. Fully self-host Run everything including your own GPU transcription service. Meeting data never leaves your infrastructure — see deploy/ for setup guides.

What's new

v0.10 — full architecture refactor

  • Services refactored — runtime-api as infrastructure layer (container orchestration), meeting-api as data layer, agent-api as high-level intelligence layer. Clean separation of concerns.
  • Real-time pipeline moved into bots — transcription pipeline now runs inside bot containers, eliminating external dependencies
  • Agent API (experimental) — ephemeral containers for AI agents. See services/agent-api/.
  • Helm/K8s — production Kubernetes deployment with built images and global.imageTag support

v0.9

  • Zoom (experimental) — initial Zoom Meeting SDK support
  • Interactive Bots API — speak, chat, screen share, avatar controls during live meetings
  • MCP server — 17 tools for AI agents
  • Recordings — S3-compatible storage

See full release notes: https://github.com/Vexa-ai/vexa/releases


Quickstart

Self-host with Docker

On a fresh Linux machine (Ubuntu 24.04):

apt-get update && apt-get install -y make git curl
curl -fsSL https://get.docker.com | sh
git clone https://github.com/Vexa-ai/vexa.git && cd vexa

Then choose:

Command What you get Best for
make lite Single container, all services Quick evaluation, small teams
make all Full stack, each service separate Development, production

Both prompt for a transcription token on first run. Get one at staging.vexa.ai/dashboard/transcription, or self-host transcription with a GPU.

Guides: Vexa Lite | Docker Compose | Helm (K8s)

Hosted (no deployment needed)

Get your API key at vexa.ai/dashboard/api-keys and start sending bots immediately.

Meeting API — Send Bots, Get Transcripts

Send a bot, get real-time transcripts with per-speaker audio and interactive controls (speak, chat, share screen).

# Send a bot to Google Meet
curl -X POST "$API_BASE/bots" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: <API_KEY>" \
  -d '{"platform": "google_meet", "native_meeting_id": "abc-defg-hij"}'

# Get transcripts
curl -H "X-API-Key: <API_KEY>" \
  "$API_BASE/transcripts/google_meet/abc-defg-hij"

Works with Google Meet, Microsoft Teams, and Zoom. Set API_BASE to https://api.cloud.vexa.ai (hosted) or http://localhost:8056 (self-hosted).

For real-time WebSocket streaming, see the WebSocket guide. For full REST details, see the User API Guide.


Browser Bots — Persistent Browser Containers for Agents

Remote browser containers with CDP + Playwright access and persistent session storage via S3. Agents get a real browser that stays logged in across restarts — Google, Microsoft, or any web session.

  • CDP + Playwright — full browser automation via Chrome DevTools Protocol
  • Persistent sessions — authenticated browser state saved to S3, restored on next spin-up
  • VNC access — humans can observe and control the browser in real time alongside agents
  • On-demand containers — spin up in seconds, auto-reclaim when idle

See features/browser-session/ and features/remote-browser/ for details.


MCP Server — Meeting Tools for AI Agents

17 tools that let AI agents join meetings, read transcripts, speak, chat, and share screen. Works with Claude, Cursor, Windsurf, and any MCP-compatible client.

Your AI agent can join a meeting, listen to the conversation, and participate — all through MCP tool calls. See services/mcp/ for setup and tool reference.


Modular — Pick What You Need

Vexa is a toolkit, not a monolith. Every feature works independently. Use one or all — they compose when you need them to.

You're building... Features you need Skip the rest
Self-hosted Otter replacement transcription + multi-platform + webhooks agent runtime, scheduler, MCP
Meeting data pipeline transcription + webhooks + post-meeting speaking-bot, chat, agent runtime
AI meeting assistant product transcription + MCP + speaking-bot + chat remote-browser, scheduler
Meeting bot API (like Recall.ai) multi-platform + transcription + token-scoping agent runtime, workspaces

You don't pay complexity tax for features you don't use. Each service is a separate container. Don't need agents? Don't run agent-api. Don't need TTS? Don't run tts-service. Services communicate via REST and Redis, not tight coupling.


Roadmap

For the up-to-date roadmap and priorities, see GitHub Issues and Milestones. Issues are grouped by milestones to show what's coming next, in what order, and what's currently highest priority.

For discussion/support, join our Discord.

Architecture & Feature Status

Each service and feature has its own README with architecture, DoD table, and evidence-based confidence scores.


Contributing

We use GitHub Issues as our main feedback channel — triaged within 72 hours. Look for good-first-issue to get started. Join Discord to discuss ideas and get assigned.

License

Links

WebsiteDocsDiscordLinkedInX (@grankin_d)Meet Founder

Related: vexa-lite-deployVexa Dashboard

Release History

VersionChangesUrgencyDate
v0.10.2Small tuning patch on top of v0.10.1. ## Changes - **`perf(transcription-service)`** — two tuning knobs for the GPU transcription stack: - `VAD_MIN_SILENCE_DURATION_MS=80` on both worker pools. Halves the min-silence window the Silero VAD uses to split chunks (default ~160ms). More responsive segmentation for conversational audio; small CTranslate2 invocation bump, fine on the GPU tier. - nginx `client_max_body_size 50M → 500M`. The 50M cap was rejecting longer single-file uploads (~10–15 High4/19/2026
v0.9# v0.9 Release since v0.6 — 272 files changed, ~54k lines added. ## New platforms - **Zoom SDK integration** — native Zoom Meeting SDK bot with real-time transcription, speaker diarization, and C++ audio bridge (`services/vexa-bot/core/src/platforms/zoom/`) - **MS Teams full URL support** — enterprise deep links, v2 fragment format (`#/meet/<id>`), ZoomGov URLs, Meet nickname URLs ## Interactive bots New bot capabilities beyond passive transcription: - **Speak** — TTS playback into meetingsHigh4/8/2026

Dependencies & License Audit

Loading dependencies...

Similar Packages

nmap-mcp🔍 Enable AI-driven network security scanning with a production-ready Nmap MCP server supporting diverse tools, scan types, and timing templates.main@2026-04-21
noapi-google-search-mcp🔍 Enable local LLMs with real-time Google search, live feeds, OCR, and video insights using noapi-google-search-mcp server tools.main@2026-04-21
hybrid-orchestrator🤖 Implement hybrid human-AI orchestration patterns in Python to coordinate agents, manage sessions, and enable smooth AI-human handoffs.master@2026-04-21
aiA productive AI coworker that learns, self-improves, and ships work.main@2026-04-21
Advanced-AI-Agents🤖 Build advanced AI agents with a collection of production-ready applications using modern frameworks for single and multi-agent systems.main@2026-04-21