@dizzlkheinz/ynab-mcpb 0.26.6 → 0.26.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.
package/CHANGELOG.md CHANGED
@@ -7,6 +7,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.26.7] - 2026-04-03
11
+
12
+ ### Changed
13
+
14
+ - **Improved `ynab_create_transaction` tool description** — Documents `flag_color`, `subtransactions`, and `import_id` parameters; clarifies when to use subtransactions vs `create_receipt_split_transaction`
15
+ - **Improved `ynab_create_transactions` tool description** — Clarifies `import_id` guidance for YNAB-side duplicate detection
16
+ - **Improved `ynab_create_receipt_split_transaction` tool description** — Documents `memo`, `receipt_subtotal`, `cleared`, `approved`, `flag_color` parameters; adds cross-reference to `create_transaction` for generic splits
17
+ - **API reference documentation** — Adds subtransaction and `import_id` guidance to `create_transaction`; cross-references `create_receipt_split_transaction` for receipt workflows
18
+
10
19
  ## [0.26.6] - 2026-04-03
11
20
 
12
21
  ### Changed
package/CLAUDE.md CHANGED
@@ -6,7 +6,7 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
6
6
 
7
7
  This is a Model Context Protocol (MCP) server for YNAB (You Need A Budget) integration, enabling AI assistants to interact with YNAB budgets, accounts, transactions, and categories. The codebase uses TypeScript with a modular, service-oriented architecture.
8
8
 
9
- **Current Version:** 0.26.6
9
+ **Current Version:** 0.26.7
10
10
 
11
11
  ## Essential Commands
12
12
 
@@ -319,7 +319,12 @@ Args:
319
319
  - memo (string, optional): Memo text.
320
320
  - cleared (string, optional): "cleared", "uncleared", or "reconciled". Default: "uncleared".
321
321
  - approved (boolean, optional): Mark as approved. Default: false.
322
+ - flag_color (string, optional): Transaction flag color ("red", "orange", "yellow", "green", "blue", "purple").
322
323
  - dry_run (boolean, optional): Preview without saving. Default: false.
324
+ - subtransactions (array, optional): Manual split lines. Each entry accepts "amount" (integer milliunits), plus optional "memo", "category_id", "payee_id", and "payee_name".
325
+
326
+ Use "subtransactions" for manual split transactions. Use "ynab_create_receipt_split_transaction" when you have itemized receipt data and want proportional tax allocation handled for you.
327
+ Advanced: "import_id" is supported, but it is intentionally not part of normal guidance. Usually omit it if you want the transaction to remain eligible for later bank-import matching.
323
328
 
324
329
  Returns: created transaction with account_balance.
325
330
 
@@ -335,18 +340,25 @@ Returns: summary (created, duplicates, failed), results[], transactions[].
335
340
 
336
341
  Examples:
337
342
  - Dry run first: set dry_run=true to validate before committing
338
- - Avoid duplicate import: set import_id on each transaction`,inputSchema:v4,outputSchema:gv,handler:n(yF),defaultArgumentResolver:a(),metadata:{annotations:{...We.WRITE_EXTERNAL_CREATE,title:"YNAB: Create Multiple Transactions"}}}),e.register({name:"ynab_create_receipt_split_transaction",description:`Create a split transaction from itemized receipt data with proportional tax allocation.
343
+ - If you explicitly want YNAB-side duplicate import detection, set import_id on each transaction`,inputSchema:v4,outputSchema:gv,handler:n(yF),defaultArgumentResolver:a(),metadata:{annotations:{...We.WRITE_EXTERNAL_CREATE,title:"YNAB: Create Multiple Transactions"}}}),e.register({name:"ynab_create_receipt_split_transaction",description:`Create a split transaction from itemized receipt data with proportional tax allocation.
339
344
 
340
345
  Args:
341
346
  - budget_id (string, optional): Budget UUID. Omit to use the default budget.
342
347
  - account_id (string, required): Account UUID.
343
- - payee_name (string, optional): Store/payee name.
348
+ - payee_name (string, required): Store/payee name.
344
349
  - receipt_total (number, required): Total amount in dollars (positive).
345
350
  - receipt_tax (number, required): Tax amount in dollars (0 if none).
346
351
  - categories (array, required): Category groups with items. Each item needs name, amount.
347
352
  - date (string, optional): ISO date. Default: today.
353
+ - memo (string, optional): Memo applied to the parent transaction.
354
+ - receipt_subtotal (number, optional): Pre-tax subtotal for validation.
355
+ - cleared (string, optional): "cleared", "uncleared", or "reconciled". Default: "uncleared".
356
+ - approved (boolean, optional): Mark as approved. Default: false.
357
+ - flag_color (string, optional): Transaction flag color ("red", "orange", "yellow", "green", "blue", "purple").
348
358
  - dry_run (boolean, optional): Preview subtransactions without saving. Default: false.
349
359
 
360
+ Use this helper when you have receipt line items and want tax allocated across categories automatically. For generic manual split transactions without receipt/tax logic, use "ynab_create_transaction" with "subtransactions".
361
+
350
362
  Returns: transaction with subtransactions and receipt_summary.`,inputSchema:D7,outputSchema:bv,handler:n(hF),defaultArgumentResolver:a(),metadata:{annotations:{...We.WRITE_EXTERNAL_CREATE,title:"YNAB: Create Split Transaction from Receipt"}}}),e.register({name:"ynab_update_transaction",description:`Update fields on an existing YNAB transaction.
351
363
 
352
364
  Args:
@@ -1309,7 +1309,12 @@ Args:
1309
1309
  - memo (string, optional): Memo text.
1310
1310
  - cleared (string, optional): "cleared", "uncleared", or "reconciled". Default: "uncleared".
1311
1311
  - approved (boolean, optional): Mark as approved. Default: false.
1312
+ - flag_color (string, optional): Transaction flag color ("red", "orange", "yellow", "green", "blue", "purple").
1312
1313
  - dry_run (boolean, optional): Preview without saving. Default: false.
1314
+ - subtransactions (array, optional): Manual split lines. Each entry accepts "amount" (integer milliunits), plus optional "memo", "category_id", "payee_id", and "payee_name".
1315
+
1316
+ Use "subtransactions" for manual split transactions. Use "ynab_create_receipt_split_transaction" when you have itemized receipt data and want proportional tax allocation handled for you.
1317
+ Advanced: "import_id" is supported, but it is intentionally not part of normal guidance. Usually omit it if you want the transaction to remain eligible for later bank-import matching.
1313
1318
 
1314
1319
  Returns: created transaction with account_balance.
1315
1320
 
@@ -1339,7 +1344,7 @@ Returns: summary (created, duplicates, failed), results[], transactions[].
1339
1344
 
1340
1345
  Examples:
1341
1346
  - Dry run first: set dry_run=true to validate before committing
1342
- - Avoid duplicate import: set import_id on each transaction`,
1347
+ - If you explicitly want YNAB-side duplicate import detection, set import_id on each transaction`,
1343
1348
  inputSchema: CreateTransactionsSchema,
1344
1349
  outputSchema: CreateTransactionsOutputSchema,
1345
1350
  handler: adaptWrite(handleCreateTransactions),
@@ -1358,13 +1363,20 @@ Examples:
1358
1363
  Args:
1359
1364
  - budget_id (string, optional): Budget UUID. Omit to use the default budget.
1360
1365
  - account_id (string, required): Account UUID.
1361
- - payee_name (string, optional): Store/payee name.
1366
+ - payee_name (string, required): Store/payee name.
1362
1367
  - receipt_total (number, required): Total amount in dollars (positive).
1363
1368
  - receipt_tax (number, required): Tax amount in dollars (0 if none).
1364
1369
  - categories (array, required): Category groups with items. Each item needs name, amount.
1365
1370
  - date (string, optional): ISO date. Default: today.
1371
+ - memo (string, optional): Memo applied to the parent transaction.
1372
+ - receipt_subtotal (number, optional): Pre-tax subtotal for validation.
1373
+ - cleared (string, optional): "cleared", "uncleared", or "reconciled". Default: "uncleared".
1374
+ - approved (boolean, optional): Mark as approved. Default: false.
1375
+ - flag_color (string, optional): Transaction flag color ("red", "orange", "yellow", "green", "blue", "purple").
1366
1376
  - dry_run (boolean, optional): Preview subtransactions without saving. Default: false.
1367
1377
 
1378
+ Use this helper when you have receipt line items and want tax allocated across categories automatically. For generic manual split transactions without receipt/tax logic, use "ynab_create_transaction" with "subtransactions".
1379
+
1368
1380
  Returns: transaction with subtransactions and receipt_summary.`,
1369
1381
  inputSchema: CreateReceiptSplitTransactionSchema,
1370
1382
  outputSchema: CreateReceiptSplitTransactionOutputSchema,
@@ -915,6 +915,8 @@ Creates a new transaction in the specified budget and account.
915
915
  - `subtransactions` (array, optional): Split line items; each entry accepts `amount` (integer milliunits), plus optional `memo`, `category_id`, `payee_id`, and `payee_name`
916
916
 
917
917
  When `subtransactions` are supplied, their `amount` values must sum to the parent `amount` in milliunits, matching YNAB API requirements.
918
+ Use `subtransactions` for manual split transactions. Use `create_receipt_split_transaction` when you have itemized receipt data and want proportional tax allocation handled automatically.
919
+ Advanced: `import_id` is supported, but it is intentionally not part of normal guidance. Usually omit it if you want the transaction to remain eligible for later bank-import matching.
918
920
 
919
921
  **Example Request:**
920
922
  ```json
@@ -954,7 +956,7 @@ When `subtransactions` are supplied, their `amount` values must sum to the paren
954
956
 
955
957
  ### create_receipt_split_transaction
956
958
 
957
- Creates a split transaction from categorized receipt data and allocates taxes proportionally across the selected categories. Use this helper after the user has confirmed the receipt breakdown and category assignments.
959
+ Creates a split transaction from categorized receipt data and allocates taxes proportionally across the selected categories. Use this helper after the user has confirmed the receipt breakdown and category assignments. For generic manual splits without receipt-tax logic, use `create_transaction` with `subtransactions`.
958
960
 
959
961
  **Parameters:**
960
962
  - `budget_id` (string, optional): The ID of the budget. Omit to use the default budget
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dizzlkheinz/ynab-mcpb",
3
- "version": "0.26.6",
3
+ "version": "0.26.7",
4
4
  "mcpName": "io.github.dizzlkheinz/ynab-mcpb",
5
5
  "description": "Model Context Protocol server for YNAB (You Need A Budget) integration",
6
6
  "main": "dist/index.js",
@@ -2069,7 +2069,12 @@ Args:
2069
2069
  - memo (string, optional): Memo text.
2070
2070
  - cleared (string, optional): "cleared", "uncleared", or "reconciled". Default: "uncleared".
2071
2071
  - approved (boolean, optional): Mark as approved. Default: false.
2072
+ - flag_color (string, optional): Transaction flag color ("red", "orange", "yellow", "green", "blue", "purple").
2072
2073
  - dry_run (boolean, optional): Preview without saving. Default: false.
2074
+ - subtransactions (array, optional): Manual split lines. Each entry accepts "amount" (integer milliunits), plus optional "memo", "category_id", "payee_id", and "payee_name".
2075
+
2076
+ Use "subtransactions" for manual split transactions. Use "ynab_create_receipt_split_transaction" when you have itemized receipt data and want proportional tax allocation handled for you.
2077
+ Advanced: "import_id" is supported, but it is intentionally not part of normal guidance. Usually omit it if you want the transaction to remain eligible for later bank-import matching.
2073
2078
 
2074
2079
  Returns: created transaction with account_balance.
2075
2080
 
@@ -2101,7 +2106,7 @@ Returns: summary (created, duplicates, failed), results[], transactions[].
2101
2106
 
2102
2107
  Examples:
2103
2108
  - Dry run first: set dry_run=true to validate before committing
2104
- - Avoid duplicate import: set import_id on each transaction`,
2109
+ - If you explicitly want YNAB-side duplicate import detection, set import_id on each transaction`,
2105
2110
  inputSchema: CreateTransactionsSchema,
2106
2111
  outputSchema: CreateTransactionsOutputSchema,
2107
2112
  handler: adaptWrite(handleCreateTransactions),
@@ -2122,13 +2127,20 @@ Examples:
2122
2127
  Args:
2123
2128
  - budget_id (string, optional): Budget UUID. Omit to use the default budget.
2124
2129
  - account_id (string, required): Account UUID.
2125
- - payee_name (string, optional): Store/payee name.
2130
+ - payee_name (string, required): Store/payee name.
2126
2131
  - receipt_total (number, required): Total amount in dollars (positive).
2127
2132
  - receipt_tax (number, required): Tax amount in dollars (0 if none).
2128
2133
  - categories (array, required): Category groups with items. Each item needs name, amount.
2129
2134
  - date (string, optional): ISO date. Default: today.
2135
+ - memo (string, optional): Memo applied to the parent transaction.
2136
+ - receipt_subtotal (number, optional): Pre-tax subtotal for validation.
2137
+ - cleared (string, optional): "cleared", "uncleared", or "reconciled". Default: "uncleared".
2138
+ - approved (boolean, optional): Mark as approved. Default: false.
2139
+ - flag_color (string, optional): Transaction flag color ("red", "orange", "yellow", "green", "blue", "purple").
2130
2140
  - dry_run (boolean, optional): Preview subtransactions without saving. Default: false.
2131
2141
 
2142
+ Use this helper when you have receipt line items and want tax allocated across categories automatically. For generic manual split transactions without receipt/tax logic, use "ynab_create_transaction" with "subtransactions".
2143
+
2132
2144
  Returns: transaction with subtransactions and receipt_summary.`,
2133
2145
  inputSchema: CreateReceiptSplitTransactionSchema,
2134
2146
  outputSchema: CreateReceiptSplitTransactionOutputSchema,