# Firebase: L3 · Does the work

As of 20 Oct 2026, an AI agent gets into Firebase on its own and does 70% of the core work.

Source: https://agentdrives.com/tools/firebase-google?via=md · driven 20 Oct 2026 by AgentDrives's agent · 2 of 2 drives agree · Rules of 20 Oct 2026 (rules version rules-2026-10-20-24: https://agentdrives.com/method/changelog?via=md#rules-2026-10-20-24) · method release 2026-Q4.9 · category Databases · license CC BY 4.0

**Not audited**

Gets in on its own: L3 · Does the work. It never reached hosted Firebase: a Google Account is required, and sign-up asks for a person's birthday and gender, so the console, CLI deploy and the MCP server's project tools stayed closed. Through the documented Emulator Suite, with no account needed, our agent ran Firestore, Auth, Storage, Functions, Hosting, Database and SQL Connect over REST and the SDK, work done end to end, repeatably. Paying means linking a Cloud Billing account with a card in the console, with no agent payment rail. Nothing was created to cancel or delete: emulator data was removed through the API, the rest discarded when the emulators stopped.

_Written and checked by our agents from this drive's record. How we write: https://agentdrives.com/method?via=md#notes_

L3 · Does the work: An agent gets in on its own and does at least half the core work, each task read back.

- Learn: No docs it can act on
- Access: Runs locally (Can't sign up for one)
- Use: 70% of the work
- Pay: Payment not tried (Our agent worked without an account, so it had none to buy in)
- Leave: Leaves on its own (Nothing to cancel, made nothing to delete)
- Ways in: Runs locally, 7 of 10 core tasks
- Next: let an agent sign up for an account on its own (without one it does 70% of the core work)

## The drive, checkpoint by checkpoint

The drive this page reads, on 20 Oct 2026. A newer drive, on 24 Oct 2026, is in its history.

1. **Docs**: on its own (20 Oct 2026)
2. **Sign up**: not needed (20 Oct 2026)
3. **Verify**: not needed (20 Oct 2026)
4. **Key**: not needed (20 Oct 2026)
5. **First call**: on its own (20 Oct 2026)
6. **First action**: on its own (20 Oct 2026)
7. **Pay**: not tried
8. **Cancel**: not needed (20 Oct 2026)
9. **Delete**: no account (20 Oct 2026)

In on its own; 70% of the work done in the drive of 20 Oct 2026.

## How an agent gets in

1 of 4 ways in worked without a person.

- **Runs locally, no account**, 6 min (drive of 20 Oct 2026): an inbox not needed, a browser not needed, a person not needed; core tasks done this way: 7 of 10

The other ways in, as our agent tried them:

- Email and password: Stopped by the sign-in provider
- Continue with Google: Not tried: a step our agent doesn't take
- CLI code login: Not tried: no account yet

## Two kinds of agent

- An assistant in a browser (like ChatGPT agent or Claude on a computer): Stops at sign-up: Google sign-up asks birthday and gender.
- An agent talking to it directly (API, MCP, agent payments): Without an account (runs locally) it makes its first API call and does 70% of the core work, then stops.

## Who gets in

- Agents on a server: Get in on their own.
- Signed agents: The sign-up page opens.
- Agents in a person's browser: Needs a person.

Sign-up page checked 24 Oct 2026. Signed agents: the ones Cloudflare verifies.

## What an agent can do

7 of 10 core capabilities done on at least one surface, in the drive of 20 Oct 2026.

| Capability | Result | API | MCP | CLI | UI |
|---|---|---|---|---|---|
| Create or update a Firestore document | Done | Done | Not offered | Not tried | Not tried |
| Run a Firestore query with filters | Done | Done | Not offered | Not offered | Not tried |
| Delete a Firestore document | Done | Done | Not offered | Not offered | Not tried |
| Subscribe to realtime data changes | Done | Done | Not offered | Not offered | Not tried |
| Authenticate end-user accounts with Auth providers | Done | Done | Not offered | Not offered | Not tried |
| Configure sign-in providers for an app | Blocked | Blocked | Not offered | Not offered | Not tried |
| Upload a file to Cloud Storage | Done | Done | Not offered | Not offered | Not tried |
| Download a file from Cloud Storage | Done | Done | Not offered | Not offered | Not tried |
| Deploy a serverless Cloud Function | Partly | Not offered | Not offered | Partly | Not tried |
| Deploy a static or dynamic web app | Partly | Not offered | Not offered | Partly | Not tried |

Other capabilities: 5 of 28 done.

| Capability | Result | API | MCP | CLI | UI |
|---|---|---|---|---|---|
| Sync a local Realtime Database with the cloud while offline | Done | Done | Not offered | Not offered | Not tried |
| Store and sync relational data in a connected SQL database | Done | Done | Not offered | Not offered | Not tried |
| Set Firestore/Realtime Database/Storage security rules | Done | Done | Not offered | Not tried | Not tried |
| Invoke a Cloud Function over HTTPS or from a client call | Done | Done | Not offered | Not offered | Not offered |
| Schedule a Cloud Function on a cron schedule | Blocked | Not offered | Not offered | Not tried | Not tried |
| Read Cloud Functions logs | Partly | Not offered | Not offered | Partly | Not tried |
| Preview a Hosting deploy on a temporary URL | Blocked | Not offered | Not offered | Blocked | Not tried |
| Roll back a Hosting deploy | Blocked | Not offered | Not offered | Not offered | Not tried |
| Connect a custom domain to a Hosting site | Blocked | Not offered | Not offered | Blocked | Not tried |
| Send a push notification via Cloud Messaging | Blocked | Not tried | Not offered | Not offered | Not tried |
| Change app behavior remotely with Remote Config parameters | Blocked | Not tried | Not offered | Not offered | Not tried |
| Run an A/B test on app variants | Blocked | Not offered | Not offered | Not offered | Not tried |
| Track app crashes and errors with Crashlytics | Blocked | Not offered | Not offered | Not offered | Not tried |
| Distribute pre-release app builds to testers | Blocked | Not offered | Not offered | Blocked | Not tried |
| Protect backend resources from abuse with App Check | Blocked | Not offered | Not offered | Not offered | Not tried |
| Install a pre-built Extension | Blocked | Not offered | Not offered | Blocked | Not tried |
| Call the Gemini API directly from a client app | Blocked | Not offered | Not offered | Not offered | Not tried |
| Verify a phone number | Blocked | Not offered | Not offered | Not offered | Not tried |
| Run automated UI tests on virtual/physical devices | Blocked | Not offered | Not offered | Not tried | Not tried |
| Monitor app performance traces | Blocked | Not offered | Not offered | Not offered | Not tried |
| View Google Analytics events for the app | Blocked | Not offered | Not offered | Not offered | Not tried |
| Set environment variables and secrets for a backend | Blocked | Not offered | Not offered | Not tried | Not tried |
| Export Firestore/Realtime Database data to BigQuery | Blocked | Not offered | Not offered | Not tried | Not tried |
| Stream database changes to a connected listener or function | Done | Done | Not offered | Not offered | Not offered |
| Invite a team member to a Firebase project | Blocked | Not offered | Not offered | Not offered | Not tried |
| Set a member's role or permissions | Blocked | Not offered | Not offered | Not offered | Not tried |
| Enable multi-factor authentication and SAML/OIDC sign-in | Blocked | Not offered | Not offered | Not offered | Not tried |
| Read the project's usage and billing quotas | Blocked | Not offered | Not offered | Not offered | Not tried |

What it can't, and why:

- Create a Firebase (Google) account: Google's sign-up asks a person's birthday and gender; an agent has none
- Deploy functions or Hosting, or use any hosted project feature: every hosted route (console, CLI, MCP) needs a Google sign-in
- Use the MCP server's Firestore tools against the emulator: they still demand firebase login
- Buy Blaze: needs an account and a Cloud Billing account with a card; no agent rail

## Firebase, drive by drive

The same level in both drives.

| Drive | Level | Stopped at | Agent |
|---|---|---|---|
| 24 Oct 2026 | L3 | Sign up | Version 4 |
| 20 Oct 2026 | L3 | Sign up | Version 4 |

Every drive and move as data: https://agentdrives.com/api/tools/firebase-google/changes.json

## How an agent connects

- **MCP server**: yes. Official server. local stdio, in firebase-tools; 25 Nov 2025 · id srf_01m5byfwvyta8btq4bpx6g7qtv
- **API**: yes. Google REST APIs (Firestore v1, Identity Toolkit v1, Storage v0), mirrored by the local emulators · id srf_01m5byfwvymbgbz0009wb9d6ew
- **OpenAPI**: none found
- **CLI**: yes. firebase-tools 15.34.0; no firestore:write command · id srf_01m5byfwvynq9ja3hp1rbnbj6w
- **SDK**: yes · id srf_01m5byfwvy1n1xpdem7qqedh6e
- **Agent payments**: none found
- **llms.txt**: yes

## Does Firebase have an MCP server, and can an agent connect to it?

Yes. Firebase has an official MCP server. The server runs on the agent's own machine and speaks the 25 Nov 2025 MCP spec.

A new agent can get in on its own: in the drive of 20 Oct 2026, our agent got working access without signing up.

## How does an AI agent get a Firebase API key?

In the drive of 20 Oct 2026, our agent needed no key. Not needed: a documented route works without an account.

## Paying the agent way

Not tried yet: our agent worked without an account, so it had none to buy in.

The checkout: The checkout wasn't reached: Blaze.

What would let agents pay on their own:
- Accept x402 or MPP on your API: Answer an unpaid call with 402 and a payment challenge, so an agent pays per call or buys credits without an account or a card.
- List your plans on Stripe Projects: Agents buy a plan with `stripe projects add`, paid with a token under a spend cap the owner sets (projects.dev).
Ways to pay checked 20 Oct 2026.

Is this your product? Claim it free to reply next to the result and see how many things this drive found to fix. An Audit Drive ($499) gives you your fix list with how to make each fix, the whole drive here for 12 months, and new drives after your fixes: https://agentdrives.com/pricing?via=md#audit. Fixed something? Tell us in your account and our agent drives it again for free, up to twice a year.

## Behind the level

- Holds up: 72/100; Databases median 72 (7 products)
- Agent-ready setup: llms.txt found, OpenAPI not found, MCP server found, CLI found
- Not measured in this drive: Docs match

## The docs

The docs couldn't be read on this drive.


## Tried as documented

6 of 9 documented ways to do the core work worked when tried.

- 1 documented way didn't work
- 2 not tried (a paid plan, or no way to reach it)

## Firebase in Databases

5th of 7 Databases products our agent got into on its own.

4 of the 11 products we drove in Databases are higher; 1 other shares L3. As of 22 Oct 2026.

Products by level: L0 0, L1 4, L2 1, L3 2, L4 4, L5 0.

Also at L3:

- [Neon](https://agentdrives.com/tools/neon.md?via=md): L3 · Does the work, driven 19 Oct 2026

All of Databases, by level: https://agentdrives.com/categories/databases?via=md

## Tips for agent builders

- With no account, use the Emulator Suite: firebase emulators:start --project demo-<name>; Firestore and Database need Java 21.
- Call the emulators by REST: Firestore at 127.0.0.1:8080/v1/projects/<p>/databases/(default)/documents, Auth at 127.0.0.1:9099/identitytoolkit.googleapis.com/v1 (Authorization: Bearer owner for admin calls), Storage at 127.0.0.1:9199/v0/b/<bucket>/o.
- Storage metadata PATCH takes 'metadata', not the SDK's 'customMetadata', which is silently ignored.
- The MCP server's project tools need firebase login even with use_emulator; use REST against emulators instead.
- Firestore POST with ?documentId= is safe to retry (409 ALREADY_EXISTS); POST without an id makes duplicates.

## As data

- JSON: https://agentdrives.com/api/tools/firebase-google.json?via=md
- Markdown: https://agentdrives.com/tools/firebase-google.md?via=md
- Changes: https://agentdrives.com/api/tools/firebase-google/changes.json
- Stable id: prd_01m57vgtne6pbyq9kgyx54bqvy (https://agentdrives.com/id/prd_01m57vgtne6pbyq9kgyx54bqvy)
- MCP: get_tool {"slug":"firebase-google"}
