@carlonicora/nestjs-neo4jsonapi 6.1.2 → 6.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.
Files changed (71) hide show
  1. package/dist/agents/graph/interfaces/graph.catalog.interface.d.ts +4 -0
  2. package/dist/agents/graph/interfaces/graph.catalog.interface.d.ts.map +1 -1
  3. package/dist/agents/graph/prompts/graph.node.system.prompt.d.ts +1 -1
  4. package/dist/agents/graph/prompts/graph.node.system.prompt.d.ts.map +1 -1
  5. package/dist/agents/graph/prompts/graph.node.system.prompt.js +1 -1
  6. package/dist/agents/graph/services/field-formatting.d.ts +11 -0
  7. package/dist/agents/graph/services/field-formatting.d.ts.map +1 -1
  8. package/dist/agents/graph/services/field-formatting.js +16 -1
  9. package/dist/agents/graph/services/field-formatting.js.map +1 -1
  10. package/dist/agents/graph/services/graph.catalog.service.d.ts +4 -0
  11. package/dist/agents/graph/services/graph.catalog.service.d.ts.map +1 -1
  12. package/dist/agents/graph/services/graph.catalog.service.js +2 -0
  13. package/dist/agents/graph/services/graph.catalog.service.js.map +1 -1
  14. package/dist/agents/graph/services/graph.search.service.d.ts +16 -0
  15. package/dist/agents/graph/services/graph.search.service.d.ts.map +1 -1
  16. package/dist/agents/graph/services/graph.search.service.js +35 -4
  17. package/dist/agents/graph/services/graph.search.service.js.map +1 -1
  18. package/dist/agents/graph/tools/describe-entity.tool.d.ts.map +1 -1
  19. package/dist/agents/graph/tools/describe-entity.tool.js +28 -27
  20. package/dist/agents/graph/tools/describe-entity.tool.js.map +1 -1
  21. package/dist/agents/graph/tools/read-entity.tool.d.ts.map +1 -1
  22. package/dist/agents/graph/tools/read-entity.tool.js +8 -1
  23. package/dist/agents/graph/tools/read-entity.tool.js.map +1 -1
  24. package/dist/agents/graph/tools/resolve-entity.tool.d.ts +1 -0
  25. package/dist/agents/graph/tools/resolve-entity.tool.d.ts.map +1 -1
  26. package/dist/agents/graph/tools/resolve-entity.tool.js +18 -1
  27. package/dist/agents/graph/tools/resolve-entity.tool.js.map +1 -1
  28. package/dist/agents/graph/tools/search-entities.tool.d.ts +7 -0
  29. package/dist/agents/graph/tools/search-entities.tool.d.ts.map +1 -1
  30. package/dist/agents/graph/tools/search-entities.tool.js +15 -13
  31. package/dist/agents/graph/tools/search-entities.tool.js.map +1 -1
  32. package/dist/agents/graph/tools/traverse.tool.d.ts +24 -0
  33. package/dist/agents/graph/tools/traverse.tool.d.ts.map +1 -1
  34. package/dist/agents/graph/tools/traverse.tool.js +55 -10
  35. package/dist/agents/graph/tools/traverse.tool.js.map +1 -1
  36. package/dist/common/interfaces/entity.schema.interface.d.ts +20 -0
  37. package/dist/common/interfaces/entity.schema.interface.d.ts.map +1 -1
  38. package/dist/common/interfaces/external.entity.source.interface.d.ts +7 -3
  39. package/dist/common/interfaces/external.entity.source.interface.d.ts.map +1 -1
  40. package/dist/common/interfaces/external.entity.source.interface.js.map +1 -1
  41. package/dist/foundations/stripe-price/repositories/stripe-price.repository.js +20 -20
  42. package/dist/foundations/stripe-price/repositories/stripe-price.repository.js.map +1 -1
  43. package/dist/mcp/index.d.ts +2 -2
  44. package/dist/mcp/index.d.ts.map +1 -1
  45. package/dist/mcp/index.js +4 -2
  46. package/dist/mcp/index.js.map +1 -1
  47. package/dist/mcp/interfaces/mcp.tool.interface.d.ts +21 -0
  48. package/dist/mcp/interfaces/mcp.tool.interface.d.ts.map +1 -1
  49. package/dist/mcp/interfaces/mcp.tool.interface.js +8 -1
  50. package/dist/mcp/interfaces/mcp.tool.interface.js.map +1 -1
  51. package/dist/mcp/mcp.module.d.ts +5 -0
  52. package/dist/mcp/mcp.module.d.ts.map +1 -1
  53. package/dist/mcp/mcp.module.js +5 -0
  54. package/dist/mcp/mcp.module.js.map +1 -1
  55. package/dist/mcp/services/mcp.errors.d.ts +11 -0
  56. package/dist/mcp/services/mcp.errors.d.ts.map +1 -1
  57. package/dist/mcp/services/mcp.errors.js +36 -0
  58. package/dist/mcp/services/mcp.errors.js.map +1 -1
  59. package/dist/mcp/services/mcp.generic.tools.service.d.ts +13 -3
  60. package/dist/mcp/services/mcp.generic.tools.service.d.ts.map +1 -1
  61. package/dist/mcp/services/mcp.generic.tools.service.js +66 -7
  62. package/dist/mcp/services/mcp.generic.tools.service.js.map +1 -1
  63. package/dist/mcp/services/mcp.promoted.tools.factory.d.ts +1 -0
  64. package/dist/mcp/services/mcp.promoted.tools.factory.d.ts.map +1 -1
  65. package/dist/mcp/services/mcp.promoted.tools.factory.js +4 -3
  66. package/dist/mcp/services/mcp.promoted.tools.factory.js.map +1 -1
  67. package/dist/mcp/services/mcp.tool.registry.d.ts +1 -0
  68. package/dist/mcp/services/mcp.tool.registry.d.ts.map +1 -1
  69. package/dist/mcp/services/mcp.tool.registry.js +5 -0
  70. package/dist/mcp/services/mcp.tool.registry.js.map +1 -1
  71. package/package.json +1 -1
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.mcpError = mcpError;
4
4
  exports.mcpFlatError = mcpFlatError;
5
+ exports.mcpToolResult = mcpToolResult;
5
6
  const common_1 = require("@nestjs/common");
6
7
  const zod_1 = require("zod");
7
8
  /**
@@ -57,4 +58,39 @@ function isTimeoutError(e) {
57
58
  function mcpFlatError(code, message, meta = {}) {
58
59
  return { isError: true, content: [{ type: "text", text: JSON.stringify({ code, message, ...meta }) }] };
59
60
  }
61
+ /**
62
+ * The ToolFactory's unknown-type error (`ToolFactory.resolveEntity`) always
63
+ * starts `Entity type "<type>" is not available.`
64
+ */
65
+ const UNKNOWN_TYPE_ERROR = /^Entity type "[^"]*" is not available\./;
66
+ /** `read_entity`'s missing-record error: `No <type> with id <id>.` */
67
+ const NOT_FOUND_ERROR = /^No \S+ with id \S+\.$/;
68
+ /** A catalog type whose service is not registered: a server defect, not a client error. */
69
+ const SERVICE_UNAVAILABLE_ERROR = /^Service not available for "[^"]*"\./;
70
+ function toolErrorCode(error) {
71
+ if (UNKNOWN_TYPE_ERROR.test(error))
72
+ return "unknown_type";
73
+ if (NOT_FOUND_ERROR.test(error))
74
+ return "not_found";
75
+ if (SERVICE_UNAVAILABLE_ERROR.test(error))
76
+ return "internal";
77
+ return "validation_failed";
78
+ }
79
+ /**
80
+ * Turns a graph tool's return value into an MCP result. The graph tools report
81
+ * a client error as a value, `{ error, ...extras }`, so the LangGraph operator
82
+ * can hand the message to the model; over MCP that value is a failed call and
83
+ * must reach the client with `isError: true`, never as a success payload.
84
+ * The ToolFactory's unknown-type error maps to `unknown_type`, a missing record
85
+ * to `not_found`, an unregistered service to `internal`, every other tool-level
86
+ * error to `validation_failed`; the extras (e.g. `schema`, `suggestion`) stay
87
+ * on the payload.
88
+ */
89
+ function mcpToolResult(result) {
90
+ if (typeof result === "object" && result !== null && typeof result.error === "string") {
91
+ const { error, ...extras } = result;
92
+ return mcpFlatError(toolErrorCode(error), error, extras);
93
+ }
94
+ return { content: [{ type: "text", text: typeof result === "string" ? result : JSON.stringify(result) }] };
95
+ }
60
96
  //# sourceMappingURL=mcp.errors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.errors.js","sourceRoot":"","sources":["../../../src/mcp/services/mcp.errors.ts"],"names":[],"mappings":";;AAwBA,4BA2BC;AAUD,oCAEC;AA/DD,2CAA+C;AAC/C,6BAA+B;AAW/B;;;;;;;;;;;GAWG;AACH,SAAgB,QAAQ,CAAC,CAAU;IACjC,IAAI,IAAI,GAAiB,UAAU,CAAC;IACpC,IAAI,OAAO,GAAG,kBAAkB,CAAC;IACjC,IAAI,IAAI,GAA4B,EAAE,CAAC;IACvC,IAAI,CAAC,YAAY,sBAAa,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC7B,IAAI;YACF,MAAM,KAAK,GAAG;gBACZ,CAAC,CAAC,WAAW;gBACb,CAAC,CAAC,MAAM,KAAK,GAAG;oBACd,CAAC,CAAC,WAAW;oBACb,CAAC,CAAC,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG;wBAChC,CAAC,CAAC,mBAAmB;wBACrB,CAAC,CAAC,UAAU,CAAC;QACrB,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;IACtB,CAAC;SAAM,IAAI,CAAC,YAAY,cAAQ,EAAE,CAAC;QACjC,IAAI,GAAG,mBAAmB,CAAC;QAC3B,OAAO,GAAG,yBAAyB,CAAC;QACpC,IAAI,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC;IAC3F,CAAC;SAAM,IAAI,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7B,IAAI,GAAG,SAAS,CAAC;QACjB,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;QACpB,IAAI,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IAC7B,CAAC;SAAM,IAAI,CAAC,YAAY,KAAK,EAAE,CAAC;QAC9B,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;IACtB,CAAC;IACD,OAAO,YAAY,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;AAC3C,CAAC;AAED,SAAS,cAAc,CAAC,CAAU;IAChC,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAK,CAAwB,CAAC,IAAI,KAAK,cAAc,CAAC;AAClG,CAAC;AAED;;;GAGG;AACH,SAAgB,YAAY,CAAC,IAAY,EAAE,OAAe,EAAE,OAAgC,EAAE;IAC5F,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AAC1G,CAAC"}
1
+ {"version":3,"file":"mcp.errors.js","sourceRoot":"","sources":["../../../src/mcp/services/mcp.errors.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,16 @@
1
+ import { ConfigService } from "@nestjs/config";
2
+ import { GraphCatalogService } from "../../agents/graph/services/graph.catalog.service";
1
3
  import { DescribeEntityTool } from "../../agents/graph/tools/describe-entity.tool";
2
4
  import { ReadEntityTool } from "../../agents/graph/tools/read-entity.tool";
3
5
  import { ResolveEntityTool } from "../../agents/graph/tools/resolve-entity.tool";
4
6
  import { SearchEntitiesTool } from "../../agents/graph/tools/search-entities.tool";
5
7
  import { TraverseTool } from "../../agents/graph/tools/traverse.tool";
6
8
  import { SearchDocumentsTool } from "../../agents/operator/tools/search-documents.tool";
7
- import { McpToolDefinition, McpUserContext } from "../interfaces/mcp.tool.interface";
9
+ import { McpStatusContribution, McpToolDefinition, McpUserContext } from "../interfaces/mcp.tool.interface";
8
10
  import { McpEntityWriteService } from "./mcp.entity.write.service";
9
11
  /**
10
12
  * Builds the generic MCP tool set for one authenticated request:
11
- * the five graph read tools, the document-retrieval tool, and the four
13
+ * the five graph read tools, the document-retrieval tool, `ping`, and the four
12
14
  * entity write tools contributed by McpEntityWriteService.
13
15
  */
14
16
  export declare class McpGenericToolsService {
@@ -19,7 +21,15 @@ export declare class McpGenericToolsService {
19
21
  private readonly traverseTool;
20
22
  private readonly searchDocumentsTool;
21
23
  private readonly writeService;
22
- constructor(resolveEntityTool: ResolveEntityTool, describeEntityTool: DescribeEntityTool, searchEntitiesTool: SearchEntitiesTool, readEntityTool: ReadEntityTool, traverseTool: TraverseTool, searchDocumentsTool: SearchDocumentsTool, writeService: McpEntityWriteService);
24
+ private readonly catalog;
25
+ private readonly configService;
26
+ private readonly statusContributions;
27
+ constructor(resolveEntityTool: ResolveEntityTool, describeEntityTool: DescribeEntityTool, searchEntitiesTool: SearchEntitiesTool, readEntityTool: ReadEntityTool, traverseTool: TraverseTool, searchDocumentsTool: SearchDocumentsTool, writeService: McpEntityWriteService, catalog: GraphCatalogService, configService: ConfigService, statusContributions?: McpStatusContribution[]);
28
+ /**
29
+ * The `ping` reply: identity of the server and the caller, the visible
30
+ * catalog size, and every app status contribution merged at the top level.
31
+ */
32
+ ping(ctx: McpUserContext): Promise<Record<string, unknown>>;
23
33
  /** Builds the per-request generic tool definitions (read tools + write tools). */
24
34
  build(ctx: McpUserContext): McpToolDefinition[];
25
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.generic.tools.service.d.ts","sourceRoot":"","sources":["../../../src/mcp/services/mcp.generic.tools.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAA6B,MAAM,+CAA+C,CAAC;AAC9G,OAAO,EAAE,cAAc,EAAyB,MAAM,2CAA2C,CAAC;AAClG,OAAO,EAAE,iBAAiB,EAA4B,MAAM,8CAA8C,CAAC;AAC3G,OAAO,EAAE,kBAAkB,EAA6B,MAAM,+CAA+C,CAAC;AAE9G,OAAO,EAKL,YAAY,EAEb,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAA8B,MAAM,mDAAmD,CAAC;AACpH,OAAO,EAAE,iBAAiB,EAAiB,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAEpG,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AA0BnE;;;;GAIG;AACH,qBACa,sBAAsB;IAE/B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACpC,OAAO,CAAC,QAAQ,CAAC,YAAY;gBANZ,iBAAiB,EAAE,iBAAiB,EACpC,kBAAkB,EAAE,kBAAkB,EACtC,kBAAkB,EAAE,kBAAkB,EACtC,cAAc,EAAE,cAAc,EAC9B,YAAY,EAAE,YAAY,EAC1B,mBAAmB,EAAE,mBAAmB,EACxC,YAAY,EAAE,qBAAqB;IAGtD,kFAAkF;IAClF,KAAK,CAAC,GAAG,EAAE,cAAc,GAAG,iBAAiB,EAAE;CA4FhD"}
1
+ {"version":3,"file":"mcp.generic.tools.service.d.ts","sourceRoot":"","sources":["../../../src/mcp/services/mcp.generic.tools.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAI/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,mDAAmD,CAAC;AAExF,OAAO,EAAE,kBAAkB,EAA6B,MAAM,+CAA+C,CAAC;AAC9G,OAAO,EAAE,cAAc,EAAyB,MAAM,2CAA2C,CAAC;AAClG,OAAO,EAAE,iBAAiB,EAA4B,MAAM,8CAA8C,CAAC;AAC3G,OAAO,EAAE,kBAAkB,EAA6B,MAAM,+CAA+C,CAAC;AAE9G,OAAO,EAKL,YAAY,EAEb,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAA8B,MAAM,mDAAmD,CAAC;AACpH,OAAO,EAEL,qBAAqB,EACrB,iBAAiB,EAEjB,cAAc,EACf,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAgDnE;;;;GAIG;AACH,qBACa,sBAAsB;IAE/B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACpC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,aAAa;IACE,OAAO,CAAC,QAAQ,CAAC,mBAAmB;gBATnD,iBAAiB,EAAE,iBAAiB,EACpC,kBAAkB,EAAE,kBAAkB,EACtC,kBAAkB,EAAE,kBAAkB,EACtC,cAAc,EAAE,cAAc,EAC9B,YAAY,EAAE,YAAY,EAC1B,mBAAmB,EAAE,mBAAmB,EACxC,YAAY,EAAE,qBAAqB,EACnC,OAAO,EAAE,mBAAmB,EAC5B,aAAa,EAAE,aAAa,EACI,mBAAmB,GAAE,qBAAqB,EAAO;IAGpG;;;OAGG;IACG,IAAI,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAYjE,kFAAkF;IAClF,KAAK,CAAC,GAAG,EAAE,cAAc,GAAG,iBAAiB,EAAE;CAyGhD"}
@@ -8,16 +8,24 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
11
14
  Object.defineProperty(exports, "__esModule", { value: true });
12
15
  exports.McpGenericToolsService = void 0;
13
16
  const common_1 = require("@nestjs/common");
17
+ const config_1 = require("@nestjs/config");
18
+ const fs_1 = require("fs");
19
+ const path_1 = require("path");
14
20
  const zod_1 = require("zod");
21
+ const graph_catalog_service_1 = require("../../agents/graph/services/graph.catalog.service");
15
22
  const describe_entity_tool_1 = require("../../agents/graph/tools/describe-entity.tool");
16
23
  const read_entity_tool_1 = require("../../agents/graph/tools/read-entity.tool");
17
24
  const resolve_entity_tool_1 = require("../../agents/graph/tools/resolve-entity.tool");
18
25
  const search_entities_tool_1 = require("../../agents/graph/tools/search-entities.tool");
19
26
  const traverse_tool_1 = require("../../agents/graph/tools/traverse.tool");
20
27
  const search_documents_tool_1 = require("../../agents/operator/tools/search-documents.tool");
28
+ const mcp_tool_interface_1 = require("../interfaces/mcp.tool.interface");
21
29
  const mcp_errors_1 = require("./mcp.errors");
22
30
  const mcp_entity_write_service_1 = require("./mcp.entity.write.service");
23
31
  // Descriptions copied verbatim from each tool's build() (single source is the
@@ -29,6 +37,21 @@ const SEARCH_DESCRIPTION = "Find records of a known type by filter and sort. Use
29
37
  const READ_DESCRIPTION = "Fetches one record by id, optionally pulling related records across described relationships.";
30
38
  const TRAVERSE_DESCRIPTION = "Walks a relationship from a known record to related records, optionally filtered and sorted.";
31
39
  const SEARCH_DOCS_DESCRIPTION = "Search the company's documents (GraphRAG) for information relevant to a question. Returns the retrieved passages, each prefixed by its chunkId.";
40
+ const PING_DESCRIPTION = "Check the connection: returns the server name and version, the current time, the signed-in user and company, how many record types are visible, and the status the application reports (e.g. corpus coverage, queues). Read only, spends no credits.";
41
+ const pingInputSchema = zod_1.z.object({}).strict();
42
+ let packageVersion;
43
+ /**
44
+ * This package's own version, read once from its package.json. The path is the
45
+ * same from `src/mcp/services` and `dist/mcp/services`: three levels up is the
46
+ * package root.
47
+ */
48
+ function readPackageVersion() {
49
+ if (packageVersion === undefined) {
50
+ const pkg = JSON.parse((0, fs_1.readFileSync)((0, path_1.join)(__dirname, "..", "..", "..", "package.json"), "utf8"));
51
+ packageVersion = pkg.version ?? "unknown";
52
+ }
53
+ return packageVersion;
54
+ }
32
55
  /**
33
56
  * The JSON Schema of a list tool's input with the explicit `filters` and
34
57
  * `sort` shapes. The Zod schemas type both as `z.any()` (the coercion owns the
@@ -40,11 +63,11 @@ function withFilterSchemas(schema) {
40
63
  }
41
64
  /**
42
65
  * Builds the generic MCP tool set for one authenticated request:
43
- * the five graph read tools, the document-retrieval tool, and the four
66
+ * the five graph read tools, the document-retrieval tool, `ping`, and the four
44
67
  * entity write tools contributed by McpEntityWriteService.
45
68
  */
46
69
  let McpGenericToolsService = class McpGenericToolsService {
47
- constructor(resolveEntityTool, describeEntityTool, searchEntitiesTool, readEntityTool, traverseTool, searchDocumentsTool, writeService) {
70
+ constructor(resolveEntityTool, describeEntityTool, searchEntitiesTool, readEntityTool, traverseTool, searchDocumentsTool, writeService, catalog, configService, statusContributions = []) {
48
71
  this.resolveEntityTool = resolveEntityTool;
49
72
  this.describeEntityTool = describeEntityTool;
50
73
  this.searchEntitiesTool = searchEntitiesTool;
@@ -52,6 +75,24 @@ let McpGenericToolsService = class McpGenericToolsService {
52
75
  this.traverseTool = traverseTool;
53
76
  this.searchDocumentsTool = searchDocumentsTool;
54
77
  this.writeService = writeService;
78
+ this.catalog = catalog;
79
+ this.configService = configService;
80
+ this.statusContributions = statusContributions;
81
+ }
82
+ /**
83
+ * The `ping` reply: identity of the server and the caller, the visible
84
+ * catalog size, and every app status contribution merged at the top level.
85
+ */
86
+ async ping(ctx) {
87
+ const contributed = await Promise.all((this.statusContributions ?? []).map((c) => c.status(ctx)));
88
+ return {
89
+ server: this.configService.get("mcp")?.serverName ?? "neural-erp",
90
+ version: readPackageVersion(),
91
+ now: new Date().toISOString(),
92
+ user: { userId: ctx.userId, companyId: ctx.companyId },
93
+ catalog: { types: this.catalog.getAccessibleTypes(ctx.userModuleIds).length },
94
+ ...Object.assign({}, ...contributed),
95
+ };
55
96
  }
56
97
  /** Builds the per-request generic tool definitions (read tools + write tools). */
57
98
  build(ctx) {
@@ -92,10 +133,8 @@ let McpGenericToolsService = class McpGenericToolsService {
92
133
  }
93
134
  if (seedType)
94
135
  seedDescribe(seedType(parsed));
95
- const result = await invoke(parsed);
96
- return {
97
- content: [{ type: "text", text: typeof result === "string" ? result : JSON.stringify(result) }],
98
- };
136
+ // A tool-level `{ error }` value is a failed call: isError, never success.
137
+ return (0, mcp_errors_1.mcpToolResult)(await invoke(parsed));
99
138
  }
100
139
  catch (e) {
101
140
  return (0, mcp_errors_1.mcpError)(e);
@@ -113,6 +152,22 @@ let McpGenericToolsService = class McpGenericToolsService {
113
152
  // conversation, so dataLimits defaults to {} (all fields optional)
114
153
  // and messages to [] — the documented fallback.
115
154
  this.searchDocumentsTool.invoke(i, { ...ctx, dataLimits: {}, messages: [] }, recorder)),
155
+ {
156
+ name: "ping",
157
+ description: PING_DESCRIPTION,
158
+ inputSchema: zod_1.z.toJSONSchema(pingInputSchema),
159
+ readOnly: true,
160
+ gateFree: true,
161
+ execute: async (input) => {
162
+ try {
163
+ pingInputSchema.parse(input ?? {});
164
+ return { content: [{ type: "text", text: JSON.stringify(await this.ping(ctx)) }] };
165
+ }
166
+ catch (e) {
167
+ return (0, mcp_errors_1.mcpError)(e);
168
+ }
169
+ },
170
+ },
116
171
  ...this.writeService.buildTools(ctx),
117
172
  ];
118
173
  }
@@ -120,12 +175,16 @@ let McpGenericToolsService = class McpGenericToolsService {
120
175
  exports.McpGenericToolsService = McpGenericToolsService;
121
176
  exports.McpGenericToolsService = McpGenericToolsService = __decorate([
122
177
  (0, common_1.Injectable)(),
178
+ __param(9, (0, common_1.Optional)()),
179
+ __param(9, (0, common_1.Inject)(mcp_tool_interface_1.MCP_STATUS)),
123
180
  __metadata("design:paramtypes", [resolve_entity_tool_1.ResolveEntityTool,
124
181
  describe_entity_tool_1.DescribeEntityTool,
125
182
  search_entities_tool_1.SearchEntitiesTool,
126
183
  read_entity_tool_1.ReadEntityTool,
127
184
  traverse_tool_1.TraverseTool,
128
185
  search_documents_tool_1.SearchDocumentsTool,
129
- mcp_entity_write_service_1.McpEntityWriteService])
186
+ mcp_entity_write_service_1.McpEntityWriteService,
187
+ graph_catalog_service_1.GraphCatalogService,
188
+ config_1.ConfigService, Array])
130
189
  ], McpGenericToolsService);
131
190
  //# sourceMappingURL=mcp.generic.tools.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.generic.tools.service.js","sourceRoot":"","sources":["../../../src/mcp/services/mcp.generic.tools.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp.generic.tools.service.js","sourceRoot":"","sources":["../../../src/mcp/services/mcp.generic.tools.service.ts"],"names":[],"mappings":"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"}
@@ -70,6 +70,7 @@ export declare class McpPromotedToolsFactory {
70
70
  private buildRelationshipsSchema;
71
71
  private entityBlurb;
72
72
  private textResult;
73
+ /** Same exception mapping as the generic tools: 404 → not_found, 400 → validation_failed, … */
73
74
  private internalError;
74
75
  }
75
76
  //# sourceMappingURL=mcp.promoted.tools.factory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.promoted.tools.factory.d.ts","sourceRoot":"","sources":["../../../src/mcp/services/mcp.promoted.tools.factory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,mDAAmD,CAAC;AACxF,OAAO,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,+CAA+C,CAAC;AAGnF,OAAO,KAAK,EAAE,iBAAiB,EAAiB,cAAc,EAAE,MAAM,kCAAkC,CAAC;AACzG,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE;;;;;;;;;;;;GAYG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAuBlH;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,qBACa,uBAAuB;IAEhC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAJZ,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,mBAAmB,EAC5B,UAAU,EAAE,kBAAkB,EAC9B,QAAQ,EAAE,cAAc,EACxB,YAAY,EAAE,qBAAqB;IAGtD;;;;;;;;;OASG;IACH,KAAK,CAAC,GAAG,EAAE,cAAc,GAAG,iBAAiB,EAAE;IA0B/C;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,eAAe;IAkCvB,OAAO,CAAC,YAAY;IA8BpB,OAAO,CAAC,eAAe;IAyBvB,OAAO,CAAC,eAAe;IAwBvB,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,wBAAwB;IAqBhC,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,aAAa;CAItB"}
1
+ {"version":3,"file":"mcp.promoted.tools.factory.d.ts","sourceRoot":"","sources":["../../../src/mcp/services/mcp.promoted.tools.factory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,mDAAmD,CAAC;AACxF,OAAO,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,+CAA+C,CAAC;AAGnF,OAAO,KAAK,EAAE,iBAAiB,EAAiB,cAAc,EAAE,MAAM,kCAAkC,CAAC;AACzG,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAGnE;;;;;;;;;;;;GAYG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAuBlH;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,qBACa,uBAAuB;IAEhC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAJZ,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,mBAAmB,EAC5B,UAAU,EAAE,kBAAkB,EAC9B,QAAQ,EAAE,cAAc,EACxB,YAAY,EAAE,qBAAqB;IAGtD;;;;;;;;;OASG;IACH,KAAK,CAAC,GAAG,EAAE,cAAc,GAAG,iBAAiB,EAAE;IA0B/C;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,eAAe;IAkCvB,OAAO,CAAC,YAAY;IA8BpB,OAAO,CAAC,eAAe;IAyBvB,OAAO,CAAC,eAAe;IAwBvB,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,wBAAwB;IAqBhC,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,UAAU;IAIlB,+FAA+F;IAC/F,OAAO,CAAC,aAAa;CAGtB"}
@@ -17,6 +17,7 @@ const graph_catalog_service_1 = require("../../agents/graph/services/graph.catal
17
17
  const read_entity_tool_1 = require("../../agents/graph/tools/read-entity.tool");
18
18
  const search_entities_tool_1 = require("../../agents/graph/tools/search-entities.tool");
19
19
  const mcp_entity_write_service_1 = require("./mcp.entity.write.service");
20
+ const mcp_errors_1 = require("./mcp.errors");
20
21
  /**
21
22
  * Maps an entity-descriptor field (as exposed by the graph catalog) to a JSON
22
23
  * Schema property for MCP tool input schemas.
@@ -264,11 +265,11 @@ let McpPromotedToolsFactory = class McpPromotedToolsFactory {
264
265
  return entity.description ? ` ${entity.description}.` : "";
265
266
  }
266
267
  textResult(result) {
267
- return { content: [{ type: "text", text: JSON.stringify(result) }] };
268
+ return (0, mcp_errors_1.mcpToolResult)(result);
268
269
  }
270
+ /** Same exception mapping as the generic tools: 404 → not_found, 400 → validation_failed, … */
269
271
  internalError(e) {
270
- const message = e instanceof Error ? e.message : "Unexpected error";
271
- return { isError: true, content: [{ type: "text", text: JSON.stringify({ code: "internal", message }) }] };
272
+ return (0, mcp_errors_1.mcpError)(e);
272
273
  }
273
274
  };
274
275
  exports.McpPromotedToolsFactory = McpPromotedToolsFactory;
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.promoted.tools.factory.js","sourceRoot":"","sources":["../../../src/mcp/services/mcp.promoted.tools.factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp.promoted.tools.factory.js","sourceRoot":"","sources":["../../../src/mcp/services/mcp.promoted.tools.factory.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ import { McpPromotedToolsFactory } from "./mcp.promoted.tools.factory";
13
13
  * (`INTERACTIVE_CREDIT_VALIDATOR`, else `CREDIT_VALIDATOR`): AI off returns the
14
14
  * flat error `ai_disabled`, an empty balance (402) returns `no_credits`, any
15
15
  * other validator error propagates. With no validator bound nothing is gated.
16
+ * A tool flagged `gateFree` (ping) is never gated.
16
17
  * `build()` (tools/list) is never gated, so a client still sees what exists.
17
18
  */
18
19
  export declare class McpToolRegistry {
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.tool.registry.d.ts","sourceRoot":"","sources":["../../../src/mcp/services/mcp.tool.registry.ts"],"names":[],"mappings":"AAEA,OAAO,EAAoB,wBAAwB,EAAgC,MAAM,qBAAqB,CAAC;AAC/G,OAAO,EAEL,mBAAmB,EACnB,iBAAiB,EACjB,aAAa,EACb,cAAc,EACf,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAEvE;;;;;;;;;;;;GAYG;AACH,qBACa,eAAe;IAExB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACM,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;IAG5D,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAC;IACN,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;gBANtD,OAAO,EAAE,sBAAsB,EAC/B,QAAQ,EAAE,uBAAuB,EACF,WAAW,CAAC,EAAE,mBAAmB,EAAE,EAGlE,0BAA0B,CAAC,EAAE,wBAAwB,EACf,eAAe,CAAC,EAAE,wBAAwB;IAGnG,6EAA6E;IAC7E,KAAK,CAAC,GAAG,EAAE,cAAc,GAAG,iBAAiB,EAAE;IAsB/C,wFAAwF;IAClF,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;CAmBtG"}
1
+ {"version":3,"file":"mcp.tool.registry.d.ts","sourceRoot":"","sources":["../../../src/mcp/services/mcp.tool.registry.ts"],"names":[],"mappings":"AAEA,OAAO,EAAoB,wBAAwB,EAAgC,MAAM,qBAAqB,CAAC;AAC/G,OAAO,EAEL,mBAAmB,EACnB,iBAAiB,EACjB,aAAa,EACb,cAAc,EACf,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAEvE;;;;;;;;;;;;;GAaG;AACH,qBACa,eAAe;IAExB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACM,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;IAG5D,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAC;IACN,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;gBANtD,OAAO,EAAE,sBAAsB,EAC/B,QAAQ,EAAE,uBAAuB,EACF,WAAW,CAAC,EAAE,mBAAmB,EAAE,EAGlE,0BAA0B,CAAC,EAAE,wBAAwB,EACf,eAAe,CAAC,EAAE,wBAAwB;IAGnG,6EAA6E;IAC7E,KAAK,CAAC,GAAG,EAAE,cAAc,GAAG,iBAAiB,EAAE;IAsB/C,wFAAwF;IAClF,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;CAuBtG"}
@@ -31,6 +31,7 @@ const mcp_promoted_tools_factory_1 = require("./mcp.promoted.tools.factory");
31
31
  * (`INTERACTIVE_CREDIT_VALIDATOR`, else `CREDIT_VALIDATOR`): AI off returns the
32
32
  * flat error `ai_disabled`, an empty balance (402) returns `no_credits`, any
33
33
  * other validator error propagates. With no validator bound nothing is gated.
34
+ * A tool flagged `gateFree` (ping) is never gated.
34
35
  * `build()` (tools/list) is never gated, so a client still sees what exists.
35
36
  */
36
37
  let McpToolRegistry = class McpToolRegistry {
@@ -69,6 +70,10 @@ let McpToolRegistry = class McpToolRegistry {
69
70
  content: [{ type: "text", text: JSON.stringify({ code: "unknown_type", message: `Unknown tool: ${name}` }) }],
70
71
  };
71
72
  }
73
+ // A gate-free tool (ping) spends no AI credit: it answers even with AI off
74
+ // or an empty balance, which is exactly when a client needs it.
75
+ if (tool.gateFree)
76
+ return tool.execute(input, ctx);
72
77
  const validator = (0, credit_gate_1.pickInteractiveValidator)(this.interactiveCreditValidator, this.creditValidator);
73
78
  if (!(await (0, credit_gate_1.isAiEnabledVia)(validator, { companyId: ctx.companyId }))) {
74
79
  return (0, mcp_errors_1.mcpFlatError)("ai_disabled", "AI is not enabled for this company");
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.tool.registry.js","sourceRoot":"","sources":["../../../src/mcp/services/mcp.tool.registry.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA8D;AAC9D,kEAAoH;AACpH,gDAA+G;AAC/G,yEAM0C;AAC1C,6CAA4C;AAC5C,2EAAqE;AACrE,6EAAuE;AAEvE;;;;;;;;;;;;GAYG;AAEI,IAAM,eAAe,GAArB,MAAM,eAAe;IAC1B,YACmB,OAA+B,EAC/B,QAAiC,EACF,WAAmC,EAGlE,0BAAqD,EACf,eAA0C;QANhF,YAAO,GAAP,OAAO,CAAwB;QAC/B,aAAQ,GAAR,QAAQ,CAAyB;QACF,gBAAW,GAAX,WAAW,CAAwB;QAGlE,+BAA0B,GAA1B,0BAA0B,CAA2B;QACf,oBAAe,GAAf,eAAe,CAA2B;IAChG,CAAC;IAEJ,6EAA6E;IAC7E,KAAK,CAAC,GAAmB;QACvB,MAAM,KAAK,GAAG;YACZ,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;YAC1B,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC;YAC3B,GAAG,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;SACzD,CAAC;QAEF,0EAA0E;QAC1E,6DAA6D;QAC7D,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxB,MAAM,IAAI,KAAK,CACb,6CAA6C,IAAI,CAAC,IAAI,IAAI;oBACxD,yGAAyG,CAC5G,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtB,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,wFAAwF;IACxF,KAAK,CAAC,IAAI,CAAC,IAAY,EAAE,KAA8B,EAAE,GAAmB;QAC1E,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;QAC1D,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,iBAAiB,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;aAC9G,CAAC;QACJ,CAAC;QAED,MAAM,SAAS,GAAG,IAAA,sCAAwB,EAAC,IAAI,CAAC,0BAA0B,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAClG,IAAI,CAAC,CAAC,MAAM,IAAA,4BAAc,EAAC,SAAS,EAAE,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC;YACrE,OAAO,IAAA,yBAAY,EAAC,aAAa,EAAE,oCAAoC,CAAC,CAAC;QAC3E,CAAC;QACD,IAAI,CAAC,CAAC,MAAM,IAAA,oCAAsB,EAAC,SAAS,EAAE,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC;YAC7E,OAAO,IAAA,yBAAY,EAAC,YAAY,EAAE,sCAAsC,CAAC,CAAC;QAC5E,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAClC,CAAC;CACF,CAAA;AAtDY,0CAAe;0BAAf,eAAe;IAD3B,IAAA,mBAAU,GAAE;IAKR,WAAA,IAAA,iBAAQ,GAAE,CAAA;IAAE,WAAA,IAAA,eAAM,EAAC,8BAAS,CAAC,CAAA;IAC7B,WAAA,IAAA,iBAAQ,GAAE,CAAA;IACV,WAAA,IAAA,eAAM,EAAC,qCAA4B,CAAC,CAAA;IAEpC,WAAA,IAAA,iBAAQ,GAAE,CAAA;IAAE,WAAA,IAAA,eAAM,EAAC,yBAAgB,CAAC,CAAA;qCANX,kDAAsB;QACrB,oDAAuB;GAHzC,eAAe,CAsD3B"}
1
+ {"version":3,"file":"mcp.tool.registry.js","sourceRoot":"","sources":["../../../src/mcp/services/mcp.tool.registry.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@carlonicora/nestjs-neo4jsonapi",
3
- "version": "6.1.2",
3
+ "version": "6.2.0",
4
4
  "description": "NestJS foundation package with JSON:API, Neo4j, Redis, LangChain agents, and common utilities",
5
5
  "author": "Carlo Nicora",
6
6
  "license": "GPL-3.0-or-later",