mcp-grocy 2.1.0 → 2.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.
@@ -64,7 +64,7 @@ Configuration examples for common use cases are provided in `mcp-grocy.yaml.exam
64
64
  ### Tool Access Control
65
65
  - Disable unused tools to reduce attack surface
66
66
  - Use read-only mode for information-gathering use cases
67
- - Be cautious with tools that modify data (`purchase_product`, `consume_product`, etc.)
67
+ - Be cautious with tools that modify data (`inventory_transactions_purchase`, `inventory_stock_entry_consume`, etc.)
68
68
 
69
69
  ### Network Security
70
70
  - Use HTTPS for production Grocy instances
@@ -55,7 +55,7 @@ use_mcp_tool('grocy-api', 'add_shopping_list_item', {
55
55
 
56
56
  ### Purchase a Product
57
57
  ```typescript
58
- use_mcp_tool('grocy-api', 'purchase_product', {
58
+ use_mcp_tool('grocy-api', 'inventory_transactions_purchase', {
59
59
  "productId": 1,
60
60
  "amount": 2,
61
61
  "bestBeforeDate": "2024-12-31",
@@ -66,7 +66,7 @@ use_mcp_tool('grocy-api', 'purchase_product', {
66
66
 
67
67
  ### Consume a Product
68
68
  ```typescript
69
- use_mcp_tool('grocy-api', 'consume_product', {
69
+ use_mcp_tool('grocy-api', 'inventory_stock_entry_consume', {
70
70
  "productId": 1,
71
71
  "amount": 1,
72
72
  "spoiled": false
@@ -173,7 +173,7 @@ use_mcp_tool('grocy-api', 'get_shopping_locations', {});
173
173
 
174
174
  ### Transfer Product Between Locations
175
175
  ```typescript
176
- use_mcp_tool('grocy-api', 'transfer_product', {
176
+ use_mcp_tool('grocy-api', 'inventory_stock_entry_transfer', {
177
177
  "productId": 1,
178
178
  "amount": 1,
179
179
  "locationIdFrom": 1,
@@ -130,7 +130,7 @@ export const inventoryToolDefinitions = [
130
130
  },
131
131
  {
132
132
  name: 'inventory_transactions_consume',
133
- description: '[INVENTORY/TRANSACTIONS] Remove a product from stock (consume/use inventory). Use inventory_products_get to find the product ID.',
133
+ description: '[INVENTORY/TRANSACTIONS] Remove a product from stock (consume/use inventory). For more granular control over specific stock entries, prefer inventory_stock_entry_consume. Use inventory_products_get to find the product ID.',
134
134
  inputSchema: {
135
135
  type: 'object',
136
136
  properties: {
@@ -161,7 +161,7 @@ export const inventoryToolDefinitions = [
161
161
  },
162
162
  {
163
163
  name: 'inventory_transactions_transfer',
164
- description: '[INVENTORY/TRANSACTIONS] Transfer a product between locations. Use inventory_products_get to find the product ID and system_locations_get to find location IDs.',
164
+ description: '[INVENTORY/TRANSACTIONS] Transfer a product between locations. For more granular control over specific stock entries, prefer inventory_stock_entry_transfer. Use inventory_products_get to find the product ID and system_locations_get to find location IDs.',
165
165
  inputSchema: {
166
166
  type: 'object',
167
167
  properties: {
@@ -221,7 +221,7 @@ export const inventoryToolDefinitions = [
221
221
  },
222
222
  {
223
223
  name: 'inventory_transactions_open',
224
- description: '[INVENTORY/TRANSACTIONS] Mark a product as opened/started. Use inventory_products_get to find the product ID.',
224
+ description: '[INVENTORY/TRANSACTIONS] Mark a product as opened/started. For more granular control over specific stock entries, prefer inventory_stock_entry_open. Use inventory_products_get to find the product ID.',
225
225
  inputSchema: {
226
226
  type: 'object',
227
227
  properties: {
@@ -256,7 +256,7 @@ export class InventoryToolHandlers extends BaseToolHandler {
256
256
  message: `Found ${enrichedMatches.length} product matches for "${productName}" (ordered from most likely to least likely match)`,
257
257
  productMatches: enrichedMatches,
258
258
  allAvailableLocations: locations.map((l) => ({ id: l.id, name: l.name })),
259
- instructions: 'Review the matches above. Use the exact productId and locationId from this data for any product operations (consume_product, purchase_product, inventory_product, transfer_product, etc.).'
259
+ instructions: 'Review the matches above. Use the exact productId and locationId from this data for any product operations (inventory_stock_entry_consume, inventory_stock_entry_transfer, inventory_transactions_purchase, inventory_transactions_adjust, etc.).'
260
260
  });
261
261
  });
262
262
  };
package/build/version.js CHANGED
@@ -1,4 +1,4 @@
1
1
  // Auto-generated file - DO NOT MODIFY
2
- export const VERSION = '2.1.0';
2
+ export const VERSION = '2.2.0';
3
3
  export const PACKAGE_NAME = 'mcp-grocy';
4
4
  export const SERVER_NAME = 'grocy-api';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mcp-grocy",
3
- "version": "2.1.0",
3
+ "version": "2.2.0",
4
4
  "description": "Model Context Protocol (MCP) server for Grocy integration",
5
5
  "license": "MIT",
6
6
  "type": "module",