lauther-js

MCP serverAI & models

Puts Approve/Deny on your phone before an agent acts, and waits for your fingerprint.

Unavailable. This server has no hosted endpoint yet, so ahel can't serve it.

Connect ahel once, and every AI you use reads what you have installed.

From the project's README

As published by csanadymiklos/lauther-js in README.md.

JavaScript packages for Lauther — push notifications to your phone from any web app or script, and questions that wait for a yes before something irreversible happens.

PackageWhat it is
lauther-clientThe Node client. Zero dependencies, two methods, TypeScript types bundled.
lauther-mcpAn MCP server, so a coding agent can ask its owner for approval on their phone.
npm install lauther-client
import { Lauther } from "lauther-client";

const lauther = new Lauther(process.env.LAUTHER_TOKEN);

await lauther.push({ title: "Backup finished" });

if (await lauther.ask("Deploy v2.4 to production?")) {
  await deploy();
}

Only an explicit Approve returns true. A denial and a timeout are both false — an unanswered question must never read as a yes.

Why this exists

A browser tab can't reach someone who closed it, and building a native app per project to fix that was never going to happen. Lauther is one app your projects share over an HTTP call.

Development

Node 18+. npm workspaces, no build step, no bundler.

npm install
npm test          # both packages

lauther-client has no runtime dependencies and is tested with a stubbed fetch. lauther-mcp is tested by spawning the real server over stdio and driving it with a real MCP client against a fake Lauther API — so a broken tool schema or broken stdio wiring fails the suite rather than a user's agent.

Links

MIT

Signals

Last commit
Sep 2026
Weekly downloads
317
Advanced
Delivery
lauther MCP server → your ahel gateway (mcp.ahel.ai) → every connected AI client.
Catalog kind
mcp-server
Gateway key
io-github-csanadymiklos-lauther
Source
github.com/csanadymiklos/lauther-js