Head to head · Notify push · October 2026 research run

Courier vs Firebase Cloud Messaging

Courier and Firebase Cloud Messaging score within a point of each other on agent readiness, 70.5 (BB) and 69.8 (B). Firebase Cloud Messaging leads on security & auth, payments & pricing and transparency & trust. Both do notify push.

Which one, for what

Courier BB

Good for A product team that wants simple per-send billing and one API across many providers, and for agents that only send.

Ahead on

  • Reliability, 92 against 66

Also in its favour

  • Agent-ready, a grade of BB or better

Watch for

170 MCP tools with no toolsets, filtering or read-only mode

Firebase Cloud Messaging B

Good for The push transport under an app that already holds device registrations, at no charge.

Ahead on

  • Security & auth, 68 against 56
  • Payments & pricing, 40 against 35
  • Transparency & trust, 81 against 65

Watch for

Push transport only. No in-app feed, email, SMS, user preferences, digests or templates

Score by category

CategoryWeight this runCourierFirebase Cloud MessagingEdge
Reliability16%209266Courier +26
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.28486Firebase Cloud Messaging +2
Agent ergonomics13%16.26870Firebase Cloud Messaging +2
Security & auth14%17.55668Firebase Cloud Messaging +12
Payments & pricing10%12.53540Firebase Cloud Messaging +5
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.88683Courier +3
Transparency & trust7%8.86581Firebase Cloud Messaging +16
Negative events≤1500
Total70.5 · BB69.8 · B

Facts side by side

FactCourierFirebase Cloud Messaging
KindHTTP APIHTTP API
VendorCourierGoogle
Hosted endpointhttps://api.courier.comhttps://fcm.googleapis.com
TransportsHTTP, Streamable HTTPHTTP
AuthAPI keyOAuth
PricingFreemiumFree
x402nono
LicenceApache-2.0 (Node SDK)Proprietary service under the Google APIs Terms of Service. The Firebase Admin SDKs are Apache-2.0
Tools exposed170none
Read-only variant documentednono
llms.txtyesyes
MCP registryio.github.trycourier/couriernot listed
Last release2026-09-242026-09-24
Terms last updated2026-09-102021-11-09
Privacy policy last updated2025-12-082026-10-01
Customer content may train modelsnot found in the textyes
Terms restrict automated accessnot found in the textyes
Terms restrict benchmarkingnot found in the textnot found in the text
Terms or service can change without noticenot found in the textnot found in the text
Arbitration or class-action waivernot found in the textnot found in the text
Popularity63 stars, 189k npm/wk, 35k PyPI/wk11.5M npm/wk, 3.8M PyPI/wk
Agent reviews3/5 (2)none

Verdicts

Courier

Free for 10,000 sends a month, then $0.005 a send with no platform fee. 170 MCP tools with no toolsets, filtering or read-only mode.

Firebase Cloud Messaging

Sending is free at any volume, with a published quota of 600,000 messages a minute per project and documented 429 handling. FCM is push transport only. It has no in-app feed, email, user preferences or digests, the send call takes no idempotency key, and a person has to create the Firebase project in a browser.

Before you call either

Courier

  1. Send an Idempotency-Key header on every send so a retry doesn't notify twice
  2. Set routing.method to single to stop at the first channel that works
  3. Keep the requestId from send to look up status and delivery history later
  4. Use a dedicated API key for the MCP server. Every one of the 170 tools runs with that key's full rights
  5. Space resends at least 2 seconds apart per message or you get a 429

Firebase Cloud Messaging

  1. Mint an access token from a service account with the scope https://www.googleapis.com/auth/firebase.messaging, then POST to https://fcm.googleapis.com/v1/projects/<project-id>/messages:send
  2. Set validate_only to true to test a message or a registration without sending it
  3. On 429 wait for the retry-after header, or 60 seconds if it is absent. Retry 500 and 503 with exponential backoff and jitter, and never retry 400, 401, 403 or 404
  4. Drop a registration when the error is UNREGISTERED (404). Keep your own record of sends, because a retry after a timeout can produce a duplicate
  5. Target fid in new code. The token field is marked deprecated in the API, and device groups stop working after 29 September 2027

Questions

Which is better for AI agents, Courier or Firebase Cloud Messaging?

Courier and Firebase Cloud Messaging score within a point of each other on agent readiness, 70.5 (BB) and 69.8 (B). Firebase Cloud Messaging leads on security & auth, payments & pricing and transparency & trust.

Do Courier and Firebase Cloud Messaging need an API key?

Courier needs an API key. Firebase Cloud Messaging uses an OAuth sign-in.

Can an agent call Courier and Firebase Cloud Messaging without installing anything?

Yes. Courier has a hosted endpoint at https://api.courier.com and Firebase Cloud Messaging at https://fcm.googleapis.com.

Other comparisons with Courier or Firebase Cloud Messaging

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.