Сервер Firebase MCP

Вы можете использовать сервер Firebase MCP , чтобы предоставить инструментам разработки на основе ИИ возможность работать с вашими проектами Firebase и кодовой базой вашего приложения.

Сервер Firebase MCP работает с любым инструментом, который может выступать в качестве клиента MCP, включая: Antigravity, Gemini CLI и Gemini Code Assist, Firebase Studio, Claude Code и Claude Desktop, Cline, Cursor, VS Code Copilot, Windsurf и многое другое!

Перейти к инструкциям по настройке

Преимущества сервера MCP

Редактор, настроенный на использование сервера Firebase MCP, может использовать его возможности искусственного интеллекта, чтобы помочь вам:

  • Создание и управление проектами Firebase.
  • Управляйте пользователями Firebase Authentication.
  • Работайте с данными в Cloud Firestore и Firebase Data Connect.
  • Получение схем Firebase Data Connect
  • Ознакомьтесь с правилами безопасности для Firestore и Cloud Storage for Firebase.
  • Отправляйте сообщения с помощью Firebase Cloud Messaging.

Некоторые из инструментов используют Gemini в Firebase для оказания вам помощи:

  • Создание схемы и операций Firebase Data Connect
  • Обратитесь в компанию Gemini за консультацией по продуктам Firebase.

Это лишь частичные списки; полный список инструментов, доступных вашему редактору, см. в разделе « Возможности сервера» .

Настройте свой клиент MCP.

Сервер Firebase MCP может работать с любым клиентом MCP, поддерживающим стандартный ввод-вывод (stdio) в качестве среды передачи данных.

Когда сервер Firebase MCP выполняет вызовы инструментов, он использует те же учетные данные пользователя, которые авторизуют Firebase CLI в среде, где он запущен. Это может быть авторизованный пользователь или учетные данные приложения по умолчанию , в зависимости от среды.

Прежде чем начать

Убедитесь, что у вас установлены работающие Node.js и npm.

Базовая конфигурация

Ниже приведены основные инструкции по настройке сервера Firebase MCP для работы с некоторыми популярными инструментами искусственного интеллекта:

Антигравитация

Чтобы настроить Antigravity для использования сервера Firebase MCP:

  1. В Antigravity в панели агентов выберите пункт меню > Серверы MCP .
  2. Выберите Firebase > Установить .

Это автоматически обновит ваш файл mcp_config.json , который можно просмотреть, нажав «Управление серверами MCP» в верхней части панели «Магазин MCP» > «Просмотреть исходную конфигурацию» , следующим содержимым:

{
  "mcpServers": {
    "firebase-mcp-server": {
      "command": "npx",
      "args": ["-y", "firebase-tools@latest", "mcp"]
    }
  }
}

Gemini CLI

Рекомендуемый способ настройки Gemini CLI для использования сервера Firebase MCP — это установка расширения Firebase для Gemini CLI :

gemini extensions install https://github.com/gemini-cli-extensions/firebase/

Установка расширения Firebase автоматически настраивает сервер Firebase MCP, а также включает в себя файл контекста, который может повысить производительность разработки приложений Firebase в Gemini.

В качестве альтернативы вы можете настроить Gemini CLI для использования сервера Firebase MCP (но не файла контекста расширения Firebase), отредактировав или создав один из конфигурационных файлов:

  • В вашем проекте: .gemini/settings.json
  • В вашей домашней директории: ~/.gemini/settings.json

Если файл еще не существует, создайте его, щелкнув правой кнопкой мыши по родительскому каталогу и выбрав «Новый файл» . Добавьте в файл следующее содержимое:

{
  "mcpServers": {
    "firebase": {
      "command": "npx",
      "args": ["-y", "firebase-tools@latest", "mcp"]
    }
  }
}

Gemini Code Assist

Рекомендуемый способ настройки Gemini Code Assist для использования сервера Firebase MCP — это установка расширения Firebase для Gemini CLI :

gemini extensions install https://github.com/gemini-cli-extensions/firebase/

Установка расширения Firebase автоматически настраивает сервер Firebase MCP, а также включает в себя файл контекста, который может повысить производительность разработки приложений Firebase в Gemini.

В качестве альтернативы вы можете настроить Gemini Code Assist для использования сервера Firebase MCP (но не файла контекста расширения Firebase), отредактировав или создав один из конфигурационных файлов:

  • В вашем проекте: .gemini/settings.json
  • В вашей домашней директории: ~/.gemini/settings.json

Если файл еще не существует, создайте его, щелкнув правой кнопкой мыши по родительскому каталогу и выбрав «Новый файл» . Добавьте в файл следующее содержимое:

{
  "mcpServers": {
    "firebase": {
      "command": "npx",
      "args": ["-y", "firebase-tools@latest", "mcp"]
    }
  }
}

Firebase Studio

Чтобы настроить Firebase Studio для использования сервера Firebase MCP, отредактируйте или создайте конфигурационный файл: .idx/mcp.json .

Если файл еще не существует, создайте его, щелкнув правой кнопкой мыши по родительскому каталогу и выбрав «Новый файл» . Добавьте в файл следующее содержимое:

{
  "mcpServers": {
    "firebase": {
      "command": "npx",
      "args": ["-y", "firebase-tools@latest", "mcp"]
    }
  }
}

Клод

Кодекс Клода

  • Вариант 1 : Установка через плагин (рекомендуется)

    Самый простой способ настроить сервер Firebase MCP в Claude Code — установить официальный плагин Firebase:

    1. Добавьте Firebase Marketplace для плагинов Claude:

      claude plugin marketplace add firebase/firebase-tools
    2. Установите плагин Claude для Firebase:

      claude plugin install firebase@firebase
    3. Проверьте установку:

      claude plugin marketplace list
  • Вариант 2 : Настройка сервера MCP вручную.

    В качестве альтернативы вы можете настроить сервер Firebase MCP вручную:

    1. Выполните следующую команду в папке вашего приложения:

      claude mcp add firebase npx -- -y firebase-tools@latest mcp
    2. Проверьте установку:

      claude mcp list

      Должно отобразиться:

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

Клод Рабочий стол

Чтобы настроить Claude Desktop для использования сервера Firebase MCP, отредактируйте файл claude_desktop_config.json . Вы можете открыть или создать этот файл в меню Claude > Настройки . Выберите вкладку «Разработчик» , затем нажмите «Редактировать конфигурацию» .

{
  "mcpServers": {
    "firebase": {
      "command": "npx",
      "args": ["-y", "firebase-tools@latest", "mcp"]
    }
  }
}

Клайн

Чтобы настроить Cline для использования сервера Firebase MCP, отредактируйте файл cline_mcp_settings.json . Вы можете открыть или создать этот файл, щелкнув значок «Серверы MCP» в верхней части панели Cline, а затем нажав кнопку «Настроить серверы MCP» .

{
  "mcpServers": {
    "firebase": {
      "command": "npx",
      "args": ["-y", "firebase-tools@latest", "mcp"],
      "disabled": false
    }
  }
}

Курсор

Нажмите следующую кнопку, чтобы добавить сервер Firebase MCP в глобальную конфигурацию курсора.

Установите сервер MCP.

Если вы предпочитаете добавлять конфигурацию вручную или хотите настроить ее для конкретного проекта, вы можете отредактировать файл mcp.json .

  • Для конкретного проекта : отредактируйте .cursor/mcp.json
  • Для всех проектов (глобально) : отредактируйте файл ~/.cursor/mcp.json
"mcpServers": {
  "firebase": {
    "command": "npx",
    "args": ["-y", "firebase-tools@latest", "mcp"]
  }
}

VS Code Copilot

Для настройки отдельного проекта отредактируйте файл .vscode/mcp.json в вашей рабочей области:

"servers": {
  "firebase": {
    "type": "stdio",
    "command": "npx",
    "args": ["-y", "firebase-tools@latest", "mcp"]
  }
}

Чтобы сервер был доступен в каждом открытом вами проекте, отредактируйте пользовательские настройки, например:

"mcp": {
  "servers": {
    "firebase": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "firebase-tools@latest", "mcp"]
    }
  }
}

Виндсёрфинг

Для настройки редактора Windsurf отредактируйте файл ~/.codeium/windsurf/mcp_config.json :

"mcpServers": {
  "firebase": {
    "command": "npx",
    "args": ["-y", "firebase-tools@latest", "mcp"]
  }
}

Дополнительная конфигурация

Помимо базовой конфигурации для каждого клиента, показанной ранее, вы можете указать два необязательных параметра:

  • --dir ABSOLUTE_DIR_PATH : Абсолютный путь к каталогу, содержащему firebase.json , для установки контекста проекта для сервера MCP. Если не указано, становятся доступны инструменты get_project_directory и set_project_directory , и в качестве каталога по умолчанию будет использоваться рабочий каталог, в котором был запущен сервер MCP.

  • --only FEATURE_1 , FEATURE_2 : Разделенный запятыми список групп функций для активации. Используйте это, чтобы ограничить доступ к инструментам только теми функциями, которые вы активно используете. Обратите внимание, что основные инструменты всегда доступны.

Например:

"firebase": {
  "command": "npx",
  "args": [
    "-y",
    "firebase-tools@latest", "mcp",
    "--dir", "/Users/turing/my-project",
    "--only", "auth,firestore,storage"
  ]
}

Возможности сервера MCP

Сервер Firebase MCP предоставляет три различных категории функций MCP:

  • Prompts : Библиотека готовых сценариев подсказок, которые вы можете запускать; они оптимизированы для разработки и запуска приложений с использованием Firebase.

  • Инструменты : Набор инструментов, предназначенных для использования студентами магистратуры, которые помогут им напрямую работать с вашим проектом Firebase (с вашего согласия!).

  • Ресурсы : Документационные файлы, предназначенные для использования магистрами права (LLM) в качестве дополнительных указаний и контекста для выполнения задачи или достижения цели.

Подсказки

Сервер Firebase MCP поставляется с библиотекой предварительно написанных подсказок, оптимизированных для разработки и запуска приложений с использованием Firebase. Вы можете использовать эти подсказки для выполнения различных распространенных задач или целей.

В таблице ниже описаны запросы, которые предоставляет сервер MCP.

Большинство инструментов разработки, поддерживающих MCP, предоставляют удобный способ запуска этих командных строк. Например, Gemini CLI позволяет использовать эти команды в виде слэш-команд:

/firebase:init

В командной строке Gemini начните вводить /firebase: чтобы увидеть список доступных команд.

Имя подсказки Группа функций Описание
firebase:deploy основной Используйте эту команду для развертывания ресурсов в Firebase.

Аргументы:
<подсказка> (необязательно): любые конкретные инструкции, которые вы хотите предоставить по развертыванию
firebase:init основной Используйте эту команду для настройки сервисов Firebase, таких как бэкэнд и функции искусственного интеллекта.
firebase:consult основной Используйте эту команду, чтобы обратиться к Firebase Assistant и получить доступ к подробной и актуальной документации по платформе Firebase.

Аргументы:
<prompt>: вопрос для передачи модели Gemini в Firebase
crashlytics:connect крашлитики Получите доступ к данным Crashlytics приложения Firebase.

Инструменты

Сервер Firebase MCP также предоставляет ряд инструментов, предназначенных для использования студентами магистратуры, которые помогают им напрямую работать с вашим проектом Firebase (с вашего согласия!). В отличие от подсказок, вы не вызываете эти инструменты напрямую; вместо этого модели, поддерживающие вызов инструментов (такие как Gemini, Claude и GPT), могут автоматически вызывать эти инструменты для выполнения задач разработки по мере необходимости.

В таблице ниже описаны инструменты, предоставляемые сервером MCP.

Название инструмента Группа функций Описание
firebase_login основной Используйте это для входа пользователя в Firebase CLI и на сервер Firebase MCP. Для этого требуется учетная запись Google, и вход в систему необходим для создания и работы с проектами Firebase.
firebase_logout основной Используйте это для выхода пользователя из Firebase CLI и сервера Firebase MCP.
firebase_validate_security_rules основной Используйте это для проверки правил безопасности Firebase для Firestore, Storage или Realtime Database на наличие синтаксических ошибок и ошибок валидации.
firebase_get_project основной Используйте это для получения информации о текущем активном проекте Firebase.
firebase_list_apps основной Используйте эту функцию, чтобы получить список приложений Firebase, зарегистрированных в текущем активном проекте Firebase. Приложения Firebase могут быть для iOS, Android или веб-приложений.
firebase_list_projects основной Используйте эту функцию, чтобы получить список проектов Firebase, к которым у авторизованного пользователя есть доступ.
firebase_get_sdk_config основной Используйте это для получения информации о конфигурации Firebase для приложения Firebase. Необходимо указать ЛИБО платформу, ЛИБО идентификатор приложения Firebase для приложения Firebase, зарегистрированного в текущем активном проекте Firebase.
firebase_create_project основной Используйте это для создания нового проекта Firebase.
firebase_create_app основной Используйте это для создания нового приложения Firebase в текущем активном проекте Firebase. Приложения Firebase могут быть для iOS, Android или веб-приложений.
firebase_create_android_sha основной Используйте это для добавления указанного хеша SHA-сертификата в указанное приложение Firebase для Android.
firebase_get_environment основной Используйте эту функцию для получения текущей конфигурации среды Firebase для Firebase CLI и сервера Firebase MCP, включая текущего аутентифицированного пользователя, каталог проекта, активный проект Firebase и многое другое.
firebase_update_environment основной Используйте эту функцию для обновления конфигурации среды для Firebase CLI и сервера Firebase MCP, например, каталога проекта, активного проекта, активной учетной записи пользователя, принятия условий обслуживания и многого другого. Используйте firebase_get_environment , чтобы увидеть текущую настроенную среду.
firebase_init основной Используйте это для инициализации выбранных сервисов Firebase в рабочей области (база данных Cloud Firestore, Firebase Data Connect, база данных Firebase Realtime, Firebase AI Logic). Все сервисы являются необязательными; указывайте только те продукты, которые вы хотите настроить. Вы можете инициализировать новые функции в существующем каталоге проекта, но повторная инициализация существующей функции может перезаписать конфигурацию. Чтобы развернуть инициализированные функции, выполните команду firebase deploy после инструмента firebase_init .
firebase_get_security_rules основной Используйте эту функцию для получения правил безопасности для указанного сервиса Firebase. Если в продукте существует несколько экземпляров этого сервиса, возвращаются правила для экземпляра по умолчанию.
firebase_read_resources основной Используйте это для чтения содержимого firebase:// resources или для просмотра списка доступных ресурсов.
firestore_delete_document магазин огнетушителей Используйте эту функцию для удаления документов Firestore из базы данных в текущем проекте по полному пути к документу. Используйте её, если вам известен точный путь к документу.
firestore_get_documents магазин огнетушителей Используйте эту функцию для извлечения одного или нескольких документов Firestore из базы данных в текущем проекте по полным путям к документам. Используйте её, если вам известен точный путь к документу.
firestore_list_collections магазин огнетушителей Используйте это для получения списка коллекций из базы данных Firestore в текущем проекте.
firestore_query_collection магазин огнетушителей Используйте эту функцию для извлечения одного или нескольких документов Firestore из коллекции в базе данных текущего проекта, указав полный путь к документу. Используйте её, если вам известен точный путь к коллекции и условие фильтрации, которое вы хотите применить к документу.
auth_get_users аутентификация Используйте это для получения одного или нескольких пользователей Firebase Auth на основе списка UID или списка адресов электронной почты.
auth_update_user аутентификация Используйте это для отключения, включения или установки пользовательского утверждения для учетной записи конкретного пользователя.
auth_set_sms_region_policy аутентификация Используйте это для настройки региональной политики SMS-сообщений для аутентификации Firebase, чтобы ограничить регионы, которые могут получать текстовые сообщения, на основе списка кодов стран с пометками «РАЗРЕШЕНО» или «ЗАПРЕЩЕНО». Эта политика переопределит любые существующие политики после ее установки.
dataconnect_build dataconnect Используйте это для компиляции схемы, операций и/или коннекторов Firebase Data Connect и проверки на наличие ошибок сборки.
dataconnect_generate_schema dataconnect Используйте это для генерации схемы Firebase Data Connect на основе описания приложения, данного пользователем.
dataconnect_generate_operation dataconnect Используйте это для генерации единого запроса или мутации Firebase Data Connect на основе текущей развернутой схемы и предоставленной подсказки.
dataconnect_list_services dataconnect Используйте это для отображения списка существующих локальных и внутренних служб Firebase Data Connect.
dataconnect_execute dataconnect Используйте это для выполнения операции GraphQL с использованием сервиса Data Connect или его эмулятора.
storage_get_object_download_url хранилище Используйте это для получения URL-адреса для загрузки объекта из хранилища Cloud Storage for Firebase.
отправка_сообщений обмен сообщениями Используйте это для отправки сообщения в токен регистрации или тему Firebase Cloud Messaging. В конкретном вызове можно указать ТОЛЬКО ОДИН из параметров: registration_token или topic .
functions_get_logs функции Используйте это для получения страницы записей журналов Cloud Functions с помощью расширенных фильтров Google Cloud Logging.
remoteconfig_get_template удаленная конфигурация Используйте это для получения указанного шаблона Firebase Remote Config из текущего активного проекта Firebase.
remoteconfig_update_template удаленная конфигурация Используйте это для публикации нового шаблона удаленной конфигурации или для отката к определенной версии проекта.
crashlytics_create_note крашлитики Добавить примечание к проблеме из Crashlytics.
crashlytics_delete_note крашлитики Удалить заметку из задачи Crashlytics.
crashlytics_get_issue крашлитики Получает данные по проблеме в Crashlytics, которые можно использовать в качестве отправной точки для отладки.
crashlytics_list_events крашлитики Используйте эту строку для отображения списка последних событий, соответствующих заданным фильтрам.
Может использоваться для получения примеров сбоев и исключений, связанных с проблемой.
которые будут включать трассировку стека и другие данные, полезные для отладки.
crashlytics_batch_get_events крашлитики Получает конкретные события по имени ресурса.
Может использоваться для получения примеров сбоев и исключений, связанных с проблемой.
которые будут включать трассировку стека и другие данные, полезные для отладки.
crashlytics_list_notes крашлитики Используйте это для отображения всех заметок по проблеме в Crashlytics.
crashlytics_get_top_issues крашлитики Используйте это для подсчета событий и уникальных затронутых пользователей, сгруппированных по проблеме .
Группы отсортированы по количеству событий в порядке убывания.
Учитываются только события, соответствующие заданным фильтрам.
crashlytics_get_top_variants крашлитики Подсчитывает количество событий и уникальных затронутых пользователей, сгруппированных по варианту проблемы.
Группы отсортированы по количеству событий в порядке убывания.
Учитываются только события, соответствующие заданным фильтрам.
crashlytics_get_top_versions крашлитики Подсчитывает количество событий и уникальных затронутых пользователей, сгруппированных по версии .
Группы отсортированы по количеству событий в порядке убывания.
Учитываются только события, соответствующие заданным фильтрам.
crashlytics_get_top_apple_devices крашлитики Подсчитывает количество событий и уникальных затронутых пользователей, сгруппированных по устройствам Apple.
Группы отсортированы по количеству событий в порядке убывания.
Учитываются только события, соответствующие заданным фильтрам.
Подходит только для приложений iOS, iPadOS и MacOS.
crashlytics_get_top_android_devices крашлитики Подсчитывает количество событий и уникальных затронутых пользователей, сгруппированных по типу устройства Android.
Группы отсортированы по количеству событий в порядке убывания.
Учитываются только события, соответствующие заданным фильтрам.
Актуально только для приложений Android.
crashlytics_get_top_operating_systems крашлитики Подсчитывает количество событий и уникальных затронутых пользователей, сгруппированных по операционной системе .
Группы отсортированы по количеству событий в порядке убывания.
Учитываются только события, соответствующие заданным фильтрам.
crashlytics_update_issue крашлитики Используйте это для обновления статуса проблемы в Crashlytics.
apphosting_fetch_logs хостинг приложений Используйте эту опцию для получения самых последних логов для указанного бэкэнда хостинга приложений. Если указан параметр buildLogs , возвращаются логи процесса сборки для последней версии приложения. Самые последние логи отображаются первыми.
apphosting_list_backends хостинг приложений Используйте это для получения списка бэкэндов App Hosting в текущем проекте. Пустой список означает отсутствие бэкэндов. uri — это публичный URL бэкэнда. Работающий бэкэнд будет иметь массив managed_resources , который будет содержать запись run_service . run_service.service — это имя ресурса службы Cloud Run, обслуживающей бэкэнд App Hosting. Последний сегмент этого имени — это идентификатор службы. domains — это список доменов, связанных с бэкэндом. Они имеют тип CUSTOM или DEFAULT . Каждый бэкэнд должен иметь домен DEFAULT . Фактический домен, который пользователь будет использовать для подключения к бэкэнду, является последним параметром имени ресурса домена. Если пользовательский домен настроен правильно, он будет иметь статусы, заканчивающиеся на ACTIVE .
realtimedatabase_get_data база данных реального времени Используйте это для извлечения данных из указанного места в базе данных Firebase Realtime Database.
realtimedatabase_set_data база данных реального времени Используйте это для записи данных в указанное место в базе данных Firebase Realtime Database.

Ресурсы

Сервер MCP предоставляет ресурсы, представляющие собой файлы документации, предназначенные для использования в рамках программ LLM. Модели, поддерживающие использование ресурсов, автоматически включают соответствующие ресурсы в контекст сессии.

В таблице ниже описаны ресурсы, предоставляемые сервером MCP.

Название ресурса Описание
backend_init_guide Руководство по инициализации бэкенда Firebase: помогает программисту настроить службы бэкенда Firebase в текущем проекте.
ai_init_guide Руководство по инициализации Firebase GenAI: помогает программисту настроить возможности GenAI в текущем проекте с использованием Firebase.
data_connect_init_guide Руководство по инициализации Firebase Data Connect: помогает программисту настроить Data Connect для доступа к PostgreSQL в текущем проекте.
firestore_init_guide Руководство по инициализации Firestore: помогает программисту настроить Firestore в текущем проекте.
firestore_rules_init_guide Руководство по инициализации правил Firestore: помогает программисту настроить правила безопасности Firestore в проекте.
rtdb_init_guide Руководство по инициализации Firebase Realtime Database: помогает программисту настроить базу данных Realtime Database в текущем проекте.
auth_init_guide Руководство по инициализации аутентификации Firebase: помогает программисту настроить аутентификацию Firebase в текущем проекте.
hosting_init_guide Руководство по развертыванию в Firebase Hosting: помогает программисту выполнить развертывание в Firebase Hosting в текущем проекте.
документы Firebase Docs: загружает текстовое содержимое из документации Firebase, например, https://firebase.google.com/docs/functions становится firebase://docs/functions