Zum Inhalt springen

MCP Server / 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.

1,869von @Vexa-aiApache-2.0GitHub →

Transport

sse

Tools (1)

Command

What you get

Dokumentation


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.

Links

WebsiteDocsDiscordLinkedInX (@grankin_d)Meet Founder

Related: vexa-lite-deployVexa Dashboard