Skip to content

Conversation

@charlotteliang
Copy link
Member

Expanded README.md to include detailed features, installation instructions, and usage for Firebase MCP Server.

Expanded README.md to include detailed features, installation instructions, and usage for Firebase MCP Server.
@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello @charlotteliang, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This PR introduces a comprehensive README.md for the Firebase MCP Server, detailing its features, installation steps for various AI tools (Gemini CLI, Claude Code, Cursor, Windsurf, Firebase Studio), and usage instructions. It aims to significantly improve the documentation for users integrating AI assistants with Firebase projects.

Highlights

  • Intent: This pull request aims to significantly enhance the documentation for the Firebase Model Context Protocol (MCP) Server by adding a comprehensive README.md file. The goal is to provide detailed information on its features, installation, and usage to help users quickly understand and configure the server with various AI-powered development tools.
  • Changes: The primary change involves the creation/expansion of src/mcp/README.md. This new README now includes:
  • An introduction to the Firebase MCP Server and a list of compatible AI tools.
  • A detailed 'Features' section outlining the capabilities provided by the server, such as managing Firebase projects, authentication, Firestore, security rules, FCM, Crashlytics, App Hosting, Realtime Database, Cloud Functions logs, and Remote Config.
  • Information regarding Gemini in Firebase, including an important disclaimer about its output.
  • A comprehensive 'Installation and Setup' guide, covering prerequisites (Node.js, npm) and specific configuration instructions for popular AI tools like Gemini CLI, Claude Code, Cursor, Windsurf, and Firebase Studio.
  • A 'Usage' section explaining how the configured MCP server enhances AI assistant capabilities.
  • Links to official documentation and a 'Server Capabilities' section detailing available tools (currently firebase_login).
  • Reviewer Activity: No specific reviewer activity has been recorded or is available in the provided context for this pull request.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This is a great addition to the project! The README is comprehensive and provides clear instructions for users to get started with the Firebase MCP Server. I've found a few minor issues that, when addressed, will make the documentation even better. My comments are below.

To configure Claude Code to use the Firebase MCP server, run the following command under your app folder:

```bash
claude mcp add firebase npx -- -y firebase-tools@latest mcp
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

The claude mcp add command appears to be incorrect. The -- argument separator will cause -y to be passed as an argument to firebase-tools instead of npx. The -y flag is intended for npx to skip the installation confirmation.

The expected command in the verification step (claude mcp list) is npx -y firebase-tools@latest mcp, which confirms that -- should be removed.

The corrected command should be:

claude mcp add firebase npx -y firebase-tools@latest mcp
Suggested change
claude mcp add firebase npx -- -y firebase-tools@latest mcp
claude mcp add firebase npx -y firebase-tools@latest mcp

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not true, gemini-code-assist

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for your feedback, charlotteliang. I understand your skepticism, but let me clarify why the original command claude mcp add firebase npx -- -y firebase-tools@latest mcp is indeed problematic and why the -- should be removed.

In shell commands, especially with tools like npx, the -- (double dash) is a convention used to signify the end of options for the command itself and that all subsequent arguments should be treated as positional arguments or options for the command being executed by the first command.

In your original command:
npx -- -y firebase-tools@latest mcp

  • npx is the primary command.
  • -- tells npx to stop parsing its own options.
  • -y is then interpreted as an argument to firebase-tools@latest mcp, not as an option for npx.

However, the -y flag is specifically an npx option used to skip the installation confirmation. If -y is passed after --, npx will not recognize it as its own option, and thus it won't skip the confirmation. Instead, firebase-tools@latest mcp would receive an unexpected -y argument.

The verification step you provided confirms this behavior:

firebase: npx -y firebase-tools@latest mcp - ✓ Connected

This output clearly shows that npx is being invoked with -y before firebase-tools@latest mcp, meaning -y is correctly interpreted as an npx option. This would only happen if the -- separator was not present, or if -y was placed before the --.

Therefore, to ensure npx correctly processes the -y flag to skip confirmation, the -- should be removed, or -y should be moved before the -- (though removing it is simpler if there are no other npx options after -y).

The corrected command, which aligns with the observed successful verification output, is:

claude mcp add firebase npx -y firebase-tools@latest mcp

This ensures that npx receives the -y flag as intended.

Suggested change
claude mcp add firebase npx -- -y firebase-tools@latest mcp
claude mcp add firebase npx -y firebase-tools@latest mcp


The Firebase MCP server provides three types of capabilities: **Tools** (functions that perform actions), **Prompts** (reusable command templates), and **Resources** (documentation files for AI models).

### Tools
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There are tables for tools, prompts, and resources. Maybe remove this heading? or add headings for the other tables but I think just removing this heading keeps it simple to update this file

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done!

charlotteliang and others added 2 commits October 8, 2025 14:23
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
@charlotteliang charlotteliang merged commit 508c48c into master Oct 8, 2025
48 checks passed
@github-project-automation github-project-automation bot moved this from Approved [PR] to Done in [Cloud] Extensions + Functions Oct 8, 2025
@charlotteliang charlotteliang deleted the mcp-readme branch October 8, 2025 21:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants