@lepercon工作室/冲压式mcp服务器
MCP服务器 插孔板 --用于AI编码代理的移动控制平面。
当您的AI编码代理需要批准、输入或想要共享状态更新时,在您的手机上获取推送通知。使用 克劳德代码, Gemini CLI,以及 OpenAI Codex.
安装
npm install -g @lepercon-studios/punchdown-mcp-server配置您的代理
自动检测所有已安装的代理
punchdown setup或单独配置
克劳德代码:
claude mcp add punchdown -- npx @lepercon-studios/punchdown-mcp-serverGemini CLI:
gemini mcp add punchdown -- npx @lepercon-studios/punchdown-mcp-serverCodex CLI:
codex mcp add punchdown -- npx @lepercon-studios/punchdown-mcp-server配对您的设备
punchdown pair使用Punchdown移动应用程序扫描二维码。配对使用Ed25519密钥对交换,不需要帐户或密码。
MCP工具
| 工具 | 行为 | 回报 |
|---|---|---|
request_approval | 阻止,直到用户批准/拒绝 | { decision, user_message } |
request_input | 阻止,直到用户提供输入 | { response } |
notify_status | 即发即弃 | { delivered } |
set_task_context | 即发即弃 | { updated } |
request_approval
向用户的手机发送批准请求,其中包含行动摘要、详细信息和风险级别。
request_input
向用户提出一个问题,并提供可选的建议答案。直到回答。
notify_status
向移动仪表板发送状态更新(里程碑、进度、错误、完成)。
set_task_context
使用当前任务标题、描述和涉及的文件更新移动仪表板。
克劳德代码挂钩
Punchdown可以与Claude Code集成 钉钩系统 在执行前后拦截工具调用。这使您可以通过Punchdown的移动应用程序自动发送审批请求。
PreToolUse挂钩
添加a PreToolUse 在任何工具运行之前,挂钩都需要移动批准。如果用户拒绝请求,钩子将以代码2退出以阻止该工具:
{
"hooks": {
"PreToolUse": [
{
"matcher": ".*",
"hooks": [
{
"type": "command",
"command": "punchdown approve --tool $CLAUDE_TOOL_NAME",
"timeout": 30000
}
]
}
]
}
}PostTool使用挂钩
添加a PostToolUse 钩子在每个工具完成后发送状态通知:
{
"hooks": {
"PostToolUse": [
{
"matcher": ".*",
"hooks": [
{
"type": "command",
"command": "punchdown notify --tool $CLAUDE_TOOL_NAME --status completed",
"timeout": 5000
}
]
}
]
}
}选择性匹配
使用 matcher 字段将钩子限制为特定工具。例如,只需要批准文件写入和bash命令:
{
"matcher": "Write|Bash|Edit",
"hooks": [{ "type": "command", "command": "punchdown approve --tool $CLAUDE_TOOL_NAME", "timeout": 30000 }]
}看 examples/claude-hooks.json 以获得完整的示例配置。
安全
- 端到端加密:所有工具调用内容在离开机器之前都用NaCl盒加密
- 没有帐户:通过Ed25519键对交换(二维码)进行设备配对
- 零知识接力:云中继只路由不透明的密文
- 运输安全:所有连接都使用WSS(TLS 1.3)
发展
git clone https://github.com/Lepercon-Studios/punchdown-mcp-server.git
cd punchdown-mcp-server
npm install
npm run build
npm run dev # watch mode
npm test许可证
麻省理工学院
