Token导航 LogoToken导航TokenDH.com
MCP Fcm Push logo
开发工具stdio官方级别未说明来源级核验

MCP Fcm Push

MCP Server

一个通过Firebase Cloud Messaging发送推送通知的MCP服务器,适用于AI助手集成、自动化测试和工作流。

工具数

0

提示词数

0

GitHub Stars

1

资源数

0
跨平台PythonClaude自动化测试Claude DesktopClaudeCursor

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

kibotu

提供方

kibotu

最后核验

2026/5/17 20:19

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python3 -m venv venv

详细介绍

MCP FCM 推送 🔔

![License](LICENSE) ![Python](https://www.python.org/) ![MCP](https://github.com/modelcontextprotocol)

直接从您的AI助手发送Firebase Cloud Messaging推送通知。 🚀

一个强大的模型上下文协议(MCP)服务器,使Claude和Cursor等AI助手能够通过Firebase云消息传递发送推送通知。非常适合测试、自动化和AI驱动的通知工作流程。

目录 📑

为什么选择MCP FCM推送? 🤔

常见问题

  • ❌ 手动通知测试耗时费力
  • ❌ 复杂的OAuth 2.0认证设置
  • ❌ 需要在不同工具之间切换以接收通知
  • ❌ 重复的curl命令和JSON格式化
  • ❌ 难以实现通知工作流的自动化

MCP FCM 推送解决方案

  • ✅ 直接从您的AI助手发送通知
  • ✅ 自动处理OAuth 2.0认证
  • ✅ 自然语言接口 - 直接提问即可
  • ✅ 清晰简洁的命令结构
  • ✅ 轻松集成到AI工作流程中

主要特点 🌟

  • 🤖 机器人 AI原生集成与Claude Desktop、Cursor及其他兼容MCP的AI助手无缝协作
  • 🔐(锁形符号,常用于表示保密、安全或密码等含义) 安全认证内置OAuth 2.0 JWT认证,支持Firebase服务帐户
  • 📱 代表手机的符号,中文可表述为“手机”或直接使用该符号(在中文语境中,该符号常被直接用作手机的代称)。 跨平台支持iOS(APNS)和Android FCM消息推送
  • 🚀 表情符号“🚀”通常表示火箭、发射或快速前进等意思,没有直接的中文翻译,但可以根据上下文理解为“火箭”、“发射”或“飞速前进”等。 零配置自动从服务账户中读取项目ID
  • 🎯(靶心,目标) 简洁的界面自然语言指令 - 无需复杂的API调用
  • 🔧(扳手,也用于表示修理、维护等动作) 灵活的与任何Firebase项目兼容
  • ⚡(闪电符号,无具体含义,常用于表示速度、电力或警告等) 快速直接FCM API集成,无需中介

安装 📦

1. 克隆仓库

git clone https://github.com/kibotu/mcp-fcm-push.git
cd mcp-fcm-push

2. 设置虚拟环境

cd mcp-server
python3 -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
pip install -r requirements.txt

3. 添加您的Firebase服务帐户

把你的 service-account.json 文件在 cmd/ 目录:

# Download from Firebase Console:
# Project Settings → Service Accounts → Generate New Private Key
cp ~/Downloads/service-account.json cmd/service-account.json

⚠️ 安全: 千万不要将你的服务账户文件提交到版本控制系统中!

快速入门 🚀

配置您的AI助手

对于Cursor

添加到 ~/.cursor/mcp.json

{
  "mcpServers": {
    "push-notification": {
      "command": "/absolute/path/to/mcp-fcm-push/mcp-server/venv/bin/python",
      "args": [
        "/absolute/path/to/mcp-fcm-push/mcp-server/server.py"
      ]
    }
  }
}

对于Claude Desktop

添加到 ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "push-notification": {
      "command": "/absolute/path/to/mcp-fcm-push/mcp-server/venv/bin/python",
      "args": [
        "/absolute/path/to/mcp-fcm-push/mcp-server/server.py"
      ]
    }
  }
}

重启您的编辑器

重启 Cursor 或 Claude Desktop 以加载 MCP 服务器。

使用方法 💬

只需用自然语言要求你的AI助手发送通知:

Send a push notification with:
- FCM token: YOUR_FCM_DEVICE_TOKEN_HERE
- Title: New Message
- Body: You have a new message
- URL: https://example.com/notifications

或者更直接地说:

Send me a test push notification to device token ABC123 
with title "Hello World" and body "Testing FCM"

参数 📋

必需参数

参数类型描述
fcm_token字符串来自您移动应用的FCM设备令牌
title字符串通知标题(醒目显示)
body字符串通知正文文本
url字符串点击时要打开的深度链接或URL
service_account_path字符串Firebase 服务帐户 JSON 文件的路径

可选参数

参数类型默认值描述
badge整数100iOS通知徽章数量

💡 提示:project_id 它会自动从您的服务账户JSON文件中提取,使得此工具完全通用且可在不同的Firebase项目中重复使用。

项目结构 📁

mcp-fcm-push/
├── cmd/
│   ├── push.sh                  # Bash script alternative
│   └── service-account.json     # Firebase credentials (gitignored)
├── mcp-server/
│   ├── server.py                # MCP server implementation
│   ├── requirements.txt         # Python dependencies
│   ├── README.md                # Technical documentation
│   └── venv/                    # Virtual environment
├── LICENSE                      # Apache 2.0 License
├── README.md                    # This file
└── SECURITY.md                  # Security policy

它是如何工作的🔧

  1. 认证读取Firebase服务帐户凭据并提取 project_id
  2. JWT 生成为OAuth 2.0认证创建一个JSON Web Token
  3. 令牌签名使用服务账户的私钥对JWT进行签名
  4. 访问令牌将JWT(JSON Web Token)从Google的OAuth端点交换为一个短期有效的访问令牌
  5. FCM 请求将通知负载通过适当的认证发送到FCM API v1
  6. 跨平台自动配置Android FCM和iOS APNS消息推送
  7. 回应返回成功确认或详细的错误信息

故障排除 🔍

服务器未显示?

  • ✅ 在您的MCP配置文件中验证绝对路径
  • ✅ 在配置更改后重启您的编辑器
  • ✅ 确认Python虚拟环境已正确设置
  • ✅ 确保所有依赖项都已安装: pip install -r requirements.txt

“文件不存在”错误?

  • ✅ 确认 service-account.json 存在于 cmd/ 目录
  • ✅ 使用完整绝对路径: /Users/you/path/to/service-account.json
  • ✅ 检查文件权限: chmod 600 cmd/service-account.json

令牌无效?

  • ✅ 验证FCM令牌是否与您的服务帐户中的Firebase项目匹配
  • ✅ 检查服务帐户是否具有“Firebase Cloud Messaging API 管理员”角色
  • ✅ 确保设备令牌未过期(移动应用可能需要刷新)
  • 确认在Google Cloud Console中已启用Firebase Cloud Messaging API

认证错误?

  • ✅ 验证服务帐户JSON格式是否正确
  • ✅ 确保服务帐户拥有必要的权限
  • ✅ 检查系统是否已具备 openssl 并且 curl 安装好的
  • ✅ 验证互联网连接以进行OAuth令牌交换

仍然有问题吗?

打开一个问题(或:提交一个问题) 与;和;带有

  • 您的MCP配置(已移除敏感路径)
  • 错误信息
  • Python和操作系统版本

安全注意事项 🔒

最佳实践

  • 🔐 表示“锁”或“密码保护”的符号。 永不放弃(或:永远不要放弃) 你的 service-account.json 进行版本控制
  • 🔐(锁形符号,常用于表示密码、保密或安全) 设置限制性权限chmod 600 cmd/service-account.json
  • 🔐(锁形符号,常用于表示保密、安全或密码等含义) 使用专用服务账户 适用于不同环境
  • 🔐(锁形符号,常用于表示密码、保密或安全) 轮换服务账户密钥 定期地
  • 🔐 监控Firebase使用情况 对于意外活动
  • 🔐(锁形符号,常用于表示密码、保密或安全等含义) 存储凭据 仅限在安全地点

受保护的内容是什么

  • ✅ 访问令牌仅有效1小时
  • ✅ 为每条通知生成新的令牌
  • ✅ 内存中未存储任何凭据
  • ✅ 服务账户文件仅在需要时读取

报告安全问题

请查阅我们的 安全政策 并私下向维护者报告漏洞。

贡献力量🤝

我们欢迎贡献!无论是修复漏洞、新增功能、改进文档,还是传播信息。

如何做出贡献

  1. 存储库
  2. 创建 你的特性分支(git checkout -b feature/amazing-feature)
  3. 提交 你的更改(git commit -m 'Add amazing feature'
  4. 推动;推送 到(分支机构)git push origin feature/amazing-feature)
  5. 开放 一个拉取请求(Pull Request)

开发环境设置

# Clone your fork
git clone https://github.com/YOUR_USERNAME/mcp-fcm-push.git
cd mcp-fcm-push

# Set up development environment
cd mcp-server
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt

# Make your changes and test
python server.py

贡献思路/创意

  • 📝 改进文档
  • 🐛 修复错误或问题
  • ✨ 添加新功能(批量通知、模板等)
  • 🧪 添加测试和持续集成/持续交付(CI/CD)
  • 🌍 添加示例和用例
  • 🎨 改进错误信息

许可证 📄

此项目采用Apache License 2.0授权 - 详见 许可证 文件中有详细信息。

Copyright 2025 kibotu

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

致谢🙏

______________________________________________________________________

通知愉快! 🎉 如果你觉得这个工具很有用,请给仓库点个⭐星标,并分享给其他人!

目录标签

目录标签

跨平台PythonClaude自动化测试推送通知本地部署AI集成Firebase

支持客户端

Claude DesktopClaudeCursor

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

oauth

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiooauth部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP