@nubiia/mcp-freematica 0.8.0 → 0.9.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 (40) hide show
  1. package/README.md +12 -7
  2. package/dist/clients/fiql-builder.d.ts +32 -8
  3. package/dist/clients/fiql-builder.js +42 -14
  4. package/dist/clients/fiql-builder.js.map +1 -1
  5. package/dist/clients/freematica-client.d.ts +92 -35
  6. package/dist/clients/freematica-client.js +251 -98
  7. package/dist/clients/freematica-client.js.map +1 -1
  8. package/dist/schemas/cartera.d.ts +7 -5
  9. package/dist/schemas/cartera.js +13 -11
  10. package/dist/schemas/cartera.js.map +1 -1
  11. package/dist/schemas/facturas-ventas.d.ts +20 -16
  12. package/dist/schemas/facturas-ventas.js +36 -32
  13. package/dist/schemas/facturas-ventas.js.map +1 -1
  14. package/dist/schemas/pedidos-compras.d.ts +8 -6
  15. package/dist/schemas/pedidos-compras.js +8 -6
  16. package/dist/schemas/pedidos-compras.js.map +1 -1
  17. package/dist/server-instructions.js +19 -0
  18. package/dist/server-instructions.js.map +1 -1
  19. package/dist/server.js +2 -0
  20. package/dist/server.js.map +1 -1
  21. package/dist/tools/articulos.d.ts +14 -0
  22. package/dist/tools/articulos.js +183 -0
  23. package/dist/tools/articulos.js.map +1 -0
  24. package/dist/tools/cartera.js +2 -2
  25. package/dist/tools/cartera.js.map +1 -1
  26. package/dist/tools/contabilidad.js +7 -7
  27. package/dist/tools/contabilidad.js.map +1 -1
  28. package/dist/tools/facturas-ventas.js +12 -12
  29. package/dist/tools/facturas-ventas.js.map +1 -1
  30. package/dist/tools/localizaciones.d.ts +1 -1
  31. package/dist/tools/localizaciones.js +3 -12
  32. package/dist/tools/localizaciones.js.map +1 -1
  33. package/dist/tools/personal.js +13 -17
  34. package/dist/tools/personal.js.map +1 -1
  35. package/dist/tools/prl.js +15 -49
  36. package/dist/tools/prl.js.map +1 -1
  37. package/dist/tools/proveedores.d.ts +2 -2
  38. package/dist/tools/proveedores.js +8 -6
  39. package/dist/tools/proveedores.js.map +1 -1
  40. package/package.json +1 -1
@@ -13,20 +13,23 @@ const GET_TOOL_NAME = 'freematica_get_persona';
13
13
  const LIST_DESCRIPTION = [
14
14
  'Devuelve la lista paginada de personas (empleados / personal) de Freemática.',
15
15
  '',
16
- 'Endpoint: GET /pers/v2/personal',
16
+ 'Endpoint: GET /pers/v1/personal',
17
17
  '',
18
18
  'Permite filtrar por empresa (VSSPER_EMP), delegación (VSSPER_DELEG), código',
19
- 'de persona (VSSPER_COD), nombre (VSSPER_NOM, búsqueda parcial), primer',
20
- 'apellido (VSSPER_APELL1, búsqueda parcial), NIF (VSSPER_NIF), situación',
21
- '(VSSPER_SIT), departamento (VSSPER_DPTO), sección (VSSPER_SECCION) y activo',
22
- '(boolean traducido a FIQL VSSPER_ACTIVO==S o VSSPER_ACTIVO==N).',
19
+ 'de persona (VSSPER_COD), nombre (VSSPER_NOM), primer apellido',
20
+ '(VSSPER_APELL1), NIF (VSSPER_NIF), situación (VSSPER_SIT), departamento',
21
+ '(VSSPER_DPTO) y sección (VSSPER_SECCION).',
22
+ '',
23
+ 'AVISO: todos los filtros son de coincidencia EXACTA (el API no soporta',
24
+ 'búsqueda parcial en este endpoint). Para localizar a una persona por nombre',
25
+ 'parcial, lista sin filtros y filtra sobre los resultados.',
23
26
  '',
24
27
  'Cada item incluye `idReg` opaco para usar en freematica_get_persona.',
25
28
  ].join('\n');
26
29
  const GET_DESCRIPTION = [
27
30
  'Devuelve el detalle completo de una persona.',
28
31
  '',
29
- 'Endpoint: GET /pers/v2/personal/{idreg}',
32
+ 'Endpoint: GET /pers/v1/personal/{idreg}',
30
33
  '',
31
34
  'El parámetro `id` DEBE ser el campo `idReg` (string opaco base64) que aparece',
32
35
  'en los items de freematica_list_personal.',
@@ -56,14 +59,13 @@ const ListPersonalSchema = {
56
59
  .string()
57
60
  .min(1)
58
61
  .optional()
59
- .describe('Nombre de la persona — búsqueda parcial con FIQL LIKE (campo VSSPER_NOM). ' +
60
- 'Introduce parte del nombre para buscar (ej. "Juan" encuentra "Juan Carlos").'),
62
+ .describe('Nombre de la persona (campo VSSPER_NOM). Coincidencia EXACTA — ' +
63
+ '"Juan" NO encuentra "Juan Carlos"; usa el nombre completo tal cual figura en Freemática.'),
61
64
  apellido: z
62
65
  .string()
63
66
  .min(1)
64
67
  .optional()
65
- .describe('Primer apellido búsqueda parcial con FIQL LIKE (campo VSSPER_APELL1). ' +
66
- 'Introduce parte del apellido para buscar.'),
68
+ .describe('Primer apellido (campo VSSPER_APELL1). Coincidencia EXACTA con el apellido completo.'),
67
69
  nif: z
68
70
  .string()
69
71
  .min(1)
@@ -84,11 +86,6 @@ const ListPersonalSchema = {
84
86
  .min(1)
85
87
  .optional()
86
88
  .describe('Código de sección (campo VSSPER_SECCION en Freemática).'),
87
- activo: z
88
- .boolean()
89
- .optional()
90
- .describe('Filtra por personas activas (true → VSSPER_ACTIVO==S) o inactivas (false → VSSPER_ACTIVO==N). ' +
91
- 'Si se omite, devuelve todas.'),
92
89
  };
93
90
  // ---------------------------------------------------------------------------
94
91
  // Register function
@@ -107,7 +104,7 @@ export function registerPersonalTools(server, client) {
107
104
  // -------------------------------------------------------------------------
108
105
  // 1. freematica_list_personal
109
106
  // -------------------------------------------------------------------------
110
- server.tool(LIST_TOOL_NAME, LIST_DESCRIPTION, ListPersonalSchema, { readOnlyHint: true, destructiveHint: false, openWorldHint: true }, async ({ page, items, empresa, delegacion, codPersona, nombre, apellido, nif, situacion, departamento, seccion, activo, }) => {
107
+ server.tool(LIST_TOOL_NAME, LIST_DESCRIPTION, ListPersonalSchema, { readOnlyHint: true, destructiveHint: false, openWorldHint: true }, async ({ page, items, empresa, delegacion, codPersona, nombre, apellido, nif, situacion, departamento, seccion, }) => {
111
108
  try {
112
109
  const result = await client.listPersonal({
113
110
  page,
@@ -121,7 +118,6 @@ export function registerPersonalTools(server, client) {
121
118
  situacion,
122
119
  departamento,
123
120
  seccion,
124
- activo,
125
121
  });
126
122
  return okList({ items: result.items, total: result.total, page, itemsPerPage: items });
127
123
  }
@@ -1 +1 @@
1
- {"version":3,"file":"personal.js","sourceRoot":"","sources":["../../src/tools/personal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"personal.js","sourceRoot":"","sources":["../../src/tools/personal.ts"],"names":[],"mappings":"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"}
package/dist/tools/prl.js CHANGED
@@ -31,10 +31,10 @@ const LIST_VS_DESCRIPTION = [
31
31
  '',
32
32
  'Endpoint: GET /pprl/v1/vigilancia-salud',
33
33
  '',
34
- 'Permite filtrar por persona (idRegPersona nativo), empresa (PERVS_EMP),',
35
- 'delegación (PERVS_DELEG), código de persona (PERVS_PERSO), tipo de revisión',
36
- '(PERVS_TIPO_REVISION), resultado (PERVS_RESULTADO) y rango de fecha de cita',
37
- '(PERVS_FCH_CITA). Los filtros FIQL se combinan con AND.',
34
+ 'ÚNICO filtro soportado: `idRegPersona` (el campo `idReg` de la persona en',
35
+ 'freematica_list_personal). El API ignora cualquier otro filtro en este',
36
+ 'endpoint, así que para acotar por empresa, tipo de revisión o fechas hay',
37
+ 'que filtrar sobre los resultados.',
38
38
  '',
39
39
  'Campos principales: PERVS_EMP, PERVS_DELEG, PERVS_PERSO, PERVS_TIPO_REVISION,',
40
40
  'PERVS_RESULTADO, PERVS_FCH_CITA, idReg.',
@@ -104,49 +104,22 @@ export const FichaPrevClienteRefinedSchema = z
104
104
  message: 'Se requiere al menos un identificador: codCliente, grupoCliente, codLocalizacionServicio o codigoFicha. ' +
105
105
  'Llamar sin ningún filtro devolvería el dataset completo.',
106
106
  });
107
- /** Schema para freematica_list_vigilancia_salud. */
107
+ /**
108
+ * Schema para freematica_list_vigilancia_salud.
109
+ *
110
+ * Solo paginación + idRegPersona: el API ignora silenciosamente el parámetro
111
+ * `rquery` en este endpoint (verificado contra producción: cualquier FIQL,
112
+ * incluso con campos inexistentes, devuelve 200 con el dataset completo), así
113
+ * que exponer filtros FIQL aquí sería engañoso.
114
+ */
108
115
  const ListVigilanciaSaludShape = {
109
116
  ...PaginationSchema,
110
117
  idRegPersona: z
111
118
  .string()
112
119
  .min(1)
113
120
  .optional()
114
- .describe('idReg opaco de la persona (query param nativo del API, no FIQL). Filtra registros de una persona concreta.'),
115
- empresa: z
116
- .string()
117
- .min(1)
118
- .optional()
119
- .describe('Código de empresa (campo PERVS_EMP en Freemática).'),
120
- delegacion: z
121
- .string()
122
- .min(1)
123
- .optional()
124
- .describe('Código de delegación (campo PERVS_DELEG en Freemática).'),
125
- codPersona: z
126
- .string()
127
- .min(1)
128
- .optional()
129
- .describe('Código natural de la persona (campo PERVS_PERSO en Freemática).'),
130
- tipoRevision: z
131
- .string()
132
- .min(1)
133
- .optional()
134
- .describe('Tipo de revisión médica (campo PERVS_TIPO_REVISION en Freemática).'),
135
- resultado: z
136
- .string()
137
- .min(1)
138
- .optional()
139
- .describe('Resultado de la revisión (campo PERVS_RESULTADO en Freemática).'),
140
- fechaCitaDesde: z
141
- .string()
142
- .regex(/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}(:\d{2}(\.\d+)?)?(Z|[+-]\d{2}:\d{2})?)?$/, 'Debe ser una fecha ISO 8601 (YYYY-MM-DD)')
143
- .optional()
144
- .describe('Fecha inicio del rango de cita (campo PERVS_FCH_CITA, ISO 8601, inclusive).'),
145
- fechaCitaHasta: z
146
- .string()
147
- .regex(/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}(:\d{2}(\.\d+)?)?(Z|[+-]\d{2}:\d{2})?)?$/, 'Debe ser una fecha ISO 8601 (YYYY-MM-DD)')
148
- .optional()
149
- .describe('Fecha fin del rango de cita (campo PERVS_FCH_CITA, ISO 8601, inclusive).'),
121
+ .describe('idReg opaco de la persona (campo "idReg" en los items de freematica_list_personal). ' +
122
+ 'Único filtro que soporta el API en este endpoint.'),
150
123
  };
151
124
  // ---------------------------------------------------------------------------
152
125
  // Register function
@@ -197,19 +170,12 @@ export function registerPrlTools(server, client) {
197
170
  // -------------------------------------------------------------------------
198
171
  // 2. freematica_list_vigilancia_salud
199
172
  // -------------------------------------------------------------------------
200
- server.tool(LIST_VS_TOOL_NAME, LIST_VS_DESCRIPTION, ListVigilanciaSaludShape, { readOnlyHint: true, destructiveHint: false, openWorldHint: true }, async ({ page, items, idRegPersona, empresa, delegacion, codPersona, tipoRevision, resultado, fechaCitaDesde, fechaCitaHasta, }) => {
173
+ server.tool(LIST_VS_TOOL_NAME, LIST_VS_DESCRIPTION, ListVigilanciaSaludShape, { readOnlyHint: true, destructiveHint: false, openWorldHint: true }, async ({ page, items, idRegPersona }) => {
201
174
  try {
202
175
  const result = await client.listVigilanciaSalud({
203
176
  page,
204
177
  items,
205
178
  idRegPersona,
206
- empresa,
207
- delegacion,
208
- codPersona,
209
- tipoRevision,
210
- resultado,
211
- fechaCitaDesde,
212
- fechaCitaHasta,
213
179
  });
214
180
  return okList({ items: result.items, total: result.total, page, itemsPerPage: items });
215
181
  }
@@ -1 +1 @@
1
- {"version":3,"file":"prl.js","sourceRoot":"","sources":["../../src/tools/prl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prl.js","sourceRoot":"","sources":["../../src/tools/prl.ts"],"names":[],"mappings":"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"}
@@ -4,8 +4,8 @@ import type { FreematicaClient } from '../clients/freematica-client.js';
4
4
  * Registra las tools de proveedores en el servidor MCP.
5
5
  *
6
6
  * Tools registradas:
7
- * - `freematica_list_proveedores`: lista paginada con filtros FIQL (incluye búsqueda parcial por nombre
8
- * con =lk= y filtro activo/inactivo vía FECHA_BAJA).
7
+ * - `freematica_list_proveedores`: lista paginada con filtros FIQL (nombre por coincidencia
8
+ * exacta y filtro activo/inactivo vía FECHA_BAJA).
9
9
  * - `freematica_get_proveedor`: detalle por idReg opaco.
10
10
  *
11
11
  * @param server - Instancia del servidor MCP.
@@ -13,10 +13,12 @@ const LIST_DESCRIPTION = [
13
13
  '',
14
14
  'Paginación 1-indexed.',
15
15
  '',
16
- 'El filtro `activo` es un booleano: true = FECHA_BAJA nula (proveedores activos);',
16
+ 'El filtro `activo` es un booleano: true = FECHA_BAJA nula (proveedores activos,',
17
+ 'filtrado sobre la página recibida — el total refleja el dataset sin filtrar);',
17
18
  'false = FECHA_BAJA informada (dados de baja).',
18
19
  '',
19
- 'El filtro `nombre` realiza búsqueda parcial mediante operador FIQL =lk= (LIKE).',
20
+ 'El filtro `nombre` es de coincidencia EXACTA con el nombre completo',
21
+ '(el API no soporta búsqueda parcial en este endpoint).',
20
22
  ].join('\n');
21
23
  const GET_DESCRIPTION = [
22
24
  'Devuelve el detalle completo de un proveedor.',
@@ -45,8 +47,8 @@ const LIST_SCHEMA = {
45
47
  .string()
46
48
  .min(1)
47
49
  .optional()
48
- .describe('Nombre del proveedor (NOMBRE_PRO). Búsqueda parcial se usa operador FIQL =lk= (LIKE). ' +
49
- 'Ejemplo: "García" devuelve todos los proveedores cuyo nombre contenga "García".'),
50
+ .describe('Nombre del proveedor (NOMBRE_PRO). Coincidencia EXACTA con el nombre completo ' +
51
+ 'tal cual figura en Freemática "García" NO encuentra "García S.L.".'),
50
52
  activo: z
51
53
  .boolean()
52
54
  .optional()
@@ -72,8 +74,8 @@ const LIST_SCHEMA = {
72
74
  * Registra las tools de proveedores en el servidor MCP.
73
75
  *
74
76
  * Tools registradas:
75
- * - `freematica_list_proveedores`: lista paginada con filtros FIQL (incluye búsqueda parcial por nombre
76
- * con =lk= y filtro activo/inactivo vía FECHA_BAJA).
77
+ * - `freematica_list_proveedores`: lista paginada con filtros FIQL (nombre por coincidencia
78
+ * exacta y filtro activo/inactivo vía FECHA_BAJA).
77
79
  * - `freematica_get_proveedor`: detalle por idReg opaco.
78
80
  *
79
81
  * @param server - Instancia del servidor MCP.
@@ -1 +1 @@
1
- {"version":3,"file":"proveedores.js","sourceRoot":"","sources":["../../src/tools/proveedores.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"proveedores.js","sourceRoot":"","sources":["../../src/tools/proveedores.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nubiia/mcp-freematica",
3
- "version": "0.8.0",
3
+ "version": "0.9.0",
4
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",