Bạn có thể sử dụng máy chủ MCP Firebase để cung cấp cho các công cụ phát triển dựa trên AI khả năng hoạt động với các dự án Firebase của bạn. Máy chủ MCP Firebase hoạt động với mọi công cụ có thể đóng vai trò là ứng dụng MCP, bao gồm cả Claude Desktop, Cline, Cursor, Visual Studio Code Copilot, Windsurf Editor, v.v.
Trình chỉnh sửa được định cấu hình để sử dụng máy chủ MCP Firebase có thể sử dụng các tính năng AI của trình chỉnh sửa đó để giúp bạn:
- Tạo và quản lý dự án Firebase
- Quản lý người dùng Xác thực Firebase
- Làm việc với dữ liệu trong Cloud Firestore và Firebase Data Connect
- Truy xuất giản đồ Firebase Data Connect
- Tìm hiểu về các quy tắc bảo mật của bạn cho Firestore và Cloud Storage cho Firebase
- Gửi tin nhắn bằng Giải pháp gửi thông báo qua đám mây của Firebase
Đây chỉ là một phần danh sách; hãy xem phần chức năng của máy chủ để biết danh sách đầy đủ các công cụ có sẵn cho trình chỉnh sửa của bạn.
Trước khi bắt đầu
Đảm bảo bạn đã cài đặt Node.js và npm đang hoạt động.
Xác thực Firebase CLI bằng cách chạy lệnh sau:
npx -y firebase-tools@latest login --reauth
Máy chủ MCP Firebase sử dụng CLI để xử lý việc xác thực với các dự án Firebase của bạn. Bạn phải xác thực bằng CLI trước khi sử dụng máy chủ MCP. Nếu bạn cố gắng sử dụng máy chủ mà không đăng nhập hoặc nếu mã thông báo xác thực của bạn đã hết hạn, thì máy chủ sẽ in thông báo lỗi nhắc bạn xác thực lại.
Thiết lập ứng dụng khách MCP
Máy chủ MCP Firebase có thể hoạt động với mọi ứng dụng khách MCP hỗ trợ I/O tiêu chuẩn (stdio) làm phương tiện truyền tải. Sau đây là hướng dẫn cụ thể cho một số công cụ phổ biến:
Cấu hình cơ bản
Claude Desktop
Để định cấu hình Claude Desktop để sử dụng máy chủ MCP Firebase, hãy chỉnh sửa tệp claude_desktop_config.json
. Bạn có thể mở hoặc tạo tệp này trong trình đơn Claude > Settings (Claude > Cài đặt). Chọn thẻ Nhà phát triển, sau đó nhấp vào Chỉnh sửa cấu hình.
{
"mcpServers": {
"firebase": {
"command": "npx",
"args": ["-y", "firebase-tools@latest", "experimental:mcp"]
}
}
}
Cline
Để định cấu hình Cline để sử dụng máy chủ MCP Firebase, hãy chỉnh sửa tệp cline_mcp_settings.json
. Bạn có thể mở hoặc tạo tệp này bằng cách nhấp vào biểu tượng Máy chủ MCP ở đầu ngăn Cline, sau đó nhấp vào nút Configure MCP Servers (Định cấu hình máy chủ MCP).
{
"mcpServers": {
"firebase": {
"command": "npx",
"args": ["-y", "firebase-tools@latest", "experimental:mcp"],
"disabled": false
}
}
}
Con trỏ
Để định cấu hình con trỏ để sử dụng máy chủ MCP Firebase, hãy chỉnh sửa tệp .cursor/mcp.json
(để chỉ định cấu hình một dự án cụ thể) hoặc tệp ~/.cursor/mcp.json
(để cung cấp máy chủ MCP trong tất cả dự án):
"mcpServers": {
"firebase": {
"command": "npx",
"args": ["-y", "firebase-tools@latest", "experimental:mcp"]
}
}
Copilot của Visual Studio Code
Để định cấu hình một dự án, hãy chỉnh sửa tệp .vscode/mcp.json
trong không gian làm việc:
"servers": {
"firebase": {
"type": "stdio",
"command": "npx",
"args": ["-y", "firebase-tools@latest", "experimental:mcp"]
}
}
Để máy chủ có sẵn trong mọi dự án bạn mở, hãy chỉnh sửa chế độ cài đặt người dùng:
"mcp": {
"servers": {
"firebase": {
"type": "stdio",
"command": "npx",
"args": ["-y", "firebase-tools@latest", "experimental:mcp"]
}
}
}
Trình chỉnh sửa Windsurf
Để định cấu hình Trình chỉnh sửa Windsurf, hãy chỉnh sửa tệp ~/.codeium/windsurf/mcp_config.json
:
"mcpServers": {
"firebase": {
"command": "npx",
"args": ["-y", "firebase-tools@latest", "experimental:mcp"]
}
}
Cấu hình không bắt buộc
Ngoài cấu hình cơ bản cho mỗi ứng dụng khách (như đã trình bày ở trên), bạn có thể chỉ định hai thông số không bắt buộc:
--dir ABSOLUTE_DIR_PATH
: Đường dẫn tuyệt đối của thư mục chứafirebase.json
, để đặt ngữ cảnh dự án cho máy chủ MCP. Nếu không chỉ định, các công cụget_project_directory
vàset_project_directory
sẽ có sẵn và thư mục mặc định sẽ là thư mục đang hoạt động nơi máy chủ MCP được khởi động.--only FEATURE_1,FEATURE_2
: Danh sách các nhóm tính năng được phân tách bằng dấu phẩy để kích hoạt. Sử dụng tính năng này để giới hạn các công cụ chỉ hiển thị những tính năng mà bạn đang sử dụng. Xin lưu ý rằng các công cụ cốt lõi luôn có sẵn
Ví dụ:
"firebase": {
"command": "npx",
"args": [
"-y",
"firebase-tools@latest", "experimental:mcp",
"--dir", "/Users/turing/my-project",
"--only", "auth,firestore,storage"
]
}
Các chức năng của máy chủ MCP
Tên công cụ | Nhóm tính năng | Mô tả |
---|---|---|
firebase_get_project | core | Truy xuất thông tin về dự án Firebase đang hoạt động. |
firebase_list_apps | core | Truy xuất các ứng dụng đã đăng ký trong dự án Firebase hiện tại. |
firebase_get_admin_sdk_config | core | Lấy cấu hình SDK dành cho quản trị viên cho dự án hiện tại. |
firebase_get_sdk_config | core | Truy xuất thông tin cấu hình SDK Firebase cho nền tảng đã chỉ định. Bạn phải chỉ định một nền tảng hoặc một app_id. |
firebase_create_project | core | Tạo một dự án Firebase mới. |
firebase_create_app | core | Tạo một ứng dụng mới trong dự án Firebase cho Web, iOS hoặc Android. |
firebase_create_android_sha | core | Thêm hàm băm chứng chỉ SHA vào một ứng dụng Android hiện có. |
firebase_get_environment | core | Truy xuất thông tin về môi trường Firebase hiện tại, bao gồm người dùng đã xác thực hiện tại, thư mục dự án, dự án đang hoạt động và nhiều thông tin khác. |
firebase_update_environment | core | Cập nhật cấu hình môi trường Firebase, chẳng hạn như thư mục dự án, dự án đang hoạt động, tài khoản người dùng đang hoạt động, v.v. Sử dụng firebase_get_environment để xem môi trường hiện được định cấu hình. |
firebase_init | core | Khởi chạy các tính năng Firebase đã chọn trong không gian làm việc. Tất cả tính năng đều không bắt buộc; chỉ cung cấp những sản phẩm mà bạn muốn thiết lập. Bạn có thể khởi chạy các tính năng mới vào thư mục dự án hiện có, nhưng việc khởi chạy lại một tính năng hiện có có thể ghi đè cấu hình. |
firestore_delete_document | firestore | Xoá tài liệu Firestore khỏi cơ sở dữ liệu trong dự án hiện tại theo đường dẫn đầy đủ của tài liệu. Sử dụng phương thức này nếu bạn biết đường dẫn chính xác của một tài liệu. |
firestore_get_documents | firestore | Truy xuất một hoặc nhiều tài liệu Firestore từ cơ sở dữ liệu trong dự án hiện tại theo đường dẫn đầy đủ của tài liệu. Sử dụng phương thức này nếu bạn biết đường dẫn chính xác của một tài liệu. |
firestore_list_collections | firestore | Truy xuất danh sách các bộ sưu tập từ cơ sở dữ liệu Firestore trong dự án hiện tại. |
firestore_query_collection | firestore | Truy xuất một hoặc nhiều tài liệu Firestore từ một bộ sưu tập là cơ sở dữ liệu trong dự án hiện tại theo một bộ sưu tập có đường dẫn tài liệu đầy đủ. Sử dụng phương thức này nếu bạn biết đường dẫn chính xác của một bộ sưu tập và mệnh đề lọc mà bạn muốn cho tài liệu. |
firestore_get_rules | firestore | Truy xuất các quy tắc bảo mật Firestore đang hoạt động cho dự án hiện tại. |
firestore_validate_rules | firestore | Kiểm tra nguồn Quy tắc Firestore được cung cấp để tìm lỗi cú pháp và lỗi xác thực. Cung cấp HOẶC mã nguồn để xác thực HOẶC đường dẫn đến tệp nguồn. |
auth_get_user | auth | Truy xuất người dùng dựa trên địa chỉ email, số điện thoại hoặc UID. |
auth_disable_user | auth | Tắt hoặc bật người dùng dựa trên UID. |
auth_list_users | auth | Truy xuất tất cả người dùng trong dự án theo giới hạn đã chỉ định. |
auth_set_claim | auth | Đặt thông báo xác nhận quyền sở hữu tuỳ chỉnh trên tài khoản của một người dùng cụ thể. Dùng để tạo các giá trị đáng tin cậy liên kết với một người dùng, ví dụ: đánh dấu người dùng đó là quản trị viên. Tuyên bố có giới hạn về kích thước và phải ngắn gọn về tên và giá trị. Chỉ định MỘT TRONG HAI tham số value hoặc json_value . |
auth_set_sms_region_policy | auth | Đặt Chính sách khu vực SMS cho Firebase Auth để hạn chế các khu vực có thể nhận tin nhắn văn bản dựa trên danh sách ALLOW (CHO PHÉP) hoặc DENY (TỪ CHỐI) của mã quốc gia. Chính sách này sẽ ghi đè mọi chính sách hiện có khi được đặt. |
dataconnect_list_services | dataconnect | Liệt kê các dịch vụ Firebase Data Connect có trong dự án hiện tại. |
dataconnect_get_schema | dataconnect | Truy xuất thông tin về Giản đồ kết nối dữ liệu Firebase trong dự án, bao gồm cả nguồn dữ liệu Cloud SQL và Giản đồ GraphQL mô tả mô hình dữ liệu. |
dataconnect_get_connectors | dataconnect | Tải Trình kết nối Firebase Data Connect trong dự án, bao gồm các truy vấn GraphQL được xác định trước mà SDK ứng dụng có thể truy cập. |
dataconnect_execute_graphql | dataconnect | Thực thi một GraphQL tuỳ ý đối với dịch vụ Data Connect hoặc trình mô phỏng của dịch vụ đó. |
dataconnect_execute_graphql_read | dataconnect | Thực thi một truy vấn GraphQL tuỳ ý đối với dịch vụ Data Connect hoặc trình mô phỏng của dịch vụ đó. Không thể ghi dữ liệu. |
dataconnect_execute_mutation | dataconnect | Thực thi một đột biến Data Connect đã triển khai đối với một dịch vụ hoặc trình mô phỏng của dịch vụ đó. Có thể đọc và ghi dữ liệu. |
dataconnect_execute_query | dataconnect | Thực thi truy vấn Data Connect đã triển khai đối với một dịch vụ hoặc trình mô phỏng của dịch vụ đó. Không thể ghi dữ liệu. |
storage_get_rules | lượng nước giữ lại | Truy xuất các quy tắc bảo mật Bộ nhớ đang hoạt động cho dự án hiện tại. |
storage_validate_rules | lượng nước giữ lại | Kiểm tra nguồn Quy tắc bộ nhớ được cung cấp để tìm lỗi cú pháp và lỗi xác thực. Cung cấp HOẶC mã nguồn để xác thực HOẶC đường dẫn đến tệp nguồn. |
storage_get_object_download_url | lượng nước giữ lại | Truy xuất URL tải xuống cho một đối tượng trong Firebase Storage. |
messaging_send_message | nhắn tin | Gửi thông báo đến một mã thông báo đăng ký hoặc chủ đề Giải pháp gửi thông báo qua đám mây của Firebase. Chỉ có thể cung cấp MỘT trong hai thuộc tính registration_token hoặc topic trong một lệnh gọi cụ thể. |
remoteconfig_get_template | remoteconfig | Truy xuất mẫu cấu hình từ xa cho dự án |
remoteconfig_publish_template | remoteconfig | Xuất bản mẫu cấu hình từ xa mới cho dự án |
remoteconfig_rollback_template | remoteconfig | Khôi phục về một phiên bản cụ thể của mẫu Cấu hình từ xa cho một dự án |
crashlytics_list_top_issues | crashlytics | Liệt kê các sự cố hàng đầu từ crashlytics xảy ra trong ứng dụng. |