Firebase MCP Server

resmi

Anda dapat menggunakan server Firebase MCP untuk memberikan kemampuan alat pengembangan bertenaga AI dalam bekerja dengan proyek Firebase dan basis kode aplikasi Anda.

Apa yang bisa Anda lakukan dengan Firebase MCP?

  • Membuat dan mengelola proyek Firebase — Minta asisten untuk menginisialisasi proyek baru dengan firebase_create_project atau daftar proyek dan aplikasi yang ada.
  • Mengelola pengguna Authentication — Ambil detail pengguna dengan auth_get_users, perbarui klaim kustom, atau nonaktifkan akun melalui auth_update_user.
  • Mengkueri dan memperbarui Firestore atau Realtime Database — Baca, tulis, dan kelola dokumen menggunakan firebase_read_resources dan alat terkait basis data.
  • Debug crash dengan Crashlytics — Ambil detail masalah, daftar peristiwa crash terbaru, dan tambahkan catatan menggunakan crashlytics_get_issue dan crashlytics_list_events.
  • Memvalidasi dan mengambil aturan keamanan — Periksa aturan Firestore, Storage, atau Realtime Database untuk kesalahan dengan firebase_validate_security_rules.
  • Memantau backend App Hosting — Daftar backend melalui apphosting_list_backends dan ambil log build atau runtime terbaru dengan apphosting_fetch_logs.

Dokumentasi

Firebase MCP Server

License Install MCP Server

Firebase Model Context Protocol (MCP) Server memberikan kemampuan kepada alat pengembangan bertenaga AI untuk bekerja dengan proyek Firebase dan basis kode aplikasi Anda. Server MCP Firebase bekerja dengan alat apa pun yang dapat bertindak sebagai klien MCP, termasuk: Firebase Studio, Gemini CLI, Claude Code, Cline, Cursor, VS Code Copilot, Windsurf, dan banyak lagi!

Fitur

Editor yang dikonfigurasi untuk menggunakan server MCP Firebase dapat memanfaatkan kemampuan AI-nya untuk membantu Anda:

  • Membuat dan mengelola proyek Firebase - Menginisialisasi proyek baru, mendaftar proyek yang sudah ada, dan mengelola aplikasi Firebase
  • Mengelola pengguna Firebase Authentication - Mengambil, memperbarui, dan mengelola akun pengguna
  • Bekerja dengan Cloud Firestore dan Firebase SQL Connect - Melakukan kueri, membaca, menulis, dan mengelola dokumen basis data
  • Mengambil skema Firebase SQL Connect - Menghasilkan skema dan operasi dengan bantuan AI
  • Memahami aturan keamanan - Memvalidasi dan mengambil aturan keamanan untuk Firestore, Cloud Storage, dan Realtime Database
  • Mengirim pesan dengan Firebase Cloud Messaging - Mengirim notifikasi push ke perangkat dan topik
  • Mengakses data Crashlytics - Men-debug masalah, melihat laporan kerusakan, dan mengelola analitik kerusakan
  • Melakukan deploy ke App Hosting - Memantau backend dan mengambil log
  • Bekerja dengan Realtime Database - Membaca dan menulis data secara real-time
  • Melakukan kueri log Cloud Functions - Mengambil dan menganalisis log eksekusi fungsi
  • Mengelola Remote Config - Mendapatkan dan memperbarui template konfigurasi jarak jauh

Beberapa alat menggunakan Gemini di Firebase untuk membantu Anda:

  • Menghasilkan skema dan operasi Firebase SQL Connect
  • Berkonsultasi dengan Gemini tentang produk Firebase

Penting: Gemini di Firebase dapat menghasilkan output yang tampak masuk akal tetapi secara faktual tidak benar. Gemini mungkin merespons dengan informasi yang tidak akurat yang tidak mewakili pandangan Google. Validasi semua output dari Gemini sebelum Anda menggunakannya dan jangan gunakan kode yang dihasilkan yang belum diuji di produksi. Jangan masukkan informasi identitas pribadi (PII) atau data pengguna ke dalam obrolan.
Pelajari lebih lanjut tentang Gemini di Firebase dan cara Gemini menggunakan data Anda.

Instalasi dan Penyiapan

Prasyarat

Pastikan Anda memiliki instalasi Node.js dan npm yang berfungsi.

Konfigurasi Dasar

Server MCP Firebase dapat bekerja dengan klien MCP apa pun yang mendukung I/O standar (stdio) sebagai media transportasi. Saat server MCP Firebase melakukan panggilan alat, server tersebut menggunakan kredensial pengguna yang sama yang mengotorisasi Firebase CLI di lingkungan tempat server berjalan.

Berikut adalah petunjuk konfigurasi untuk alat bantu AI populer:

Gemini CLI

Instal ekstensi Firebase untuk Gemini CLI:

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

Claude Code

Opsi 1: Instal melalui plugin (Direkomendasikan)

Cara termudah untuk menyiapkan server MCP Firebase di Claude Code adalah dengan menginstal plugin Firebase resmi:

  1. Tambahkan marketplace Firebase untuk plugin Claude:

    claude plugin marketplace add firebase/firebase-tools
    
  2. Instal plugin Claude untuk Firebase:

    claude plugin install firebase@firebase
    
  3. Verifikasi instalasi:

    claude plugin
    
Opsi 2: Konfigurasikan server MCP secara manual

Atau, Anda dapat mengonfigurasi server MCP Firebase secara manual dengan menjalankan:

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

Anda dapat memverifikasi instalasi dengan menjalankan:

claude mcp list

Seharusnya menampilkan:

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

Cursor

Tambahkan ke .cursorrules di direktori proyek Anda atau konfigurasikan di pengaturan Cursor:

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

Windsurf

Tambahkan ke ~/.codeium/windsurf/mcp_config.json:

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

Firebase Studio

Untuk mengonfigurasi Firebase Studio agar menggunakan server MCP Firebase, edit atau buat file konfigurasi: .idx/mcp.json

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

Penggunaan

Setelah dikonfigurasi, server MCP akan secara otomatis menyediakan kemampuan Firebase kepada asisten AI Anda. Anda dapat:

  • Meminta AI untuk membantu menyiapkan layanan Firebase
  • Melakukan kueri basis data Firestore Anda
  • Mengelola pengguna autentikasi
  • Melakukan deploy ke Firebase Hosting
  • Men-debug masalah Crashlytics
  • Dan masih banyak lagi!

Untuk daftar lengkap alat dan sumber daya yang tersedia, lihat bagian Kemampuan Server di bawah.

Dokumentasi

Untuk informasi lebih lanjut, kunjungi dokumentasi resmi server MCP Firebase.

Kemampuan Server

Server MCP Firebase menyediakan tiga jenis kemampuan: Alat (fungsi yang melakukan tindakan), Prompt (template perintah yang dapat digunakan kembali), dan Sumber Daya (file dokumentasi untuk model AI).

Nama AlatGrup FiturDeskripsi
apphosting_fetch_logsapphostingGunakan ini untuk mengambil log terbaru untuk backend App Hosting yang ditentukan. Jika buildLogs ditentukan, log dari proses build untuk build terbaru akan dikembalikan. Log terbaru dicantumkan terlebih dahulu.
apphosting_list_backendsapphostingGunakan ini untuk mengambil daftar backend App Hosting di proyek saat ini. Daftar kosong berarti tidak ada backend. uri adalah URL publik dari backend. Backend yang berfungsi akan memiliki array managed_resources yang berisi entri run_service. run_service.service tersebut adalah nama resource layanan Cloud Run yang melayani backend App Hosting. Segmen terakhir dari nama tersebut adalah ID layanan. domains adalah daftar domain yang terkait dengan backend. Domain tersebut memiliki tipe CUSTOM atau DEFAULT. Setiap backend harus memiliki domain DEFAULT. Domain aktual yang akan digunakan pengguna untuk terhubung ke backend adalah parameter terakhir dari nama resource domain. Jika domain kustom telah diatur dengan benar, statusnya akan diakhiri dengan ACTIVE.
auth_get_usersauthGunakan ini untuk mengambil satu atau lebih pengguna Firebase Auth berdasarkan daftar UID atau daftar email.
auth_update_userauthGunakan ini untuk menonaktifkan, mengaktifkan, atau menetapkan klaim kustom pada akun pengguna tertentu.
auth_set_sms_region_policyauthGunakan ini untuk menetapkan kebijakan wilayah SMS untuk Firebase Authentication guna membatasi wilayah yang dapat menerima pesan teks berdasarkan daftar IZINKAN atau TOLAK kode negara. Kebijakan ini akan menimpa kebijakan yang ada saat ditetapkan.
firebase_logincoreGunakan ini untuk memasukkan pengguna ke Firebase CLI dan server Firebase MCP. Ini memerlukan Akun Google, dan proses masuk diperlukan untuk membuat dan bekerja dengan Proyek Firebase.
firebase_logoutcoreGunakan ini untuk mengeluarkan pengguna dari Firebase CLI dan server Firebase MCP.
firebase_validate_security_rulescoreGunakan ini untuk memeriksa Aturan Keamanan Firebase untuk Firestore, Storage, atau Realtime Database dari kesalahan sintaks dan validasi.
firebase_get_projectcoreGunakan ini untuk mengambil informasi tentang Proyek Firebase yang sedang aktif.
firebase_list_appscoreGunakan ini untuk mengambil daftar Aplikasi Firebase yang terdaftar di proyek Firebase yang sedang aktif. Aplikasi Firebase dapat berupa iOS, Android, atau Web.
firebase_list_projectscoreGunakan ini untuk mengambil daftar Proyek Firebase yang dapat diakses oleh pengguna yang masuk.
firebase_get_sdk_configcoreGunakan ini untuk mengambil informasi konfigurasi Firebase untuk Aplikasi Firebase. Anda harus menentukan SALAH SATU platform ATAU ID Aplikasi Firebase untuk Aplikasi Firebase yang terdaftar di Proyek Firebase yang sedang aktif.
firebase_create_projectcoreGunakan ini untuk membuat Proyek Firebase baru.
firebase_create_appcoreGunakan ini untuk membuat Aplikasi Firebase baru di Proyek Firebase yang sedang aktif. Aplikasi Firebase dapat berupa iOS, Android, atau Web.
firebase_create_android_shacoreGunakan ini untuk menambahkan hash sertifikat SHA yang ditentukan ke Aplikasi Firebase Android yang ditentukan.
firebase_get_environmentcoreGunakan ini untuk mengambil konfigurasi environment Firebase saat ini untuk Firebase CLI dan server Firebase MCP, termasuk pengguna terautentikasi saat ini, direktori proyek, Proyek Firebase aktif, dan lainnya. Semua alat memerlukan pengguna untuk terautentikasi, tetapi tidak semua informasi diperlukan untuk semua alat. Perhatikan persyaratan alat untuk informasi mana yang diperlukan.
firebase_update_environmentcoreGunakan ini untuk memperbarui konfigurasi environment untuk Firebase CLI dan server Firebase MCP, seperti direktori proyek, proyek aktif, akun pengguna aktif, menerima ketentuan layanan, dan lainnya. Gunakan firebase_get_environment untuk melihat environment yang saat ini dikonfigurasi.
firebase_initcoreGunakan ini untuk menginisialisasi layanan Firebase yang dipilih di ruang kerja (database Cloud Firestore, Firebase SQL Connect, Firebase Realtime Database, Firebase AI Logic). Semua layanan bersifat opsional; tentukan hanya produk yang ingin Anda siapkan. Anda dapat menginisialisasi fitur baru ke dalam direktori proyek yang sudah ada, tetapi menginisialisasi ulang fitur yang sudah ada dapat menimpa konfigurasi. Untuk men-deploy fitur yang diinisialisasi, jalankan perintah firebase deploy setelah alat firebase_init.
firebase_get_security_rulescoreGunakan ini untuk mengambil aturan keamanan untuk layanan Firebase yang ditentukan. Jika ada beberapa instance dari layanan tersebut dalam produk, aturan untuk instance default akan dikembalikan.
firebase_read_resourcescoreGunakan ini untuk membaca konten sumber daya firebase:// atau mencantumkan sumber daya yang tersedia
crashlytics_create_notecrashlyticsTambahkan catatan ke isu dari crashlytics.
crashlytics_delete_notecrashlyticsHapus catatan dari isu Crashlytics.
crashlytics_get_issuecrashlyticsMendapatkan data untuk isu Crashlytics, yang dapat digunakan sebagai titik awal untuk debugging.
crashlytics_list_eventscrashlyticsGunakan ini untuk mencantumkan peristiwa terbaru yang cocok dengan filter yang diberikan.
Dapat digunakan untuk mengambil sampel crash dan pengecualian untuk sebuah isu,
yang akan menyertakan stack trace dan data lain yang berguna untuk debugging.
crashlytics_batch_get_eventscrashlyticsMendapatkan peristiwa tertentu berdasarkan nama sumber daya.
Dapat digunakan untuk mengambil sampel crash dan pengecualian untuk sebuah isu,
yang akan menyertakan stack trace dan data lain yang berguna untuk debugging.
crashlytics_list_notescrashlyticsGunakan ini untuk mencantumkan semua catatan untuk sebuah isu di Crashlytics.
crashlytics_update_issuecrashlyticsGunakan ini untuk memperbarui status isu Crashlytics.
realtimedatabase_get_datarealtimedatabaseGunakan ini untuk mengambil data dari lokasi yang ditentukan di Firebase Realtime Database.
realtimedatabase_set_datarealtimedatabaseGunakan ini untuk menulis data ke lokasi yang ditentukan di Firebase Realtime Database.
dataconnect_builddataconnectGunakan ini untuk mengompilasi skema, operasi, dan/atau konektor Firebase SQL Connect serta memeriksa kesalahan build.
dataconnect_list_servicesdataconnectGunakan ini untuk menampilkan layanan Firebase SQL Connect lokal dan backend yang ada.
dataconnect_executedataconnectGunakan ini untuk menjalankan operasi GraphQL terhadap layanan SQL Connect atau emulatornya.
firestore_delete_documentfirestoreGunakan ini untuk menghapus dokumen Firestore dari database di proyek saat ini berdasarkan jalur dokumen lengkap. Gunakan ini jika Anda mengetahui jalur pasti suatu dokumen.
firestore_get_documentsfirestoreGunakan ini untuk mengambil satu atau beberapa dokumen Firestore dari database di proyek saat ini berdasarkan jalur dokumen lengkap. Gunakan ini jika Anda mengetahui jalur pasti suatu dokumen.
firestore_list_collectionsfirestoreGunakan ini untuk mengambil daftar koleksi dari database Firestore di proyek saat ini.
firestore_query_collectionfirestoreGunakan ini untuk mengambil satu atau beberapa dokumen Firestore dari suatu koleksi di database dalam proyek saat ini berdasarkan koleksi dengan jalur dokumen lengkap. Gunakan ini jika Anda mengetahui jalur pasti suatu koleksi dan klausa penyaringan yang Anda inginkan untuk dokumen tersebut.
functions_get_logsfunctionsGunakan ini untuk mengambil satu halaman entri log Cloud Functions menggunakan filter lanjutan Google Cloud Logging.
functions_list_functionsfunctionsMenampilkan semua fungsi yang telah dideploy di proyek Firebase Anda.
messaging_send_messagemessagingGunakan ini untuk mengirim pesan ke token registrasi atau topik Firebase Cloud Messaging. HANYA SATU dari registration_token atau topic yang dapat diberikan dalam satu panggilan tertentu.
remoteconfig_get_templateremoteconfigGunakan ini untuk mengambil template Firebase Remote Config yang ditentukan dari Proyek Firebase yang sedang aktif.
remoteconfig_update_templateremoteconfigGunakan ini untuk menerbitkan template remote config baru atau mengembalikan ke versi tertentu untuk proyek
storage_get_object_download_urlstorageGunakan ini untuk mengambil URL unduhan untuk objek di bucket Cloud Storage for Firebase.
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
firebase:deploycoreGunakan perintah ini untuk men-deploy resource ke Firebase.

Argumen:
<prompt> (opsional): instruksi spesifik apa pun yang ingin Anda berikan tentang deployment
firebase:initcoreGunakan perintah ini untuk menyiapkan layanan Firebase, seperti fitur backend dan AI.
firestore:generate_security_rulesfirestoreBuat Aturan Keamanan Firestore Firebase yang aman dan pengujian unit terkait untuk proyek Anda.
storage:generate_security_rulesstorageBuat Aturan Keamanan Firebase Storage yang aman dan pengujian unit terkait untuk proyek Anda.
crashlytics:connectcrashlyticsGunakan perintah ini untuk mengakses data Crashlytics aplikasi Firebase.
Nama ResourceDeskripsi
app_id_guidePanduan ID Aplikasi Firebase: memandu agen pengkodean dalam memilih ID Aplikasi Firebase di proyek saat ini
crashlytics_investigations_guidePanduan Investigasi Firebase Crashlytics: Memandu agen pengkodean saat menyelidiki bug yang dilaporkan dalam isu Crashlytics, termasuk prosedur untuk mendiagnosis dan memperbaiki crash.
crashlytics_issues_guidePanduan Isu Firebase Crashlytics: Memandu agen pengkodean saat bekerja dengan isu Crashlytics, termasuk aturan prioritas dan prosedur untuk mendiagnosis dan memperbaiki crash.
crashlytics_reports_guidePanduan Laporan Firebase Crashlytics: Memandu agen pengkodean dalam meminta laporan Crashlytics, termasuk mengatur filter yang sesuai dan cara memahami metrik. Agen harus membaca panduan ini sebelum meminta laporan apa pun.
backend_init_guidePanduan Inisialisasi Backend Firebase: memandu agen pengkodean dalam mengonfigurasi layanan backend Firebase di proyek saat ini
ai_init_guidePanduan Inisialisasi GenAI Firebase: memandu agen pengkodean dalam mengonfigurasi kemampuan GenAI di proyek saat ini dengan memanfaatkan Firebase
firestore_init_guidePanduan Inisialisasi Firestore: memandu agen pengkodean dalam mengonfigurasi Firestore di proyek saat ini
firestore_rules_init_guidePanduan Inisialisasi Aturan Firestore: memandu agen pengkodean dalam menyiapkan aturan keamanan Firestore di proyek
auth_init_guidePanduan Inisialisasi Firebase Authentication: memandu agen pengkodean dalam mengonfigurasi Firebase Authentication di proyek saat ini
hosting_init_guidePanduan Deployment Firebase Hosting: memandu agen pengkodean dalam men-deploy ke Firebase Hosting di proyek saat ini
docsDokumentasi Firebase: memuat konten teks biasa dari dokumentasi Firebase, misalnya https://firebase.google.com/docs/functions menjadi firebase://docs/functions