mcp推送
人工智能代理的统一通知网关
  
中文文档 |英语
mcp推送 是一个标准的MCP服务器和钩子实用程序,旨在将AI代理(如Claude Code、Cursor)与您的日常通信工具连接起来。它支持向发送通知 20+频道 包括钉钉、百灵鸟、电报、微信和电子邮件。
______________________________________________________________________
✨ 主要特点
- 🔌 20+频道:钉、百灵鸟、微信、电报、电子邮件、吠叫、ServerChan等。
- 🤖 零配置挂钩:在Claude Code中自动检测长时间运行的任务(>60秒),并在完成或失败时通知您。
- 📊 结构化事件:支持结构化JSON日志记录(
notify_event)用于详细的任务跟踪。 - 🚀 轻松设置:通过安装
uvx或者一行shell脚本。
______________________________________________________________________
🚀 快速开始
1.️⃣ 安装MCP服务器
使用 uvx (推荐):
codex mcp add mcp-push -- uvx --from git+https://github.com/d4renk/mcp-push.git mcp-push2.️⃣ 配置自动通知挂钩
长任务完成时自动接收警报。
# One-click install
curl -fsSL https://raw.githubusercontent.com/d4renk/mcp-push/main/install-hook.sh | bash备注:需要 jq 用于自动配置。3.️⃣ 设置频道
创建一个 config.sh 文件来定义您的webhook凭据。
cp config.sh.example config.sh
vim config.sh最小配置示例:
# DingTalk
export DD_BOT_TOKEN="your-token"
export DD_BOT_SECRET="your-secret"
# Lark
export FSKEY="your-webhook-key"
# Telegram
export TG_BOT_TOKEN="your-bot-token"
export TG_USER_ID="your-user-id"*看 docs/CHANNEL_CONFIG.md 对于所有支持的频道。*
______________________________________________________________________
📡 用法
1.简单通知(notify_send)
最适合用于一般警报或一次性消息。
// MCP Tool Call
use_mcp_tool("notify_send", {
"title": "🚀 Build Success",
"content": "Deployment finished in 3m 20s."
});2.事件跟踪(notify_event)
最适合结构化日志和任务生命周期跟踪(开始->更新->结束)。
// MCP Tool Call
use_mcp_tool("notify_event", {
"run_id": "task-2024-001",
"event": "end", // Options: start | update | end | error
"message": "Analysis completed",
"data": {
"files_processed": 150,
"errors_found": 0
}
});______________________________________________________________________
🔌 支持的频道
| 服务 | 配置变量 | 文档 |
|---|---|---|
| 钉钉 | DD_BOT_TOKEN, DD_BOT_SECRET | 官方 |
| 云雀 | FSKEY | 官方 |
| 企业微信 | QYWX_KEY | 官方 |
| 电报 | TG_BOT_TOKEN, TG_USER_ID | 官方 |
| 吠叫(iOS) | BARK_PUSH | 官方 |
| 服务器Chan | PUSH_KEY | 官方 |
| 电子邮件 | SMTP_SERVER, SMTP_USER... | - |
| 自定义Webhook | WEBHOOK_URL | - |
*完整列表可在 config.sh示例.*
______________________________________________________________________
⚙️ 高级配置
钩子行为
通过以下方式自定义Hook与MCP服务器的交互方式 config.sh:
# Enable structured event notifications (Default: true)
export MCP_PUSH_STRUCTURED=true
# MCP Call Timeout (Default: 10s)
export MCP_PUSH_TIMEOUT_SEC=10
# Error Log Path
export MCP_PUSH_HOOK_LOG_PATH="/tmp/mcp-push-hook.log"环境加载
配置按以下顺序加载(优先级越高,优先级越低):
- 系统环境 (
export VAR=...) - 本地配置 (
./config.sh) - 项目配置 (
/path/to/mcp-push/config.sh)
______________________________________________________________________
🛠️ 发展
# Install dependencies
pip install -r requirements.txt
# Run tests
python test_mcp_push.py
# Test Hook integration
python test-hook-integration.py贡献
欢迎拉取请求!请确保为新频道添加相关测试。
______________________________________________________________________
🗑️ 卸载
# Remove Hook
curl -fsSL https://raw.githubusercontent.com/d4renk/mcp-push/main/uninstall-hook.sh | bash
# Remove MCP server
codex mcp remove mcp-push______________________________________________________________________
📄 许可证
MIT许可证。看 许可证 了解详情。
