@nubiia/mcp-freematica 0.6.3 → 0.7.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 (43) hide show
  1. package/README.md +63 -13
  2. package/dist/clients/freematica-client.d.ts +190 -1
  3. package/dist/clients/freematica-client.js +281 -1
  4. package/dist/clients/freematica-client.js.map +1 -1
  5. package/dist/config.d.ts +22 -1
  6. package/dist/config.js +29 -1
  7. package/dist/config.js.map +1 -1
  8. package/dist/schemas/contratos.d.ts +268 -5
  9. package/dist/schemas/contratos.js +402 -1
  10. package/dist/schemas/contratos.js.map +1 -1
  11. package/dist/server-instructions.js +44 -1
  12. package/dist/server-instructions.js.map +1 -1
  13. package/dist/server.d.ts +6 -0
  14. package/dist/server.js +2 -2
  15. package/dist/server.js.map +1 -1
  16. package/dist/tools/contratos/cabecera.d.ts +7 -0
  17. package/dist/tools/contratos/cabecera.js +128 -0
  18. package/dist/tools/contratos/cabecera.js.map +1 -0
  19. package/dist/tools/contratos/index.d.ts +21 -0
  20. package/dist/tools/contratos/index.js +31 -0
  21. package/dist/tools/contratos/index.js.map +1 -0
  22. package/dist/tools/contratos/materiales.d.ts +4 -0
  23. package/dist/tools/{contratos.js → contratos/materiales.js} +5 -11
  24. package/dist/tools/contratos/materiales.js.map +1 -0
  25. package/dist/tools/contratos/opcionales.d.ts +5 -0
  26. package/dist/tools/contratos/opcionales.js +106 -0
  27. package/dist/tools/contratos/opcionales.js.map +1 -0
  28. package/dist/tools/contratos/servicios.d.ts +5 -0
  29. package/dist/tools/contratos/servicios.js +215 -0
  30. package/dist/tools/contratos/servicios.js.map +1 -0
  31. package/dist/transports/http.d.ts +2 -0
  32. package/dist/transports/http.js +3 -1
  33. package/dist/transports/http.js.map +1 -1
  34. package/dist/transports/stdio.d.ts +2 -0
  35. package/dist/transports/stdio.js +3 -1
  36. package/dist/transports/stdio.js.map +1 -1
  37. package/dist/types/contratos.d.ts +29 -0
  38. package/dist/utils/idreg.d.ts +37 -0
  39. package/dist/utils/idreg.js +52 -0
  40. package/dist/utils/idreg.js.map +1 -0
  41. package/package.json +21 -4
  42. package/dist/tools/contratos.d.ts +0 -10
  43. package/dist/tools/contratos.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/transports/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/transports/http.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  import type { FreematicaClient } from '../clients/freematica-client.js';
2
2
  export interface StartStdioOptions {
3
3
  client: FreematicaClient;
4
+ /** Override del flag de escrituras; si se omite se lee FREEMATICA_ENABLE_WRITES. */
5
+ enableWrites?: boolean;
4
6
  }
5
7
  /**
6
8
  * Arranca el MCP server sobre el transport stdio.
@@ -1,4 +1,5 @@
1
1
  import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
2
+ import { loadWritesConfig } from '../config.js';
2
3
  import { createFreematicaServer } from '../server.js';
3
4
  /**
4
5
  * Arranca el MCP server sobre el transport stdio.
@@ -8,7 +9,8 @@ import { createFreematicaServer } from '../server.js';
8
9
  * el `onclose` del transport y libera el proceso).
9
10
  */
10
11
  export async function startStdio(opts) {
11
- const server = createFreematicaServer({ client: opts.client });
12
+ const enableWrites = opts.enableWrites ?? loadWritesConfig().FREEMATICA_ENABLE_WRITES;
13
+ const server = createFreematicaServer({ client: opts.client, enableWrites });
12
14
  const transport = new StdioServerTransport();
13
15
  await server.connect(transport);
14
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"stdio.js","sourceRoot":"","sources":["../../src/transports/stdio.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAMtD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,IAAuB;IACtD,MAAM,MAAM,GAAG,sBAAsB,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAC/D,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"stdio.js","sourceRoot":"","sources":["../../src/transports/stdio.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAQtD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,IAAuB;IACtD,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,IAAI,gBAAgB,EAAE,CAAC,wBAAwB,CAAC;IACtF,MAAM,MAAM,GAAG,sBAAsB,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;IAC7E,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC"}
@@ -6,3 +6,32 @@
6
6
  * tighten it then.
7
7
  */
8
8
  export type VoContratosServMatAsignado = Record<string, unknown>;
9
+ /**
10
+ * Cabecera de contrato (tabla VSS_CONTRATOS, módulo pvss).
11
+ *
12
+ * Campos conocidos (verificados contra el API real): CTRT_EMP, CTRT_DELEG,
13
+ * CTRT_COD, CTRT_DES, CTRT_FECHA, CTRT_COD_CLI, CTRT_PAIS, CTRT_PROV,
14
+ * CTRT_CPOSTAL, CTRT_POB, CTRT_TVIA, CTRT_NOMVIA, CTRT_UBIVIA, CTRT_ABIERTO,
15
+ * CTRT_LOC_SERV, CTRT_ESTADISTICO, idReg.
16
+ *
17
+ * El campo `idReg` es Base64("{EMP}__{DELEG}__{COD}").
18
+ */
19
+ export type VoContrato = Record<string, unknown>;
20
+ /**
21
+ * Servicio de un contrato (tabla VSS_CONTRATOS_SERV, módulo pvss).
22
+ *
23
+ * Campos conocidos: CTRTS_EMP, CTRTS_DELEG, CTRTS_CTRT, CTRTS_COD, CTRTS_DES,
24
+ * CTRTS_INSP, CTRTS_TIPO, CTRTS_FECALTA, CTRTS_FECFIN, CTRTS_PRECIO_ESP,
25
+ * CTRTS_CLASE, CTRTS_CALFEST, CTRTS_OBS_PUESTO, idReg.
26
+ *
27
+ * El campo `idReg` es Base64("{EMP}__{DELEG}__{CTRT}__{COD}").
28
+ */
29
+ export type VoContratoServicio = Record<string, unknown>;
30
+ /** Datos de facturación de un servicio (VoServiciosFac, campos CTRTF_*). */
31
+ export type VoServiciosFac = Record<string, unknown>;
32
+ /** Histórico de precios de un servicio (VoServiciosHistPr, campos SERVHPR_*). */
33
+ export type VoServiciosHistPr = Record<string, unknown>;
34
+ /** Texto de facturación de un servicio (VoServiciosFacTxt, campos CTRTFL_*). */
35
+ export type VoServiciosFacTxt = Record<string, unknown>;
36
+ /** Opcionales de contrato (VoContratosOpcionales, campos CON2_*, módulo ppre). */
37
+ export type VoContratosOpcionales = Record<string, unknown>;
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Utilidades para decodificar los identificadores opacos `idReg` de Freemática.
3
+ *
4
+ * Convención verificada contra el API real (módulo pvss, Contratos):
5
+ * - Contrato: idReg = Base64("{EMP}__{DELEG}__{COD}")
6
+ * Ejemplo: "MDJfXzA4X18yMzA0" → "02__08__2304"
7
+ * - Servicio: idReg = Base64("{EMP}__{DELEG}__{CTRT}__{COD}")
8
+ * Ejemplo: "MDJfXzA4X18yMzA0X18x" → "02__08__2304__1"
9
+ *
10
+ * Los endpoints de escritura de pvss exigen los códigos naturales (empresa,
11
+ * delegación, contrato, servicio) dentro del body además del idReg en el
12
+ * path; estos helpers evitan que el caller tenga que duplicarlos.
13
+ */
14
+ export interface ContratoIdRegParts {
15
+ empresa: string;
16
+ delegacion: string;
17
+ codContrato: string;
18
+ }
19
+ export interface ServicioIdRegParts extends ContratoIdRegParts {
20
+ codServicio: string;
21
+ }
22
+ /**
23
+ * Decodifica el idReg de una cabecera de contrato.
24
+ *
25
+ * @param idReg - Identificador opaco (Base64 de "EMP__DELEG__COD").
26
+ * @returns Partes del identificador.
27
+ * @throws Error si el idReg no tiene el formato esperado de 3 partes.
28
+ */
29
+ export declare function decodeContratoIdReg(idReg: string): ContratoIdRegParts;
30
+ /**
31
+ * Decodifica el idReg de un servicio de contrato.
32
+ *
33
+ * @param idReg - Identificador opaco (Base64 de "EMP__DELEG__CTRT__COD").
34
+ * @returns Partes del identificador.
35
+ * @throws Error si el idReg no tiene el formato esperado de 4 partes.
36
+ */
37
+ export declare function decodeServicioIdReg(idReg: string): ServicioIdRegParts;
@@ -0,0 +1,52 @@
1
+ /**
2
+ * Utilidades para decodificar los identificadores opacos `idReg` de Freemática.
3
+ *
4
+ * Convención verificada contra el API real (módulo pvss, Contratos):
5
+ * - Contrato: idReg = Base64("{EMP}__{DELEG}__{COD}")
6
+ * Ejemplo: "MDJfXzA4X18yMzA0" → "02__08__2304"
7
+ * - Servicio: idReg = Base64("{EMP}__{DELEG}__{CTRT}__{COD}")
8
+ * Ejemplo: "MDJfXzA4X18yMzA0X18x" → "02__08__2304__1"
9
+ *
10
+ * Los endpoints de escritura de pvss exigen los códigos naturales (empresa,
11
+ * delegación, contrato, servicio) dentro del body además del idReg en el
12
+ * path; estos helpers evitan que el caller tenga que duplicarlos.
13
+ */
14
+ function decodeBase64(idReg) {
15
+ return Buffer.from(idReg, 'base64').toString('utf8');
16
+ }
17
+ /**
18
+ * Decodifica el idReg de una cabecera de contrato.
19
+ *
20
+ * @param idReg - Identificador opaco (Base64 de "EMP__DELEG__COD").
21
+ * @returns Partes del identificador.
22
+ * @throws Error si el idReg no tiene el formato esperado de 3 partes.
23
+ */
24
+ export function decodeContratoIdReg(idReg) {
25
+ const decoded = decodeBase64(idReg);
26
+ const parts = decoded.split('__');
27
+ if (parts.length !== 3 || parts.some((p) => p.length === 0)) {
28
+ throw new Error(`idReg de contrato inválido: se esperaba Base64("EMP__DELEG__COD"), se obtuvo "${decoded}"`);
29
+ }
30
+ return { empresa: parts[0], delegacion: parts[1], codContrato: parts[2] };
31
+ }
32
+ /**
33
+ * Decodifica el idReg de un servicio de contrato.
34
+ *
35
+ * @param idReg - Identificador opaco (Base64 de "EMP__DELEG__CTRT__COD").
36
+ * @returns Partes del identificador.
37
+ * @throws Error si el idReg no tiene el formato esperado de 4 partes.
38
+ */
39
+ export function decodeServicioIdReg(idReg) {
40
+ const decoded = decodeBase64(idReg);
41
+ const parts = decoded.split('__');
42
+ if (parts.length !== 4 || parts.some((p) => p.length === 0)) {
43
+ throw new Error(`idReg de servicio inválido: se esperaba Base64("EMP__DELEG__CTRT__COD"), se obtuvo "${decoded}"`);
44
+ }
45
+ return {
46
+ empresa: parts[0],
47
+ delegacion: parts[1],
48
+ codContrato: parts[2],
49
+ codServicio: parts[3],
50
+ };
51
+ }
52
+ //# sourceMappingURL=idreg.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"idreg.js","sourceRoot":"","sources":["../../src/utils/idreg.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAYH,SAAS,YAAY,CAAC,KAAa;IACjC,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACvD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAa;IAC/C,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACpC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;QAC5D,MAAM,IAAI,KAAK,CACb,iFAAiF,OAAO,GAAG,CAC5F,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;AAC5E,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAa;IAC/C,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACpC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;QAC5D,MAAM,IAAI,KAAK,CACb,uFAAuF,OAAO,GAAG,CAClG,CAAC;IACJ,CAAC;IACD,OAAO;QACL,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;QACjB,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;QACpB,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;QACrB,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;KACtB,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@nubiia/mcp-freematica",
3
- "version": "0.6.3",
4
- "description": "MCP server for Freemática REST API (consumed by Claude via Nubiia)",
3
+ "version": "0.7.0",
4
+ "description": "MCP server for the Freemática ERP REST API: invoicing, accounts receivable, suppliers, accounting and HR data for AI assistants like Claude. Built by Nubiia.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
7
7
  "bin": {
@@ -33,7 +33,7 @@
33
33
  "bugs": {
34
34
  "url": "https://github.com/nubiia-dev/mcp-freematica/issues"
35
35
  },
36
- "homepage": "https://github.com/nubiia-dev/mcp-freematica#readme",
36
+ "homepage": "https://nubiia.es",
37
37
  "publishConfig": {
38
38
  "access": "public"
39
39
  },
@@ -44,9 +44,26 @@
44
44
  "mcp",
45
45
  "model-context-protocol",
46
46
  "freematica",
47
+ "freematica-api",
48
+ "erp",
49
+ "invoicing",
50
+ "facturacion",
51
+ "accounting",
52
+ "contabilidad",
53
+ "cartera",
54
+ "api",
55
+ "claude",
56
+ "anthropic",
57
+ "ai",
58
+ "llm",
59
+ "automation",
47
60
  "nubiia"
48
61
  ],
49
- "author": "Nubiia",
62
+ "author": {
63
+ "name": "Nubiia",
64
+ "email": "hola@nubiia.es",
65
+ "url": "https://nubiia.es"
66
+ },
50
67
  "license": "MIT",
51
68
  "dependencies": {
52
69
  "@modelcontextprotocol/sdk": "^1.27.1",
@@ -1,10 +0,0 @@
1
- import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
- import type { FreematicaClient } from '../clients/freematica-client.js';
3
- /**
4
- * Registers every MCP tool that maps to operations in the "Contratos" API group
5
- * (Postman: app `pvss` → group `Contratos`).
6
- *
7
- * Add new tools here by calling `server.tool(...)` again. When this file grows
8
- * past ~15 tools, split it into `src/tools/contratos/<entity>.ts`.
9
- */
10
- export declare function registerContratosTools(server: McpServer, client: FreematicaClient): void;
@@ -1 +0,0 @@
1
- {"version":3,"file":"contratos.js","sourceRoot":"","sources":["../../src/tools/contratos.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE7C,MAAM,yBAAyB,GAAG,gDAAgD,CAAC;AAEnF,MAAM,gCAAgC,GAAG;IACvC,8DAA8D;IAC9D,EAAE;IACF,uEAAuE;IACvE,kDAAkD;IAClD,EAAE;IACF,4EAA4E;IAC5E,wEAAwE;IACxE,wDAAwD;IACxD,sCAAsC;CACvC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAiB,EAAE,MAAwB;IAChF,MAAM,CAAC,IAAI,CACT,yBAAyB,EACzB,gCAAgC,EAChC,EAAE,EACF,EAAE,YAAY,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,EACnE,KAAK,IAA6B,EAAE;QAClC,IAAI,CAAC;YACH,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,+BAA+B,EAAE,CAAC;YACxE,OAAO,MAAM,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAmB,CAAC;QACpD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,YAAY,eAAe;gBAAE,OAAO,KAAK,CAAC,GAAG,CAAmB,CAAC;YACxE,OAAO,KAAK,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAmB,CAAC;QACtF,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}