关于 lauther
lauther 是一个 MCP 服务,让编码 Agent 在执行敏感操作前通过手机请求确认。它会等待批准、拒绝或超时,也可要求生物识别确认,并支持通过手机请求位置、照片和简短答复。
主要功能
- 01手机确认请求
- 02可选生物识别确认
- 03推送通知
- 04位置与照片请求
- 05简短文本提问
适用场景
- 01确认部署或删除数据
- 02获取用户位置或照片
- 03请求验证码
- 04通知构建完成
MCP 相关
它向 MCP 客户端(如编码 Agent)提供审批、通知、位置、照片和文本请求工具。审批请求会等待手机响应,并返回明确的批准、拒绝或未答复结果。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
2收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| details | string | 否 | 帮助他们做出决定的背景信息——会有哪些变化、费用是多少,以及出错会造成什么后果。 |
| question | string | 是 | 对方在锁屏上看到的问题。请具体描述:“在 staging 上删除并重建 users 表?”比“继续?”更好。 |
| timeout_seconds | integer | 否 | 等待答复的时长。默认值为 120。 |
| require_biometric | boolean | 否 | 要求通过指纹或面部识别后才算批准。拒绝时不需要生物识别;拒绝操作应始终简单快捷。 |
详细介绍
lauther-mcp
让你的编码 Agent 在执行不可撤销的操作前,先通过手机征求你的同意。
Agent: About to drop and recreate `users` on staging. Approving?
Phone: [ Approve ] [ Deny ] ← optionally behind your fingerprint
Agent: APPROVED after 34s. Confirmed by biometric.
适用于 Claude Code、Cursor、Windsurf,以及其他任何支持 MCP 的工具。
设置
在 Lauther 应用中获取令牌:Apps → + → New token。然后将服务添加到 MCP 配置中:
{
"mcpServers": {
"lauther": {
"command": "npx",
"args": ["-y", "lauther-mcp"],
"env": { "LAUTHER_TOKEN": "lpt_your_token" }
}
}
}
无需安装任何内容——npx 会获取它。需要 Node 18+。
工具
ask_approval
等待你作出答复,然后将以下三种结果之一告知 Agent:
| 结果 | 告知 Agent 的内容 |
|---|---|
APPROVED | 严格按照所询问的内容继续,不得做其他事情 |
DENIED | 停止;不要重试,也不要另寻办法 |
NO ANSWER | 停止——沉默不代表同意 |
最后一行才是关键。超时不等于同意,而且工具会明确说明这一点,让模型必须读到。
选项:details 用于提供上下文,require_biometric 用于要求指纹验证,timeout_seconds 用于设置愿意等待的时间(默认值为 120)。
关于等待。 Lauther 的 API 最多会长轮询 25 秒。超过这个时间后,此服务会继续查询同一条通知,而不是再发一条;因此,即使等待 10 分钟,你的手机上也只会收到一个问题,而不是每半分钟收到一个。
send_notification
单向通知:“迁移已完成”“构建失败”。可设置 title、message、priority 和 url。只有 urgent 通知会在免打扰时段送达。
它会报告实际发生的情况,也包括值得了解的一种情况:如果你的账户未注册任何设备,它会如实告知你,而不会在无人收到通知时仍报喜般地说发送成功。
get_location
只询问一次是否愿意分享你所在的位置。你的手机上会显示包含分享位置和拒绝选项的提示词;Agent 会收到一个位置,即你点按时所在的位置。
| 结果 | 告知 Agent 的内容 |
|---|---|
SHARED | 纬度、经度、以米为单位的精度,以及读取时间 |
DECLINED | 不要重试,也不要另寻办法获取位置 |
NO ANSWER | 沉默不代表同意;未分享任何内容 |
EXPIRED | 请求在你的手机上已过期;未分享任何内容 |
选项:question(提示词中显示的问题)、details、require_biometric、timeout_seconds(默认值为 120)。
request_photo
请你提供一张照片,可以现场拍摄,也可以从图库中选择。Agent 会收到链接和图片本身,因此可以查看图片。链接有效期为 7 天,之后照片会被删除。如果无法获取图片,Agent 仍会收到文本和链接。
选项与 get_location 相同,结果也相同,共有四种。
ask_text
向你提出一个简短问题,并等待你在手机上输入答案:验证码、选择、姓名或只有你知道的信息。提示词会显示问题和输入框,并提供回复和拒绝选项。答案最长为 500 个字符,因此适合简短内容。
| 结果 | 告知 Agent 的内容 |
|---|---|
ANSWERED | 你输入的内容,原样放在引号中 |
DECLINED | 不要重试,也不要另寻办法获取答案 |
NO ANSWER | 沉默不代表同意;未发送任何内容 |
EXPIRED | 请求在你的手机上已过期;未发送任何内容 |
选项:question(默认值为“回答一个问题?”)、details、placeholder(输入框中的提示,例如“6 位验证码”)、require_biometric、timeout_seconds(默认值为 120)。
告诉 Agent 何时使用它
大多数模型不会主动使用审批工具,除非你明确提出要求。在项目规则中加入类似下面的内容,效果不错:
Before anything irreversible — deploying, deleting data, spending money,
force-pushing, emailing real people, touching production — call
ask_approval and wait. Proceed only on APPROVED.
将其作为一种习惯
审批经过签名;按需启用生物识别验证后,答复记录的是有人确认了这项操作,而不只是有人点了一下。这就是审计追踪与日志行的区别。
相关内容
lauther-client— 纯 Node 客户端, 如果你想在自己的代码中而非 Agent 中使用推送和审批功能。- 文档 · 使用示例
- 遇到问题?[email protected] 会为你联系人工客服。
值得了解
- 仅托管。 中继服务负责维持 APNs 连接并提供身份层。
- 未进行端到端加密。 请勿在问题文本中填写机密信息。
- 该应用可在 App Store 和 Google Play 免费下载。
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。