firebase-mcp 0.1.2 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/README.md +15 -4
  2. package/dist/firebase/index.d.ts +2 -0
  3. package/dist/firebase/index.d.ts.map +1 -1
  4. package/dist/firebase/index.js +2 -1
  5. package/dist/firebase/index.js.map +1 -1
  6. package/dist/tools/auth/get_user.d.ts +27 -0
  7. package/dist/tools/auth/get_user.d.ts.map +1 -0
  8. package/dist/tools/auth/get_user.js +66 -0
  9. package/dist/tools/auth/get_user.js.map +1 -0
  10. package/dist/tools/auth/index.d.ts +3 -0
  11. package/dist/tools/auth/index.d.ts.map +1 -0
  12. package/dist/tools/auth/index.js +19 -0
  13. package/dist/tools/auth/index.js.map +1 -0
  14. package/dist/tools/auth/list_users.d.ts +23 -0
  15. package/dist/tools/auth/list_users.d.ts.map +1 -0
  16. package/dist/tools/auth/list_users.js +46 -0
  17. package/dist/tools/auth/list_users.js.map +1 -0
  18. package/dist/tools/firestore/count_documents.d.ts.map +1 -1
  19. package/dist/tools/firestore/count_documents.js.map +1 -1
  20. package/dist/tools/firestore/get_document.d.ts.map +1 -1
  21. package/dist/tools/firestore/get_document.js.map +1 -1
  22. package/dist/tools/firestore/list_documents.d.ts.map +1 -1
  23. package/dist/tools/firestore/list_documents.js.map +1 -1
  24. package/dist/tools/firestore/read_collections.d.ts.map +1 -1
  25. package/dist/tools/firestore/read_collections.js.map +1 -1
  26. package/dist/tools/firestore/types.d.ts +0 -1
  27. package/dist/tools/firestore/types.d.ts.map +1 -1
  28. package/dist/tools/firestore/types.js +3 -28
  29. package/dist/tools/firestore/types.js.map +1 -1
  30. package/dist/tools/index.d.ts +2 -1
  31. package/dist/tools/index.d.ts.map +1 -1
  32. package/dist/tools/index.js +14 -0
  33. package/dist/tools/index.js.map +1 -1
  34. package/dist/tools/normalize.d.ts +2 -0
  35. package/dist/tools/normalize.d.ts.map +1 -0
  36. package/dist/tools/normalize.js +36 -0
  37. package/dist/tools/normalize.js.map +1 -0
  38. package/package.json +1 -1
package/README.md CHANGED
@@ -1,18 +1,22 @@
1
1
  # firebase-mcp
2
2
 
3
- A [Model Context Protocol (MCP)](https://modelcontextprotocol.io) server that exposes Firebase Firestore to AI agents. Built with [Effect](https://effect.website) and the Firebase Admin SDK, it runs over stdio and is designed to be wired directly into any MCP-compatible host (Cursor, Claude Desktop, etc.).
3
+ A [Model Context Protocol (MCP)](https://modelcontextprotocol.io) server that exposes Firebase Firestore and Authentication to AI agents. Built with [Effect](https://effect.website) and the Firebase Admin SDK, it runs over stdio and is designed to be wired directly into any MCP-compatible host (Cursor, Claude Desktop, etc.).
4
4
 
5
5
  ## Features
6
6
 
7
7
  - **11 Firestore read tools** covering collections, documents, queries, aggregations, and schema inference
8
+ - **2 Firebase Auth tools** — look up users by UID or email, list users with pagination
8
9
  - **Glob-based access control** — allow/deny rules evaluated per Firestore path before any read is performed
9
- - **Pagination** on `query_collection` and `read_collection` via cursor-based `startAfter` / `nextPageCursor`
10
+ - **Pagination** on `query_collection`, `read_collection`, and `list_users` via cursor-based tokens
10
11
  - **Batch fetching** with configurable `maxBatchFetchSize`
11
12
  - **Schema inference** via `get_collection_schema` — samples documents and infers field types without reading the full collection
12
- - Zero runtime state each tool call hits Firestore directly through the Admin SDK
13
+ - **Normalized output**Firestore Timestamps, GeoPoints, and DocumentReferences are converted to JSON-serializable values on all tools
14
+ - Zero runtime state — each tool call hits Firebase directly through the Admin SDK
13
15
 
14
16
  ## Tools
15
17
 
18
+ ### Firestore
19
+
16
20
  | Tool | Description |
17
21
  | ------------------------ | ----------------------------------------------------------------------------------------------------------- |
18
22
  | `list_collections` | List root collections or subcollections of a document. Optionally include document counts. |
@@ -27,11 +31,18 @@ A [Model Context Protocol (MCP)](https://modelcontextprotocol.io) server that ex
27
31
  | `get_collection_schema` | Sample a collection from both ends and infer field types. |
28
32
  | `list_indexes` | List Firestore indexes for the project. |
29
33
 
34
+ ### Auth
35
+
36
+ | Tool | Description |
37
+ | ------------ | ------------------------------------------------------------------------ |
38
+ | `get_user` | Fetch a Firebase Auth user by UID or email. |
39
+ | `list_users` | List Firebase Auth users with optional pagination via `nextPageToken`. |
40
+
30
41
  ## Requirements
31
42
 
32
43
  - Node.js 18+
33
44
  - A Firebase project with Firestore enabled
34
- - A service account JSON key with Firestore read permissions
45
+ - A service account JSON key with Firestore and Auth read permissions
35
46
 
36
47
  ## Setup
37
48
 
@@ -1,5 +1,6 @@
1
1
  import { Effect } from 'effect';
2
2
  import admin from 'firebase-admin';
3
+ import type { Auth } from 'firebase-admin/auth';
3
4
  import { ConfigService } from '../config';
4
5
  declare const FirebaseInitError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
5
6
  readonly _tag: "FirebaseInitError";
@@ -13,6 +14,7 @@ declare const FirebaseService_base: Effect.Service.Class<FirebaseService, "Fireb
13
14
  readonly accessors: true;
14
15
  readonly effect: Effect.Effect<{
15
16
  firestore: () => admin.firestore.Firestore;
17
+ auth: () => Auth;
16
18
  }, FirebaseInitError, ConfigService>;
17
19
  }>;
18
20
  export declare class FirebaseService extends FirebaseService_base {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/firebase/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,MAAM,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,KAAK,MAAM,gBAAgB,CAAC;AAGnC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;;;;AAE1C,qBAAa,iBAAkB,SAAQ,uBAAsC;IAC3E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;CAAG;;;;;;;AAEL,qBAAa,eAAgB,SAAQ,oBAqCpC;CAAG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/firebase/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,MAAM,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,KAAK,MAAM,gBAAgB,CAAC;AACnC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAGhD,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;;;;AAE1C,qBAAa,iBAAkB,SAAQ,uBAAsC;IAC3E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;CAAG;;;;;oBAqCyC,IAAI;;;AAnClD,qBAAa,eAAgB,SAAQ,oBAsCpC;CAAG"}
@@ -34,7 +34,8 @@ class FirebaseService extends effect_1.Effect.Service()('FirebaseService', {
34
34
  catch: (cause) => new FirebaseInitError({ message: `Firebase init failed`, cause }),
35
35
  });
36
36
  const db = firebase_admin_1.default.firestore();
37
- return { firestore: () => db };
37
+ const authClient = firebase_admin_1.default.auth();
38
+ return { firestore: () => db, auth: () => authClient };
38
39
  }),
39
40
  }) {
40
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/firebase/index.ts"],"names":[],"mappings":";;;;;;AAAA,mCAAsC;AACtC,oEAAmC;AACnC,qCAAuC;AACvC,yCAAoC;AACpC,sCAA0C;AAE1C,MAAa,iBAAkB,SAAQ,aAAI,CAAC,WAAW,CAAC,mBAAmB,CAGzE;CAAG;AAHL,8CAGK;AAEL,MAAa,eAAgB,SAAQ,eAAM,CAAC,OAAO,EAAmB,CACpE,iBAAiB,EACjB;IACE,SAAS,EAAE,IAAI;IACf,MAAM,EAAE,eAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAC1B,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,sBAAa,CAAC,MAAM,CAAC;QAE3C,MAAM,kBAAkB,GAAG,IAAA,mBAAO,EAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;QAEvE,MAAM,cAAc,GAAG,KAAK,CAAC,CAAC,eAAM,CAAC,GAAG,CAAC;YACvC,GAAG,EAAE,GAAG,EAAE,CACR,IAAI,CAAC,KAAK,CACR,IAAA,sBAAY,EAAC,kBAAkB,EAAE,OAAO,CAAC,CAClB;YAC3B,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,IAAI,iBAAiB,CAAC;gBACpB,OAAO,EAAE,8BAA8B,kBAAkB,EAAE;gBAC3D,KAAK;aACN,CAAC;SACL,CAAC,CAAC;QAEH,KAAK,CAAC,CAAC,eAAM,CAAC,GAAG,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE;gBACR,wBAAK,CAAC,aAAa,CAAC;oBAClB,UAAU,EAAE,wBAAK,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC;oBACjD,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,SAAS;iBACrC,CAAC,CAAC;YACL,CAAC;YACD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,IAAI,iBAAiB,CAAC,EAAE,OAAO,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC;SACpE,CAAC,CAAC;QAEH,MAAM,EAAE,GAAG,wBAAK,CAAC,SAAS,EAAE,CAAC;QAE7B,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IACjC,CAAC,CAAC;CACH,CACF;CAAG;AArCJ,0CAqCI"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/firebase/index.ts"],"names":[],"mappings":";;;;;;AAAA,mCAAsC;AACtC,oEAAmC;AAEnC,qCAAuC;AACvC,yCAAoC;AACpC,sCAA0C;AAE1C,MAAa,iBAAkB,SAAQ,aAAI,CAAC,WAAW,CAAC,mBAAmB,CAGzE;CAAG;AAHL,8CAGK;AAEL,MAAa,eAAgB,SAAQ,eAAM,CAAC,OAAO,EAAmB,CACpE,iBAAiB,EACjB;IACE,SAAS,EAAE,IAAI;IACf,MAAM,EAAE,eAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAC1B,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,sBAAa,CAAC,MAAM,CAAC;QAE3C,MAAM,kBAAkB,GAAG,IAAA,mBAAO,EAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;QAEvE,MAAM,cAAc,GAAG,KAAK,CAAC,CAAC,eAAM,CAAC,GAAG,CAAC;YACvC,GAAG,EAAE,GAAG,EAAE,CACR,IAAI,CAAC,KAAK,CACR,IAAA,sBAAY,EAAC,kBAAkB,EAAE,OAAO,CAAC,CAClB;YAC3B,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,IAAI,iBAAiB,CAAC;gBACpB,OAAO,EAAE,8BAA8B,kBAAkB,EAAE;gBAC3D,KAAK;aACN,CAAC;SACL,CAAC,CAAC;QAEH,KAAK,CAAC,CAAC,eAAM,CAAC,GAAG,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE;gBACR,wBAAK,CAAC,aAAa,CAAC;oBAClB,UAAU,EAAE,wBAAK,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC;oBACjD,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,SAAS;iBACrC,CAAC,CAAC;YACL,CAAC;YACD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,IAAI,iBAAiB,CAAC,EAAE,OAAO,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC;SACpE,CAAC,CAAC;QAEH,MAAM,EAAE,GAAG,wBAAK,CAAC,SAAS,EAAE,CAAC;QAC7B,MAAM,UAAU,GAAS,wBAAK,CAAC,IAAI,EAAE,CAAC;QAEtC,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,GAAS,EAAE,CAAC,UAAU,EAAE,CAAC;IAC/D,CAAC,CAAC;CACH,CACF;CAAG;AAtCJ,0CAsCI"}
@@ -0,0 +1,27 @@
1
+ import { Tool } from '@modelcontextprotocol/sdk/types.js';
2
+ import { Effect } from 'effect';
3
+ import { FirebaseService } from '../../firebase';
4
+ declare const AuthGetUserError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
5
+ readonly _tag: "AuthGetUserError";
6
+ } & Readonly<A>;
7
+ export declare class AuthGetUserError extends AuthGetUserError_base<{
8
+ readonly message: string;
9
+ readonly cause?: unknown;
10
+ }> {
11
+ }
12
+ declare const AuthUserNotFoundError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
13
+ readonly _tag: "AuthUserNotFoundError";
14
+ } & Readonly<A>;
15
+ export declare class AuthUserNotFoundError extends AuthUserNotFoundError_base<{
16
+ readonly identifier: string;
17
+ }> {
18
+ }
19
+ export declare const GET_USER: "get_user";
20
+ export interface GetUserArgs {
21
+ uid?: string;
22
+ email?: string;
23
+ }
24
+ export declare const getUserDefinition: Tool;
25
+ export declare const getUser: (input: GetUserArgs) => Effect.Effect<unknown, AuthGetUserError | AuthUserNotFoundError, FirebaseService>;
26
+ export {};
27
+ //# sourceMappingURL=get_user.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get_user.d.ts","sourceRoot":"","sources":["../../../src/tools/auth/get_user.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAQ,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;;;;AAGjD,qBAAa,gBAAiB,SAAQ,sBAAqC;IACzE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;CAAG;;;;AAEL,qBAAa,qBAAsB,SAAQ,2BAEzC;IACA,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B,CAAC;CAAG;AAEL,eAAO,MAAM,QAAQ,EAAG,UAAmB,CAAC;AAE5C,MAAM,WAAW,WAAW;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,iBAAiB,EAAE,IAiB/B,CAAC;AAEF,eAAO,MAAM,OAAO,GAAI,OAAO,WAAW,sFA2CtC,CAAC"}
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getUser = exports.getUserDefinition = exports.GET_USER = exports.AuthUserNotFoundError = exports.AuthGetUserError = void 0;
4
+ const effect_1 = require("effect");
5
+ const firebase_1 = require("../../firebase");
6
+ const normalize_1 = require("../normalize");
7
+ class AuthGetUserError extends effect_1.Data.TaggedError('AuthGetUserError') {
8
+ }
9
+ exports.AuthGetUserError = AuthGetUserError;
10
+ class AuthUserNotFoundError extends effect_1.Data.TaggedError('AuthUserNotFoundError') {
11
+ }
12
+ exports.AuthUserNotFoundError = AuthUserNotFoundError;
13
+ exports.GET_USER = 'get_user';
14
+ exports.getUserDefinition = {
15
+ name: exports.GET_USER,
16
+ description: 'Fetch a Firebase Auth user by UID or email. Exactly one of uid or email must be provided.',
17
+ inputSchema: {
18
+ type: 'object',
19
+ properties: {
20
+ uid: {
21
+ type: 'string',
22
+ description: 'The Firebase Auth UID of the user.',
23
+ },
24
+ email: {
25
+ type: 'string',
26
+ description: 'The email address of the user.',
27
+ },
28
+ },
29
+ },
30
+ };
31
+ const getUser = (input) => effect_1.Effect.gen(function* () {
32
+ if (!input.uid && !input.email) {
33
+ return yield* effect_1.Effect.fail(new AuthGetUserError({
34
+ message: 'Either uid or email must be provided',
35
+ }));
36
+ }
37
+ const { auth } = yield* firebase_1.FirebaseService;
38
+ const userRecord = yield* effect_1.Effect.tryPromise({
39
+ try: () => input.uid
40
+ ? auth().getUser(input.uid)
41
+ : auth().getUserByEmail(input.email),
42
+ catch: (cause) => {
43
+ const code = cause != null &&
44
+ typeof cause === 'object' &&
45
+ 'code' in cause &&
46
+ typeof cause.code === 'string'
47
+ ? cause.code
48
+ : '';
49
+ if (code === 'auth/user-not-found') {
50
+ return new AuthUserNotFoundError({
51
+ identifier: input.uid ?? input.email ?? '',
52
+ });
53
+ }
54
+ return new AuthGetUserError({
55
+ message: `Failed to fetch user: ${input.uid ?? input.email}`,
56
+ cause,
57
+ });
58
+ },
59
+ });
60
+ return (0, normalize_1.normalizeValue)({
61
+ ...userRecord.toJSON(),
62
+ providerData: userRecord.providerData.map((p) => ({ ...p.toJSON() })),
63
+ });
64
+ });
65
+ exports.getUser = getUser;
66
+ //# sourceMappingURL=get_user.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get_user.js","sourceRoot":"","sources":["../../../src/tools/auth/get_user.ts"],"names":[],"mappings":";;;AACA,mCAAsC;AAEtC,6CAAiD;AACjD,4CAA8C;AAE9C,MAAa,gBAAiB,SAAQ,aAAI,CAAC,WAAW,CAAC,kBAAkB,CAGvE;CAAG;AAHL,4CAGK;AAEL,MAAa,qBAAsB,SAAQ,aAAI,CAAC,WAAW,CACzD,uBAAuB,CAGvB;CAAG;AAJL,sDAIK;AAEQ,QAAA,QAAQ,GAAG,UAAmB,CAAC;AAO/B,QAAA,iBAAiB,GAAS;IACrC,IAAI,EAAE,gBAAQ;IACd,WAAW,EACT,2FAA2F;IAC7F,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,GAAG,EAAE;gBACH,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,oCAAoC;aAClD;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,gCAAgC;aAC9C;SACF;KACF;CACF,CAAC;AAEK,MAAM,OAAO,GAAG,CAAC,KAAkB,EAAE,EAAE,CAC5C,eAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QAC/B,OAAO,KAAK,CAAC,CAAC,eAAM,CAAC,IAAI,CACvB,IAAI,gBAAgB,CAAC;YACnB,OAAO,EAAE,sCAAsC;SAChD,CAAC,CACH,CAAC;IACJ,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,CAAC,0BAAe,CAAC;IAExC,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,eAAM,CAAC,UAAU,CAAC;QAC1C,GAAG,EAAE,GAAG,EAAE,CACR,KAAK,CAAC,GAAG;YACP,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;YAC3B,CAAC,CAAC,IAAI,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,KAAM,CAAC;QACzC,KAAK,EAAE,CAAC,KAAc,EAAE,EAAE;YACxB,MAAM,IAAI,GACR,KAAK,IAAI,IAAI;gBACb,OAAO,KAAK,KAAK,QAAQ;gBACzB,MAAM,IAAI,KAAK;gBACf,OAAQ,KAA2B,CAAC,IAAI,KAAK,QAAQ;gBACnD,CAAC,CAAE,KAA0B,CAAC,IAAI;gBAClC,CAAC,CAAC,EAAE,CAAC;YAET,IAAI,IAAI,KAAK,qBAAqB,EAAE,CAAC;gBACnC,OAAO,IAAI,qBAAqB,CAAC;oBAC/B,UAAU,EAAE,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,KAAK,IAAI,EAAE;iBAC3C,CAAC,CAAC;YACL,CAAC;YAED,OAAO,IAAI,gBAAgB,CAAC;gBAC1B,OAAO,EAAE,yBAAyB,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,KAAK,EAAE;gBAC5D,KAAK;aACN,CAAC,CAAC;QACL,CAAC;KACF,CAAC,CAAC;IAEH,OAAO,IAAA,0BAAc,EAAC;QACpB,GAAG,UAAU,CAAC,MAAM,EAAE;QACtB,YAAY,EAAE,UAAU,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;KACtE,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AA3CQ,QAAA,OAAO,WA2Cf"}
@@ -0,0 +1,3 @@
1
+ export * from './get_user';
2
+ export * from './list_users';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/auth/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./get_user"), exports);
18
+ __exportStar(require("./list_users"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/auth/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,+CAA6B"}
@@ -0,0 +1,23 @@
1
+ import { Tool } from '@modelcontextprotocol/sdk/types.js';
2
+ import { Effect } from 'effect';
3
+ import { FirebaseService } from '../../firebase';
4
+ declare const AuthListUsersError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
5
+ readonly _tag: "AuthListUsersError";
6
+ } & Readonly<A>;
7
+ export declare class AuthListUsersError extends AuthListUsersError_base<{
8
+ readonly message: string;
9
+ readonly cause?: unknown;
10
+ }> {
11
+ }
12
+ export declare const LIST_USERS: "list_users";
13
+ export interface ListUsersArgs {
14
+ maxResults?: number;
15
+ pageToken?: string;
16
+ }
17
+ export declare const listUsersDefinition: Tool;
18
+ export declare const listUsers: (input: ListUsersArgs) => Effect.Effect<{
19
+ users: unknown[];
20
+ nextPageToken: string | null;
21
+ }, AuthListUsersError, FirebaseService>;
22
+ export {};
23
+ //# sourceMappingURL=list_users.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list_users.d.ts","sourceRoot":"","sources":["../../../src/tools/auth/list_users.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAQ,MAAM,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;;;;AAGjD,qBAAa,kBAAmB,SAAQ,wBAAuC;IAC7E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;CAAG;AAEL,eAAO,MAAM,UAAU,EAAG,YAAqB,CAAC;AAEhD,MAAM,WAAW,aAAa;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,mBAAmB,EAAE,IAmBjC,CAAC;AAEF,eAAO,MAAM,SAAS,GAAI,OAAO,aAAa;;;uCAsB1C,CAAC"}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.listUsers = exports.listUsersDefinition = exports.LIST_USERS = exports.AuthListUsersError = void 0;
4
+ const effect_1 = require("effect");
5
+ const firebase_1 = require("../../firebase");
6
+ const normalize_1 = require("../normalize");
7
+ class AuthListUsersError extends effect_1.Data.TaggedError('AuthListUsersError') {
8
+ }
9
+ exports.AuthListUsersError = AuthListUsersError;
10
+ exports.LIST_USERS = 'list_users';
11
+ exports.listUsersDefinition = {
12
+ name: exports.LIST_USERS,
13
+ description: 'List Firebase Auth users with optional pagination. Returns up to maxResults users and a nextPageToken if more exist.',
14
+ inputSchema: {
15
+ type: 'object',
16
+ properties: {
17
+ maxResults: {
18
+ type: 'number',
19
+ description: 'Maximum number of users to return (1-1000). Defaults to 100.',
20
+ },
21
+ pageToken: {
22
+ type: 'string',
23
+ description: 'Page token from a previous list_users response to fetch the next page.',
24
+ },
25
+ },
26
+ },
27
+ };
28
+ const listUsers = (input) => effect_1.Effect.gen(function* () {
29
+ const { auth } = yield* firebase_1.FirebaseService;
30
+ const result = yield* effect_1.Effect.tryPromise({
31
+ try: () => auth().listUsers(input.maxResults ?? 100, input.pageToken),
32
+ catch: (cause) => new AuthListUsersError({
33
+ message: 'Failed to list users',
34
+ cause,
35
+ }),
36
+ });
37
+ return {
38
+ users: result.users.map((u) => (0, normalize_1.normalizeValue)({
39
+ ...u.toJSON(),
40
+ providerData: u.providerData.map((p) => ({ ...p.toJSON() })),
41
+ })),
42
+ nextPageToken: result.pageToken ?? null,
43
+ };
44
+ });
45
+ exports.listUsers = listUsers;
46
+ //# sourceMappingURL=list_users.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list_users.js","sourceRoot":"","sources":["../../../src/tools/auth/list_users.ts"],"names":[],"mappings":";;;AACA,mCAAsC;AACtC,6CAAiD;AACjD,4CAA8C;AAE9C,MAAa,kBAAmB,SAAQ,aAAI,CAAC,WAAW,CAAC,oBAAoB,CAG3E;CAAG;AAHL,gDAGK;AAEQ,QAAA,UAAU,GAAG,YAAqB,CAAC;AAOnC,QAAA,mBAAmB,GAAS;IACvC,IAAI,EAAE,kBAAU;IAChB,WAAW,EACT,sHAAsH;IACxH,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,8DAA8D;aACjE;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,wEAAwE;aAC3E;SACF;KACF;CACF,CAAC;AAEK,MAAM,SAAS,GAAG,CAAC,KAAoB,EAAE,EAAE,CAChD,eAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,CAAC,0BAAe,CAAC;IAExC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,eAAM,CAAC,UAAU,CAAC;QACtC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,IAAI,GAAG,EAAE,KAAK,CAAC,SAAS,CAAC;QACrE,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,IAAI,kBAAkB,CAAC;YACrB,OAAO,EAAE,sBAAsB;YAC/B,KAAK;SACN,CAAC;KACL,CAAC,CAAC;IAEH,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC5B,IAAA,0BAAc,EAAC;YACb,GAAG,CAAC,CAAC,MAAM,EAAE;YACb,YAAY,EAAE,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;SAC7D,CAAC,CACH;QACD,aAAa,EAAE,MAAM,CAAC,SAAS,IAAI,IAAI;KACxC,CAAC;AACJ,CAAC,CAAC,CAAC;AAtBQ,QAAA,SAAS,aAsBjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"count_documents.d.ts","sourceRoot":"","sources":["../../../src/tools/firestore/count_documents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAQ,MAAM,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAsB,WAAW,EAAE,MAAM,SAAS,CAAC;;;;AAE1D,qBAAa,mBAAoB,SAAQ,yBAEvC;IACA,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;CAAG;AAEL,eAAO,MAAM,eAAe,EAAG,iBAA0B,CAAC;AAE1D,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;CACzB;AAED,eAAO,MAAM,wBAAwB,EAAE,IAmBtC,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,OAAO,kBAAkB;;;mGA8BpD,CAAC"}
1
+ {"version":3,"file":"count_documents.d.ts","sourceRoot":"","sources":["../../../src/tools/firestore/count_documents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAQ,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAsB,WAAW,EAAE,MAAM,SAAS,CAAC;;;;AAE1D,qBAAa,mBAAoB,SAAQ,yBAEvC;IACA,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;CAAG;AAEL,eAAO,MAAM,eAAe,EAAG,iBAA0B,CAAC;AAE1D,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;CACzB;AAED,eAAO,MAAM,wBAAwB,EAAE,IAmBtC,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,OAAO,kBAAkB;;;mGA8BpD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"count_documents.js","sourceRoot":"","sources":["../../../src/tools/firestore/count_documents.ts"],"names":[],"mappings":";;;AACA,mCAAsC;AACtC,yCAA6C;AAC7C,6CAAiD;AACjD,mCAA0D;AAE1D,MAAa,mBAAoB,SAAQ,aAAI,CAAC,WAAW,CACvD,qBAAqB,CAIrB;CAAG;AALL,kDAKK;AAEQ,QAAA,eAAe,GAAG,iBAA0B,CAAC;AAO7C,QAAA,wBAAwB,GAAS;IAC5C,IAAI,EAAE,uBAAe;IACrB,WAAW,EACT,6HAA6H;IAC/H,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,oDAAoD;aAClE;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,mDAAmD;gBAChE,KAAK,EAAE,0BAAkB;aAC1B;SACF;QACD,QAAQ,EAAE,CAAC,YAAY,CAAC;KACzB;CACF,CAAC;AAEK,MAAM,cAAc,GAAG,CAAC,KAAyB,EAAE,EAAE,CAC1D,eAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,sBAAa,CAAC;IACpC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAEtC,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,CAAC,0BAAe,CAAC;IAE7C,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,eAAM,CAAC,UAAU,CAAC;QACrC,GAAG,EAAE,GAAG,EAAE;YACR,IAAI,KAAK,GAA4B,SAAS,EAAE,CAAC,UAAU,CACzD,KAAK,CAAC,UAAU,CACjB,CAAC;YAEF,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;gBACzC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;YACnE,CAAC;YAED,OAAO,KAAK;iBACT,KAAK,EAAE;iBACP,GAAG,EAAE;iBACL,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC;QACD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,IAAI,mBAAmB,CAAC;YACtB,OAAO,EAAE,iCAAiC,KAAK,CAAC,UAAU,EAAE;YAC5D,KAAK;SACN,CAAC;KACL,CAAC,CAAC;IAEH,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC;AACjD,CAAC,CAAC,CAAC;AA9BQ,QAAA,cAAc,kBA8BtB"}
1
+ {"version":3,"file":"count_documents.js","sourceRoot":"","sources":["../../../src/tools/firestore/count_documents.ts"],"names":[],"mappings":";;;AACA,mCAAsC;AAEtC,yCAA6C;AAC7C,6CAAiD;AACjD,mCAA0D;AAE1D,MAAa,mBAAoB,SAAQ,aAAI,CAAC,WAAW,CACvD,qBAAqB,CAIrB;CAAG;AALL,kDAKK;AAEQ,QAAA,eAAe,GAAG,iBAA0B,CAAC;AAO7C,QAAA,wBAAwB,GAAS;IAC5C,IAAI,EAAE,uBAAe;IACrB,WAAW,EACT,6HAA6H;IAC/H,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,oDAAoD;aAClE;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,mDAAmD;gBAChE,KAAK,EAAE,0BAAkB;aAC1B;SACF;QACD,QAAQ,EAAE,CAAC,YAAY,CAAC;KACzB;CACF,CAAC;AAEK,MAAM,cAAc,GAAG,CAAC,KAAyB,EAAE,EAAE,CAC1D,eAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,sBAAa,CAAC;IACpC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAEtC,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,CAAC,0BAAe,CAAC;IAE7C,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,eAAM,CAAC,UAAU,CAAC;QACrC,GAAG,EAAE,GAAG,EAAE;YACR,IAAI,KAAK,GAA4B,SAAS,EAAE,CAAC,UAAU,CACzD,KAAK,CAAC,UAAU,CACjB,CAAC;YAEF,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;gBACzC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;YACnE,CAAC;YAED,OAAO,KAAK;iBACT,KAAK,EAAE;iBACP,GAAG,EAAE;iBACL,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC;QACD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,IAAI,mBAAmB,CAAC;YACtB,OAAO,EAAE,iCAAiC,KAAK,CAAC,UAAU,EAAE;YAC5D,KAAK;SACN,CAAC;KACL,CAAC,CAAC;IAEH,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC;AACjD,CAAC,CAAC,CAAC;AA9BQ,QAAA,cAAc,kBA8BtB"}
@@ -1 +1 @@
1
- {"version":3,"file":"get_document.d.ts","sourceRoot":"","sources":["../../../src/tools/firestore/get_document.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAQ,MAAM,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;;;;AAGjD,qBAAa,iBAAkB,SAAQ,uBAAsC;IAC3E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;CAAG;;;;AAEL,qBAAa,qBAAsB,SAAQ,2BAEzC;IACA,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB,CAAC;CAAG;AAEL,eAAO,MAAM,YAAY,EAAG,cAAuB,CAAC;AAEpD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,eAAO,MAAM,qBAAqB,EAAE,IAmBnC,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,OAAO,eAAe;;;;yHAqC9C,CAAC"}
1
+ {"version":3,"file":"get_document.d.ts","sourceRoot":"","sources":["../../../src/tools/firestore/get_document.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAQ,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;;;;AAGjD,qBAAa,iBAAkB,SAAQ,uBAAsC;IAC3E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;CAAG;;;;AAEL,qBAAa,qBAAsB,SAAQ,2BAEzC;IACA,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB,CAAC;CAAG;AAEL,eAAO,MAAM,YAAY,EAAG,cAAuB,CAAC;AAEpD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,eAAO,MAAM,qBAAqB,EAAE,IAmBnC,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,OAAO,eAAe;;;;yHAqC9C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"get_document.js","sourceRoot":"","sources":["../../../src/tools/firestore/get_document.ts"],"names":[],"mappings":";;;AACA,mCAAsC;AACtC,yCAA6C;AAC7C,6CAAiD;AACjD,mCAA4C;AAE5C,MAAa,iBAAkB,SAAQ,aAAI,CAAC,WAAW,CAAC,mBAAmB,CAGzE;CAAG;AAHL,8CAGK;AAEL,MAAa,qBAAsB,SAAQ,aAAI,CAAC,WAAW,CACzD,uBAAuB,CAGvB;CAAG;AAJL,sDAIK;AAEQ,QAAA,YAAY,GAAG,cAAuB,CAAC;AAOvC,QAAA,qBAAqB,GAAS;IACzC,IAAI,EAAE,oBAAY;IAClB,WAAW,EAAE,yCAAyC;IACtD,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,uCAAuC;aACrD;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EACT,oEAAoE;aACvE;SACF;QACD,QAAQ,EAAE,CAAC,MAAM,CAAC;KACnB;CACF,CAAC;AAEK,MAAM,WAAW,GAAG,CAAC,KAAsB,EAAE,EAAE,CACpD,eAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,sBAAa,CAAC;IACpC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAEhC,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,CAAC,0BAAe,CAAC;IAE7C,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,eAAM,CAAC,GAAG,CAAC;QAC/B,GAAG,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;QACtC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,IAAI,iBAAiB,CAAC;YACpB,OAAO,EAAE,0BAA0B,KAAK,CAAC,IAAI,EAAE;YAC/C,KAAK;SACN,CAAC;KACL,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,eAAM,CAAC,UAAU,CAAC;QACpC,GAAG,EAAE,GAAG,EAAE,CACR,KAAK,CAAC,MAAM,EAAE,MAAM;YAClB,CAAC,CAAC,SAAS,EAAE;iBACR,MAAM,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;iBAC3C,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC9B,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE;QAClB,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,IAAI,iBAAiB,CAAC;YACpB,OAAO,EAAE,2BAA2B,KAAK,CAAC,IAAI,EAAE;YAChD,KAAK;SACN,CAAC;KACL,CAAC,CAAC;IAEH,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjB,OAAO,KAAK,CAAC,CAAC,eAAM,CAAC,IAAI,CACvB,IAAI,qBAAqB,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAChD,CAAC;IACJ,CAAC;IAED,OAAO,IAAA,yBAAiB,EAAC,IAAI,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC;AArCQ,QAAA,WAAW,eAqCnB"}
1
+ {"version":3,"file":"get_document.js","sourceRoot":"","sources":["../../../src/tools/firestore/get_document.ts"],"names":[],"mappings":";;;AACA,mCAAsC;AAEtC,yCAA6C;AAC7C,6CAAiD;AACjD,mCAA4C;AAE5C,MAAa,iBAAkB,SAAQ,aAAI,CAAC,WAAW,CAAC,mBAAmB,CAGzE;CAAG;AAHL,8CAGK;AAEL,MAAa,qBAAsB,SAAQ,aAAI,CAAC,WAAW,CACzD,uBAAuB,CAGvB;CAAG;AAJL,sDAIK;AAEQ,QAAA,YAAY,GAAG,cAAuB,CAAC;AAOvC,QAAA,qBAAqB,GAAS;IACzC,IAAI,EAAE,oBAAY;IAClB,WAAW,EAAE,yCAAyC;IACtD,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,uCAAuC;aACrD;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EACT,oEAAoE;aACvE;SACF;QACD,QAAQ,EAAE,CAAC,MAAM,CAAC;KACnB;CACF,CAAC;AAEK,MAAM,WAAW,GAAG,CAAC,KAAsB,EAAE,EAAE,CACpD,eAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,sBAAa,CAAC;IACpC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAEhC,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,CAAC,0BAAe,CAAC;IAE7C,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,eAAM,CAAC,GAAG,CAAC;QAC/B,GAAG,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;QACtC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,IAAI,iBAAiB,CAAC;YACpB,OAAO,EAAE,0BAA0B,KAAK,CAAC,IAAI,EAAE;YAC/C,KAAK;SACN,CAAC;KACL,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,eAAM,CAAC,UAAU,CAAC;QACpC,GAAG,EAAE,GAAG,EAAE,CACR,KAAK,CAAC,MAAM,EAAE,MAAM;YAClB,CAAC,CAAC,SAAS,EAAE;iBACR,MAAM,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;iBAC3C,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC9B,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE;QAClB,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,IAAI,iBAAiB,CAAC;YACpB,OAAO,EAAE,2BAA2B,KAAK,CAAC,IAAI,EAAE;YAChD,KAAK;SACN,CAAC;KACL,CAAC,CAAC;IAEH,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjB,OAAO,KAAK,CAAC,CAAC,eAAM,CAAC,IAAI,CACvB,IAAI,qBAAqB,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAChD,CAAC;IACJ,CAAC;IAED,OAAO,IAAA,yBAAiB,EAAC,IAAI,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC;AArCQ,QAAA,WAAW,eAqCnB"}
@@ -1 +1 @@
1
- {"version":3,"file":"list_documents.d.ts","sourceRoot":"","sources":["../../../src/tools/firestore/list_documents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAQ,MAAM,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;;;;AAEjD,qBAAa,2BAA4B,SAAQ,iCAE/C;IACA,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;CAAG;AAEL,eAAO,MAAM,cAAc,EAAG,gBAAyB,CAAC;AAExD,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,eAAO,MAAM,uBAAuB,EAAE,IAoBrC,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,OAAO,iBAAiB;;;6GAuClD,CAAC"}
1
+ {"version":3,"file":"list_documents.d.ts","sourceRoot":"","sources":["../../../src/tools/firestore/list_documents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAQ,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;;;;AAEjD,qBAAa,2BAA4B,SAAQ,iCAE/C;IACA,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;CAAG;AAEL,eAAO,MAAM,cAAc,EAAG,gBAAyB,CAAC;AAExD,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,eAAO,MAAM,uBAAuB,EAAE,IAoBrC,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,OAAO,iBAAiB;;;6GAuClD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"list_documents.js","sourceRoot":"","sources":["../../../src/tools/firestore/list_documents.ts"],"names":[],"mappings":";;;AACA,mCAAsC;AACtC,yCAA6C;AAC7C,6CAAiD;AAEjD,MAAa,2BAA4B,SAAQ,aAAI,CAAC,WAAW,CAC/D,6BAA6B,CAI7B;CAAG;AALL,kEAKK;AAEQ,QAAA,cAAc,GAAG,gBAAyB,CAAC;AAO3C,QAAA,uBAAuB,GAAS;IAC3C,IAAI,EAAE,sBAAc;IACpB,WAAW,EACT,0OAA0O;IAC5O,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,8DAA8D;aACjE;YACD,kBAAkB,EAAE;gBAClB,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,4KAA4K;aAC/K;SACF;QACD,QAAQ,EAAE,CAAC,YAAY,CAAC;KACzB;CACF,CAAC;AAEK,MAAM,aAAa,GAAG,CAAC,KAAwB,EAAE,EAAE,CACxD,eAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,sBAAa,CAAC;IACpC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAEtC,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,CAAC,0BAAe,CAAC;IAE7C,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,eAAM,CAAC,UAAU,CAAC;QACpC,GAAG,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,aAAa,EAAE;QACnE,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,IAAI,2BAA2B,CAAC;YAC9B,OAAO,EAAE,gCAAgC,KAAK,CAAC,UAAU,EAAE;YAC3D,KAAK;SACN,CAAC;KACL,CAAC,CAAC;IAEH,IAAI,KAAK,CAAC,kBAAkB,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,eAAM,CAAC,UAAU,CAAC;YACvC,GAAG,EAAE,GAAG,EAAE,CACR,OAAO,CAAC,GAAG,CACT,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;gBACrB,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,eAAe,EAAE,CAAC;gBAChD,OAAO;oBACL,EAAE,EAAE,GAAG,CAAC,EAAE;oBACV,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC1C,CAAC;YACJ,CAAC,CAAC,CACH;YACH,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,IAAI,2BAA2B,CAAC;gBAC9B,OAAO,EAAE,qCAAqC,KAAK,CAAC,UAAU,EAAE;gBAChE,KAAK;aACN,CAAC;SACL,CAAC,CAAC;QACH,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;AAC7D,CAAC,CAAC,CAAC;AAvCQ,QAAA,aAAa,iBAuCrB"}
1
+ {"version":3,"file":"list_documents.js","sourceRoot":"","sources":["../../../src/tools/firestore/list_documents.ts"],"names":[],"mappings":";;;AACA,mCAAsC;AAEtC,yCAA6C;AAC7C,6CAAiD;AAEjD,MAAa,2BAA4B,SAAQ,aAAI,CAAC,WAAW,CAC/D,6BAA6B,CAI7B;CAAG;AALL,kEAKK;AAEQ,QAAA,cAAc,GAAG,gBAAyB,CAAC;AAO3C,QAAA,uBAAuB,GAAS;IAC3C,IAAI,EAAE,sBAAc;IACpB,WAAW,EACT,0OAA0O;IAC5O,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,8DAA8D;aACjE;YACD,kBAAkB,EAAE;gBAClB,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,4KAA4K;aAC/K;SACF;QACD,QAAQ,EAAE,CAAC,YAAY,CAAC;KACzB;CACF,CAAC;AAEK,MAAM,aAAa,GAAG,CAAC,KAAwB,EAAE,EAAE,CACxD,eAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,sBAAa,CAAC;IACpC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAEtC,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,CAAC,0BAAe,CAAC;IAE7C,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,eAAM,CAAC,UAAU,CAAC;QACpC,GAAG,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,aAAa,EAAE;QACnE,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,IAAI,2BAA2B,CAAC;YAC9B,OAAO,EAAE,gCAAgC,KAAK,CAAC,UAAU,EAAE;YAC3D,KAAK;SACN,CAAC;KACL,CAAC,CAAC;IAEH,IAAI,KAAK,CAAC,kBAAkB,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,eAAM,CAAC,UAAU,CAAC;YACvC,GAAG,EAAE,GAAG,EAAE,CACR,OAAO,CAAC,GAAG,CACT,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;gBACrB,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,eAAe,EAAE,CAAC;gBAChD,OAAO;oBACL,EAAE,EAAE,GAAG,CAAC,EAAE;oBACV,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC1C,CAAC;YACJ,CAAC,CAAC,CACH;YACH,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,IAAI,2BAA2B,CAAC;gBAC9B,OAAO,EAAE,qCAAqC,KAAK,CAAC,UAAU,EAAE;gBAChE,KAAK;aACN,CAAC;SACL,CAAC,CAAC;QACH,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;AAC7D,CAAC,CAAC,CAAC;AAvCQ,QAAA,aAAa,iBAuCrB"}
@@ -1 +1 @@
1
- {"version":3,"file":"read_collections.d.ts","sourceRoot":"","sources":["../../../src/tools/firestore/read_collections.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAQ,MAAM,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;;;;AAGjD,qBAAa,kBAAmB,SAAQ,wBAAuC;IAC7E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;CAAG;AAEL,eAAO,MAAM,eAAe,EAAG,iBAA0B,CAAC;AAE1D,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,wBAAwB,EAAE,IAiCtC,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,OAAO,kBAAkB;;;;;;;;;;;;;;;;;;;kHAqEpD,CAAC"}
1
+ {"version":3,"file":"read_collections.d.ts","sourceRoot":"","sources":["../../../src/tools/firestore/read_collections.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAQ,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;;;;AAGjD,qBAAa,kBAAmB,SAAQ,wBAAuC;IAC7E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;CAAG;AAEL,eAAO,MAAM,eAAe,EAAG,iBAA0B,CAAC;AAE1D,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,wBAAwB,EAAE,IAiCtC,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,OAAO,kBAAkB;;;;;;;;;;;;;;;;;;;kHAqEpD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"read_collections.js","sourceRoot":"","sources":["../../../src/tools/firestore/read_collections.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"read_collections.js","sourceRoot":"","sources":["../../../src/tools/firestore/read_collections.ts"],"names":[],"mappings":"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"}
@@ -43,7 +43,6 @@ export interface QueryOrderBy {
43
43
  field: string;
44
44
  direction?: OrderByDirection;
45
45
  }
46
- export declare const normalizeValue: (value: unknown) => unknown;
47
46
  export declare const normalizeDocument: (doc: admin.firestore.QueryDocumentSnapshot | admin.firestore.DocumentSnapshot) => {
48
47
  id: string;
49
48
  path: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/tools/firestore/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,gBAAgB,CAAC;AACnC,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,aAAa,EACd,MAAM,0BAA0B,CAAC;AAElC,eAAO,MAAM,eAAe,EAAE,aAAa,EAW1C,CAAC;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;CAerB,CAAC;AAEX,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;CAWvB,CAAC;AAEX,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,QAAQ,EAAE,aAAa,CAAC;IACxB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,gBAAgB,CAAC;CAC9B;AAED,eAAO,MAAM,cAAc,GAAI,OAAO,OAAO,KAAG,OAmB/C,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAC5B,KAAK,KAAK,CAAC,SAAS,CAAC,qBAAqB,GAAG,KAAK,CAAC,SAAS,CAAC,gBAAgB;;;;CAK7E,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/tools/firestore/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,gBAAgB,CAAC;AACnC,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,aAAa,EACd,MAAM,0BAA0B,CAAC;AAIlC,eAAO,MAAM,eAAe,EAAE,aAAa,EAW1C,CAAC;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;CAerB,CAAC;AAEX,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;CAWvB,CAAC;AAEX,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,QAAQ,EAAE,aAAa,CAAC;IACxB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,gBAAgB,CAAC;CAC9B;AAED,eAAO,MAAM,iBAAiB,GAC5B,KAAK,KAAK,CAAC,SAAS,CAAC,qBAAqB,GAAG,KAAK,CAAC,SAAS,CAAC,gBAAgB;;;;CAK7E,CAAC"}
@@ -1,10 +1,7 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.normalizeDocument = exports.normalizeValue = exports.ORDER_BY_SCHEMA_ITEM = exports.FILTER_SCHEMA_ITEM = exports.VALID_OPERATORS = void 0;
7
- const firebase_admin_1 = __importDefault(require("firebase-admin"));
3
+ exports.normalizeDocument = exports.ORDER_BY_SCHEMA_ITEM = exports.FILTER_SCHEMA_ITEM = exports.VALID_OPERATORS = void 0;
4
+ const normalize_1 = require("../normalize");
8
5
  exports.VALID_OPERATORS = [
9
6
  '<',
10
7
  '<=',
@@ -44,32 +41,10 @@ exports.ORDER_BY_SCHEMA_ITEM = {
44
41
  },
45
42
  required: ['field'],
46
43
  };
47
- const normalizeValue = (value) => {
48
- if (value === null || value === undefined)
49
- return value;
50
- if (value instanceof firebase_admin_1.default.firestore.Timestamp) {
51
- return value.toDate().toISOString();
52
- }
53
- if (value instanceof firebase_admin_1.default.firestore.GeoPoint) {
54
- return { latitude: value.latitude, longitude: value.longitude };
55
- }
56
- if (value instanceof firebase_admin_1.default.firestore.DocumentReference)
57
- return value.path;
58
- if (Array.isArray(value))
59
- return value.map(exports.normalizeValue);
60
- if (typeof value === 'object') {
61
- return Object.fromEntries(Object.entries(value).map(([k, v]) => [
62
- k,
63
- (0, exports.normalizeValue)(v),
64
- ]));
65
- }
66
- return value;
67
- };
68
- exports.normalizeValue = normalizeValue;
69
44
  const normalizeDocument = (doc) => ({
70
45
  id: doc.id,
71
46
  path: doc.ref.path,
72
- data: (0, exports.normalizeValue)(doc.data()),
47
+ data: (0, normalize_1.normalizeValue)(doc.data()),
73
48
  });
74
49
  exports.normalizeDocument = normalizeDocument;
75
50
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/tools/firestore/types.ts"],"names":[],"mappings":";;;;;;AAAA,oEAAmC;AAOtB,QAAA,eAAe,GAAoB;IAC9C,GAAG;IACH,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,GAAG;IACH,gBAAgB;IAChB,oBAAoB;IACpB,IAAI;IACJ,QAAQ;CACT,CAAC;AAEW,QAAA,kBAAkB,GAAG;IAChC,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,yBAAyB,EAAE;QACjE,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,uBAAe;YACrB,WAAW,EAAE,qBAAqB;SACnC;QACD,KAAK,EAAE;YACL,WAAW,EACT,qGAAqG;SACxG;KACF;IACD,QAAQ,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC;CAChC,CAAC;AAEE,QAAA,oBAAoB,GAAG;IAClC,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE;QAC3D,SAAS,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC;YACrB,WAAW,EAAE,iCAAiC;SAC/C;KACF;IACD,QAAQ,EAAE,CAAC,OAAO,CAAC;CACX,CAAC;AAaJ,MAAM,cAAc,GAAG,CAAC,KAAc,EAAW,EAAE;IACxD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACxD,IAAI,KAAK,YAAY,wBAAK,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;QAC/C,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC;IACtC,CAAC;IACD,IAAI,KAAK,YAAY,wBAAK,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;QAC9C,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;IAClE,CAAC;IACD,IAAI,KAAK,YAAY,wBAAK,CAAC,SAAS,CAAC,iBAAiB;QAAE,OAAO,KAAK,CAAC,IAAI,CAAC;IAC1E,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,sBAAc,CAAC,CAAC;IAC3D,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAqB,EAAE,CAAC;YACvD,CAAC;YACD,IAAA,sBAAc,EAAC,CAAC,CAAC;SAClB,CAAC,CACH,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAnBW,QAAA,cAAc,kBAmBzB;AAEK,MAAM,iBAAiB,GAAG,CAC/B,GAA6E,EAC7E,EAAE,CAAC,CAAC;IACJ,EAAE,EAAE,GAAG,CAAC,EAAE;IACV,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI;IAClB,IAAI,EAAE,IAAA,sBAAc,EAAC,GAAG,CAAC,IAAI,EAAE,CAAC;CACjC,CAAC,CAAC;AANU,QAAA,iBAAiB,qBAM3B"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/tools/firestore/types.ts"],"names":[],"mappings":";;;AAOA,4CAA8C;AAEjC,QAAA,eAAe,GAAoB;IAC9C,GAAG;IACH,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,GAAG;IACH,gBAAgB;IAChB,oBAAoB;IACpB,IAAI;IACJ,QAAQ;CACT,CAAC;AAEW,QAAA,kBAAkB,GAAG;IAChC,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,yBAAyB,EAAE;QACjE,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,uBAAe;YACrB,WAAW,EAAE,qBAAqB;SACnC;QACD,KAAK,EAAE;YACL,WAAW,EACT,qGAAqG;SACxG;KACF;IACD,QAAQ,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC;CAChC,CAAC;AAEE,QAAA,oBAAoB,GAAG;IAClC,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE;QAC3D,SAAS,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC;YACrB,WAAW,EAAE,iCAAiC;SAC/C;KACF;IACD,QAAQ,EAAE,CAAC,OAAO,CAAC;CACX,CAAC;AAaJ,MAAM,iBAAiB,GAAG,CAC/B,GAA6E,EAC7E,EAAE,CAAC,CAAC;IACJ,EAAE,EAAE,GAAG,CAAC,EAAE;IACV,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI;IAClB,IAAI,EAAE,IAAA,0BAAc,EAAC,GAAG,CAAC,IAAI,EAAE,CAAC;CACjC,CAAC,CAAC;AANU,QAAA,iBAAiB,qBAM3B"}
@@ -1,7 +1,8 @@
1
1
  import { Tool } from '@modelcontextprotocol/sdk/types.js';
2
2
  import { Effect } from 'effect';
3
+ import * as AuthTool from './auth';
3
4
  import * as FirestoreTool from './firestore';
4
- type ToolNames = typeof FirestoreTool.AGGREGATE_COLLECTION | typeof FirestoreTool.COUNT_DOCUMENTS | typeof FirestoreTool.GET_COLLECTION_SCHEMA | typeof FirestoreTool.GET_MANY_DOCUMENTS | typeof FirestoreTool.LIST_INDEXES | typeof FirestoreTool.READ_COLLECTION | typeof FirestoreTool.GET_DOCUMENT | typeof FirestoreTool.LIST_COLLECTIONS | typeof FirestoreTool.LIST_DOCUMENTS | typeof FirestoreTool.QUERY_COLLECTION | typeof FirestoreTool.QUERY_COLLECTION_GROUP;
5
+ type ToolNames = typeof FirestoreTool.AGGREGATE_COLLECTION | typeof FirestoreTool.COUNT_DOCUMENTS | typeof FirestoreTool.GET_COLLECTION_SCHEMA | typeof FirestoreTool.GET_MANY_DOCUMENTS | typeof FirestoreTool.LIST_INDEXES | typeof FirestoreTool.READ_COLLECTION | typeof FirestoreTool.GET_DOCUMENT | typeof FirestoreTool.LIST_COLLECTIONS | typeof FirestoreTool.LIST_DOCUMENTS | typeof FirestoreTool.QUERY_COLLECTION | typeof FirestoreTool.QUERY_COLLECTION_GROUP | typeof AuthTool.GET_USER | typeof AuthTool.LIST_USERS;
5
6
  export declare const allToolDefinitions: Tool[];
6
7
  export declare const dispatchTool: (name: ToolNames | (string & {}), args: Record<string, unknown>) => Effect.Effect<{
7
8
  [x: string]: unknown;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,KAAK,aAAa,MAAM,aAAa,CAAC;AAE7C,KAAK,SAAS,GACV,OAAO,aAAa,CAAC,oBAAoB,GACzC,OAAO,aAAa,CAAC,eAAe,GACpC,OAAO,aAAa,CAAC,qBAAqB,GAC1C,OAAO,aAAa,CAAC,kBAAkB,GACvC,OAAO,aAAa,CAAC,YAAY,GACjC,OAAO,aAAa,CAAC,eAAe,GACpC,OAAO,aAAa,CAAC,YAAY,GACjC,OAAO,aAAa,CAAC,gBAAgB,GACrC,OAAO,aAAa,CAAC,cAAc,GACnC,OAAO,aAAa,CAAC,gBAAgB,GACrC,OAAO,aAAa,CAAC,sBAAsB,CAAC;AAEhD,eAAO,MAAM,kBAAkB,EAAE,IAAI,EAYpC,CAAC;AAuBF,eAAO,MAAM,YAAY,GACvB,MAAM,SAAS,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,EAC/B,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wHA2F5B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,KAAK,QAAQ,MAAM,QAAQ,CAAC;AACnC,OAAO,KAAK,aAAa,MAAM,aAAa,CAAC;AAE7C,KAAK,SAAS,GACV,OAAO,aAAa,CAAC,oBAAoB,GACzC,OAAO,aAAa,CAAC,eAAe,GACpC,OAAO,aAAa,CAAC,qBAAqB,GAC1C,OAAO,aAAa,CAAC,kBAAkB,GACvC,OAAO,aAAa,CAAC,YAAY,GACjC,OAAO,aAAa,CAAC,eAAe,GACpC,OAAO,aAAa,CAAC,YAAY,GACjC,OAAO,aAAa,CAAC,gBAAgB,GACrC,OAAO,aAAa,CAAC,cAAc,GACnC,OAAO,aAAa,CAAC,gBAAgB,GACrC,OAAO,aAAa,CAAC,sBAAsB,GAC3C,OAAO,QAAQ,CAAC,QAAQ,GACxB,OAAO,QAAQ,CAAC,UAAU,CAAC;AAE/B,eAAO,MAAM,kBAAkB,EAAE,IAAI,EAcpC,CAAC;AAuBF,eAAO,MAAM,YAAY,GACvB,MAAM,SAAS,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,EAC/B,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wHAgH5B,CAAC"}
@@ -35,6 +35,7 @@ var __importStar = (this && this.__importStar) || (function () {
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.dispatchTool = exports.allToolDefinitions = void 0;
37
37
  const effect_1 = require("effect");
38
+ const AuthTool = __importStar(require("./auth"));
38
39
  const FirestoreTool = __importStar(require("./firestore"));
39
40
  exports.allToolDefinitions = [
40
41
  FirestoreTool.aggregateCollectionDefinition,
@@ -48,6 +49,8 @@ exports.allToolDefinitions = [
48
49
  FirestoreTool.getManyDocumentsDefinition,
49
50
  FirestoreTool.queryCollectionDefinition,
50
51
  FirestoreTool.queryCollectionGroupDefinition,
52
+ AuthTool.getUserDefinition,
53
+ AuthTool.listUsersDefinition,
51
54
  ];
52
55
  const toErrorResult = (code, message, details) => ({
53
56
  content: [
@@ -88,6 +91,10 @@ const dispatchTool = (name, args) => effect_1.Effect.gen(function* () {
88
91
  return yield* FirestoreTool.getDocument(args);
89
92
  case FirestoreTool.QUERY_COLLECTION:
90
93
  return yield* FirestoreTool.queryCollection(args);
94
+ case AuthTool.GET_USER:
95
+ return yield* AuthTool.getUser(args);
96
+ case AuthTool.LIST_USERS:
97
+ return yield* AuthTool.listUsers(args);
91
98
  default:
92
99
  return yield* effect_1.Effect.fail({ _tag: 'UnknownTool', name });
93
100
  }
@@ -113,6 +120,13 @@ const dispatchTool = (name, args) => effect_1.Effect.gen(function* () {
113
120
  return effect_1.Effect.succeed(toErrorResult('FIRESTORE_ERROR', err.message, {
114
121
  cause: String(err.cause),
115
122
  }));
123
+ case 'AuthGetUserError':
124
+ case 'AuthListUsersError':
125
+ return effect_1.Effect.succeed(toErrorResult('AUTH_ERROR', err.message, {
126
+ cause: String(err.cause),
127
+ }));
128
+ case 'AuthUserNotFoundError':
129
+ return effect_1.Effect.succeed(toErrorResult('NOT_FOUND', `User not found: ${err.identifier}`, { identifier: err.identifier }));
116
130
  case 'UnknownTool':
117
131
  return effect_1.Effect.succeed(toErrorResult('UNKNOWN_TOOL', `Unknown tool: ${err.name}`));
118
132
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const normalizeValue: (value: unknown) => unknown;
2
+ //# sourceMappingURL=normalize.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalize.d.ts","sourceRoot":"","sources":["../../src/tools/normalize.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,cAAc,GAAI,OAAO,OAAO,KAAG,OA6B/C,CAAC"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.normalizeValue = void 0;
7
+ const firebase_admin_1 = __importDefault(require("firebase-admin"));
8
+ const normalizeValue = (value) => {
9
+ if (value === null || value === undefined)
10
+ return value;
11
+ if (value instanceof firebase_admin_1.default.firestore.Timestamp) {
12
+ return value.toDate().toISOString();
13
+ }
14
+ if (value instanceof firebase_admin_1.default.firestore.GeoPoint) {
15
+ return { latitude: value.latitude, longitude: value.longitude };
16
+ }
17
+ if (value instanceof firebase_admin_1.default.firestore.DocumentReference)
18
+ return value.path;
19
+ if (Array.isArray(value))
20
+ return value.map(exports.normalizeValue);
21
+ if (typeof value === 'object') {
22
+ const obj = value;
23
+ if (typeof obj['_seconds'] === 'number' &&
24
+ typeof obj['_nanoseconds'] === 'number' &&
25
+ Object.keys(obj).length === 2) {
26
+ return new Date(obj['_seconds'] * 1000 + obj['_nanoseconds'] / 1e6).toISOString();
27
+ }
28
+ return Object.fromEntries(Object.entries(obj).map(([k, v]) => [
29
+ k,
30
+ (0, exports.normalizeValue)(v),
31
+ ]));
32
+ }
33
+ return value;
34
+ };
35
+ exports.normalizeValue = normalizeValue;
36
+ //# sourceMappingURL=normalize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalize.js","sourceRoot":"","sources":["../../src/tools/normalize.ts"],"names":[],"mappings":";;;;;;AAAA,oEAAmC;AAE5B,MAAM,cAAc,GAAG,CAAC,KAAc,EAAW,EAAE;IACxD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACxD,IAAI,KAAK,YAAY,wBAAK,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;QAC/C,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC;IACtC,CAAC;IACD,IAAI,KAAK,YAAY,wBAAK,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;QAC9C,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;IAClE,CAAC;IACD,IAAI,KAAK,YAAY,wBAAK,CAAC,SAAS,CAAC,iBAAiB;QAAE,OAAO,KAAK,CAAC,IAAI,CAAC;IAC1E,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,sBAAc,CAAC,CAAC;IAC3D,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,GAAG,GAAG,KAAgC,CAAC;QAC7C,IACE,OAAO,GAAG,CAAC,UAAU,CAAC,KAAK,QAAQ;YACnC,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,QAAQ;YACvC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,EAC7B,CAAC;YACD,OAAO,IAAI,IAAI,CACb,GAAG,CAAC,UAAU,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,cAAc,CAAC,GAAG,GAAG,CACnD,CAAC,WAAW,EAAE,CAAC;QAClB,CAAC;QACD,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAqB,EAAE,CAAC;YACrD,CAAC;YACD,IAAA,sBAAc,EAAC,CAAC,CAAC;SAClB,CAAC,CACH,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AA7BW,QAAA,cAAc,kBA6BzB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "firebase-mcp",
3
- "version": "0.1.2",
3
+ "version": "0.2.0",
4
4
  "description": "MCP server that exposes Firebase Firestore to AI agents (Cursor, Claude Desktop, etc.)",
5
5
  "main": "dist/cli/index.js",
6
6
  "bin": {