@warmio/contracts 3.0.6 → 3.0.7

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 (47) hide show
  1. package/dist/api/endpoints.d.ts +2 -0
  2. package/dist/api/endpoints.d.ts.map +1 -1
  3. package/dist/api/endpoints.js +2 -0
  4. package/dist/api/endpoints.js.map +1 -1
  5. package/dist/financial-context-artifact-protocol.d.ts +1425 -7
  6. package/dist/financial-context-artifact-protocol.d.ts.map +1 -1
  7. package/dist/financial-context-artifact-protocol.js +20 -4
  8. package/dist/financial-context-artifact-protocol.js.map +1 -1
  9. package/dist/generated/mcp-package-release-metadata.d.ts +1 -1
  10. package/dist/generated/mcp-package-release-metadata.js +1 -1
  11. package/dist/generated/private-mcp-tool-descriptors.d.ts +57 -0
  12. package/dist/generated/private-mcp-tool-descriptors.d.ts.map +1 -1
  13. package/dist/generated/private-mcp-tool-descriptors.js +84 -0
  14. package/dist/generated/private-mcp-tool-descriptors.js.map +1 -1
  15. package/dist/generated/protected-crawler-paths.d.ts +1 -1
  16. package/dist/generated/protected-crawler-paths.d.ts.map +1 -1
  17. package/dist/generated/protected-crawler-paths.js +0 -3
  18. package/dist/generated/protected-crawler-paths.js.map +1 -1
  19. package/dist/generated/warm-app-api-manifest.d.ts +62 -5
  20. package/dist/generated/warm-app-api-manifest.d.ts.map +1 -1
  21. package/dist/generated/warm-app-api-manifest.js +89 -5
  22. package/dist/generated/warm-app-api-manifest.js.map +1 -1
  23. package/dist/mcp/hosted-write-tools.d.ts +1745 -0
  24. package/dist/mcp/hosted-write-tools.d.ts.map +1 -0
  25. package/dist/mcp/hosted-write-tools.js +318 -0
  26. package/dist/mcp/hosted-write-tools.js.map +1 -0
  27. package/dist/mcp/index.d.ts +1 -0
  28. package/dist/mcp/index.d.ts.map +1 -1
  29. package/dist/mcp/index.js +1 -0
  30. package/dist/mcp/index.js.map +1 -1
  31. package/dist/mcp/public-output.d.ts +63 -3
  32. package/dist/mcp/public-output.d.ts.map +1 -1
  33. package/dist/mcp/public-output.js +23 -2
  34. package/dist/mcp/public-output.js.map +1 -1
  35. package/dist/mcp/public-tools.d.ts +46 -2
  36. package/dist/mcp/public-tools.d.ts.map +1 -1
  37. package/dist/mcp/public-tools.js +2 -0
  38. package/dist/mcp/public-tools.js.map +1 -1
  39. package/dist/mcp/tools.d.ts +146 -13
  40. package/dist/mcp/tools.d.ts.map +1 -1
  41. package/dist/mcp/tools.js +17 -15
  42. package/dist/mcp/tools.js.map +1 -1
  43. package/dist/schemas/financial-context.d.ts +52 -0
  44. package/dist/schemas/financial-context.d.ts.map +1 -1
  45. package/dist/schemas/financial-context.js +4 -0
  46. package/dist/schemas/financial-context.js.map +1 -1
  47. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hosted-write-tools.d.ts","sourceRoot":"","sources":["../../src/mcp/hosted-write-tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,318 @@
1
+ import { z } from 'zod';
2
+ import { zodToJsonSchema } from 'zod-to-json-schema';
3
+ import { financialContextMonthSchema } from '../schemas/index.js';
4
+ export const HOSTED_MCP_WRITE_PERMISSION = 'financial_records:write';
5
+ export const HOSTED_MCP_WRITE_OPERATION_IDS = ['transactions.update', 'tag_rules.create'];
6
+ export const HOSTED_MCP_PRIMARY_CATEGORIES = [
7
+ 'INCOME',
8
+ 'TRANSFER_IN',
9
+ 'TRANSFER_OUT',
10
+ 'LOAN_PAYMENTS',
11
+ 'BANK_FEES',
12
+ 'ENTERTAINMENT',
13
+ 'FOOD_AND_DRINK',
14
+ 'GENERAL_MERCHANDISE',
15
+ 'HOME_IMPROVEMENT',
16
+ 'MEDICAL',
17
+ 'PERSONAL_CARE',
18
+ 'GENERAL_SERVICES',
19
+ 'GOVERNMENT_AND_NON_PROFIT',
20
+ 'TRANSPORTATION',
21
+ 'TRAVEL',
22
+ 'RENT_AND_UTILITIES',
23
+ ];
24
+ export const HOSTED_MCP_FIND_TRANSACTIONS_PAGE_SIZE = 50;
25
+ export const HOSTED_MCP_MAX_TRANSACTIONS_PER_CHANGE = 50;
26
+ export const HOSTED_MCP_MAX_TAGS_PER_CHANGE = 10;
27
+ const transactionIdSchema = z.string().min(1).max(128);
28
+ const tagNameSchema = z.string().trim().min(1).max(50);
29
+ const primaryCategorySchema = z.enum(HOSTED_MCP_PRIMARY_CATEGORIES);
30
+ const detailedCategorySchema = z
31
+ .string()
32
+ .regex(/^[A-Z][A-Z0-9_]{1,99}$/u)
33
+ .describe('A Warm detailed category code such as FOOD_AND_DRINK_RESTAURANT.');
34
+ const uniqueStrings = (values) => new Set(values).size === values.length;
35
+ export const hostedTransactionsUpdateInputSchema = z
36
+ .object({
37
+ transaction_ids: z
38
+ .array(transactionIdSchema)
39
+ .min(1)
40
+ .max(HOSTED_MCP_MAX_TRANSACTIONS_PER_CHANGE)
41
+ .refine(uniqueStrings, 'Transaction ids must be unique.')
42
+ .describe('Transaction ids from find_transactions. Every listed transaction gets the same change.'),
43
+ primary_category: primaryCategorySchema.optional(),
44
+ detailed_category: detailedCategorySchema.nullable().optional(),
45
+ add_tags: z
46
+ .array(tagNameSchema)
47
+ .max(HOSTED_MCP_MAX_TAGS_PER_CHANGE)
48
+ .refine(uniqueStrings, 'Tags must be unique.')
49
+ .optional()
50
+ .describe('Tags to add. Existing tags stay.'),
51
+ remove_tags: z
52
+ .array(tagNameSchema)
53
+ .max(HOSTED_MCP_MAX_TAGS_PER_CHANGE)
54
+ .refine(uniqueStrings, 'Tags must be unique.')
55
+ .optional()
56
+ .describe('Tags to remove. Other tags stay.'),
57
+ name: z
58
+ .string()
59
+ .trim()
60
+ .min(1)
61
+ .max(255)
62
+ .optional()
63
+ .describe('New name. Only for one manually added transaction.'),
64
+ })
65
+ .strict()
66
+ .superRefine((input, context) => {
67
+ const changed = input.primary_category !== undefined ||
68
+ input.detailed_category !== undefined ||
69
+ (input.add_tags?.length ?? 0) > 0 ||
70
+ (input.remove_tags?.length ?? 0) > 0 ||
71
+ input.name !== undefined;
72
+ if (!changed) {
73
+ context.addIssue({ code: z.ZodIssueCode.custom, message: 'Describe at least one change.' });
74
+ }
75
+ if (input.name !== undefined && input.transaction_ids.length !== 1) {
76
+ context.addIssue({
77
+ code: z.ZodIssueCode.custom,
78
+ message: 'A rename applies to exactly one transaction.',
79
+ });
80
+ }
81
+ const removed = new Set(input.remove_tags ?? []);
82
+ if ((input.add_tags ?? []).some((tag) => removed.has(tag))) {
83
+ context.addIssue({
84
+ code: z.ZodIssueCode.custom,
85
+ message: 'A tag cannot be added and removed in one change.',
86
+ });
87
+ }
88
+ });
89
+ export const hostedTagRuleCreateInputSchema = z
90
+ .object({
91
+ merchant_name: z.string().trim().min(1).max(255),
92
+ tag_name: tagNameSchema,
93
+ direction: z.enum(['income', 'expense']),
94
+ case_insensitive: z.boolean().optional(),
95
+ })
96
+ .strict();
97
+ export const hostedOperationInputSchemas = {
98
+ 'transactions.update': hostedTransactionsUpdateInputSchema,
99
+ 'tag_rules.create': hostedTagRuleCreateInputSchema,
100
+ };
101
+ export function parseHostedOperationRequest(value) {
102
+ if (value.operation_id === 'transactions.update') {
103
+ const parsed = hostedTransactionsUpdateInputSchema.safeParse(value.input);
104
+ return parsed.success ? { operation_id: 'transactions.update', input: parsed.data } : null;
105
+ }
106
+ if (value.operation_id === 'tag_rules.create') {
107
+ const parsed = hostedTagRuleCreateInputSchema.safeParse(value.input);
108
+ return parsed.success ? { operation_id: 'tag_rules.create', input: parsed.data } : null;
109
+ }
110
+ return null;
111
+ }
112
+ const transactionStateSchema = z
113
+ .object({
114
+ category: z.string().nullable(),
115
+ detailed_category: z.string().nullable(),
116
+ tags: z.array(z.string()),
117
+ name: z.string(),
118
+ })
119
+ .strict();
120
+ export const hostedTransactionChangePreviewSchema = z
121
+ .object({
122
+ transaction_id: transactionIdSchema,
123
+ date: z.string(),
124
+ amount: z.number(),
125
+ currency: z.string(),
126
+ before: transactionStateSchema,
127
+ after: transactionStateSchema,
128
+ })
129
+ .strict();
130
+ export const hostedOperationPreviewSchema = z.discriminatedUnion('kind', [
131
+ z
132
+ .object({
133
+ kind: z.literal('transactions.update'),
134
+ changes: z.array(hostedTransactionChangePreviewSchema).min(1),
135
+ })
136
+ .strict(),
137
+ z
138
+ .object({
139
+ kind: z.literal('tag_rules.create'),
140
+ merchant_name: z.string(),
141
+ tag_name: z.string(),
142
+ direction: z.enum(['income', 'expense']),
143
+ case_insensitive: z.boolean(),
144
+ applies_to: z.literal('future_transactions_only'),
145
+ })
146
+ .strict(),
147
+ ]);
148
+ export const HOSTED_OPERATION_APPROVAL_STATUSES = [
149
+ 'pending',
150
+ 'approved',
151
+ 'rejected',
152
+ 'consumed',
153
+ 'expired',
154
+ ];
155
+ export const HOSTED_OPERATION_EXECUTION_STATUSES = [
156
+ 'not_started',
157
+ 'started',
158
+ 'succeeded',
159
+ 'failed',
160
+ 'uncertain',
161
+ ];
162
+ export const hostedOperationResultSchema = z.discriminatedUnion('kind', [
163
+ z
164
+ .object({
165
+ kind: z.literal('transactions.update'),
166
+ updated_transaction_ids: z.array(transactionIdSchema),
167
+ failed_transaction_ids: z.array(transactionIdSchema),
168
+ })
169
+ .strict(),
170
+ z
171
+ .object({
172
+ kind: z.literal('tag_rules.create'),
173
+ created: z.boolean(),
174
+ })
175
+ .strict(),
176
+ ]);
177
+ const hostedOperationInputShapeField = z
178
+ .union([hostedTransactionsUpdateInputSchema, hostedTagRuleCreateInputSchema])
179
+ .describe('For transactions.update: transaction_ids plus the change. For tag_rules.create: merchant_name, tag_name, direction.');
180
+ export const findTransactionsMcpInputShape = {
181
+ month: financialContextMonthSchema
182
+ .optional()
183
+ .describe('A YYYY-MM month. Defaults to all months.'),
184
+ query: z
185
+ .string()
186
+ .trim()
187
+ .min(1)
188
+ .max(100)
189
+ .optional()
190
+ .describe('Words that appear in the transaction name.'),
191
+ category: primaryCategorySchema.optional(),
192
+ tag: tagNameSchema.optional(),
193
+ page: z.number().int().min(1).max(200).optional().describe('Page number, starting at 1.'),
194
+ };
195
+ export const describeHostedOperationMcpInputShape = {
196
+ operation_id: z.enum(HOSTED_MCP_WRITE_OPERATION_IDS),
197
+ input: hostedOperationInputShapeField,
198
+ };
199
+ export const invokeHostedOperationMcpInputShape = {
200
+ ...describeHostedOperationMcpInputShape,
201
+ approval_id: z
202
+ .string()
203
+ .uuid()
204
+ .describe('Approval id returned by describe_operation for this exact input.'),
205
+ };
206
+ export const getOperationStatusMcpInputShape = {
207
+ approval_id: z.string().uuid(),
208
+ };
209
+ export const findTransactionsMcpInputSchema = z.object(findTransactionsMcpInputShape).strict();
210
+ export const describeHostedOperationMcpInputSchema = z
211
+ .object(describeHostedOperationMcpInputShape)
212
+ .strict();
213
+ export const invokeHostedOperationMcpInputSchema = z
214
+ .object(invokeHostedOperationMcpInputShape)
215
+ .strict();
216
+ export const getOperationStatusMcpInputSchema = z.object(getOperationStatusMcpInputShape).strict();
217
+ export const hostedFindTransactionsItemSchema = z
218
+ .object({
219
+ id: transactionIdSchema,
220
+ date: z.string(),
221
+ amount: z.number().describe('Negative for money out, positive for money in.'),
222
+ currency: z.string(),
223
+ name: z.string(),
224
+ category: z.string().nullable(),
225
+ detailed_category: z.string().nullable(),
226
+ tags: z.array(z.string()),
227
+ pending: z.boolean(),
228
+ name_editable: z.boolean(),
229
+ })
230
+ .strict();
231
+ export const findTransactionsMcpOutputSchema = z
232
+ .object({
233
+ items: z.array(hostedFindTransactionsItemSchema).max(HOSTED_MCP_FIND_TRANSACTIONS_PAGE_SIZE),
234
+ page: z.number().int().min(1),
235
+ page_size: z.literal(HOSTED_MCP_FIND_TRANSACTIONS_PAGE_SIZE),
236
+ has_more: z.boolean(),
237
+ })
238
+ .strict();
239
+ export const describeHostedOperationMcpOutputSchema = z
240
+ .object({
241
+ operation_id: z.enum(HOSTED_MCP_WRITE_OPERATION_IDS),
242
+ approval: z
243
+ .object({
244
+ id: z.string().uuid(),
245
+ status: z.literal('pending'),
246
+ approval_url: z.string().url(),
247
+ expires_at: z.string(),
248
+ })
249
+ .strict(),
250
+ preview: hostedOperationPreviewSchema,
251
+ })
252
+ .strict();
253
+ export const invokeHostedOperationMcpOutputSchema = z
254
+ .object({
255
+ operation_id: z.enum(HOSTED_MCP_WRITE_OPERATION_IDS),
256
+ approval_id: z.string().uuid(),
257
+ execution_status: z.enum(['succeeded', 'failed', 'uncertain']),
258
+ result: hostedOperationResultSchema.nullable(),
259
+ })
260
+ .strict();
261
+ export const getOperationStatusMcpOutputSchema = z
262
+ .object({
263
+ approval_id: z.string().uuid(),
264
+ operation_id: z.enum(HOSTED_MCP_WRITE_OPERATION_IDS),
265
+ approval_status: z.enum(HOSTED_OPERATION_APPROVAL_STATUSES),
266
+ execution_status: z.enum(HOSTED_OPERATION_EXECUTION_STATUSES),
267
+ expires_at: z.string(),
268
+ result: hostedOperationResultSchema.nullable(),
269
+ })
270
+ .strict();
271
+ const tool = (definition) => definition;
272
+ const normalizeJsonSchema = (schema) => {
273
+ const normalizedSchema = { ...schema };
274
+ if (normalizedSchema.$schema === 'http://json-schema.org/draft-07/schema#') {
275
+ normalizedSchema.$schema = 'https://json-schema.org/draft-07/schema#';
276
+ }
277
+ return normalizedSchema;
278
+ };
279
+ export const hostedWriteMcpToolDefinitions = [
280
+ tool({
281
+ name: 'find_transactions',
282
+ title: 'Find transactions',
283
+ description: `Find transactions to change. Returns pages of up to ${HOSTED_MCP_FIND_TRANSACTIONS_PAGE_SIZE} items with id, date, amount, currency, name, category, detailed category, tags, pending status, and whether the name can be edited. Amounts are negative for money out and positive for money in. Account details and notes are omitted. Use the ids with describe_operation.`,
284
+ annotations: { readOnlyHint: true, destructiveHint: false, openWorldHint: false },
285
+ inputShape: findTransactionsMcpInputShape,
286
+ outputSchema: findTransactionsMcpOutputSchema,
287
+ }),
288
+ tool({
289
+ name: 'describe_operation',
290
+ title: 'Prepare a change for approval',
291
+ description: 'Prepare one change and get a preview plus an approval id. Supported operations: transactions.update (set category or detailed category, add or remove tags, or rename one manually added transaction; up to 50 transactions with the same change) and tag_rules.create (tag future transactions from a merchant; past transactions are not changed). Nothing changes until the user approves it in Warm at approval_url. Show the user the preview and the link.',
292
+ annotations: { readOnlyHint: false, destructiveHint: false, openWorldHint: false },
293
+ inputShape: describeHostedOperationMcpInputShape,
294
+ outputSchema: describeHostedOperationMcpOutputSchema,
295
+ }),
296
+ tool({
297
+ name: 'invoke_operation',
298
+ title: 'Apply an approved change',
299
+ description: 'Apply a change after the user approved it in Warm. Pass the same operation_id and input used with describe_operation and its approval_id. Each approval works once. If the data changed since the preview, the change is refused and needs a new approval.',
300
+ annotations: { readOnlyHint: false, destructiveHint: true, openWorldHint: false },
301
+ inputShape: invokeHostedOperationMcpInputShape,
302
+ outputSchema: invokeHostedOperationMcpOutputSchema,
303
+ }),
304
+ tool({
305
+ name: 'get_operation_status',
306
+ title: 'Check a change',
307
+ description: 'Check whether a change is still waiting for approval, was approved or rejected, and whether it was applied.',
308
+ annotations: { readOnlyHint: true, destructiveHint: false, openWorldHint: false },
309
+ inputShape: getOperationStatusMcpInputShape,
310
+ outputSchema: getOperationStatusMcpOutputSchema,
311
+ }),
312
+ ];
313
+ export const hostedWriteMcpToolDescriptors = hostedWriteMcpToolDefinitions.map(({ inputShape, outputSchema, ...toolDefinition }) => ({
314
+ ...toolDefinition,
315
+ input_schema: normalizeJsonSchema(zodToJsonSchema(z.object(inputShape).strict(), { $refStrategy: 'none' })),
316
+ output_schema: normalizeJsonSchema(zodToJsonSchema(outputSchema, { $refStrategy: 'none' })),
317
+ }));
318
+ //# sourceMappingURL=hosted-write-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hosted-write-tools.js","sourceRoot":"","sources":["../../src/mcp/hosted-write-tools.ts"],"names":[],"mappings":"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"}
@@ -2,4 +2,5 @@ export * from './distribution.js';
2
2
  export * from './tools.js';
3
3
  export * from './public-output.js';
4
4
  export * from './public-tools.js';
5
+ export * from './hosted-write-tools.js';
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC"}
package/dist/mcp/index.js CHANGED
@@ -2,4 +2,5 @@ export * from './distribution.js';
2
2
  export * from './tools.js';
3
3
  export * from './public-output.js';
4
4
  export * from './public-tools.js';
5
+ export * from './hosted-write-tools.js';
5
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC"}
@@ -10,13 +10,21 @@ export declare const publicMcpTransactionSchema: z.ZodObject<Pick<{
10
10
  subcategory: z.ZodNullable<z.ZodString>;
11
11
  pending: z.ZodNullable<z.ZodBoolean>;
12
12
  currency: z.ZodNullable<z.ZodString>;
13
- }, "amount" | "category" | "currency" | "date" | "pending" | "subcategory">, "strict", z.ZodTypeAny, {
13
+ is_internal_transfer: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
14
+ transfer_pair_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
15
+ transfers_interpretation_version: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<0>, z.ZodLiteral<1>]>>;
16
+ merchants_interpretation_version: z.ZodOptional<z.ZodLiteral<0>>;
17
+ }, "amount" | "category" | "currency" | "date" | "is_internal_transfer" | "merchants_interpretation_version" | "pending" | "subcategory" | "transfer_pair_id" | "transfers_interpretation_version">, "strict", z.ZodTypeAny, {
14
18
  date: string | null;
15
19
  amount: number;
16
20
  category: string | null;
17
21
  subcategory: string | null;
18
22
  pending: boolean | null;
19
23
  currency: string | null;
24
+ is_internal_transfer?: boolean | null | undefined;
25
+ transfer_pair_id?: string | null | undefined;
26
+ transfers_interpretation_version?: 0 | 1 | undefined;
27
+ merchants_interpretation_version?: 0 | undefined;
20
28
  }, {
21
29
  date: string | null;
22
30
  amount: number;
@@ -24,6 +32,10 @@ export declare const publicMcpTransactionSchema: z.ZodObject<Pick<{
24
32
  subcategory: string | null;
25
33
  pending: boolean | null;
26
34
  currency: string | null;
35
+ is_internal_transfer?: boolean | null | undefined;
36
+ transfer_pair_id?: string | null | undefined;
37
+ transfers_interpretation_version?: 0 | 1 | undefined;
38
+ merchants_interpretation_version?: 0 | undefined;
27
39
  }>;
28
40
  export declare const publicMcpFinancialContextSchema: z.ZodObject<Pick<{
29
41
  version: z.ZodEnum<["v1"]>;
@@ -555,13 +567,21 @@ export declare const publicMcpTransactionMonthSchema: z.ZodObject<{
555
567
  subcategory: z.ZodNullable<z.ZodString>;
556
568
  pending: z.ZodNullable<z.ZodBoolean>;
557
569
  currency: z.ZodNullable<z.ZodString>;
558
- }, "amount" | "category" | "currency" | "date" | "pending" | "subcategory">, "strict", z.ZodTypeAny, {
570
+ is_internal_transfer: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
571
+ transfer_pair_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
572
+ transfers_interpretation_version: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<0>, z.ZodLiteral<1>]>>;
573
+ merchants_interpretation_version: z.ZodOptional<z.ZodLiteral<0>>;
574
+ }, "amount" | "category" | "currency" | "date" | "is_internal_transfer" | "merchants_interpretation_version" | "pending" | "subcategory" | "transfer_pair_id" | "transfers_interpretation_version">, "strict", z.ZodTypeAny, {
559
575
  date: string | null;
560
576
  amount: number;
561
577
  category: string | null;
562
578
  subcategory: string | null;
563
579
  pending: boolean | null;
564
580
  currency: string | null;
581
+ is_internal_transfer?: boolean | null | undefined;
582
+ transfer_pair_id?: string | null | undefined;
583
+ transfers_interpretation_version?: 0 | 1 | undefined;
584
+ merchants_interpretation_version?: 0 | undefined;
565
585
  }, {
566
586
  date: string | null;
567
587
  amount: number;
@@ -569,6 +589,10 @@ export declare const publicMcpTransactionMonthSchema: z.ZodObject<{
569
589
  subcategory: string | null;
570
590
  pending: boolean | null;
571
591
  currency: string | null;
592
+ is_internal_transfer?: boolean | null | undefined;
593
+ transfer_pair_id?: string | null | undefined;
594
+ transfers_interpretation_version?: 0 | 1 | undefined;
595
+ merchants_interpretation_version?: 0 | undefined;
572
596
  }>, "many">;
573
597
  }, "strict", z.ZodTypeAny, {
574
598
  month: string;
@@ -582,6 +606,10 @@ export declare const publicMcpTransactionMonthSchema: z.ZodObject<{
582
606
  subcategory: string | null;
583
607
  pending: boolean | null;
584
608
  currency: string | null;
609
+ is_internal_transfer?: boolean | null | undefined;
610
+ transfer_pair_id?: string | null | undefined;
611
+ transfers_interpretation_version?: 0 | 1 | undefined;
612
+ merchants_interpretation_version?: 0 | undefined;
585
613
  }[];
586
614
  }, {
587
615
  month: string;
@@ -595,6 +623,10 @@ export declare const publicMcpTransactionMonthSchema: z.ZodObject<{
595
623
  subcategory: string | null;
596
624
  pending: boolean | null;
597
625
  currency: string | null;
626
+ is_internal_transfer?: boolean | null | undefined;
627
+ transfer_pair_id?: string | null | undefined;
628
+ transfers_interpretation_version?: 0 | 1 | undefined;
629
+ merchants_interpretation_version?: 0 | undefined;
598
630
  }[];
599
631
  }>;
600
632
  export declare const publicMcpLatestTransactionsSchema: z.ZodObject<{
@@ -613,13 +645,21 @@ export declare const publicMcpLatestTransactionsSchema: z.ZodObject<{
613
645
  subcategory: z.ZodNullable<z.ZodString>;
614
646
  pending: z.ZodNullable<z.ZodBoolean>;
615
647
  currency: z.ZodNullable<z.ZodString>;
616
- }, "amount" | "category" | "currency" | "date" | "pending" | "subcategory">, "strict", z.ZodTypeAny, {
648
+ is_internal_transfer: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
649
+ transfer_pair_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
650
+ transfers_interpretation_version: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<0>, z.ZodLiteral<1>]>>;
651
+ merchants_interpretation_version: z.ZodOptional<z.ZodLiteral<0>>;
652
+ }, "amount" | "category" | "currency" | "date" | "is_internal_transfer" | "merchants_interpretation_version" | "pending" | "subcategory" | "transfer_pair_id" | "transfers_interpretation_version">, "strict", z.ZodTypeAny, {
617
653
  date: string | null;
618
654
  amount: number;
619
655
  category: string | null;
620
656
  subcategory: string | null;
621
657
  pending: boolean | null;
622
658
  currency: string | null;
659
+ is_internal_transfer?: boolean | null | undefined;
660
+ transfer_pair_id?: string | null | undefined;
661
+ transfers_interpretation_version?: 0 | 1 | undefined;
662
+ merchants_interpretation_version?: 0 | undefined;
623
663
  }, {
624
664
  date: string | null;
625
665
  amount: number;
@@ -627,6 +667,10 @@ export declare const publicMcpLatestTransactionsSchema: z.ZodObject<{
627
667
  subcategory: string | null;
628
668
  pending: boolean | null;
629
669
  currency: string | null;
670
+ is_internal_transfer?: boolean | null | undefined;
671
+ transfer_pair_id?: string | null | undefined;
672
+ transfers_interpretation_version?: 0 | 1 | undefined;
673
+ merchants_interpretation_version?: 0 | undefined;
630
674
  }>, "many">;
631
675
  }, "strict", z.ZodTypeAny, {
632
676
  since: string;
@@ -639,6 +683,10 @@ export declare const publicMcpLatestTransactionsSchema: z.ZodObject<{
639
683
  subcategory: string | null;
640
684
  pending: boolean | null;
641
685
  currency: string | null;
686
+ is_internal_transfer?: boolean | null | undefined;
687
+ transfer_pair_id?: string | null | undefined;
688
+ transfers_interpretation_version?: 0 | 1 | undefined;
689
+ merchants_interpretation_version?: 0 | undefined;
642
690
  }[];
643
691
  }, {
644
692
  since: string;
@@ -651,6 +699,10 @@ export declare const publicMcpLatestTransactionsSchema: z.ZodObject<{
651
699
  subcategory: string | null;
652
700
  pending: boolean | null;
653
701
  currency: string | null;
702
+ is_internal_transfer?: boolean | null | undefined;
703
+ transfer_pair_id?: string | null | undefined;
704
+ transfers_interpretation_version?: 0 | 1 | undefined;
705
+ merchants_interpretation_version?: 0 | undefined;
654
706
  }[];
655
707
  }>;
656
708
  export declare function projectPublicMcpFinancialContext(input: unknown): {
@@ -688,6 +740,10 @@ export declare function projectPublicMcpTransactions(input: unknown): {
688
740
  subcategory: string | null;
689
741
  pending: boolean | null;
690
742
  currency: string | null;
743
+ is_internal_transfer?: boolean | null | undefined;
744
+ transfer_pair_id?: string | null | undefined;
745
+ transfers_interpretation_version?: 0 | 1 | undefined;
746
+ merchants_interpretation_version?: 0 | undefined;
691
747
  }[];
692
748
  } | {
693
749
  since: string;
@@ -700,6 +756,10 @@ export declare function projectPublicMcpTransactions(input: unknown): {
700
756
  subcategory: string | null;
701
757
  pending: boolean | null;
702
758
  currency: string | null;
759
+ is_internal_transfer?: boolean | null | undefined;
760
+ transfer_pair_id?: string | null | undefined;
761
+ transfers_interpretation_version?: 0 | 1 | undefined;
762
+ merchants_interpretation_version?: 0 | undefined;
703
763
  }[];
704
764
  };
705
765
  //# sourceMappingURL=public-output.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"public-output.d.ts","sourceRoot":"","sources":["../../src/mcp/public-output.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AASxB,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;EAOrC,CAAC;AAEH,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEgC,CAAC;AAE7E,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE1C,CAAC;AAEH,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE5C,CAAC;AAaH,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;EAS9D;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;EAM1D"}
1
+ {"version":3,"file":"public-output.d.ts","sourceRoot":"","sources":["../../src/mcp/public-output.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AASxB,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAWrC,CAAC;AAEH,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEgC,CAAC;AAE7E,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE1C,CAAC;AAEH,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE5C,CAAC;AA8BH,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;EAS9D;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAM1D"}
@@ -7,6 +7,10 @@ export const publicMcpTransactionSchema = financialContextTransactionSchema.pick
7
7
  subcategory: true,
8
8
  pending: true,
9
9
  currency: true,
10
+ is_internal_transfer: true,
11
+ transfer_pair_id: true,
12
+ transfers_interpretation_version: true,
13
+ merchants_interpretation_version: true,
10
14
  });
11
15
  export const publicMcpFinancialContextSchema = financialContextSchema
12
16
  .pick({ version: true, updated_at: true, currency: true, transactions: true })
@@ -18,14 +22,31 @@ export const publicMcpLatestTransactionsSchema = latestTransactionsSchema.extend
18
22
  items: z.array(publicMcpTransactionSchema),
19
23
  });
20
24
  function projectTransaction(transaction) {
21
- return publicMcpTransactionSchema.parse({
25
+ const projected = {
22
26
  date: transaction.date,
23
27
  amount: transaction.amount,
24
28
  category: transaction.category,
25
29
  subcategory: transaction.subcategory,
26
30
  pending: transaction.pending,
27
31
  currency: transaction.currency,
28
- });
32
+ };
33
+ if (transaction.is_internal_transfer !== undefined) {
34
+ Object.assign(projected, { is_internal_transfer: transaction.is_internal_transfer });
35
+ }
36
+ if (transaction.transfer_pair_id !== undefined) {
37
+ Object.assign(projected, { transfer_pair_id: transaction.transfer_pair_id });
38
+ }
39
+ if (transaction.transfers_interpretation_version !== undefined) {
40
+ Object.assign(projected, {
41
+ transfers_interpretation_version: transaction.transfers_interpretation_version,
42
+ });
43
+ }
44
+ if (transaction.merchants_interpretation_version !== undefined) {
45
+ Object.assign(projected, {
46
+ merchants_interpretation_version: transaction.merchants_interpretation_version,
47
+ });
48
+ }
49
+ return publicMcpTransactionSchema.parse(projected);
29
50
  }
30
51
  export function projectPublicMcpFinancialContext(input) {
31
52
  const context = financialContextSchema.parse(input);
@@ -1 +1 @@
1
- {"version":3,"file":"public-output.js","sourceRoot":"","sources":["../../src/mcp/public-output.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,sBAAsB,EACtB,4BAA4B,EAC5B,iCAAiC,EACjC,wBAAwB,EACxB,sBAAsB,GACvB,MAAM,qBAAqB,CAAC;AAE7B,MAAM,CAAC,MAAM,0BAA0B,GAAG,iCAAiC,CAAC,IAAI,CAAC;IAC/E,IAAI,EAAE,IAAI;IACV,MAAM,EAAE,IAAI;IACZ,QAAQ,EAAE,IAAI;IACd,WAAW,EAAE,IAAI;IACjB,OAAO,EAAE,IAAI;IACb,QAAQ,EAAE,IAAI;CACf,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,+BAA+B,GAAG,sBAAsB;KAClE,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;KAC7E,MAAM,CAAC,EAAE,MAAM,EAAE,4BAA4B,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;AAE7E,MAAM,CAAC,MAAM,+BAA+B,GAAG,sBAAsB,CAAC,MAAM,CAAC;IAC3E,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,0BAA0B,CAAC;CAC3C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,iCAAiC,GAAG,wBAAwB,CAAC,MAAM,CAAC;IAC/E,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,0BAA0B,CAAC;CAC3C,CAAC,CAAC;AAEH,SAAS,kBAAkB,CAAC,WAA8D;IACxF,OAAO,0BAA0B,CAAC,KAAK,CAAC;QACtC,IAAI,EAAE,WAAW,CAAC,IAAI;QACtB,MAAM,EAAE,WAAW,CAAC,MAAM;QAC1B,QAAQ,EAAE,WAAW,CAAC,QAAQ;QAC9B,WAAW,EAAE,WAAW,CAAC,WAAW;QACpC,OAAO,EAAE,WAAW,CAAC,OAAO;QAC5B,QAAQ,EAAE,WAAW,CAAC,QAAQ;KAC/B,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,gCAAgC,CAAC,KAAc;IAC7D,MAAM,OAAO,GAAG,sBAAsB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACpD,OAAO,+BAA+B,CAAC,KAAK,CAAC;QAC3C,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,MAAM,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE;QAC7C,YAAY,EAAE,OAAO,CAAC,YAAY;KACnC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,KAAc;IACzD,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,sBAAsB,EAAE,wBAAwB,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC9F,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;IACzD,OAAO,OAAO,IAAI,YAAY;QAC5B,CAAC,CAAC,+BAA+B,CAAC,KAAK,CAAC,EAAE,GAAG,YAAY,EAAE,KAAK,EAAE,CAAC;QACnE,CAAC,CAAC,iCAAiC,CAAC,KAAK,CAAC,EAAE,GAAG,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;AAC1E,CAAC"}
1
+ {"version":3,"file":"public-output.js","sourceRoot":"","sources":["../../src/mcp/public-output.ts"],"names":[],"mappings":"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"}