USER GUIDE
Firescope 매뉴얼
설치부터 일상적인 운영까지, 순서대로 읽으면 곧바로 사용할 수 있는 가이드입니다. 이미지는 모두 실제 앱의 화면입니다.
설치
- 다운로드에서 Mac용
.dmg를 받습니다(Apple Silicon / Intel 을 선택할 수 있습니다). - 다운로드한
.dmg를 열고,Firescope 아이콘을 "응용 프로그램" 폴더로 드래그합니다. - 응용 프로그램 폴더에서 Firescope를 실행합니다.
Windows
- 다운로드에서
Firescope-Setup.exe를 받아 실행합니다. - 처음 실행할 때 SmartScreen 경고가 뜨면"추가 정보" → "실행"을 선택해 진행하세요.

초기 설정(언어와 테마)
처음 실행하면 4단계 설정 화면이 열립니다. 먼저 표시 언어를 선택합니다(日本語・English・简体中文・繁體中文・한국어・Español・Português・Français・Deutsch 총 9개 언어 내장). 클릭하는 즉시 화면에 반영되므로, 고민된다면 눌러서 확인해 보세요.

다음으로 테마를 선택합니다. Light / Dark를 포함해 10가지. 이것도 클릭하면 그 자리에서 미리보기됩니다.

Firestore에 연결하기
연결 방법은 두 가지입니다. 더 간편한 쪽은Google 계정으로 로그인하는 방법으로, 키 파일을 준비할 필요가 없습니다. 기존처럼서비스 계정 비공개 키(JSON)를 사용할 수도 있습니다.

방법 1: Google 계정으로 로그인하기
평소 쓰는 Google 계정으로 Firescope를 인증하면,접근 가능한 Firebase 프로젝트 목록에서 고르기만 하면연결됩니다. 키 파일을 내려받거나 보관할 필요가 없습니다.
- 연결 추가 대화상자의 "Google" 탭에서 "Google로 로그인"을 누르면 브라우저에서 동의 화면이 열립니다.
- 앱으로 돌아오면 접근 가능한 Firebase 프로젝트가 목록으로 표시됩니다. 검색으로 범위를 좁힐 수 있고, "표시 중인 N건 모두 선택"으로 한꺼번에 고를 수도 있습니다.이미 연결된 프로젝트는 선택할 수 없습니다(중복 등록을 막기 위해 "연결됨"으로 표시됩니다).
- 선택한 프로젝트마다 환경 라벨과읽기 전용 여부를 지정합니다. 환경 라벨은 프로젝트 ID 에서 자동으로 추정되므로, 다른 것만 고쳐 주면 충분합니다.
- "N건의 연결 추가"로 확정합니다.
방법 2: 서비스 계정 비공개 키(JSON) 사용하기
CI용 서비스 계정을 쓰고 싶거나 Google 계정을 쓰지 않고 연결하고 싶다면 이 방법을 택하세요. 아직 없어도 화면 안내를 따라가면 1분 정도면 발급받을 수 있습니다.
- "서비스 계정 설정 페이지 열기"를 누르면 Firebase 콘솔의 해당 페이지가 브라우저에서 열립니다(위치: 프로젝트 설정 → 서비스 계정).
- "새 비공개 키 생성"을 클릭해 JSON 을 다운로드합니다.
- Firescope로 돌아와 "JSON 파일 선택해서 연결"에서 다운로드한 JSON을 선택합니다.여러 프로젝트의 JSON을 한꺼번에 선택해 동시에 연결할 수도 있습니다.
- 연결할 환경(개발 / 테스트 / 스테이징 / 프로덕션)을 선택합니다. 사이드바에 색상이 있는 라벨로 표시되며,안전 가드의 강도도 이 라벨로 결정됩니다.
연결 정리(그룹·숨기기)
연결이 늘어나면 사이드바에서 어느 것이 어느 프로젝트인지 알아보기 어려워집니다. Firescope는 따로 정렬하지 않아도 자동으로 머리글을 붙여 정리해 줍니다.

자동 구분
연결은 먼저 어떤 인증 정보로 연결했는지를 기준으로 구분됩니다.
- Google 계정 — 로그인한 계정별로 나뉩니다. 여러 계정을 함께 쓰더라도 어느 쪽에서 온 연결인지 한눈에 알 수 있습니다
- AdminSDK 키 — 서비스 계정 비공개 키별
- 에뮬레이터 — 로컬 Firestore 에뮬레이터 연결
또한 각 구분 안에서 연결 이름의 공통 부분별로 묶입니다. 끝에 붙는dev / staging / production / test / env 같은 환경을 나타내는 단어는 제거한 뒤 비교하므로,OCEAN-dev・ocean-pro・OCEAN-staging・OCEAN-test는 OCEAN 이라는 하나의 머리글로 묶입니다(대소문자는 구분하지 않습니다).
쓰지 않는 연결 숨기기
연결을 끊지 않고 목록에서만 숨길 수 있습니다. 설정과 키는 그대로 남으므로 언제든 되돌릴 수 있습니다.
- 연결을 우클릭 → "이 연결 숨기기". 그룹 머리글에서는 "이 그룹 숨기기", 여러 개를 선택했을 때(⌘ / Shift 클릭)는 "선택한 연결 숨기기"를 고를 수 있습니다.
- 숨긴 연결이 있으면 사이드바 위쪽에눈 모양 아이콘(건수 배지 포함)이 나타납니다.
- 그 아이콘을 누르면 숨긴 연결이 흐리게 표시됩니다. 우클릭 →"다시 표시"로 되돌릴 수 있습니다. 그룹 단위나 여러 개 선택으로 한꺼번에 되돌릴 수도 있습니다.
데이터 보기
사이드바의 연결을 열고 컬렉션을 클릭하면 문서가 표로 표시됩니다. 각 열 헤더에는타입 배지(string / int / time 등)가 붙어 데이터의 형태를 한눈에 알 수 있습니다.

- 행을 클릭하면 오른쪽 패널에 문서의 모든 필드가 표시됩니다.
- 정렬·표시 건수·그룹 검색(컬렉션 그룹)은 툴바에서 변경할 수 있습니다.
- 읽기 건수는 상태 표시줄에 항상 표시됩니다(과금 확인용).
⌘P 컬렉션 이름으로 전체 이동
⌘K 문서 ID로 전체 검색
⌘F 표 안에서 검색(테이블 내 검색)
⌘⇧F 사이드바의 컬렉션 검색으로 포커스 이동
논리 이름(항목명 번역 표시)
carryingOutCoffinMasterId 같은 영어 필드명을,한국어 등 논리 이름으로 표시할 수 있습니다. 툴바의"논리 이름" 토글로 언제든 물리명⇔논리명을 전환할 수 있습니다.
- 사전은 툴바의 📖 아이콘에서 편집합니다. 적용 범위는 "연결 전체 공통"과 "이 컬렉션만(재정의)"의 2단계입니다.
- "자동 번역"으로 내장 사전 + 무료 번역 API를 통해 빈칸을 한 번에 채울 수 있습니다.
- "Google 번역 열기"를 누르면 필드명을 영문화한 상태로 번역 페이지가 열리고, 번역문을 복사해 앱으로 돌아오기만 하면 한 번에 반영됩니다.
- 열 헤더를 우클릭 → "논리 이름 설정…"으로 해당 열만 바로 편집할 수 있습니다.
- 헤더의 타입 배지(string / int 등)는 "타입 표시" 토글로 표시/숨김을 전환할 수 있습니다.

탭과 그룹
컬렉션을 우클릭 → "새 탭에서 열기"로, 브라우저처럼 탭을 늘릴 수 있습니다. 탭은 Chrome처럼 그룹으로 묶을 수 있습니다.

- 탭을 우클릭 → "새 그룹에 추가"로 그룹을 만듭니다. 이름과 색을 지정할 수 있습니다.
- 그룹 칩을 클릭하면 접기/펼치기가 됩니다.
- 탭을 더블클릭하면 이름과 배경색을 변경할 수 있습니다.
- 드래그 앤 드롭으로 순서 변경, 그룹에 넣고 빼기가 가능합니다.
- 탭 상태는 재시작 후에도 복원됩니다(설정에서 끌 수 있습니다).
분할 보기
컬렉션을 우클릭 → "오른쪽에 분할해서 열기"로, 두 개의 컬렉션을 좌우로 나란히 놓을 수 있습니다. 마스터와 트랜잭션을 대조할 때 편리합니다.

- 사이드바에서 컬렉션을 화면 좌우 끝으로 드래그해도 분할할 수 있습니다.
- 패널의 칩을 드래그하면 좌우 교체나 새 탭으로 분리를 할 수 있습니다.
- 분할 상태는 탭별로 유지됩니다.
실시간 감시
툴바의 "감시"를 누르면 표시 중인 컬렉션의 변경 사항이그리드에 실시간으로 반영됩니다. 다른 앱이나 서버가 쓴 내용이 새로고침 없이 그대로 흘러 들어옵니다.
- 시작 전 대화상자에서 조건(필드·값)·정렬·건수를 좁힐 수 있습니다.
- 오른쪽 변경 피드에 "추가 / 수정 / 삭제"가 시간순으로 나열되고, 변경된 필드명도 표시됩니다.
- 감시는 읽기 전용입니다. 감시 중의 쓰기 작업은 평소처럼 안전 파이프라인을 거칩니다.
- 동시에 감시할 수 있는 것은 최대 5건입니다.
- 지정한 시간이 지나면 자동으로 정지합니다(설정에서 시간 변경 가능). 읽기 횟수의 과다 사용을 방지합니다.

데이터 편집하기
셀을 더블클릭하면 그 자리에서 편집할 수 있습니다.Enter로 확정, Esc로 취소. int나 timestamp 등의 타입은 유지된 채 저장됩니다.

모든 쓰기 작업은 안전 파이프라인을 거칩니다:
- 확인 — 환경 라벨 × 작업 위험도에 따른 대화상자가 표시됩니다. 프로덕션의 파괴적 작업은프로젝트 ID 직접 입력이 필요합니다.
- 자동 백업 — 영향을 받는 문서가 실행 전에 스냅샷됩니다.
- 실행 — 쓰기가 이루어집니다.
- 작업 로그 — 성공 여부와 관계없이 기록됩니다(하단 바의 "작업 로그"에서 확인).
백업과 복원
파괴적 작업 직전에 찍힌 스냅샷은 하단 바의"백업"에 쌓입니다. 선택하면복원 미리보기가 열리고, 재생성 / 덮어쓰기 / 변경 없음의 차이를 확인한 뒤 복원할 수 있습니다.

- ⌘Z(또는 사이드바의 ↩︎ 아이콘)로최근 쓰기 작업을 즉시 복원할 수 있습니다.
- 스냅샷은 세대 상한을 넘으면 오래된 것부터 삭제됩니다. 남기고 싶은 것은 📌로 고정하세요.
콘솔
사이드바의 "콘솔"에서는 firebase-admin 스타일의 JavaScript 로 쿼리를 작성할 수 있습니다. ⌘Enter 로 실행하면 결과가 타입이 표시된 표로 나타납니다.

const snap = await db.collection('orders')
.where('status', '==', 'paid')
.orderBy('amount', 'desc')
.limit(20)
.get();
return snap.docs.map((d) => ({ id: d.id, ...d.data() }));- 마우스를 선호한다면 비주얼 빌더(조회 / 업데이트 / 생성 / 삭제)도 있습니다. 구성한 조건은 "코드에 반영"으로 JS로 변환할 수 있습니다.
- 쓰기를 포함한 코드는 드라이런 → 쓰기 미리보기 → 적용순서로 실행되므로 갑자기 데이터가 바뀌는 일은 없습니다.
- join(조인) 보기도 지원합니다.
CSV 가져오기/내보내기
내보내기
컬렉션 툴바의 "CSV 내보내기"를 누르면 지금 표시 중인 쿼리 결과(필터·정렬 반영됨)를 CSV로 저장할 수 있습니다. 헤더에타입 주석이 붙으므로 나중에 다시 가져와도 타입이 깨지지 않습니다.
가져오기

- 툴바의 "가져오기" → CSV 파일을 선택합니다(Shift_JIS도 자동 판별).
- 열마다의 타입과 모드(upsert / 신규만 / 업데이트만)를 확인합니다.
- "건수 확인"으로 신규·덮어쓰기 건수를 미리 봅니다.
- "가져오기 실행" → 확인 대화상자를 거쳐 반영됩니다. 덮어쓰는 부분은 실행 전 자동으로 백업됩니다.
스키마 체크(스키마 붕괴 감지)
컬렉션을 우클릭 →"스키마 체크…"로 컬렉션 전체를 읽어타입이 섞인 필드·일부 문서에만 없는 필드·오타일 가능성이 있는 드문 필드를 자동으로 감지합니다(상한 20,000건).
- 같은 문서 그룹에서 함께 누락된 필드는 카드 하나로 집약됩니다. "모두 열기"로 해당 행 전체에 체크가 붙어 그대로 일괄 삭제 등으로 진행할 수 있습니다.
- 해당 문서의 ID를 클릭하면 그리드의 해당 행까지 자동으로 스크롤되어 강조 표시됩니다.
- 결과는 마법사를 닫아도 유지되므로 문서를 확인하면서 몇 번이든 오갈 수 있습니다.
- Zod 스키마 검증 탭에서는 Zod 스키마(TypeScript)를 붙여넣어 모든 문서를 검증할 수 있습니다.

환경 비교와 복사
다른 환경과 비교
컬렉션을 우클릭 →"다른 환경과 비교…"로 개발과 프로덕션 등 두 환경의 동일한 컬렉션을 대조할 수 있습니다. 차이(추가 / 삭제 / 변경)가 문서 단위·필드 단위로 나열됩니다.
- updatedAt 등 비교에서 제외할 필드를 지정할 수 있습니다.
- 차이 내용은 CSV로 내보낼 수 있습니다.
다른 환경으로 복사
"다른 환경으로 복사…"에서는 컬렉션을 다른 연결(환경)로 복제할 수 있습니다. 실행 전에 건수와 덮어쓰기 여부를 미리 보고, 프로덕션으로의 쓰기는 평소처럼 엄격한 확인 가드를 거칩니다.

Authentication 사용자
사이드바의 "Authentication"에서 Firebase Authentication 사용자를 목록으로 보고 관리할 수 있습니다.
- 이메일·표시 이름·제공자·생성일·마지막 로그인을 목록으로 표시합니다. 논리 이름 토글로 항목명을 한국어로 표시할 수도 있습니다.
- 사용자 비활성화 / 활성화·삭제, 비밀번호 재설정 메일 발송을 지원합니다.
- 사용자의 UID를 복사해 Firestore 쪽 문서와 대조하는 데 사용할 수 있습니다.
- 파괴적 작업(삭제 등)은 Firestore와 동일한 안전 파이프라인(확인 → 작업 로그)을 거칩니다.

업데이트
- 업데이트는 6시간마다 + 실행 시에 자동으로 확인됩니다(설정 → 정보의 "업데이트 확인"에서 수동 확인도 가능).
- 필수 업데이트가 공개된 경우, 실행 시 업데이트 화면에서 자동으로 다운로드 → 재시작 → 적용까지 진행됩니다. 버튼 조작은 필요하지 않습니다.
- 실패한 경우(오프라인 등)에만 브라우저를 통한 수동 다운로드가 안내됩니다.

요금제와 라이선스
- 최초 실행부터 14일간은 체험판으로 모든 기능을 사용할 수 있습니다. 가입도 결제 정보도 필요하지 않습니다.
- 기간이 지나도 데이터 조회는 계속 무료로 사용할 수 있습니다.
- 구매는 앱 안에서: 오른쪽 아래의 ⚙ 설정 → 라이선스에서 플랜(Pro / TEAM, 월간 / 연간)을 선택하면 브라우저에서 Stripe 결제 페이지가 열립니다. 결제가 끝나면 앱이 자동으로 라이선스를 활성화합니다.
- 다른 Mac으로 옮길 때는 이전 기기에서 "라이선스 해제"를 한 뒤 새 기기에서 활성화하세요.
플랜의 자세한 내용은 요금제 페이지를 확인하세요.

자주 묻는 질문
- 연결이 안 돼요 / "인증에 실패했습니다"라고 나와요
- JSON이 대상 프로젝트의 서비스 계정 키인지 확인하세요. 키를 다시 만든 경우, 기존 연결을 끊고 새 JSON으로 다시 연결하는 것이 확실합니다.
- 데이터가 어딘가로 전송되나요?
- 아니요. Firescope는 사용자의 Mac에서 Firestore 로 직접 접근합니다. 키도 데이터도 외부 서버로 전송되지 않습니다.
- "프로덕션 가드"는 무엇을 해 주나요?
- 연결의 환경 라벨과 작업 위험도에 따라 확인의 강도를 자동으로 바꾸는 구조입니다. 예를 들어 프로덕션에서의 컬렉션 삭제는 프로젝트 ID를 직접 입력하지 않으면 실행할 수 없습니다. UI 의 주의 문구가 아니라 앱의 핵심(메인 프로세스)에서 검증하므로 실수로는 뚫리지 않습니다.
- Windows 버전이 있나요?
- 네. 다운로드 페이지에서
Firescope-Setup.exe를 받으세요(SmartScreen 경고가 뜨면 "추가 정보" → "실행"으로 진행합니다). - 언어를 추가할 수 있나요?
- 네. 설정 → 언어에서 언어 팩(JSON)을 내보내 번역한 뒤 가져오면 원하는 언어를 추가할 수 있습니다.

커맨드 팔레트(⌘K)
⌘K로 어디서든 불러올 수 있는 통합 검색입니다. 컬렉션 이름·연결 이름·화면·"최근 본"/ 북마크를 한 번에 검색할 수 있고, 6자 이상의 문자열을 입력하면 문서 ID로 전체 검색도 후보에 나타납니다.
- ↑↓로 후보 이동, Enter로 실행. 마우스에 손을 뻗지 않고도 화면을 전환할 수 있습니다.
- 테마 전환이나 값 마스킹 ON/OFF, 설정·단축키 목록 열기 등 자주 쓰는 작업도 여기에서 호출할 수 있습니다.

테이블 내 검색(⌘F)
표를 연 상태에서 ⌘F(Windows는 Ctrl+F)를 누르면 표의 모든 셀을 대상으로 부분 일치 검색을 할 수 있습니다. 일치한 셀은 호박색으로 하이라이트되고, Enter를 누를 때마다 커서가 부드럽게 스크롤되며 다음 결과로 이동합니다.
- ID를 포함한 모든 표시 열이 검색 대상입니다(대소문자는 구분하지 않습니다).
- Enter로 다음, Shift+Enter로 이전으로 이동합니다. 끝까지 가면 처음으로 돌아갑니다.
- 일치한 셀은 그대로 선택 상태가 되므로, 화살표 키 이동이나 ⌘C·F2 편집을 이어서 할 수 있습니다.
- 전체 로드 전에는 이미 로드된 범위만 검색 대상입니다(건수 옆에 *가 표시됩니다).
- 사이드바의 컬렉션 검색은 ⌘⇧F로 변경되었습니다(표를 열지 않은 화면에서는 기존처럼 ⌘F로도 이동합니다).

쿼리 강화
작성한 쿼리 조건은 저장 쿼리로 이름을 붙여 저장할 수 있고, 언제든 목록에서 불러올 수 있습니다(조건·정렬·건수를 한꺼번에 복원).

숫자(int / double) 필드를 선택하면 현재 필터 적용 후의 합계·평균을 툴바에 표시합니다.

"차트"에서는 불러온 문서 중 숫자 필드는 히스토그램, 문자열/enum 필드는 출현 빈도(상위 10건)를 즉시 그려 줍니다. 추가 읽기는 발생하지 않습니다.

"코드 생성"에서는 작성한 조건을 firebase-admin(Node.js) 코드로 복사하거나, 복합 인덱스가 필요한 조건이면firestore.indexes.json 형식의 정의로 복사할 수 있습니다.

스키마로 쓰기 보호하기
스키마 체크의 "Zod 스키마 검증" 탭에서는 검증뿐 아니라쓰기 시 강제 적용도 설정할 수 있습니다. 없음 / 경고 / 차단3단계 중에서 선택하며, 차단으로 설정하면 스키마를 위반하는 쓰기를 메인 프로세스에서 거부합니다(UI를 우회해도 막힙니다). 강제 적용은 해당 컬렉션 경로와 완전히 일치하는 문서에만 적용됩니다.

Zod 스키마를 등록해 두면 새 문서를 만들 때"양식 입력"모드를 사용할 수 있습니다. 스키마의 타입에서 양식이 자동으로 생성되므로 JSON을 직접 작성하지 않고 필수 항목만 채워 생성할 수 있습니다(스키마가 등록되지 않은 컬렉션에서는 스키마 체크의 타입 추정으로 양식을 구성할 수도 있습니다).

ER 다이어그램 내보내기
사이드바의 연결을 우클릭 → 「ER 다이어그램 내보내기…」로 모든 컬렉션을 샘플링(각 최대 100건)하여 ER 다이어그램을 자동 생성합니다. reference 필드와 하위 컬렉션은 물론 customerId 같은 문자열 ID 참조도 필드명에서 추정하여 점선 관계로 그립니다.
- 「필드 표시」「키만」「형식 표시」「논리명 포함」을 클릭으로 즉시 전환(모든 패턴을 미리 생성해 두므로 기다리지 않습니다).
- 핀치 / Ctrl+휠로 확대·축소, 드래그로 이동. 클릭 한 번으로 전체 보기로 돌아갑니다.
- Mermaid 텍스트 복사와 .mmd / .svg 저장 지원 — GitHub나 Notion에 그대로 붙여넣을 수 있습니다.
- 하위 컬렉션이 많은 부모로의 선은 가독성을 위해 다이어그램에서 생략됩니다(Mermaid 텍스트에는 포함).

데이터 마이그레이션
"일괄 업데이트"에서는 필드 일괄 설정에 더해 필드명 변경·타입 변환도 할 수 있습니다. 실행 전에는 반드시 dry-run 미리보기로 전체 diff를 확인한 뒤 실행합니다.

컬렉션을 우클릭 → "컬렉션 삭제…"는 하위 컬렉션을 포함해 재귀적으로삭제합니다. 확인 대화상자의 건수에는 하위 컬렉션분도 포함되며, 실행 전에 대상 문서가 자동으로 스냅샷됩니다.

"시드 데이터 생성"은 기존 문서의 타입 분포(스키마 체크)에서 필드 구성을 추정해 더미 문서를 지정한 건수만큼 한 번에 생성합니다. 개발·에뮬레이터에서 동작을 확인할 때 쓰는 기능입니다.

비교와 차이
환경 비교에서는 차이(내용이 다름/한쪽에만 있는 문서)를 선택해 그대로 대상 연결에 반영할 수 있는차이 동기화도 지원합니다. 동기화 방향은 연결의 환경 라벨을 기준으로 제안되며, 반영은 평소처럼 안전 파이프라인(확인·자동 백업)을 거칩니다.
문서 오른쪽 패널의 "비교"버튼에서는 열려 있는 문서와 임의의 문서(다른 컬렉션·다른 연결도 가능)를 필드 단위로 비교할 수 있습니다.

문서의 "변경 이력"에서는 자동 백업을 버전으로 시간순으로 나열하고, 임의의 두 버전(현재 포함)을 선택해 차이를 비교할 수 있습니다.

운영
실시간 감시에는 조건 알림을 설정할 수 있습니다. "추가되면", "삭제되면", "지정한 필드가 바뀌면"을 등록해 두면 일치하는 변경에 데스크톱 알림이 옵니다.

푸터의 읽기 건수를 클릭하면 세션 중 예상 읽기 건수·예상 과금액·추이를 팝오버로 확인할 수 있습니다.

설정의 "공유·인계"탭에서는 필드 논리 이름·저장 쿼리·북마크 등 일부 UI 설정을 하나의 JSON 파일로 내보내기/가져오기할 수 있습니다. 연결의 비공개 키·라이선스 정보·환경 라벨은 전혀 포함되지 않으므로 팀 공유나 기기 변경에 사용할 수 있습니다.

툴바의 "값 숨기기"를 켜면 항목명·타입·구조는 그대로 두고 실제 데이터만 마스킹(••••)해서 표시합니다. 화면 공유나 스크린샷을 찍을 때 유용합니다(표시 전용 기능이며 실제 데이터는 변경되지 않습니다).

MCP 서버(AI 에이전트 연동)
Firescope에는 MCP(Model Context Protocol) 서버가 함께 제공됩니다. Claude Code 같은 AI 에이전트에서 연결하면 대화 중에 Firestore의 컬렉션 목록·문서 조회·쿼리 실행을 그대로 수행할 수 있습니다.
실행(저장소 루트에서):
# 에뮬레이터에 연결하는 경우 FIRESCOPE_MCP_PROJECT_ID=your-project \ FIRESCOPE_MCP_EMULATOR_HOST=127.0.0.1:8080 \ npm run mcp # 서비스 계정 JSON을 통해 실제 프로젝트에 연결하는 경우 FIRESCOPE_MCP_SERVICE_ACCOUNT_PATH=/path/to/service-account.json \ npm run mcp
MCP 클라이언트 측 설정 예시(.mcp.json):
{
"mcpServers": {
"firescope": {
"command": "npm",
"args": ["run", "mcp"],
"cwd": "/path/to/firescope",
"env": {
"FIRESCOPE_MCP_SERVICE_ACCOUNT_PATH": "/path/to/service-account.json"
}
}
}
}- 제공되는 도구는 3가지입니다: 컬렉션 목록(
firestore_list_collections)·문서 조회(firestore_get_document)·쿼리 실행(firestore_query_collection, 필터/정렬/건수 상한 지원). - GUI의 쿼리 빌더와 동일한 내부 로직을 재사용하므로, 결과 형태는 앱의 표시와 일치합니다.


