Vexa
Meeting bot and transcripts for Google Meet, Teams and Zoom. Live or after, speakers labelled.
Description from the maker (original English)
Puts Approve/Deny on your phone before an agent acts, and waits for your fingerprint.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
LAUTHER_TOKENValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"lauther": {
"command": "npx",
"args": [
"-y",
"lauther-mcp"
],
"env": {
"LAUTHER_TOKEN": "your-value"
}
}
}
}Run this in your terminal
claude mcp add lauther --env LAUTHER_TOKEN=your-value -- npx -y lauther-mcpFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"lauther": {
"command": "npx",
"args": [
"-y",
"lauther-mcp"
],
"env": {
"LAUTHER_TOKEN": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"lauther": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"lauther-mcp"
],
"env": {
"LAUTHER_TOKEN": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 8, 2026
The registry name was verified with the GitHub account csanadymiklos, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: LAUTHER_TOKEN
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (0.1.1) reached the registry 2 months ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.
In the same category: Vexa, emailmd, MCP WhatsApp Cloud
Servers in the same category from other makers, sorted by stars.
Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
Meeting bot and transcripts for Google Meet, Teams and Zoom. Live or after, speakers labelled.
Render markdown into email-safe HTML, lint drafts for deliverability problems, and preview emails.
MCP server for WhatsApp Cloud API (Meta) — messages, media, and templates via Graph API
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Let your coding agent ask you first, on your phone, before it does something you can't undo.
Agent: About to drop and recreate `users` on staging. Approving?
Phone: [ Approve ] [ Deny ] ← optionally behind your fingerprint Agent: APPROVED after 34s. Confirmed by biometric.
Works with Claude Code, Cursor, Windsurf, or anything else that speaks MCP.
Get a token in the Lauther app: Apps → + → New token. Then add the server to your MCP config:
{
"mcpServers": { "lauther": { "command": "npx", "args": ["-y", "lauther-mcp"], "env": { "LAUTHER_TOKEN": "lpt_your_token" } } } }
Nothing to install — npx fetches it. Node 18+.
ask_approvalBlocks until you answer, then tells the agent one of three things:
| Result | What the agent is told |
|---|---|
APPROVED | proceed with exactly what was asked, and nothing further |
DENIED | stop; do not retry, do not find another way |
NO ANSWER | stop — silence is not consent |
That last row is the one that matters. A timeout is not a yes, and the tool says so in words the model has to read.
Options: details for context, require_biometric to demand a fingerprint, timeout_seconds for how long you're willing to wait (default 120).
On waiting. Lauther's API long-polls for at most 25 seconds. Past that this server keeps asking about the *same* notification rather than sending another, so a ten-minute wait still puts one question on your phone — not one every half minute.
send_notificationOne-way: "the migration finished", "the build broke". Takes title, message, priority and url. Only urgent crosses your quiet hours.
It reports what actually happened, including the case worth knowing about: if no device is registered on your account, you're told that rather than given a cheerful success for a notification nobody received.
get_locationAsks you to share where you are, once. You get a prompt on your phone with Share location and Decline; the agent receives one position, as it was when you tapped.
| Result | What the agent is told |
|---|---|
SHARED | latitude, longitude, accuracy in metres, and when it was read |
DECLINED | do not retry and do not find the location another way |
NO ANSWER | silence is not consent; nothing was shared |
EXPIRED | the request lapsed on your phone; nothing was shared |
Options: question (what you see on the prompt), details, require_biometric, timeout_seconds (default 120).
request_photoAsks you for one picture, taken on the spot or picked from your library. The agent gets the link and the image itself, so it can look at it. The link works for 7 days, after which the photo is deleted. If the image cannot be fetched the agent still gets the text and the link.
Same options and the same four outcomes as get_location.
ask_textAsks you a short question and waits for you to type the answer on your phone: a verification code, a choice, a name, a fact only you know. The prompt shows the question and a field, with Reply and Decline. Answers run to 500 characters, so it is for short things.
| Result | What the agent is told |
|---|---|
ANSWERED | exactly what you typed, in quotes |
DECLINED | do not retry and do not get the answer another way |
NO ANSWER | silence is not consent; nothing was sent |
EXPIRED | the request lapsed on your phone; nothing was sent |
Options: question (default "Answer a question?"), details, placeholder (a hint in the field, such as "6-digit code"), require_biometric, timeout_seconds (default 120).
Most models won't reach for an approval tool unless asked. Something like this in your project rules works well:
Before anything irreversible — deploying, deleting data, spending money,
force-pushing, emailing real people, touching production — call ask_approval and wait. Proceed only on APPROVED.
The approval is signed and, when you ask for it, biometric — the answer records *that a person confirmed it*, not merely that something clicked. That is the difference between an audit trail and a log line.
lauther-client — the plain Node client, if you want push and approvals in your own code rather than in an agent.MIT