ucm-mcp-server 6.6.0 → 6.7.1

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 (218) hide show
  1. package/dist/clients/UcmLocalApiClient.d.ts +50 -1
  2. package/dist/clients/UcmLocalApiClient.js +8 -0
  3. package/dist/index.js +1 -1
  4. package/dist/interfaces/IMcpTool.d.ts +2 -2
  5. package/dist/server/ToolRegistry.js +2 -0
  6. package/dist/tools/authorization/SignOutTool.js +3 -0
  7. package/dist/tools/base/BaseToolController.d.ts +7 -4
  8. package/dist/tools/base/BaseToolController.js +28 -11
  9. package/dist/tools/core/MoveArtifactTool.d.ts +1 -1
  10. package/dist/tools/core/MoveArtifactTool.js +1 -1
  11. package/dist/tools/memory-graph/GraphCreateEntitiesTool.d.ts +5 -2
  12. package/dist/tools/memory-graph/GraphCreateEntitiesTool.js +2 -0
  13. package/dist/tools/memory-graph/GraphCreateRelationshipsTool.d.ts +5 -2
  14. package/dist/tools/memory-graph/GraphCreateRelationshipsTool.js +2 -0
  15. package/dist/tools/memory-graph/GraphCreateTool.d.ts +5 -2
  16. package/dist/tools/memory-graph/GraphCreateTool.js +2 -0
  17. package/dist/tools/memory-graph/GraphDeleteEntitiesTool.d.ts +5 -2
  18. package/dist/tools/memory-graph/GraphDeleteEntitiesTool.js +2 -0
  19. package/dist/tools/memory-graph/GraphDeleteRelationshipsTool.d.ts +5 -2
  20. package/dist/tools/memory-graph/GraphDeleteRelationshipsTool.js +2 -0
  21. package/dist/tools/memory-graph/GraphExploreTool.d.ts +5 -2
  22. package/dist/tools/memory-graph/GraphExploreTool.js +4 -1
  23. package/dist/tools/memory-graph/GraphFindEntitiesTool.d.ts +5 -2
  24. package/dist/tools/memory-graph/GraphFindEntitiesTool.js +2 -0
  25. package/dist/tools/memory-graph/GraphFindPathsTool.d.ts +5 -2
  26. package/dist/tools/memory-graph/GraphFindPathsTool.js +2 -0
  27. package/dist/tools/memory-graph/GraphGetEntityTool.d.ts +5 -2
  28. package/dist/tools/memory-graph/GraphGetEntityTool.js +2 -0
  29. package/dist/tools/memory-graph/GraphGetRelationshipsTool.d.ts +5 -2
  30. package/dist/tools/memory-graph/GraphGetRelationshipsTool.js +4 -2
  31. package/dist/tools/memory-graph/GraphListTemplatesTool.d.ts +5 -2
  32. package/dist/tools/memory-graph/GraphListTemplatesTool.js +2 -0
  33. package/dist/tools/memory-graph/GraphListTool.d.ts +5 -2
  34. package/dist/tools/memory-graph/GraphListTool.js +2 -0
  35. package/dist/tools/memory-graph/GraphOpenTool.d.ts +5 -2
  36. package/dist/tools/memory-graph/GraphOpenTool.js +3 -1
  37. package/dist/tools/memory-graph/GraphProposeVocabularyTool.d.ts +5 -2
  38. package/dist/tools/memory-graph/GraphProposeVocabularyTool.js +51 -6
  39. package/dist/tools/memory-graph/GraphSearchTool.d.ts +5 -2
  40. package/dist/tools/memory-graph/GraphSearchTool.js +2 -0
  41. package/dist/tools/memory-graph/GraphTraverseTool.d.ts +5 -2
  42. package/dist/tools/memory-graph/GraphTraverseTool.js +2 -0
  43. package/dist/tools/memory-graph/GraphUpdateEntitiesTool.d.ts +5 -2
  44. package/dist/tools/memory-graph/GraphUpdateEntitiesTool.js +2 -0
  45. package/dist/{mcp-server/tools/memory-graph/GraphSearchTool.d.ts → tools/memory-graph/GraphUpdateTool.d.ts} +4 -4
  46. package/dist/tools/memory-graph/GraphUpdateTool.js +59 -0
  47. package/dist/tools/memory-graph/KnowledgeSetListTool.d.ts +5 -2
  48. package/dist/tools/memory-graph/KnowledgeSetListTool.js +2 -0
  49. package/dist/tools/memory-graph/KnowledgeSetOpenTool.d.ts +5 -2
  50. package/dist/tools/memory-graph/KnowledgeSetOpenTool.js +2 -0
  51. package/dist/tools/sharepoint/SharePointReadFileTool.js +1 -1
  52. package/dist/tools/sharepoint/SharePointSearchTool.d.ts +1 -0
  53. package/dist/tools/sharepoint/SharePointSearchTool.js +11 -2
  54. package/package.json +1 -1
  55. package/dist/clients/UcmApiClient.d.ts +0 -157
  56. package/dist/clients/UcmApiClient.js +0 -443
  57. package/dist/mcp-server/clients/UcmLocalApiClient.d.ts +0 -399
  58. package/dist/mcp-server/clients/UcmLocalApiClient.js +0 -719
  59. package/dist/mcp-server/index.d.ts +0 -3
  60. package/dist/mcp-server/index.js +0 -68
  61. package/dist/mcp-server/interfaces/ILogger.d.ts +0 -8
  62. package/dist/mcp-server/interfaces/ILogger.js +0 -4
  63. package/dist/mcp-server/interfaces/IMcpTool.d.ts +0 -7
  64. package/dist/mcp-server/interfaces/IMcpTool.js +0 -3
  65. package/dist/mcp-server/logging/ConsoleLogger.d.ts +0 -16
  66. package/dist/mcp-server/logging/ConsoleLogger.js +0 -45
  67. package/dist/mcp-server/logging/LoggerFactory.d.ts +0 -9
  68. package/dist/mcp-server/logging/LoggerFactory.js +0 -12
  69. package/dist/mcp-server/server/McpConfig.d.ts +0 -26
  70. package/dist/mcp-server/server/McpConfig.js +0 -90
  71. package/dist/mcp-server/server/McpHandler.d.ts +0 -12
  72. package/dist/mcp-server/server/McpHandler.js +0 -84
  73. package/dist/mcp-server/server/McpServer.d.ts +0 -15
  74. package/dist/mcp-server/server/McpServer.js +0 -49
  75. package/dist/mcp-server/server/ToolRegistry.d.ts +0 -23
  76. package/dist/mcp-server/server/ToolRegistry.js +0 -169
  77. package/dist/mcp-server/tools/authorization/ListAuthorizationsTool.d.ts +0 -21
  78. package/dist/mcp-server/tools/authorization/ListAuthorizationsTool.js +0 -146
  79. package/dist/mcp-server/tools/authorization/SignOutTool.d.ts +0 -23
  80. package/dist/mcp-server/tools/authorization/SignOutTool.js +0 -128
  81. package/dist/mcp-server/tools/base/BaseToolController.d.ts +0 -19
  82. package/dist/mcp-server/tools/base/BaseToolController.js +0 -58
  83. package/dist/mcp-server/tools/connections/AccessConnectionTool.d.ts +0 -21
  84. package/dist/mcp-server/tools/connections/AccessConnectionTool.js +0 -107
  85. package/dist/mcp-server/tools/connections/CallRemoteToolTool.d.ts +0 -22
  86. package/dist/mcp-server/tools/connections/CallRemoteToolTool.js +0 -124
  87. package/dist/mcp-server/tools/core/DeleteArtifactTool.d.ts +0 -11
  88. package/dist/mcp-server/tools/core/DeleteArtifactTool.js +0 -83
  89. package/dist/mcp-server/tools/core/EditArtifactMetadataTool.d.ts +0 -12
  90. package/dist/mcp-server/tools/core/EditArtifactMetadataTool.js +0 -173
  91. package/dist/mcp-server/tools/core/GetArtifactTool.d.ts +0 -13
  92. package/dist/mcp-server/tools/core/GetArtifactTool.js +0 -124
  93. package/dist/mcp-server/tools/core/GetArtifactVersionsTool.d.ts +0 -11
  94. package/dist/mcp-server/tools/core/GetArtifactVersionsTool.js +0 -63
  95. package/dist/mcp-server/tools/core/GetChunkTool.d.ts +0 -11
  96. package/dist/mcp-server/tools/core/GetChunkTool.js +0 -56
  97. package/dist/mcp-server/tools/core/ListArtifactsTool.d.ts +0 -11
  98. package/dist/mcp-server/tools/core/ListArtifactsTool.js +0 -84
  99. package/dist/mcp-server/tools/core/MoveArtifactTool.d.ts +0 -12
  100. package/dist/mcp-server/tools/core/MoveArtifactTool.js +0 -104
  101. package/dist/mcp-server/tools/core/PublishArtifactFromFileTool.d.ts +0 -15
  102. package/dist/mcp-server/tools/core/PublishArtifactFromFileTool.js +0 -277
  103. package/dist/mcp-server/tools/core/PublishArtifactTool.d.ts +0 -13
  104. package/dist/mcp-server/tools/core/PublishArtifactTool.js +0 -218
  105. package/dist/mcp-server/tools/core/SearchArtifactsTool.d.ts +0 -11
  106. package/dist/mcp-server/tools/core/SearchArtifactsTool.js +0 -137
  107. package/dist/mcp-server/tools/list/ListNamespaceController.d.ts +0 -1
  108. package/dist/mcp-server/tools/list/ListNamespaceController.js +0 -8
  109. package/dist/mcp-server/tools/memory-graph/GraphCreateEntitiesTool.d.ts +0 -14
  110. package/dist/mcp-server/tools/memory-graph/GraphCreateEntitiesTool.js +0 -58
  111. package/dist/mcp-server/tools/memory-graph/GraphCreateRelationshipsTool.d.ts +0 -14
  112. package/dist/mcp-server/tools/memory-graph/GraphCreateRelationshipsTool.js +0 -57
  113. package/dist/mcp-server/tools/memory-graph/GraphCreateTool.d.ts +0 -14
  114. package/dist/mcp-server/tools/memory-graph/GraphCreateTool.js +0 -64
  115. package/dist/mcp-server/tools/memory-graph/GraphDeleteEntitiesTool.d.ts +0 -14
  116. package/dist/mcp-server/tools/memory-graph/GraphDeleteEntitiesTool.js +0 -45
  117. package/dist/mcp-server/tools/memory-graph/GraphDeleteRelationshipsTool.d.ts +0 -14
  118. package/dist/mcp-server/tools/memory-graph/GraphDeleteRelationshipsTool.js +0 -45
  119. package/dist/mcp-server/tools/memory-graph/GraphExploreTool.d.ts +0 -14
  120. package/dist/mcp-server/tools/memory-graph/GraphExploreTool.js +0 -73
  121. package/dist/mcp-server/tools/memory-graph/GraphFindEntitiesTool.d.ts +0 -14
  122. package/dist/mcp-server/tools/memory-graph/GraphFindEntitiesTool.js +0 -68
  123. package/dist/mcp-server/tools/memory-graph/GraphFindPathsTool.d.ts +0 -14
  124. package/dist/mcp-server/tools/memory-graph/GraphFindPathsTool.js +0 -62
  125. package/dist/mcp-server/tools/memory-graph/GraphGetEntityTool.d.ts +0 -14
  126. package/dist/mcp-server/tools/memory-graph/GraphGetEntityTool.js +0 -49
  127. package/dist/mcp-server/tools/memory-graph/GraphGetRelationshipsTool.d.ts +0 -14
  128. package/dist/mcp-server/tools/memory-graph/GraphGetRelationshipsTool.js +0 -62
  129. package/dist/mcp-server/tools/memory-graph/GraphListTemplatesTool.d.ts +0 -14
  130. package/dist/mcp-server/tools/memory-graph/GraphListTemplatesTool.js +0 -34
  131. package/dist/mcp-server/tools/memory-graph/GraphListTool.d.ts +0 -14
  132. package/dist/mcp-server/tools/memory-graph/GraphListTool.js +0 -45
  133. package/dist/mcp-server/tools/memory-graph/GraphOpenTool.d.ts +0 -15
  134. package/dist/mcp-server/tools/memory-graph/GraphOpenTool.js +0 -50
  135. package/dist/mcp-server/tools/memory-graph/GraphProposeVocabularyTool.d.ts +0 -14
  136. package/dist/mcp-server/tools/memory-graph/GraphProposeVocabularyTool.js +0 -108
  137. package/dist/mcp-server/tools/memory-graph/GraphSearchTool.js +0 -94
  138. package/dist/mcp-server/tools/memory-graph/GraphTraverseTool.d.ts +0 -14
  139. package/dist/mcp-server/tools/memory-graph/GraphTraverseTool.js +0 -114
  140. package/dist/mcp-server/tools/memory-graph/GraphUpdateEntitiesTool.d.ts +0 -14
  141. package/dist/mcp-server/tools/memory-graph/GraphUpdateEntitiesTool.js +0 -58
  142. package/dist/mcp-server/tools/memory-graph/KnowledgeSetListTool.d.ts +0 -14
  143. package/dist/mcp-server/tools/memory-graph/KnowledgeSetListTool.js +0 -25
  144. package/dist/mcp-server/tools/memory-graph/KnowledgeSetOpenTool.d.ts +0 -14
  145. package/dist/mcp-server/tools/memory-graph/KnowledgeSetOpenTool.js +0 -31
  146. package/dist/mcp-server/tools/repository/CreateRepositoryTool.d.ts +0 -12
  147. package/dist/mcp-server/tools/repository/CreateRepositoryTool.js +0 -116
  148. package/dist/mcp-server/tools/repository/GetRepositoryTool.d.ts +0 -12
  149. package/dist/mcp-server/tools/repository/GetRepositoryTool.js +0 -85
  150. package/dist/mcp-server/tools/repository/UpdateRepositoryTool.d.ts +0 -12
  151. package/dist/mcp-server/tools/repository/UpdateRepositoryTool.js +0 -115
  152. package/dist/mcp-server/tools/sharepoint/SharePointListConnectionsTool.d.ts +0 -19
  153. package/dist/mcp-server/tools/sharepoint/SharePointListConnectionsTool.js +0 -90
  154. package/dist/mcp-server/tools/sharepoint/SharePointListFoldersTool.d.ts +0 -21
  155. package/dist/mcp-server/tools/sharepoint/SharePointListFoldersTool.js +0 -133
  156. package/dist/mcp-server/tools/sharepoint/SharePointReadFileTool.d.ts +0 -22
  157. package/dist/mcp-server/tools/sharepoint/SharePointReadFileTool.js +0 -146
  158. package/dist/mcp-server/tools/sharepoint/SharePointReadRelatedFileTool.d.ts +0 -18
  159. package/dist/mcp-server/tools/sharepoint/SharePointReadRelatedFileTool.js +0 -108
  160. package/dist/mcp-server/tools/sharepoint/SharePointSearchTool.d.ts +0 -22
  161. package/dist/mcp-server/tools/sharepoint/SharePointSearchTool.js +0 -125
  162. package/dist/mcp-server/tools/utility/AuthorIndexTool.d.ts +0 -11
  163. package/dist/mcp-server/tools/utility/AuthorIndexTool.js +0 -49
  164. package/dist/mcp-server/tools/utility/AuthorRecentsTool.d.ts +0 -11
  165. package/dist/mcp-server/tools/utility/AuthorRecentsTool.js +0 -49
  166. package/dist/mcp-server/tools/utility/ListRepositoriesTool.d.ts +0 -11
  167. package/dist/mcp-server/tools/utility/ListRepositoriesTool.js +0 -68
  168. package/dist/mcp-server/tools/utility/QuickstartTool.d.ts +0 -11
  169. package/dist/mcp-server/tools/utility/QuickstartTool.js +0 -36
  170. package/dist/mcp-server/types/UcmApiTypes.d.ts +0 -40
  171. package/dist/mcp-server/types/UcmApiTypes.js +0 -4
  172. package/dist/mcp-server/utils/McpErrorHandler.d.ts +0 -25
  173. package/dist/mcp-server/utils/McpErrorHandler.js +0 -67
  174. package/dist/mcp-server/utils/PathUtils.d.ts +0 -61
  175. package/dist/mcp-server/utils/PathUtils.js +0 -178
  176. package/dist/mcp-server/utils/ResponseChunker.d.ts +0 -25
  177. package/dist/mcp-server/utils/ResponseChunker.js +0 -79
  178. package/dist/mcp-server/utils/SharePointErrorHandler.d.ts +0 -34
  179. package/dist/mcp-server/utils/SharePointErrorHandler.js +0 -55
  180. package/dist/publish/package.json +0 -37
  181. package/dist/schemas/memory-graph-tool-schemas.d.ts +0 -789
  182. package/dist/schemas/memory-graph-tool-schemas.js +0 -181
  183. package/dist/tools/artifacts/GetArtifactController.d.ts +0 -34
  184. package/dist/tools/artifacts/GetArtifactController.js +0 -397
  185. package/dist/tools/artifacts/GetLatestController.d.ts +0 -39
  186. package/dist/tools/artifacts/GetLatestController.js +0 -469
  187. package/dist/tools/artifacts/ListVersionsController.d.ts +0 -43
  188. package/dist/tools/artifacts/ListVersionsController.js +0 -530
  189. package/dist/tools/artifacts/PublishArtifactController.d.ts +0 -37
  190. package/dist/tools/artifacts/PublishArtifactController.js +0 -605
  191. package/dist/tools/discovery/BrowseCategoriesController.d.ts +0 -25
  192. package/dist/tools/discovery/BrowseCategoriesController.js +0 -400
  193. package/dist/tools/discovery/FindByPurposeController.d.ts +0 -12
  194. package/dist/tools/discovery/FindByPurposeController.js +0 -131
  195. package/dist/tools/discovery/ListAuthorsController.d.ts +0 -20
  196. package/dist/tools/discovery/ListAuthorsController.js +0 -274
  197. package/dist/tools/discovery/SearchArtifactsController.d.ts +0 -14
  198. package/dist/tools/discovery/SearchArtifactsController.js +0 -226
  199. package/dist/tools/memory-graph/GraphGetStatsTool.d.ts +0 -11
  200. package/dist/tools/memory-graph/GraphGetStatsTool.js +0 -42
  201. package/dist/tools/memory-graph/GraphRemoveRelationshipsTool.d.ts +0 -11
  202. package/dist/tools/memory-graph/GraphRemoveRelationshipsTool.js +0 -47
  203. package/dist/tools/navigation/ExploreNamespaceController.d.ts +0 -35
  204. package/dist/tools/navigation/ExploreNamespaceController.js +0 -548
  205. package/dist/tools/repository/DeleteRepositoryGuidanceTool.d.ts +0 -13
  206. package/dist/tools/repository/DeleteRepositoryGuidanceTool.js +0 -93
  207. package/dist/tools/sharepoint/SharePointSignOutTool.d.ts +0 -22
  208. package/dist/tools/sharepoint/SharePointSignOutTool.js +0 -114
  209. package/dist/tools/utility/HealthCheckController.d.ts +0 -11
  210. package/dist/tools/utility/HealthCheckController.js +0 -60
  211. package/dist/tools/utility/SubmitFeedbackTool.d.ts +0 -16
  212. package/dist/tools/utility/SubmitFeedbackTool.js +0 -68
  213. package/dist/tools/utility/ValidatePathController.d.ts +0 -30
  214. package/dist/tools/utility/ValidatePathController.js +0 -465
  215. package/dist/utils/HttpsAgentFactory.d.ts +0 -21
  216. package/dist/utils/HttpsAgentFactory.js +0 -50
  217. package/dist/utils/ValidationUtils.d.ts +0 -10
  218. package/dist/utils/ValidationUtils.js +0 -50
@@ -1,5 +1,6 @@
1
1
  import { BaseToolController } from '../base/BaseToolController.js';
2
2
  import { McpError, McpErrorCode } from '../../utils/McpErrorHandler.js';
3
+ import { GraphListTemplatesSchema } from '../../../schemas/memory-graph-tool-schemas.js';
3
4
  export class GraphListTemplatesTool extends BaseToolController {
4
5
  constructor(ucmClient, logger, publishingAuthorId) {
5
6
  super(ucmClient, logger, publishingAuthorId);
@@ -8,6 +9,7 @@ export class GraphListTemplatesTool extends BaseToolController {
8
9
  get description() {
9
10
  return 'List available vocabulary templates for creating Memory Graphs. Each template defines entity types, relationship types, and property definitions for a specific domain. Use the templateId when calling ucm_graph_create.';
10
11
  }
12
+ get schema() { return GraphListTemplatesSchema; }
11
13
  get inputSchema() {
12
14
  return {
13
15
  type: 'object',
@@ -1,11 +1,14 @@
1
1
  import { BaseToolController } from '../base/BaseToolController.js';
2
2
  import { UcmLocalApiClient } from '../../clients/UcmLocalApiClient.js';
3
3
  import { ILogger } from '../../interfaces/ILogger.js';
4
+ import { type GraphListParams } from '../../../schemas/memory-graph-tool-schemas.js';
5
+ import { ZodSchema } from 'zod';
4
6
  export declare class GraphListTool extends BaseToolController {
5
7
  constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
6
8
  get name(): string;
7
9
  get description(): string;
8
- get inputSchema(): any;
9
- protected handleExecute(params: any): Promise<any>;
10
+ get schema(): ZodSchema;
11
+ get inputSchema(): Record<string, unknown>;
12
+ protected handleExecute(params: GraphListParams): Promise<string>;
10
13
  }
11
14
  //# sourceMappingURL=GraphListTool.d.ts.map
@@ -1,4 +1,5 @@
1
1
  import { BaseToolController } from '../base/BaseToolController.js';
2
+ import { GraphListSchema } from '../../../schemas/memory-graph-tool-schemas.js';
2
3
  export class GraphListTool extends BaseToolController {
3
4
  constructor(ucmClient, logger, publishingAuthorId) {
4
5
  super(ucmClient, logger, publishingAuthorId);
@@ -7,6 +8,7 @@ export class GraphListTool extends BaseToolController {
7
8
  get description() {
8
9
  return 'List all Memory Graphs you have access to (including those not in a Knowledge Set). Returns graph metadata, embedding status, descriptions, and ownership scope (personal or organization).';
9
10
  }
11
+ get schema() { return GraphListSchema; }
10
12
  get inputSchema() {
11
13
  return {
12
14
  type: 'object',
@@ -1,12 +1,15 @@
1
1
  import { BaseToolController } from '../base/BaseToolController.js';
2
2
  import { UcmLocalApiClient } from '../../clients/UcmLocalApiClient.js';
3
3
  import { ILogger } from '../../interfaces/ILogger.js';
4
+ import { type GraphOpenParams } from '../../../schemas/memory-graph-tool-schemas.js';
5
+ import { ZodSchema } from 'zod';
4
6
  export declare class GraphOpenTool extends BaseToolController {
5
7
  constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
6
8
  get name(): string;
7
9
  get description(): string;
8
- get inputSchema(): any;
9
- protected handleExecute(params: any): Promise<any>;
10
+ get schema(): ZodSchema;
11
+ get inputSchema(): Record<string, unknown>;
12
+ protected handleExecute(params: GraphOpenParams): Promise<string>;
10
13
  private handleApiError;
11
14
  }
12
15
  //# sourceMappingURL=GraphOpenTool.d.ts.map
@@ -1,13 +1,15 @@
1
1
  import { BaseToolController } from '../base/BaseToolController.js';
2
2
  import { McpError, McpErrorCode } from '../../utils/McpErrorHandler.js';
3
+ import { GraphOpenSchema } from '../../../schemas/memory-graph-tool-schemas.js';
3
4
  export class GraphOpenTool extends BaseToolController {
4
5
  constructor(ucmClient, logger, publishingAuthorId) {
5
6
  super(ucmClient, logger, publishingAuthorId);
6
7
  }
7
8
  get name() { return 'ucm_graph_open'; }
8
9
  get description() {
9
- return 'Open a Memory Graph and get its vocabulary, statistics, instructions, and policies. Call this FIRST before querying a graph — it returns the schema (entity types, relationship types, property definitions) needed to construct queries.';
10
+ return 'Open a Memory Graph and get its vocabulary, statistics, query instructions, usage instructions, and policies. Call this FIRST before querying a graph — it returns the schema (entity types, relationship types, property definitions) needed to construct queries.';
10
11
  }
12
+ get schema() { return GraphOpenSchema; }
11
13
  get inputSchema() {
12
14
  return {
13
15
  type: 'object',
@@ -1,11 +1,14 @@
1
1
  import { BaseToolController } from '../base/BaseToolController.js';
2
2
  import { UcmLocalApiClient } from '../../clients/UcmLocalApiClient.js';
3
3
  import { ILogger } from '../../interfaces/ILogger.js';
4
+ import { type GraphProposeVocabularyParams } from '../../../schemas/memory-graph-tool-schemas.js';
5
+ import { ZodSchema } from 'zod';
4
6
  export declare class GraphProposeVocabularyTool extends BaseToolController {
5
7
  constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
6
8
  get name(): string;
7
9
  get description(): string;
8
- get inputSchema(): any;
9
- protected handleExecute(params: any): Promise<any>;
10
+ get schema(): ZodSchema;
11
+ get inputSchema(): Record<string, unknown>;
12
+ protected handleExecute(params: GraphProposeVocabularyParams): Promise<string>;
10
13
  }
11
14
  //# sourceMappingURL=GraphProposeVocabularyTool.d.ts.map
@@ -1,13 +1,15 @@
1
1
  import { BaseToolController } from '../base/BaseToolController.js';
2
2
  import { McpError, McpErrorCode } from '../../utils/McpErrorHandler.js';
3
+ import { GraphProposeVocabularySchema } from '../../../schemas/memory-graph-tool-schemas.js';
3
4
  export class GraphProposeVocabularyTool extends BaseToolController {
4
5
  constructor(ucmClient, logger, publishingAuthorId) {
5
6
  super(ucmClient, logger, publishingAuthorId);
6
7
  }
7
8
  get name() { return 'ucm_graph_propose_vocabulary'; }
8
9
  get description() {
9
- return 'Propose new entity types or relationship types for a Memory Graph vocabulary. Behaviour depends on the governance mode: auto-approved in "open" mode, queued for review in "managed" mode, rejected in "locked" mode.';
10
+ return 'Propose new entity or relationship types, or edit existing types (add/remove/update properties) for a Memory Graph vocabulary. Behaviour depends on the governance mode: auto-approved in "open" mode, queued for review in "managed" mode, rejected in "locked" mode.';
10
11
  }
12
+ get schema() { return GraphProposeVocabularySchema; }
11
13
  get inputSchema() {
12
14
  return {
13
15
  type: 'object',
@@ -72,21 +74,64 @@ export class GraphProposeVocabularyTool extends BaseToolController {
72
74
  },
73
75
  required: ['type', 'description', 'justification', 'allowedSourceTypes', 'allowedTargetTypes']
74
76
  }
77
+ },
78
+ editEntityTypes: {
79
+ type: 'array',
80
+ description: 'Edits to existing entity types — add, remove, or update properties',
81
+ items: {
82
+ type: 'object',
83
+ properties: {
84
+ type: { type: 'string', description: 'Existing entity type name to modify' },
85
+ description: { type: 'string', description: 'New description (omit to keep current)' },
86
+ justification: { type: 'string', description: 'Why this change is needed' },
87
+ addProperties: { type: 'array', items: { type: 'object', properties: { name: { type: 'string' }, type: { type: 'string', description: 'string, number, boolean, date' }, required: { type: 'boolean' }, description: { type: 'string' } }, required: ['name', 'type', 'required'] }, description: 'New properties to add' },
88
+ removeProperties: { type: 'array', items: { type: 'string' }, description: 'Property names to remove' },
89
+ updateProperties: { type: 'array', items: { type: 'object', properties: { name: { type: 'string' }, type: { type: 'string', description: 'string, number, boolean, date' }, required: { type: 'boolean' }, description: { type: 'string' } }, required: ['name', 'type', 'required'] }, description: 'Existing properties to update (matched by name)' }
90
+ },
91
+ required: ['type', 'justification']
92
+ }
93
+ },
94
+ editRelationshipTypes: {
95
+ type: 'array',
96
+ description: 'Edits to existing relationship types',
97
+ items: {
98
+ type: 'object',
99
+ properties: {
100
+ type: { type: 'string', description: 'Existing relationship type name to modify' },
101
+ description: { type: 'string', description: 'New description (omit to keep current)' },
102
+ justification: { type: 'string', description: 'Why this change is needed' },
103
+ allowedSourceTypes: { type: 'array', items: { type: 'string' }, description: 'Replace allowed source entity types' },
104
+ allowedTargetTypes: { type: 'array', items: { type: 'string' }, description: 'Replace allowed target entity types' },
105
+ bidirectional: { type: 'boolean', description: 'Change bidirectional flag' },
106
+ addProperties: { type: 'array', items: { type: 'object', properties: { name: { type: 'string' }, type: { type: 'string' }, required: { type: 'boolean' }, description: { type: 'string' } }, required: ['name', 'type', 'required'] }, description: 'New properties to add' },
107
+ removeProperties: { type: 'array', items: { type: 'string' }, description: 'Property names to remove' },
108
+ updateProperties: { type: 'array', items: { type: 'object', properties: { name: { type: 'string' }, type: { type: 'string' }, required: { type: 'boolean' }, description: { type: 'string' } }, required: ['name', 'type', 'required'] }, description: 'Existing properties to update (matched by name)' }
109
+ },
110
+ required: ['type', 'justification']
111
+ }
75
112
  }
76
113
  },
77
114
  required: ['memoryGraphId']
78
115
  };
79
116
  }
80
117
  async handleExecute(params) {
81
- const { memoryGraphId, entityTypes, relationshipTypes } = params;
82
- if ((!entityTypes || entityTypes.length === 0) && (!relationshipTypes || relationshipTypes.length === 0)) {
83
- throw new McpError(McpErrorCode.InvalidParams, 'At least one of entityTypes or relationshipTypes must be provided');
118
+ const { memoryGraphId, entityTypes, relationshipTypes, editEntityTypes, editRelationshipTypes } = params;
119
+ const hasAny = (entityTypes && entityTypes.length > 0) ||
120
+ (relationshipTypes && relationshipTypes.length > 0) ||
121
+ (editEntityTypes && editEntityTypes.length > 0) ||
122
+ (editRelationshipTypes && editRelationshipTypes.length > 0);
123
+ if (!hasAny) {
124
+ throw new McpError(McpErrorCode.InvalidParams, 'At least one of entityTypes, relationshipTypes, editEntityTypes, or editRelationshipTypes must be provided');
84
125
  }
85
126
  this.logger.info('GraphProposeVocabularyTool', `Proposing vocabulary for graph: ${memoryGraphId}`);
86
127
  try {
87
128
  const result = await this.ucmClient.graphProposeVocabulary(memoryGraphId, {
88
- entityTypes,
89
- relationshipTypes
129
+ // TYPE-EXCEPTION: Zod infers `required?: boolean` but API client expects `required: boolean`;
130
+ // runtime values are always valid — cast to satisfy the client signature.
131
+ entityTypes: entityTypes,
132
+ relationshipTypes: relationshipTypes,
133
+ editEntityTypes: editEntityTypes,
134
+ editRelationshipTypes: editRelationshipTypes,
90
135
  });
91
136
  return JSON.stringify(result);
92
137
  }
@@ -1,11 +1,14 @@
1
1
  import { BaseToolController } from '../base/BaseToolController.js';
2
2
  import { UcmLocalApiClient } from '../../clients/UcmLocalApiClient.js';
3
3
  import { ILogger } from '../../interfaces/ILogger.js';
4
+ import { type GraphSearchParams } from '../../../schemas/memory-graph-tool-schemas.js';
5
+ import { ZodSchema } from 'zod';
4
6
  export declare class GraphSearchTool extends BaseToolController {
5
7
  constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
6
8
  get name(): string;
7
9
  get description(): string;
8
- get inputSchema(): any;
9
- protected handleExecute(params: any): Promise<any>;
10
+ get schema(): ZodSchema;
11
+ get inputSchema(): Record<string, unknown>;
12
+ protected handleExecute(params: GraphSearchParams): Promise<string>;
10
13
  }
11
14
  //# sourceMappingURL=GraphSearchTool.d.ts.map
@@ -1,5 +1,6 @@
1
1
  import { BaseToolController } from '../base/BaseToolController.js';
2
2
  import { McpError, McpErrorCode } from '../../utils/McpErrorHandler.js';
3
+ import { GraphSearchSchema } from '../../../schemas/memory-graph-tool-schemas.js';
3
4
  export class GraphSearchTool extends BaseToolController {
4
5
  constructor(ucmClient, logger, publishingAuthorId) {
5
6
  super(ucmClient, logger, publishingAuthorId);
@@ -8,6 +9,7 @@ export class GraphSearchTool extends BaseToolController {
8
9
  get description() {
9
10
  return 'Semantic search across one or more Memory Graphs using vector similarity. Uses embeddings if available. Returns entities ranked by relevance to the query concept. Provide memoryGraphId for single-graph search, graphIds (array) for multi-graph search, or omit both to search all accessible graphs.';
10
11
  }
12
+ get schema() { return GraphSearchSchema; }
11
13
  get inputSchema() {
12
14
  return {
13
15
  type: 'object',
@@ -1,11 +1,14 @@
1
1
  import { BaseToolController } from '../base/BaseToolController.js';
2
2
  import { UcmLocalApiClient } from '../../clients/UcmLocalApiClient.js';
3
3
  import { ILogger } from '../../interfaces/ILogger.js';
4
+ import { type GraphTraverseParams } from '../../../schemas/memory-graph-tool-schemas.js';
5
+ import { ZodSchema } from 'zod';
4
6
  export declare class GraphTraverseTool extends BaseToolController {
5
7
  constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
6
8
  get name(): string;
7
9
  get description(): string;
8
- get inputSchema(): any;
9
- protected handleExecute(params: any): Promise<any>;
10
+ get schema(): ZodSchema;
11
+ get inputSchema(): Record<string, unknown>;
12
+ protected handleExecute(params: GraphTraverseParams): Promise<string>;
10
13
  }
11
14
  //# sourceMappingURL=GraphTraverseTool.d.ts.map
@@ -1,5 +1,6 @@
1
1
  import { BaseToolController } from '../base/BaseToolController.js';
2
2
  import { McpError, McpErrorCode } from '../../utils/McpErrorHandler.js';
3
+ import { GraphTraverseSchema } from '../../../schemas/memory-graph-tool-schemas.js';
3
4
  export class GraphTraverseTool extends BaseToolController {
4
5
  constructor(ucmClient, logger, publishingAuthorId) {
5
6
  super(ucmClient, logger, publishingAuthorId);
@@ -8,6 +9,7 @@ export class GraphTraverseTool extends BaseToolController {
8
9
  get description() {
9
10
  return 'Execute a structured graph traversal using a JSON spec. Supports start point selection, ordered hop steps with relationship/entity type filters, property filters, repeat loops, and multiple return modes (terminal, all, paths). The most powerful query tool for complex graph navigation.';
10
11
  }
12
+ get schema() { return GraphTraverseSchema; }
11
13
  get inputSchema() {
12
14
  return {
13
15
  type: 'object',
@@ -1,11 +1,14 @@
1
1
  import { BaseToolController } from '../base/BaseToolController.js';
2
2
  import { UcmLocalApiClient } from '../../clients/UcmLocalApiClient.js';
3
3
  import { ILogger } from '../../interfaces/ILogger.js';
4
+ import { type GraphUpdateEntitiesParams } from '../../../schemas/memory-graph-tool-schemas.js';
5
+ import { ZodSchema } from 'zod';
4
6
  export declare class GraphUpdateEntitiesTool extends BaseToolController {
5
7
  constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
6
8
  get name(): string;
7
9
  get description(): string;
8
- get inputSchema(): any;
9
- protected handleExecute(params: any): Promise<any>;
10
+ get schema(): ZodSchema;
11
+ get inputSchema(): Record<string, unknown>;
12
+ protected handleExecute(params: GraphUpdateEntitiesParams): Promise<string>;
10
13
  }
11
14
  //# sourceMappingURL=GraphUpdateEntitiesTool.d.ts.map
@@ -1,5 +1,6 @@
1
1
  import { BaseToolController } from '../base/BaseToolController.js';
2
2
  import { McpError, McpErrorCode } from '../../utils/McpErrorHandler.js';
3
+ import { GraphUpdateEntitiesSchema } from '../../../schemas/memory-graph-tool-schemas.js';
3
4
  export class GraphUpdateEntitiesTool extends BaseToolController {
4
5
  constructor(ucmClient, logger, publishingAuthorId) {
5
6
  super(ucmClient, logger, publishingAuthorId);
@@ -8,6 +9,7 @@ export class GraphUpdateEntitiesTool extends BaseToolController {
8
9
  get description() {
9
10
  return 'Update one or more entities in a Memory Graph. Each update specifies an entityId and the fields to change (label, summary, properties, data). Pass a single item in the array for single operations.';
10
11
  }
12
+ get schema() { return GraphUpdateEntitiesSchema; }
11
13
  get inputSchema() {
12
14
  return {
13
15
  type: 'object',
@@ -1,14 +1,14 @@
1
1
  import { BaseToolController } from '../base/BaseToolController.js';
2
2
  import { UcmLocalApiClient } from '../../clients/UcmLocalApiClient.js';
3
3
  import { ILogger } from '../../interfaces/ILogger.js';
4
- import { type GraphSearchParams } from '@/schemas/memory-graph-tool-schemas.js';
4
+ import { type GraphUpdateParams } from '../../../schemas/memory-graph-tool-schemas.js';
5
5
  import { ZodSchema } from 'zod';
6
- export declare class GraphSearchTool extends BaseToolController {
6
+ export declare class GraphUpdateTool extends BaseToolController {
7
7
  constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
8
8
  get name(): string;
9
9
  get description(): string;
10
10
  get schema(): ZodSchema;
11
11
  get inputSchema(): Record<string, unknown>;
12
- protected handleExecute(params: GraphSearchParams): Promise<string>;
12
+ protected handleExecute(params: GraphUpdateParams): Promise<string>;
13
13
  }
14
- //# sourceMappingURL=GraphSearchTool.d.ts.map
14
+ //# sourceMappingURL=GraphUpdateTool.d.ts.map
@@ -0,0 +1,59 @@
1
+ import { BaseToolController } from '../base/BaseToolController.js';
2
+ import { McpError, McpErrorCode } from '../../utils/McpErrorHandler.js';
3
+ import { GraphUpdateSchema } from '../../../schemas/memory-graph-tool-schemas.js';
4
+ export class GraphUpdateTool extends BaseToolController {
5
+ constructor(ucmClient, logger, publishingAuthorId) {
6
+ super(ucmClient, logger, publishingAuthorId);
7
+ }
8
+ get name() { return 'ucm_graph_update'; }
9
+ get description() {
10
+ return 'Update a Memory Graph\'s metadata — label, description, or usage instructions. Use this to update usage instructions with per-graph behavioural rules. Whole-document replacement for usageInstructions.';
11
+ }
12
+ get schema() { return GraphUpdateSchema; }
13
+ get inputSchema() {
14
+ return {
15
+ type: 'object',
16
+ properties: {
17
+ memoryGraphId: {
18
+ type: 'string',
19
+ description: 'The ID of the Memory Graph to update'
20
+ },
21
+ label: {
22
+ type: 'string',
23
+ description: 'New display name for the Memory Graph'
24
+ },
25
+ description: {
26
+ type: ['string', 'null'],
27
+ description: 'New description of the Memory Graph purpose'
28
+ },
29
+ usageInstructions: {
30
+ type: ['string', 'null'],
31
+ description: 'Per-graph behavioural rules and usage instructions. Whole-document replacement.'
32
+ }
33
+ },
34
+ required: ['memoryGraphId']
35
+ };
36
+ }
37
+ async handleExecute(params) {
38
+ const { memoryGraphId, label, description, usageInstructions } = params;
39
+ this.logger.info('GraphUpdateTool', `Updating memory graph: ${memoryGraphId}`);
40
+ try {
41
+ const result = await this.ucmClient.updateMemoryGraph(memoryGraphId, { label, description, usageInstructions });
42
+ return JSON.stringify(result);
43
+ }
44
+ catch (error) {
45
+ if (error.response?.status === 400) {
46
+ const detail = error.response?.data?.message || 'Invalid parameters for graph update';
47
+ throw new McpError(McpErrorCode.InvalidParams, detail);
48
+ }
49
+ if (error.response?.status === 403) {
50
+ throw new McpError(McpErrorCode.InvalidParams, 'Access denied: you do not have permission to update this Memory Graph.');
51
+ }
52
+ if (error.response?.status === 404) {
53
+ throw new McpError(McpErrorCode.InvalidParams, `Memory Graph not found: ${memoryGraphId}`);
54
+ }
55
+ throw new McpError(McpErrorCode.InternalError, `Failed to update memory graph: ${error.message}`);
56
+ }
57
+ }
58
+ }
59
+ //# sourceMappingURL=GraphUpdateTool.js.map
@@ -1,11 +1,14 @@
1
1
  import { BaseToolController } from '../base/BaseToolController.js';
2
2
  import { UcmLocalApiClient } from '../../clients/UcmLocalApiClient.js';
3
3
  import { ILogger } from '../../interfaces/ILogger.js';
4
+ import { type KnowledgeSetListParams } from '../../../schemas/memory-graph-tool-schemas.js';
5
+ import { ZodSchema } from 'zod';
4
6
  export declare class KnowledgeSetListTool extends BaseToolController {
5
7
  constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
6
8
  get name(): string;
7
9
  get description(): string;
8
- get inputSchema(): any;
9
- protected handleExecute(_params: any): Promise<any>;
10
+ get schema(): ZodSchema;
11
+ get inputSchema(): Record<string, unknown>;
12
+ protected handleExecute(_params: KnowledgeSetListParams): Promise<string>;
10
13
  }
11
14
  //# sourceMappingURL=KnowledgeSetListTool.d.ts.map
@@ -1,4 +1,5 @@
1
1
  import { BaseToolController } from '../base/BaseToolController.js';
2
+ import { KnowledgeSetListSchema } from '../../../schemas/memory-graph-tool-schemas.js';
2
3
  export class KnowledgeSetListTool extends BaseToolController {
3
4
  constructor(ucmClient, logger, publishingAuthorId) {
4
5
  super(ucmClient, logger, publishingAuthorId);
@@ -7,6 +8,7 @@ export class KnowledgeSetListTool extends BaseToolController {
7
8
  get description() {
8
9
  return 'List Knowledge Sets you have access to. Use `ucm_knowledge_set_open` with a Knowledge Set ID to explore its contents.';
9
10
  }
11
+ get schema() { return KnowledgeSetListSchema; }
10
12
  get inputSchema() {
11
13
  return {
12
14
  type: 'object',
@@ -1,11 +1,14 @@
1
1
  import { BaseToolController } from '../base/BaseToolController.js';
2
2
  import { UcmLocalApiClient } from '../../clients/UcmLocalApiClient.js';
3
3
  import { ILogger } from '../../interfaces/ILogger.js';
4
+ import { type KnowledgeSetOpenParams } from '../../../schemas/memory-graph-tool-schemas.js';
5
+ import { ZodSchema } from 'zod';
4
6
  export declare class KnowledgeSetOpenTool extends BaseToolController {
5
7
  constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
6
8
  get name(): string;
7
9
  get description(): string;
8
- get inputSchema(): any;
9
- protected handleExecute(_params: any): Promise<any>;
10
+ get schema(): ZodSchema;
11
+ get inputSchema(): Record<string, unknown>;
12
+ protected handleExecute(_params: KnowledgeSetOpenParams): Promise<string>;
10
13
  }
11
14
  //# sourceMappingURL=KnowledgeSetOpenTool.d.ts.map
@@ -1,4 +1,5 @@
1
1
  import { BaseToolController } from '../base/BaseToolController.js';
2
+ import { KnowledgeSetOpenSchema } from '../../../schemas/memory-graph-tool-schemas.js';
2
3
  export class KnowledgeSetOpenTool extends BaseToolController {
3
4
  constructor(ucmClient, logger, publishingAuthorId) {
4
5
  super(ucmClient, logger, publishingAuthorId);
@@ -7,6 +8,7 @@ export class KnowledgeSetOpenTool extends BaseToolController {
7
8
  get description() {
8
9
  return 'Open a Knowledge Set to see its contents — Memory Graphs, artifact repositories, and artifact namespaces — with guidance on which tools to use for each.';
9
10
  }
11
+ get schema() { return KnowledgeSetOpenSchema; }
10
12
  get inputSchema() {
11
13
  return {
12
14
  type: 'object',
@@ -111,7 +111,7 @@ export class SharePointReadFileTool extends BaseToolController {
111
111
  content: result.content,
112
112
  conversionNotes: result.conversionNotes,
113
113
  convertedAt: result.convertedAt,
114
- viewInBrowserUrl: result.viewInBrowserUrl
114
+ viewUrl: result.viewUrl
115
115
  };
116
116
  // Add nextOffset if there's more content
117
117
  if (result.hasMore && result.nextOffset !== undefined) {
@@ -17,6 +17,7 @@ export declare class SharePointSearchTool extends BaseToolController {
17
17
  limit?: number;
18
18
  offset?: number;
19
19
  fileType?: string;
20
+ filesOnly?: boolean;
20
21
  }): Promise<any>;
21
22
  }
22
23
  //# sourceMappingURL=SharePointSearchTool.d.ts.map
@@ -13,7 +13,7 @@ export class SharePointSearchTool extends BaseToolController {
13
13
  return 'ucm_sharepoint_search_documents';
14
14
  }
15
15
  get description() {
16
- return 'Search SharePoint documents with text query using Microsoft Search API. Returns document metadata with snippets. Supports pagination and file type filtering via KQL.';
16
+ return 'Search SharePoint content with a text query using Microsoft Search API. Returns metadata with snippets. Searches everything (documents and SharePoint pages — .aspx, modern or classic) by default; set filesOnly to limit to documents. Supports pagination and file type filtering via KQL.';
17
17
  }
18
18
  get inputSchema() {
19
19
  return {
@@ -45,6 +45,10 @@ export class SharePointSearchTool extends BaseToolController {
45
45
  type: 'string',
46
46
  description: 'Filter by file extension (e.g., "docx", "pdf", "xlsx") - uses Microsoft Search KQL filtering',
47
47
  maxLength: 10
48
+ },
49
+ filesOnly: {
50
+ type: 'boolean',
51
+ description: 'When true, search documents/files only. When false (default), also returns SharePoint pages (.aspx — modern or classic) alongside documents.'
48
52
  }
49
53
  },
50
54
  required: ['connectionId'],
@@ -84,6 +88,10 @@ export class SharePointSearchTool extends BaseToolController {
84
88
  if (params.fileType && !/^[a-zA-Z0-9]{1,10}$/.test(params.fileType)) {
85
89
  throw new McpError(McpErrorCode.InvalidParams, 'File type must be alphanumeric and no more than 10 characters');
86
90
  }
91
+ // Validate filesOnly if provided
92
+ if (params.filesOnly !== undefined && typeof params.filesOnly !== 'boolean') {
93
+ throw new McpError(McpErrorCode.InvalidParams, 'filesOnly must be a boolean');
94
+ }
87
95
  }
88
96
  async handleExecute(params) {
89
97
  this.logger.info('SharePointSearchTool', `Searching SharePoint with query: "${params.query}"`);
@@ -93,7 +101,8 @@ export class SharePointSearchTool extends BaseToolController {
93
101
  query: params.query,
94
102
  limit: params.limit,
95
103
  offset: params.offset,
96
- fileType: params.fileType
104
+ fileType: params.fileType,
105
+ filesOnly: params.filesOnly
97
106
  };
98
107
  // Make API call via UCM client
99
108
  const result = await this.ucmClient.sharePointSearch(params.connectionId, searchParams);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ucm-mcp-server",
3
- "version": "6.6.0",
3
+ "version": "6.7.1",
4
4
  "description": "Universal Context Manager MCP Server - AI Productivity Platform",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",