SkillAgentSearch skills...

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.

Install / Use

claude mcp add Vexa-ai -- npx -y github:Vexa-ai/vexa

If the server publishes to npm under a different name, use that package instead β€” check the repo README.

About this skill
πŸ”Œ

MCP Server

Model Context Protocol server

Quality Score

95/100

Supported Platforms

Claude Code
Claude Desktop
OpenAI Codex

Our assessment of vexa

vexa scores 95/100 on our quality scale, 258th of 4,591 Development & Engineering skills we index (top 6%).

Its MCP Server is 26 KB long, well organised into 21 sections with 8 code examples: a thorough specification that gives an agent plenty to work with.

With 2,900 GitHub stars, it is one of the more widely adopted skills in the catalogue.

Substance
30/30
Structure
20/20
Description
15/15
Adoption
15/20
Freshness
15/15

Maintenance, license and trust

  • The repository was last updated today, so vexa is actively maintained.
  • Our last check on 2026-10-17 found the source still online.
  • It is released under the Apache-2.0 license, a permissive license that allows use, modification and commercial use with attribution.
  • Its trust signals score 100/100, with no cautions. These come from repository metadata, not a code audit β€” read the skill file before letting an agent act on it.

Safety scan

No issues found

Our scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. An AI review of the same text found nothing harmful.

AI review by kimi-k2.7-code on 2026-09-24. Automated pattern scan on 2026-09-24. It catches known dangerous patterns, not every risk β€” read a skill before letting an agent act on it.

vexa compared with similar skills

All 4 of these similar skills score higher than vexa; compare them before choosing.

SkillScoreStarsUpdatedFormat
vexa (this skill)by Vexa-ai952.9ktodayMCP Server
Agent-Reachby Panniantong100100.6k1d agoCLAUDE.md
taste-skillby Leonxlnx100100.5k1d agoCLAUDE.md
headroomby headroomlabs-ai10077.2ktodayCLAUDE.md
CowAgentby zhayujie10047.5ktodayCLAUDE.md

Frequently asked questions

How do I install vexa?
Run claude mcp add Vexa-ai -- npx -y github:Vexa-ai/vexa. The install tabs above show the steps for each supported agent.
Which AI agents does vexa work with?
It is written for Claude Code, Claude Desktop and OpenAI Codex, as a MCP Server file. Other agents that read the same format can often use it too.
Is vexa safe to use?
Our scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. An AI review of the same text found nothing harmful. It is Apache-2.0-licensed and scores 100/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
Is vexa still maintained?
The repository was last updated today, so vexa is actively maintained.
<div align="center"> <img src="assets/logodark.svg" alt="Vexa logo" width="72"/>

Vexa

Open-source meeting bots and real-time transcription β€” cloud or fully self-hosted.

A bot joins your Google Meet, Microsoft Teams, and Zoom calls and streams speaker-attributed transcripts in real time β€” through our API or one you host β€” then feeds sandboxed agents that build a Markdown knowledge base your team owns. Apache-2.0, air-gap-ready. (Jitsi: join + capture offline-proven, live validation pending β€” #883.)

License: Apache 2.0 Version Deploy Discord

vexa.ai runs Vexa 0.12 for meeting bots and transcription. Sandboxed knowledge agents are self-hosted only β€” self-host Vexa to run the full stack.

</div>

Connect your agent Β· Get an API key Β· Talk to the founder

Why Vexa

Every meeting-AI tool you can buy sends your conversations to their cloud and rents you access back. Vexa inverts that: run the stack yourself, point it at your own models, own what your meetings become.

No one else has all three:

  1. Vexa is in the meeting. A real bot joins Meet, Teams and Zoom β€” Jitsi offline-proven, live validation pending β€” and streams speaker-attributed transcripts live. That bot fleet is the genuinely hard part β€” every "chat with your docs" tool starts after a transcript exists. Vexa produces it.

  2. Your knowledge is files you own. Meetings compile into Markdown in a git repo β€” portable, diffable, greppable. Knowledge as code.

  3. Agents work it, safely. Sandboxed coding agents read and write that repo like developers β€” isolated ephemeral containers, no egress, thousands in parallel, on Docker or your Kubernetes.

Only here for the transcription API? It's a complete standalone product β€” send a bot, read the stream, ignore the agent lane entirely.


⚑ Quickstart

Just want a bot in a meeting? Use the hosted service β€” no install. Sign in at vexa.ai/signin, copy your key from your account page, and send a bot:

curl -X POST "https://api.cloud.vexa.ai/bots" \
  -H "X-API-Key: $API_KEY" -H "Content-Type: application/json" \
  -d '{"platform":"google_meet","native_meeting_id":"abc-defg-hij","bot_name":"Vexa"}'

New accounts get $2 of free bot credit, no card required β€” about 6 hours of bot time at $0.30/hr (pricing). More calls: Send a bot.

Or self-host the whole stack

That is also how you get the agent plane, which is not part of the hosted service. Self-host on one host, then explore it in the Terminal or drive it over the API. Linux (Ubuntu 24.04) is the production target; a Mac with Docker Desktop works fine for a local evaluation β€” everything runs in containers either way.

Prerequisites β€” make, Docker engine β‰₯ v26 (make all checks), and transcription: a free token at vexa.ai/account, or self-host the (GPU) transcription unit for a fully air-gapped setup. By default POST /bots requires STT and answers 503 when it is missing (make all warns when the credentials block in .env is empty). Capture-only is an explicit opt-out: {"transcribe_enabled": false} on the spawn (or set TRANSCRIBE_ENABLED=false for the deployment).

Build machine: make all pulls the published, release-validated images β€” no build, so a modest box is fine. make lite (the single-container all-in-one image) is lighter still. Building from this checkout instead (make dev, for contributors) wants 8 vCPUs and 16 GB RAM.

git clone https://github.com/Vexa-ai/vexa.git && cd vexa
make all      # full Docker Compose stack β€” seeds .env, pulls the images (bot included),
              # prints your API key + URLs. Contributors: `make dev` builds from this checkout.

When make all finishes it prints your key and URLs:

  Terminal UI : http://localhost:13000     # the web workbench
  API gateway : http://localhost:18056     # the API
  API key     : vxa_…

Explore in the Terminal (the fast path)

The Terminal is the way to see what Vexa can do. Open http://localhost:13000 β€” you're already signed in to a self-host account. From the workbench you can, with no curl:

  • Send a bot β€” paste a Meet / Zoom / Teams / Jitsi URL; a bot joins as a participant.
  • Watch the transcript stream in live, speaker-attributed, draft-then-confirmed.
  • Chat with your workspace β€” ask an agent that has every captured meeting as context, and watch it commit what you decide.

Or drive it over the API

export API_KEY=vxa_...
export API_BASE=http://localhost:18056

# WIN 1 β€” send a bot into a live call, then read the transcript as it streams
curl -X POST "$API_BASE/bots" \
  -H "X-API-Key: $API_KEY" -H "Content-Type: application/json" \
  -d '{"platform":"google_meet","native_meeting_id":"abc-defg-hij","bot_name":"Vexa"}'

curl -H "X-API-Key: $API_KEY" "$API_BASE/transcripts/google_meet/abc-defg-hij"

# WIN 2 β€” ask an agent that has your whole workspace as context (answer streams back as SSE)
curl -N -X POST "$API_BASE/agent/chat" \
  -H "X-API-Key: $API_KEY" -H "Content-Type: application/json" \
  -d '{"prompt":"What did we decide in my last meeting?"}'

platform is google_meet Β· teams Β· zoom Β· jitsi; native_meeting_id is the code from the join URL. The agent reply streams as Server-Sent Events β€” message-delta frames carry the text, commit frames mark anything it recorded into your workspace.


🧩 How it works

One gateway, two domains β€” Meetings (capture) and Agents (work the knowledge) β€” both running on the same runtime: the engine that spawns every bot and every agent in its own sandboxed container.

<div align="center"> <img src="assets/architecture.svg" width="840" alt="One API gateway routes to two domains β€” Meetings and Agents β€” both running on one runtime that spawns each bot and agent in its own sandboxed container on Docker, Kubernetes, or Process."> </div>

A bot and an agent are the same runtime.v1 workload β€” isolated, ephemeral, reaped on idle β€” so the machinery already proven by thousands of meeting bots is exactly what runs your agents. Every arrow stays inside your network.


βš™οΈ The agentic runtime

A CLI coding agent is just a process on Linux. The runtime makes that a multi-tenant, sandboxed execution layer safe to point at real business data β€” the same engine that already spawns Vexa's meeting bots in production.

  • Isolated. Every dispatch gets its own container: no egress except brokered tools, and only its granted workspaces exist in its filesystem β€” enforced by the substrate, not by the agent. Agents never run in the control plane.
  • Ephemeral. A container lives while it works and is reaped on idle; continuity is a session file in the workspace. Sub-second starts, thousands in parallel.
  • Orchestration-agnostic. One runtime.v1 lifecycle, pluggable substrate β€” the same dispatch runs identically across:

| Backend (RUNTIME_BACKEND) | A workload is… | State | |---|---|---| | docker (default) | its own container via the Docker socket β€” brought up with make all | βœ… Shipped (open core) | | process | a child process, no Docker socket required | βœ… Available | | k8s | a bare Pod (kubectl run --restart=Never), scheduled across a cluster | βœ… Lifecycle + per-mount workspace isolation; Helm chart in deploy/helm |

Same control plane, same worker β€” only how the container is created changes. One laptop to a Kubernetes/OpenShift cluster, inside your walls.


🧠 Agents & your workspace

Capture is the front door; agents make the knowledge compound. Every meeting compiles into your workspace β€” a git repo of Markdown (an Open Knowledge Format kg/ bundle) that agents (Claude Code, Codex, …) read and write like developers work a codebase.

This is Andrej Karpathy's LLM Wiki pattern, run as a team service. The idea: don't RAG over raw documents β€” where the model rediscovers everything from scratch on every question β€” have agents compile sources into structured, interlinked markdown entity pages (people, companies, projects, decisions) so knowledge compounds. Vexa builds that wiki for you from the richest source there is: your meetings. Each call is ingested into entity pages; agents keep them current between calls; every answer starts from what your team already knows β€” on your own servers.

Agents work any workspace; a meeting is just one trigger of four β€” chat, schedule (cron), event (e.g. incoming email), finished meeting. Meetings themselves are scheduled work: connect your calendar (ICS) and planned meetings appear with attendees β€” bots auto-join, agents prepare before the call and process after it.

  • Multiplayer. Team-shared, attributed workspaces β€” not one person's private notes.
  • Automated. The bot captures the call; the transcript compiles itself in.
  • Safe by design. Agents are untrusted and enforce nothing themselves. You, in chat, write directly (git is the undo); untrusted input β€” an email, a web page β€” runs propose-only: the agent suggests, a human approves, trusted code applies. Irreversible effects are always gated.

Status (honest): capture, transcription, and speaker attribution are production; the agent dispatch core is built and proven live end-to-end. What's still landing is tracked in Status.


πŸ–₯️ The Terminal: AI-augmented meetings

0.12 ships a new Terminal UI built to put the backend's scale β€” thousands of bots and agents β€” to work on your actual week. It opens on your meetings: coming up, live now, to review.

  • An agent in your meeting, with your knowledge. Open a live call: the transcript streams speaker-attributed, and the agent has the live conversation and your workspace in context. Ask mid-call "what did we promise them last time?" β€” or research a person, company, or contract the moment it comes up, grounded in your wiki.

  • Knowledge built on meetings β€” and between them. Every planned meeting gets an agent that prepares the brief before (who's coming, history, open threads β€” it interviews you for what it can't know) and processes the transcript after. Arrive prepared, leave with the wiki updated.

  • Sharing. Invite colleagues into a workspace β€” same wiki, attributed. Share a meeting with its attendees β€” they get the real-time feed, not a recording link after the fact.

  • Collaborative, AI-augmented meetings. Prep a shared workspace together; during the call, humans edit the brief while agents stream the transcript in and work the knowledge β€” one room, human and AI participants on the same files.


πŸ“– How-to recipes

Each is a complete path to one outcome over the Agent API. Full guides at docs.vexa.ai.

πŸ’¬ Chat with your workspace β€” ask an agent that has every meeting, email, and note as context; trusted chat can also record a decision (a git commit).

curl -N -X POST "$API_BASE/age

Truncated for display β€” read the full file on GitHub.

Related Skills

View on GitHub
GitHub Stars2.9k
CategoryDevelopment
Updated2h ago
Forks512

Languages

Python

Trust signals

100/100

From repository metadata: license, adoption, age and documentation. Not a code audit β€” see the Safety scan above for what the skill file itself contains.

No cautions
vexa β€” MCP Server: Install & Safety Check | SkillAgent