mcp-server-acube 0.2.0 → 0.3.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.
package/README.md CHANGED
@@ -169,17 +169,21 @@ The server is configured through environment variables:
169
169
 
170
170
  This server is designed to minimize LLM token consumption. Every response goes through three optimizations:
171
171
 
172
- ### 1. Null stripping
172
+ ### 1. Payload parsing
173
173
 
174
- All `null` and `undefined` values are recursively removed from responses. A typical invoice `sender` object has ~40 fields, of which ~30 are null. After stripping, only the 5--8 populated fields remain.
174
+ The A-Cube API returns the FatturaPA invoice data as a raw JSON string in the `payload` field. The server automatically parses this string into a structured object, which enables null stripping to work on the ~60 null fields inside it. This eliminates double-encoding overhead (`\"` escapes) and typically cuts payload token usage by ~50%.
175
175
 
176
- ### 2. Compact JSON
176
+ ### 2. Null stripping
177
+
178
+ All `null` and `undefined` values are recursively removed from responses -- including inside the parsed payload. A typical invoice `sender` object has ~40 fields, of which ~30 are null. After stripping, only the 5--8 populated fields remain.
179
+
180
+ ### 3. Compact JSON
177
181
 
178
182
  Responses are serialized without indentation (`JSON.stringify(data)` instead of `JSON.stringify(data, null, 2)`). This eliminates whitespace tokens that provide no information to the LLM.
179
183
 
180
- ### 3. Default field selection on `list_invoices`
184
+ ### 4. Default field selection on `list_invoices`
181
185
 
182
- The `list_invoices` tool returns a **compact default view** instead of the full A-Cube response. The raw API response includes the entire FatturaPA payload (~2000 tokens per invoice) and full sender/recipient objects. The compact view extracts only the essential fields:
186
+ The `list_invoices` tool returns a **compact default view** (10 items per page) instead of the full A-Cube response. The raw API response includes the entire FatturaPA payload (~2000 tokens per invoice) and full sender/recipient objects. The compact view extracts only the essential fields:
183
187
 
184
188
  | Default field | Description |
185
189
  |---|---|
@@ -211,7 +215,7 @@ list_invoices(marking: "rejected")
211
215
  # Request specific fields
212
216
  list_invoices(marking: "rejected", fields: ["uuid", "notice", "recipient.business_name"])
213
217
 
214
- # Request all fields (full A-Cube response, nulls still stripped)
218
+ # Request all fields (payload parsed + nulls stripped)
215
219
  list_invoices(marking: "rejected", fields: ["*"])
216
220
 
217
221
  # Get specific fields from a single invoice
@@ -220,16 +224,28 @@ get_invoice(uuid: "...", fields: ["payload", "sender", "recipient"])
220
224
 
221
225
  The `fields` parameter supports **dot-notation** for nested objects (e.g., `sender.business_name`).
222
226
 
227
+ > **Tip:** Prefer the default compact view or specific fields over `["*"]`. Even with `["*"]`, the server parses payloads and strips nulls, but the full FatturaPA structure is still large. Use `["*"]` only when you truly need the complete invoice data.
228
+
229
+ ### Pagination
230
+
231
+ `list_invoices` defaults to **10 items per page** (`items_per_page`, max 30). Use the `page` parameter to navigate through results.
232
+
223
233
  ### Estimated token savings
224
234
 
225
235
  For a typical `list_invoices` call returning 10 invoices:
226
236
 
227
- | Metric | Without optimization | With optimization |
237
+ | Scenario | Without optimization | With optimization |
238
+ |---|---|---|
239
+ | **Default view** (compact fields) | ~25,000 tokens | **~1,500 tokens** |
240
+ | **`fields: ["*"]`** (full data) | ~25,000 tokens | **~10,000 tokens** |
241
+
242
+ Key reductions with `fields: ["*"]`:
243
+
244
+ | Metric | Before | After |
228
245
  |---|---|---|
229
- | Null fields per invoice | ~60 | 0 |
230
- | Payload per invoice | ~2000 tokens | 0 (excluded) |
231
- | JSON whitespace | ~500 tokens | 0 |
232
- | **Total** | **~25,000 tokens** | **~1,500 tokens** |
246
+ | Null fields per invoice | ~60 | 0 (stripped) |
247
+ | Payload encoding | Double-encoded string (`\"`) | Parsed object (no escaping) |
248
+ | Payload null fields | ~60 (hidden in string) | 0 (stripped) |
233
249
 
234
250
  ## Usage Examples
235
251
 
@@ -409,6 +425,7 @@ The following events can be subscribed to via `create_webhook_config`:
409
425
 
410
426
  ## Links
411
427
 
428
+ - [npm package](https://www.npmjs.com/package/mcp-server-acube)
412
429
  - [A-Cube API Documentation](https://docs.acubeapi.com/)
413
430
  - [A-Cube Website](https://www.acubeapi.com/)
414
431
  - [Model Context Protocol (MCP)](https://modelcontextprotocol.io)
@@ -99,8 +99,9 @@ export function registerInvoiceTools(server, client) {
99
99
  });
100
100
  // ── list_invoices ─────────────────────────────────────────────────────
101
101
  server.tool("list_invoices", "List/search SDI invoices. Filters: sender/recipient name or VAT, invoice number, " +
102
- "document type, direction, status, date ranges. Default compact view returns key fields only. " +
103
- "Add specific extra fields if needed. Use fields:['*'] only when full FatturaPA payload is required.", {
102
+ "document type, direction, status, date ranges. Use invoice_series to filter by exact series " +
103
+ "suffix (e.g. 'Servizi' matches only '1/Servizi', not '100/CI'). Default compact view returns " +
104
+ "key fields only. Add specific extra fields if needed. Use fields:['*'] only when full FatturaPA payload is required.", {
104
105
  page: z.number().optional().default(1).describe("Page number"),
105
106
  items_per_page: z.number().min(1).max(30).optional().default(10).describe("Items per page (default 10, max 30)"),
106
107
  marking: z
@@ -113,7 +114,8 @@ export function registerInvoiceTools(server, client) {
113
114
  recipient_name: z.string().optional().describe("Recipient business name (partial match)"),
114
115
  recipient_vat: z.string().optional().describe("Recipient P.IVA"),
115
116
  recipient_fiscal_code: z.string().optional().describe("Recipient codice fiscale"),
116
- invoice_number: z.string().optional().describe("Invoice number (partial match)"),
117
+ invoice_number: z.string().optional().describe("Invoice number (partial match via API)"),
118
+ invoice_series: z.string().optional().describe("Post-filter: invoice series suffix (e.g. 'Servizi' matches '1/Servizi', '2/Servizi'). Exact match on the part after the last '/'"),
117
119
  document_type: z.string().optional().describe("FatturaPA type: TD01, TD04, TD05, TD06, TD07..."),
118
120
  direction: z.enum(["outgoing", "incoming"]).optional().describe("outgoing or incoming"),
119
121
  invoice_date_from: z.string().optional().describe("Invoice date >= (ISO date)"),
@@ -174,6 +176,17 @@ export function registerInvoiceTools(server, client) {
174
176
  query.set("signed", String(params.signed));
175
177
  const response = await client.get(`/invoices?${query.toString()}`);
176
178
  let data = enrichInvoices(response.data);
179
+ // Post-filter by invoice series suffix (e.g. "Servizi" matches "1/Servizi")
180
+ if (params.invoice_series && Array.isArray(data)) {
181
+ const series = params.invoice_series;
182
+ data = data.filter((inv) => {
183
+ const num = inv.invoice_number;
184
+ if (!num)
185
+ return false;
186
+ const parts = num.split("/");
187
+ return parts.length > 1 && parts[parts.length - 1] === series;
188
+ });
189
+ }
177
190
  const wantAll = params.fields?.length === 1 && params.fields[0] === "*";
178
191
  if (!wantAll) {
179
192
  const selectedFields = params.fields ?? LIST_INVOICES_DEFAULT_FIELDS;
@@ -1 +1 @@
1
- {"version":3,"file":"invoices.js","sourceRoot":"","sources":["../../src/tools/invoices.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE3E;;;;;;GAMG;AACH,MAAM,4BAA4B,GAAG;IACnC,MAAM;IACN,YAAY;IACZ,eAAe;IACf,SAAS;IACT,QAAQ;IACR,gBAAgB;IAChB,cAAc;IACd,cAAc;IACd,UAAU;IACV,sBAAsB;IACtB,iCAAiC;IACjC,yBAAyB;IACzB,oCAAoC;IACpC,eAAe;CAChB,CAAC;AAEF;;;;;;;GAOG;AACH,SAAS,cAAc,CAAC,IAAa;IACnC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAA+B,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QACrC,OAAO,YAAY,CAAC,IAA+B,CAAC,CAAC;IACvD,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,YAAY,CAAC,IAA6B;IACjD,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAElD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACxC,MAAM,IAAI,GAAG,MAAM,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,CAAC;QACnD,MAAM,GAAG,GAAG,IAAI,EAAE,aAAa,EAAE,uBAAuB,CAAC;QAEzD,OAAO;YACL,GAAG,IAAI;YACP,OAAO,EAAE,MAAM,EAAE,+DAA+D;YAChF,cAAc,EAAE,GAAG,EAAE,MAAM,IAAI,IAAI;YACnC,YAAY,EAAE,GAAG,EAAE,IAAI,IAAI,IAAI;YAC/B,YAAY,EAAE,GAAG,EAAE,wBAAwB,IAAI,IAAI;YACnD,QAAQ,EAAE,GAAG,EAAE,MAAM,IAAI,IAAI;SAC9B,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,MAAiB,EACjB,MAAmB;IAEnB,yEAAyE;IACzE,MAAM,CAAC,IAAI,CACT,cAAc,EACd,wEAAwE,EACxE;QACE,OAAO,EAAE,CAAC;aACP,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;aACnB,QAAQ,CACP,sFAAsF,CACvF;QACH,IAAI,EAAE,CAAC;aACJ,OAAO,EAAE;aACT,QAAQ,EAAE;aACV,QAAQ,CAAC,sDAAsD,CAAC;KACpE,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,IAAI,CAAC;YACH,MAAM,OAAO,GAA2B,EAAE,CAAC;YAC3C,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC9B,OAAO,CAAC,eAAe,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;YAC5D,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAChC,WAAW,EACX,MAAM,CAAC,OAAO,EACd,EAAE,OAAO,EAAE,CACZ,CAAC;YAEF,OAAO,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACvC,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC,CACF,CAAC;IAEF,yEAAyE;IACzE,MAAM,CAAC,IAAI,CACT,yBAAyB,EACzB,iEAAiE,EACjE;QACE,OAAO,EAAE,CAAC;aACP,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;aACnB,QAAQ,CAAC,2BAA2B,CAAC;KACzC,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAChC,sBAAsB,EACtB,MAAM,CAAC,OAAO,CACf,CAAC;YAEF,OAAO,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACvC,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC,CACF,CAAC;IAEF,yEAAyE;IACzE,MAAM,CAAC,IAAI,CACT,eAAe,EACf,mFAAmF;QACjF,+FAA+F;QAC/F,qGAAqG,EACvG;QACE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC;QAC9D,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,qCAAqC,CAAC;QAChH,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,gGAAgG,CAAC;QAC7G,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;QACnF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QAC1D,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;QAC3E,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;QACzF,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QAChE,qBAAqB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;QACjF,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;QAChF,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iDAAiD,CAAC;QAChG,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;QACvF,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;QAC/E,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;QAC7E,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;QAC3E,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;QACzE,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;QAClF,eAAe,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;QACtF,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;QACxE,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;QACrE,MAAM,EAAE,CAAC;aACN,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;aACjB,QAAQ,EAAE;aACV,QAAQ,CACP,0EAA0E;YAC1E,0FAA0F;YAC1F,mFAAmF;YACnF,uGAAuG,CACxG;KACJ,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAI,eAAe,EAAE,CAAC;YACpC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;YACvC,KAAK,CAAC,GAAG,CAAC,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;YAEzD,IAAI,MAAM,CAAC,OAAO;gBAAE,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;YACzD,IAAI,MAAM,CAAC,WAAW;gBAAE,KAAK,CAAC,GAAG,CAAC,sBAAsB,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;YAC9E,IAAI,MAAM,CAAC,UAAU;gBAAE,KAAK,CAAC,GAAG,CAAC,iCAAiC,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;YACvF,IAAI,MAAM,CAAC,kBAAkB;gBAAE,KAAK,CAAC,GAAG,CAAC,6BAA6B,EAAE,MAAM,CAAC,kBAAkB,CAAC,CAAC;YACnG,IAAI,MAAM,CAAC,cAAc;gBAAE,KAAK,CAAC,GAAG,CAAC,yBAAyB,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC;YACvF,IAAI,MAAM,CAAC,aAAa;gBAAE,KAAK,CAAC,GAAG,CAAC,oCAAoC,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;YAChG,IAAI,MAAM,CAAC,qBAAqB;gBAAE,KAAK,CAAC,GAAG,CAAC,gCAAgC,EAAE,MAAM,CAAC,qBAAqB,CAAC,CAAC;YAC5G,IAAI,MAAM,CAAC,cAAc;gBAAE,KAAK,CAAC,GAAG,CAAC,gBAAgB,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC;YAC9E,IAAI,MAAM,CAAC,aAAa;gBAAE,KAAK,CAAC,GAAG,CAAC,eAAe,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;YAC3E,IAAI,MAAM,CAAC,SAAS;gBAAE,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACrF,IAAI,MAAM,CAAC,iBAAiB;gBAAE,KAAK,CAAC,GAAG,CAAC,qBAAqB,EAAE,MAAM,CAAC,iBAAiB,CAAC,CAAC;YACzF,IAAI,MAAM,CAAC,eAAe;gBAAE,KAAK,CAAC,GAAG,CAAC,sBAAsB,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;YACtF,IAAI,MAAM,CAAC,eAAe;gBAAE,KAAK,CAAC,GAAG,CAAC,mBAAmB,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;YACnF,IAAI,MAAM,CAAC,aAAa;gBAAE,KAAK,CAAC,GAAG,CAAC,oBAAoB,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;YAChF,IAAI,MAAM,CAAC,aAAa;gBAAE,KAAK,CAAC,GAAG,CAAC,qBAAqB,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;YACjF,IAAI,MAAM,CAAC,eAAe;gBAAE,KAAK,CAAC,GAAG,CAAC,uBAAuB,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;YACvF,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS;gBAAE,KAAK,CAAC,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;YACxF,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS;gBAAE,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;YAE5E,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,CAC/B,aAAa,KAAK,CAAC,QAAQ,EAAE,EAAE,CAChC,CAAC;YAEF,IAAI,IAAI,GAAG,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACzC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC;YACxE,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,IAAI,4BAA4B,CAAC;gBACrE,IAAI,GAAG,UAAU,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;YAC1C,CAAC;YACD,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC,CACF,CAAC;IAEF,yEAAyE;IACzE,MAAM,CAAC,IAAI,CACT,aAAa,EACb,yEAAyE,EACzE;QACE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QACzC,MAAM,EAAE,CAAC;aACN,IAAI,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;aACpC,QAAQ,EAAE;aACV,OAAO,CAAC,MAAM,CAAC;aACf,QAAQ,CAAC,+BAA+B,CAAC;QAC5C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;QACvE,MAAM,EAAE,CAAC;aACN,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;aACjB,QAAQ,EAAE;aACV,QAAQ,CAAC,kEAAkE,CAAC;KAChF,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,IAAI,CAAC;YACH,MAAM,SAAS,GAA2B;gBACxC,IAAI,EAAE,kBAAkB;gBACxB,GAAG,EAAE,iBAAiB;gBACtB,GAAG,EAAE,iBAAiB;gBACtB,IAAI,EAAE,WAAW;aAClB,CAAC;YAEF,MAAM,OAAO,GAA2B,EAAE,CAAC;YAC3C,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;gBACvB,OAAO,CAAC,cAAc,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC;YAC/C,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,CAC/B,aAAa,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAC9C;gBACE,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;gBAChC,OAAO;aACR,CACF,CAAC;YAEF,IAAI,OAAO,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACtC,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;iBAC1D,CAAC;YACJ,CAAC;YAED,MAAM,WAAW,GAAG,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAClD,OAAO,cAAc,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QACpD,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"invoices.js","sourceRoot":"","sources":["../../src/tools/invoices.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mcp-server-acube",
3
- "version": "0.2.0",
3
+ "version": "0.3.0",
4
4
  "description": "MCP server for A-Cube API - Italian electronic invoicing (SDI/FatturaPA), smart receipts, company verification, and more",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",