Vexa

MCP server by Vexa-ai

Send meeting bots into Google Meet, Teams and Zoom calls and read live or finished transcripts with labelled speakers.

Needs an API key (Needs an API key from the vendor)Streamable HTTP

Connect to Vexa

Vexa needs an API key. Connect with its own URL and your key:

https://api.cloud.vexa.ai/mcp

Send your key in the Authorization header. mcp.tc never sees or stores keys. Where to get a key

Share this server

Opens this page, with the URL and setup steps.

mcp.tc/i/vexa

About

Vexa is an open-source meeting transcription API. A bot joins Google Meet, Microsoft Teams or Zoom calls and produces speaker-attributed transcripts, live or after the call. The MCP server exposes these meeting capabilities as tools to an AI assistant. The docs list 21 tools on the hosted service and 17 in the open-source release.

The hosted endpoint uses streamable HTTP at api.cloud.vexa.ai/mcp and needs an Authorization header with a Bearer Vexa API key from the account page. Vexa can also be self-hosted with Docker (Apache-2.0 license).

What you can do

  • Send a bot into Google Meet, Teams or Zoom calls
  • Read live transcripts with speaker labels
  • Read transcripts after a meeting ends
  • Use meeting content as context for an AI assistant
  • Self-host the stack or use the hosted service

Tools

Vexa lists its tools only to clients with a key, so we can’t show them here.

Example prompts

  • Send a Vexa bot to my Google Meet call abc-defg-hij.

  • Show the transcript of my last Teams meeting.

  • Summarize what each speaker said in today's Zoom call.

  • What did we decide in my last meeting?

Set up

Every client connects to api.cloud.vexa.ai. Pick yours; the page remembers your choice.

Claude Code

  1. Run this in a terminal, in your project folder:
claude mcp add --transport http vexa https://api.cloud.vexa.ai/mcp --header "Authorization: Bearer <YOUR_API_KEY>"
  1. Replace the placeholder with your key before you run it, then check it with /mcp inside Claude Code.

Add --scope user to make it available in every project, not just this one.

Claude Desktop

  1. Use the mcp-remote bridge, which keeps the key on this computer (a connector added on claude.ai with the key under Request headers also shows up here). Open Settings → Developer → Edit Config and add:
claude_desktop_config.json
{
  "mcpServers": {
    "vexa": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://api.cloud.vexa.ai/mcp",
        "--header",
        "Authorization: Bearer <YOUR_API_KEY>"
      ]
    }
  }
}
  1. Replace the placeholder with your key and restart Claude Desktop.

The bridge needs Node.js on your computer.

claude.ai

  1. Open the connector form on claude.ai. This button fills in the name and URL for you:
  1. Check that the URL reads https://api.cloud.vexa.ai/mcp. Under Request headers, add Authorization: Bearer <YOUR_API_KEY> with your key from Vexa-ai, then click Add.
  2. Turn it on in a chat from the tools menu.

Free plans allow one custom connector. On Team and Enterprise plans an owner adds it under Organization settings → Connectors.

Cursor

Or add it by hand to ~/.cursor/mcp.json (all projects) or .cursor/mcp.json (this project):

mcp.json
{
  "mcpServers": {
    "vexa": {
      "url": "https://api.cloud.vexa.ai/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_API_KEY>"
      }
    }
  }
}

VS Code

Add it to .vscode/mcp.json. VS Code asks for the key the first time and stores it securely:

.vscode/mcp.json
{
  "servers": {
    "vexa": {
      "type": "http",
      "url": "https://api.cloud.vexa.ai/mcp",
      "headers": {
        "Authorization": "Bearer ${input:api-key}"
      }
    }
  },
  "inputs": [
    {
      "type": "promptString",
      "id": "api-key",
      "description": "API key",
      "password": true
    }
  ]
}

Devin Desktop

  1. Add it to ~/.config/devin/mcp_config.json (macOS and Linux) or %APPDATA%\devin\mcp_config.json (Windows):
mcp_config.json
{
  "mcpServers": {
    "vexa": {
      "serverUrl": "https://api.cloud.vexa.ai/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_API_KEY>"
      }
    }
  }
}
  1. Refresh the MCP server list in Cascade.

Devin Desktop is the new name for Windsurf. It reads serverUrl (or url) for remote servers.

Codex

codex mcp add vexa --url https://api.cloud.vexa.ai/mcp --bearer-token-env-var VEXA_API_KEY

Or edit ~/.codex/config.toml directly:

config.toml
[mcp_servers.vexa]
url = "https://api.cloud.vexa.ai/mcp"
bearer_token_env_var = "VEXA_API_KEY"

Set VEXA_API_KEY to your key in the shell that runs Codex.

Gemini CLI

gemini mcp add --transport http --header "Authorization: Bearer <YOUR_API_KEY>" vexa https://api.cloud.vexa.ai/mcp

This adds it to the current project. Add -s user to use it everywhere.

Any client

Most clients accept this shape. Some name the URL field differently: serverUrl in Devin Desktop, httpUrl in Gemini CLI’s settings file.

{
  "mcpServers": {
    "vexa": {
      "type": "http",
      "url": "https://api.cloud.vexa.ai/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_API_KEY>"
      }
    }
  }
}

Zed puts servers under context_servers in its settings. Cline needs "type": "streamableHttp", or it assumes SSE.

Client only starts local servers? Bridge it with npx -y mcp-remote https://api.cloud.vexa.ai/mcp.

Embed

Show Vexa in a README or on your site. Each embed links to this page, uses the server’s own URL, and sets no cookies. How embeds work

The card, the iframe and the JSON are in English. Add ?lang=it, fr, de or es to their address for another language.

README badge

Badge preview, lightBadge preview, dark
Markdown
[![Vexa on mcp.tc](https://mcp.tc/i/vexa/badge.svg)](https://mcp.tc/i/vexa)
HTML
<a href="https://mcp.tc/i/vexa"><img src="https://mcp.tc/i/vexa/badge.svg" alt="Vexa on mcp.tc" height="20"></a>

It follows the reader’s light or dark mode. Add ?theme=light or ?theme=dark to fix it, or ?style=compact to show the mark without the word.

Website card

HTML
<script src="https://mcp.tc/w/vexa.js" async></script>

The card appears where the tag is. Add data-theme="dark" or data-size="compact" to the tag to change it. The file holds everything it needs, so it makes no other requests and sets no cookies.

iframe

HTML
<iframe src="https://mcp.tc/embed/vexa" title="Vexa on mcp.tc" width="420" height="200" loading="lazy" allow="clipboard-write" style="border:0;border-radius:8px;max-width:100%"></iframe>

Use it on pages that don’t allow scripts. Add ?theme=light or ?theme=dark to the address to fix the colors.

JSON

The listing as data for your own pages and tools: name, tagline, the server’s own URL, tools and the “Add to” links. Any site can read it (CORS is open).

https://mcp.tc/i/vexa.json

What each field means

AI prompt

Paste this into an AI coding assistant, such as Claude Code or Cursor, and it adds the Vexa card to your site.

Markdown
Add the mcp.tc card for Vexa, an MCP server, to my website. It is one static script: no build step, no package to install, no cookies.

Put this tag where the card should appear. The card renders right before it:

```html
<script src="https://mcp.tc/w/vexa.js" async></script>
```

To show the card somewhere else, put this placeholder there and load the same script once, for example before `</body>`. Keep the link inside: visitors without JavaScript see it.

```html
<div data-mcptc="vexa"><a href="https://mcp.tc/i/vexa">Vexa on mcp.tc</a></div>
```

Options:
- `data-theme="light"` or `"dark"` on the tag or the placeholder fixes the colors. Without it, the card follows the visitor’s light or dark mode.
- `data-size="compact"` gives a smaller card without the tagline.
- The CSS variable `--mcptc-max-width` on the placeholder or a parent sets the width (default `520px`).
- `?lang=` on the script URL sets the card’s language: `en`, `it`, `fr`, `de` or `es`.

If the site has a Content Security Policy, allow `script-src https://mcp.tc` and `img-src data:` (the icon is inline).

For a README or other Markdown docs, use the badge instead:

```markdown
[![Vexa on mcp.tc](https://mcp.tc/i/vexa/badge.svg)](https://mcp.tc/i/vexa)
```

Reference: https://mcp.tc/embed

Change history

Its tools are behind a sign-in, so we can’t read them. Edits by its owner show up here.

Follow Vexa and we’ll email you when something changes.

Nothing recorded yet. Edits by the server’s owner will show up here.

FAQ

Can I paste mcp.tc/i/vexa into my MCP client?

No. mcp.tc links are pages, not server addresses. Connect with https://api.cloud.vexa.ai/mcp, so your client talks to Vexa directly. Your key goes there too, never to mcp.tc. The quick link is for sharing: it opens this page, with setup steps for every client.

Does Vexa need an API key or a sign-in?

Yes. Vexa needs an API key, sent as the Authorization header. Get one from Vexa-ai and keep it in your client’s config, never in a shared file.

Is Vexa a remote or a local server?

Remote. Vexa-ai hosts it at https://api.cloud.vexa.ai/mcp, and it speaks Streamable HTTP. There’s nothing to install.

What can Vexa do?

You can send a bot into Google Meet, Teams or Zoom calls, read live transcripts with speaker labels and read transcripts after a meeting ends.

Which clients can use it?

Any client that supports remote MCP servers and can send your key: Claude Code, Cursor, VS Code, Devin Desktop, Codex, Gemini CLI, Zed and others. On claude.ai and Claude Desktop, add the key as a request header when you create the custom connector. ChatGPT can’t send a key, so it can’t use it.

Does mcp.tc track changes to Vexa?

Partly. Vexa’s tools are behind a sign-in, so its History tab shows only edits by its owner. Follow the listing to get an email when it changes.

Who wrote this page?

mcp.tc’s robot read Vexa’s own metadata (its MCP handshake, tool list and public pages), and an AI model drafted the text from it. A person reviews anything the checks can’t confirm. The text can still be wrong, so if you spot a mistake, use Report this listing on this page.

mcp.tc isn’t affiliated with Vexa-ai. This page was built from Vexa’s public metadata, last checked on 7 Oct 2026, and an AI model wrote the description, so it can be wrong. Names and marks belong to their owners. Something off? Report this listing.