Firebase MCP Server

공식

Firebase MCP 서버를 사용하면 AI 기반 개발 도구가 Firebase 프로젝트 및 앱의 코드베이스와 작업할 수 있습니다.

Firebase MCP(으)로 무엇을 할 수 있나요?

  • Firebase 프로젝트 및 앱 관리 — firebase_list_projects 및 firebase_create_app을 통해 프로젝트 목록을 요청하거나, 새 프로젝트를 만들거나, iOS/Android/Web 앱을 등록할 수 있습니다.
  • Firestore 데이터 쿼리 및 쓰기 — firestore_get_documents 및 firestore_query_collection을 사용하여 경로별로 문서를 검색하거나, 컬렉션을 나열하거나, 필터링된 쿼리를 실행할 수 있습니다.
  • Crashlytics로 크래시 디버깅 — crashlytics_get_issue 및 crashlytics_update_issue를 사용하여 이슈 세부 정보를 가져오거나, 최근 이벤트를 나열하거나, 이슈 상태를 업데이트할 수 있습니다.
  • 푸시 알림 보내기 — messaging_send_message를 사용하여 기기 토큰 또는 토픽에 Firebase Cloud Messaging 메시지를 전달할 수 있습니다.
  • 보안 규칙 검증 및 검색 — firebase_validate_security_rules를 통해 Firestore, Storage 또는 Realtime Database 규칙의 구문을 확인할 수 있습니다.
  • Auth 사용자 및 Remote Config 관리 — auth_get_users로 사용자 계정을 조회하거나 업데이트하고, Remote Config 템플릿을 가져오거나 게시할 수 있습니다.

문서

Firebase MCP 서버

License Install MCP Server

Firebase Model Context Protocol(MCP) 서버는 AI 기반 개발 도구가 Firebase 프로젝트 및 앱 코드베이스와 작업할 수 있는 기능을 제공합니다. Firebase MCP 서버는 MCP 클라이언트 역할을 할 수 있는 모든 도구와 함께 작동합니다. 여기에는 Firebase Studio, Gemini CLI, Claude Code, Cline, Cursor, VS Code Copilot, Windsurf 등이 포함됩니다!

기능

Firebase MCP 서버를 사용하도록 구성된 편집기는 AI 기능을 활용하여 다음 작업을 도와줄 수 있습니다:

  • Firebase 프로젝트 생성 및 관리 - 새 프로젝트 초기화, 기존 프로젝트 나열, Firebase 앱 관리
  • Firebase Authentication 사용자 관리 - 사용자 계정 검색, 업데이트 및 관리
  • Cloud Firestore 및 Firebase SQL Connect 작업 - 데이터베이스 문서 쿼리, 읽기, 쓰기 및 관리
  • Firebase SQL Connect 스키마 검색 - AI 지원으로 스키마 및 작업 생성
  • 보안 규칙 이해 - Firestore, Cloud Storage 및 Realtime Database에 대한 보안 규칙 검증 및 검색
  • Firebase Cloud Messaging으로 메시지 전송 - 기기 및 주제에 푸시 알림 전송
  • Crashlytics 데이터 액세스 - 문제 디버깅, 충돌 보고서 보기, 충돌 분석 관리
  • App Hosting에 배포 - 백엔드 모니터링 및 로그 검색
  • Realtime Database 작업 - 실시간 데이터 읽기 및 쓰기
  • Cloud Functions 로그 쿼리 - 함수 실행 로그 검색 및 분석
  • Remote Config 관리 - 원격 구성 템플릿 가져오기 및 업데이트

일부 도구는 Firebase의 Gemini를 사용하여 다음 작업을 도와줍니다:

  • Firebase SQL Connect 스키마 및 작업 생성
  • Firebase 제품에 대해 Gemini에 문의

중요: Firebase의 Gemini는 그럴듯해 보이지만 사실과 다를 수 있는 출력을 생성할 수 있습니다. Google의 견해를 대표하지 않는 부정확한 정보로 응답할 수 있습니다. 사용 전에 Gemini의 모든 출력을 검증하고 프로덕션에서 테스트되지 않은 생성 코드를 사용하지 마십시오. 채팅에 개인 식별 정보(PII) 또는 사용자 데이터를 입력하지 마십시오.
Firebase의 Gemini 및 데이터 사용 방식에 대해 자세히 알아보세요.

설치 및 설정

사전 요구 사항

Node.js 및 npm이 제대로 설치되어 있는지 확인하세요.

기본 구성

Firebase MCP 서버는 표준 입출력(stdio)을 전송 매체로 지원하는 모든 MCP 클라이언트와 함께 작동할 수 있습니다. Firebase MCP 서버가 도구 호출을 수행하면 실행 중인 환경에서 Firebase CLI를 인증하는 동일한 사용자 자격 증명을 사용합니다.

다음은 널리 사용되는 AI 지원 도구에 대한 구성 지침입니다:

Gemini CLI

Gemini CLI용 Firebase 확장 프로그램을 설치하세요:

gemini extensions install https://github.com/firebase/agent-skills

Claude Code

옵션 1: 플러그인으로 설치(권장)

Claude Code에서 Firebase MCP 서버를 설정하는 가장 쉬운 방법은 공식 Firebase 플러그인을 설치하는 것입니다:

  1. Claude 플러그인용 Firebase 마켓플레이스를 추가하세요:

    claude plugin marketplace add firebase/firebase-tools
    
  2. Firebase용 Claude 플러그인을 설치하세요:

    claude plugin install firebase@firebase
    
  3. 설치를 확인하세요:

    claude plugin
    
옵션 2: MCP 서버 수동 구성

또는 다음을 실행하여 Firebase MCP 서버를 수동으로 구성할 수 있습니다:

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

다음을 실행하여 설치를 확인할 수 있습니다:

claude mcp list

다음과 같이 표시되어야 합니다:

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

Cursor

프로젝트 디렉터리의 .cursorrules에 추가하거나 Cursor 설정에서 구성하세요:

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

Windsurf

~/.codeium/windsurf/mcp_config.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"]
    }
  }
}

사용법

구성이 완료되면 MCP 서버는 AI 어시스턴트에 Firebase 기능을 자동으로 제공합니다. 다음을 수행할 수 있습니다:

  • AI에게 Firebase 서비스 설정을 도와달라고 요청
  • Firestore 데이터베이스 쿼리
  • 인증 사용자 관리
  • Firebase Hosting에 배포
  • Crashlytics 문제 디버깅
  • 그 외 다양한 작업!

사용 가능한 도구 및 리소스의 전체 목록은 아래 서버 기능 섹션을 참조하세요.

문서

자세한 내용은 공식 Firebase MCP 서버 문서를 방문하세요.

서버 기능

Firebase MCP 서버는 도구(작업을 수행하는 함수), 프롬프트(재사용 가능한 명령 템플릿), 리소스(AI 모델용 문서 파일)의 세 가지 유형의 기능을 제공합니다.

도구 이름기능 그룹설명
apphosting_fetch_logsapphostingApp Hosting 백엔드의 최근 서비스 또는 빌드 로그를 가져옵니다.
apphosting_list_backendsapphosting프로젝트의 App Hosting 백엔드, 트래픽 구성 및 사용자 지정 도메인을 나열합니다.
auth_get_usersauthUID, 이메일, 전화번호로 Firebase Auth 사용자를 검색하거나 모든 사용자를 나열합니다.
auth_update_userauth사용자 계정을 활성화/비활성화하거나 사용자 지정 클레임을 설정하여 업데이트합니다.
auth_set_sms_region_policyauthFirebase Authentication에 대해 특정 국가 코드를 허용하거나 거부하는 SMS 지역 정책을 설정합니다.
firebase_logincore사용자를 Firebase CLI 및 MCP 서버에 로그인하거나 현재 인증 상태를 확인합니다.
firebase_logoutcore사용자를 Firebase CLI 및 MCP 서버에서 로그아웃합니다.
firebase_validate_security_rulescoreFirestore, Storage 또는 Realtime Database 보안 규칙의 구문을 검증하고 오류를 확인합니다.
firebase_get_projectcore현재 활성화된 Firebase 프로젝트의 메타데이터 및 구성 세부 정보를 검색합니다.
firebase_list_appscore활성 프로젝트에 등록된 모든 Firebase 앱을 나열합니다.
firebase_list_projectscore인증된 사용자가 액세스할 수 있는 Firebase 프로젝트를 나열합니다.
firebase_get_sdk_configcore등록된 Firebase 앱의 SDK 구성 세부 정보 또는 구성 파일 내용을 검색합니다.
firebase_create_projectcore새 Firebase 프로젝트를 만들거나 기존 Google Cloud 프로젝트에서 Firebase 서비스를 활성화합니다.
firebase_create_appcore활성 Firebase 프로젝트에 새 iOS, Android 또는 Web 앱을 만듭니다.
firebase_create_android_shacore활성 Firebase 프로젝트의 Android 앱에 SHA-1 또는 SHA-256 인증서 해시를 추가합니다.
firebase_get_environmentcore현재 Firebase CLI 및 MCP 환경 구성, 활성 프로젝트 및 인증된 사용자를 검색합니다.
firebase_update_environmentcore프로젝트 디렉터리, 활성 프로젝트 또는 활성 사용자 계정과 같은 환경 설정을 업데이트합니다.
firebase_initcore로컬 프로젝트 작업 영역에서 Firebase 서비스를 초기화하고 구성합니다.
firebase_get_security_rulescoreFirestore, Storage 또는 Realtime Database의 활성 보안 규칙을 검색합니다.
firebase_read_resourcescore내부 firebase:// 문서 리소스의 내용을 읽거나 사용 가능한 모든 리소스를 나열합니다.
crashlytics_create_notecrashlyticsAndroid 또는 iOS 앱의 Crashlytics 이슈에 메모를 추가합니다.
crashlytics_delete_notecrashlyticsAndroid 또는 iOS 앱의 Crashlytics 이슈에서 메모를 삭제합니다.
crashlytics_get_issuecrashlytics특정 Crashlytics 이슈의 세부 정보 및 메타데이터를 검색합니다.
crashlytics_list_eventscrashlytics이슈에 대해 지정된 필터와 일치하는 최근 충돌 및 예외 이벤트를 나열합니다.
crashlytics_batch_get_eventscrashlytics디버깅을 위해 리소스 이름으로 샘플 충돌 및 예외 이벤트를 검색합니다.
crashlytics_list_notescrashlyticsAndroid 또는 iOS 앱의 Crashlytics 이슈에 첨부된 모든 메모를 나열합니다.
crashlytics_get_reportcrashlyticsCrashlytics 이슈 및 이벤트에 대한 집계된 수치 보고서를 생성합니다.
crashlytics_update_issuecrashlyticsCrashlytics 이슈의 상태(OPEN 또는 CLOSED)를 업데이트합니다.
realtimedatabase_get_datarealtimedatabaseFirebase Realtime Database의 지정된 경로에서 데이터를 읽습니다.
realtimedatabase_set_datarealtimedatabaseFirebase Realtime Database의 지정된 경로에 JSON 데이터를 씁니다.
dataconnect_builddataconnectFirebase SQL Connect 스키마, 작업 및 커넥터를 컴파일하여 구문과 유형을 검증합니다.
dataconnect_list_servicesdataconnect로컬 및 배포된 Firebase SQL Connect 서비스, 스키마 및 커넥터를 나열합니다.
dataconnect_executedataconnectFirebase SQL Connect 서비스 또는 에뮬레이터에 대해 GraphQL 쿼리 또는 변형을 실행합니다.
firestore_delete_documentfirestore전체 문서 경로로 현재 프로젝트의 데이터베이스에서 Firestore 문서를 삭제하려면 이 도구를 사용하세요. 문서의 정확한 경로를 알고 있는 경우에 사용하세요.
firestore_get_documentsfirestore전체 문서 경로로 현재 프로젝트의 데이터베이스에서 하나 이상의 Firestore 문서를 검색하려면 이 도구를 사용하세요. 문서의 정확한 경로를 알고 있는 경우에 사용하세요.
firestore_list_collectionsfirestore현재 프로젝트의 Firestore 데이터베이스에서 컬렉션 목록을 검색하려면 이 도구를 사용하세요.
firestore_query_collectionfirestore선택적 필터 및 정렬을 사용하여 컬렉션에서 Firestore 문서를 쿼리합니다.
functions_get_logsfunctionsGoogle Cloud Logging에서 Cloud Functions 로그 항목을 검색하고 필터링합니다.
functions_list_functionsfunctionsFirebase 프로젝트에 배포된 모든 Cloud Functions를 나열합니다.
messaging_send_messagemessaging기기 등록 토큰 또는 주제에 Firebase Cloud Messaging 푸시 알림을 보냅니다.
remoteconfig_get_templateremoteconfigFirebase Remote Config 템플릿의 활성 버전 또는 지정된 버전을 검색합니다.
remoteconfig_update_templateremoteconfig새 Firebase Remote Config 템플릿을 게시하거나 이전 버전으로 롤백합니다.
storage_get_object_download_urlstorageCloud Storage 버킷의 객체에 대한 다운로드 URL을 검색합니다.
프롬프트 이름기능 그룹설명
firebase:deploycore이 명령을 사용하여 Firebase에 리소스를 배포합니다.

인수:
<prompt> (선택 사항): 배포에 대해 제공하려는 특정 지침
firebase:initcore이 명령을 사용하여 백엔드 및 AI 기능과 같은 Firebase 서비스를 설정합니다.
firestore:generate_security_rulesfirestore프로젝트에 대한 안전한 Firebase Firestore 보안 규칙 및 해당 단위 테스트를 생성합니다.
storage:generate_security_rulesstorage프로젝트에 대한 안전한 Firebase Storage 보안 규칙 및 해당 단위 테스트를 생성합니다.
crashlytics:connectcrashlytics이 명령을 사용하여 Firebase 앱의 Crashlytics 데이터에 액세스합니다.
리소스 이름설명
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
app_id_guideFirebase 앱 ID 가이드: 현재 프로젝트에서 Firebase 앱 ID를 선택할 때 코딩 에이전트를 안내합니다.
crashlytics_investigations_guideFirebase Crashlytics 조사 가이드: Crashlytics 이슈에 보고된 버그를 조사할 때 코딩 에이전트를 안내하며, 크래시 진단 및 수정 절차를 포함합니다.
crashlytics_issues_guideFirebase Crashlytics 이슈 가이드: Crashlytics 이슈를 처리할 때 코딩 에이전트를 안내하며, 우선순위 규칙과 크래시 진단 및 수정 절차를 포함합니다.
crashlytics_reports_guideFirebase Crashlytics 보고서 가이드: 적절한 필터 설정과 메트릭 이해 방법을 포함하여 Crashlytics 보고서를 요청할 때 코딩 에이전트를 안내합니다. 에이전트는 보고서를 요청하기 전에 이 가이드를 읽어야 합니다.
backend_init_guideFirebase 백엔드 초기화 가이드: 현재 프로젝트에서 Firebase 백엔드 서비스를 구성할 때 코딩 에이전트를 안내합니다.
ai_init_guideFirebase GenAI 초기화 가이드: Firebase를 활용하여 현재 프로젝트에서 GenAI 기능을 구성할 때 코딩 에이전트를 안내합니다.
firestore_init_guideFirestore 초기화 가이드: 현재 프로젝트에서 Firestore를 구성할 때 코딩 에이전트를 안내합니다.
firestore_rules_init_guideFirestore 규칙 초기화 가이드: 프로젝트에서 Firestore 보안 규칙을 설정할 때 코딩 에이전트를 안내합니다.
auth_init_guideFirebase 인증 초기화 가이드: 현재 프로젝트에서 Firebase 인증을 구성할 때 코딩 에이전트를 안내합니다.
hosting_init_guideFirebase 호스팅 배포 가이드: 현재 프로젝트에서 Firebase 호스팅에 배포할 때 코딩 에이전트를 안내합니다.
docsFirebase 문서: Firebase 문서에서 일반 텍스트 콘텐츠를 로드합니다. 예: https://firebase.google.com/docs/functions은(는) firebase://docs/functions이(가) 됩니다.