@likec4/language-server 1.47.0 → 1.48.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 (316) hide show
  1. package/LICENSE +1 -1
  2. package/browser/package.json +2 -2
  3. package/browser-worker/package.json +2 -2
  4. package/bundled/package.json +4 -0
  5. package/dist/LikeC4LanguageServices.d.mts +4 -0
  6. package/dist/LikeC4LanguageServices.mjs +3 -0
  7. package/dist/_chunks/ConfigurableLayouter.mjs +1956 -0
  8. package/dist/_chunks/LikeC4LanguageServices.d.mts +1978 -0
  9. package/dist/_chunks/LikeC4LanguageServices.mjs +725 -0
  10. package/dist/_chunks/ast.d.mts +1444 -0
  11. package/dist/_chunks/ast.mjs +2375 -0
  12. package/dist/_chunks/ast2.mjs +176 -0
  13. package/dist/_chunks/common-exports.mjs +0 -0
  14. package/dist/_chunks/filesystem.mjs +58 -0
  15. package/dist/_chunks/grammar.mjs +8 -0
  16. package/dist/_chunks/icons.mjs +5211 -0
  17. package/dist/_chunks/libs/@hono/node-server.mjs +436 -0
  18. package/dist/_chunks/libs/@msgpack/msgpack.mjs +805 -0
  19. package/dist/_chunks/libs/eventemitter3.mjs +243 -0
  20. package/dist/_chunks/libs/fast-equals.mjs +446 -0
  21. package/dist/_chunks/libs/hono.mjs +1829 -0
  22. package/dist/_chunks/libs/p-queue.mjs +449 -0
  23. package/dist/_chunks/libs/parse-ms.mjs +36 -0
  24. package/dist/_chunks/libs/picomatch.mjs +1673 -0
  25. package/dist/_chunks/libs/pretty-ms.mjs +80 -0
  26. package/dist/_chunks/libs/remeda.mjs +482 -0
  27. package/dist/_chunks/libs/strip-indent.mjs +15 -0
  28. package/dist/_chunks/libs/ufo.mjs +166 -0
  29. package/dist/_chunks/likec4lib.mjs +9 -0
  30. package/dist/_chunks/mcp.mjs +33 -0
  31. package/dist/_chunks/module.mjs +28 -0
  32. package/dist/_chunks/module2.mjs +6576 -0
  33. package/dist/_chunks/protocol.d.mts +311 -0
  34. package/dist/_chunks/protocol.mjs +78 -0
  35. package/dist/_chunks/rolldown-runtime.mjs +42 -0
  36. package/dist/ast.d.mts +4 -0
  37. package/dist/ast.mjs +4 -0
  38. package/dist/browser-worker.d.mts +1 -0
  39. package/dist/browser-worker.mjs +6 -0
  40. package/dist/browser.d.mts +11 -0
  41. package/dist/browser.mjs +27 -0
  42. package/dist/bundled.d.mts +28 -0
  43. package/dist/bundled.mjs +51 -4853
  44. package/dist/common-exports.d.mts +4 -0
  45. package/dist/common-exports.mjs +5 -0
  46. package/dist/filesystem/index.d.mts +4 -0
  47. package/dist/filesystem/index.mjs +3 -0
  48. package/dist/generated/ast.d.mts +2 -0
  49. package/dist/generated/ast.mjs +3 -0
  50. package/dist/generated/grammar.d.mts +6 -0
  51. package/dist/generated/grammar.mjs +3 -0
  52. package/dist/generated/module.d.mts +14 -0
  53. package/dist/generated/module.mjs +3 -0
  54. package/dist/generated-lib/icons.d.mts +4 -0
  55. package/dist/generated-lib/icons.mjs +3 -0
  56. package/dist/index.d.mts +4 -0
  57. package/dist/index.mjs +48 -0
  58. package/dist/likec4lib.d.mts +9 -0
  59. package/dist/likec4lib.mjs +4 -0
  60. package/dist/mcp/index.d.mts +4 -0
  61. package/dist/mcp/index.mjs +3 -0
  62. package/dist/module.d.mts +4 -0
  63. package/dist/module.mjs +3 -0
  64. package/dist/protocol.d.mts +2 -0
  65. package/dist/protocol.mjs +3 -0
  66. package/likec4lib/package.json +2 -2
  67. package/package.json +106 -63
  68. package/protocol/package.json +2 -2
  69. package/dist/LikeC4LanguageServices.d.ts +0 -115
  70. package/dist/LikeC4LanguageServices.js +0 -164
  71. package/dist/Rpc.d.ts +0 -9
  72. package/dist/Rpc.js +0 -276
  73. package/dist/ast.d.ts +0 -226
  74. package/dist/ast.js +0 -264
  75. package/dist/browser-worker.d.ts +0 -1
  76. package/dist/browser-worker.js +0 -4
  77. package/dist/browser.d.ts +0 -10
  78. package/dist/browser.js +0 -34
  79. package/dist/bundled.d.ts +0 -8
  80. package/dist/bundled.js +0 -44
  81. package/dist/documentation/documentation-provider.d.ts +0 -8
  82. package/dist/documentation/documentation-provider.js +0 -51
  83. package/dist/documentation/index.d.ts +0 -1
  84. package/dist/documentation/index.js +0 -1
  85. package/dist/empty.d.ts +0 -2
  86. package/dist/empty.js +0 -2
  87. package/dist/filesystem/ChokidarWatcher.d.ts +0 -19
  88. package/dist/filesystem/ChokidarWatcher.js +0 -133
  89. package/dist/filesystem/FileSystemWatcher.d.ts +0 -19
  90. package/dist/filesystem/FileSystemWatcher.js +0 -14
  91. package/dist/filesystem/LikeC4FileSystem.d.ts +0 -3
  92. package/dist/filesystem/LikeC4FileSystem.js +0 -140
  93. package/dist/filesystem/index.d.ts +0 -55
  94. package/dist/filesystem/index.js +0 -29
  95. package/dist/formatting/LikeC4Formatter.d.ts +0 -59
  96. package/dist/formatting/LikeC4Formatter.js +0 -637
  97. package/dist/formatting/utils.d.ts +0 -6
  98. package/dist/formatting/utils.js +0 -18
  99. package/dist/generated/ast.d.ts +0 -1411
  100. package/dist/generated/ast.js +0 -2207
  101. package/dist/generated/grammar.d.ts +0 -6
  102. package/dist/generated/grammar.js +0 -7
  103. package/dist/generated/module.d.ts +0 -14
  104. package/dist/generated/module.js +0 -27
  105. package/dist/generated-lib/icons.d.ts +0 -1
  106. package/dist/generated-lib/icons.js +0 -18
  107. package/dist/index.d.ts +0 -37
  108. package/dist/index.js +0 -54
  109. package/dist/likec4lib.d.ts +0 -6
  110. package/dist/likec4lib.js +0 -7
  111. package/dist/logger.d.ts +0 -17
  112. package/dist/logger.js +0 -81
  113. package/dist/lsp/CodeActionProvider.d.ts +0 -14
  114. package/dist/lsp/CodeActionProvider.js +0 -33
  115. package/dist/lsp/CodeLensProvider.d.ts +0 -9
  116. package/dist/lsp/CodeLensProvider.js +0 -44
  117. package/dist/lsp/CompletionProvider.d.ts +0 -13
  118. package/dist/lsp/CompletionProvider.js +0 -238
  119. package/dist/lsp/DocumentHighlightProvider.d.ts +0 -9
  120. package/dist/lsp/DocumentHighlightProvider.js +0 -10
  121. package/dist/lsp/DocumentLinkProvider.d.ts +0 -11
  122. package/dist/lsp/DocumentLinkProvider.js +0 -58
  123. package/dist/lsp/DocumentSymbolProvider.d.ts +0 -33
  124. package/dist/lsp/DocumentSymbolProvider.js +0 -317
  125. package/dist/lsp/HoverProvider.d.ts +0 -10
  126. package/dist/lsp/HoverProvider.js +0 -106
  127. package/dist/lsp/RenameProvider.d.ts +0 -5
  128. package/dist/lsp/RenameProvider.js +0 -6
  129. package/dist/lsp/SemanticTokenProvider.d.ts +0 -19
  130. package/dist/lsp/SemanticTokenProvider.js +0 -305
  131. package/dist/lsp/index.d.ts +0 -8
  132. package/dist/lsp/index.js +0 -9
  133. package/dist/mcp/MCPServerFactory.d.ts +0 -8
  134. package/dist/mcp/MCPServerFactory.js +0 -73
  135. package/dist/mcp/NoopLikeC4MCPServer.d.ts +0 -9
  136. package/dist/mcp/NoopLikeC4MCPServer.js +0 -17
  137. package/dist/mcp/interfaces.d.ts +0 -13
  138. package/dist/mcp/interfaces.js +0 -4
  139. package/dist/mcp/server/StdioLikeC4MCPServer.d.ts +0 -16
  140. package/dist/mcp/server/StdioLikeC4MCPServer.js +0 -51
  141. package/dist/mcp/server/StreamableLikeC4MCPServer.d.ts +0 -16
  142. package/dist/mcp/server/StreamableLikeC4MCPServer.js +0 -121
  143. package/dist/mcp/server/WithMCPServer.d.ts +0 -4
  144. package/dist/mcp/server/WithMCPServer.js +0 -54
  145. package/dist/mcp/tools/_common.d.ts +0 -88
  146. package/dist/mcp/tools/_common.js +0 -49
  147. package/dist/mcp/tools/find-relationships.d.ts +0 -202
  148. package/dist/mcp/tools/find-relationships.js +0 -150
  149. package/dist/mcp/tools/list-projects.d.ts +0 -194
  150. package/dist/mcp/tools/list-projects.js +0 -62
  151. package/dist/mcp/tools/open-view.d.ts +0 -200
  152. package/dist/mcp/tools/open-view.js +0 -52
  153. package/dist/mcp/tools/read-deployment.d.ts +0 -200
  154. package/dist/mcp/tools/read-deployment.js +0 -150
  155. package/dist/mcp/tools/read-element.d.ts +0 -200
  156. package/dist/mcp/tools/read-element.js +0 -218
  157. package/dist/mcp/tools/read-project-summary.d.ts +0 -198
  158. package/dist/mcp/tools/read-project-summary.js +0 -176
  159. package/dist/mcp/tools/read-view.d.ts +0 -200
  160. package/dist/mcp/tools/read-view.js +0 -203
  161. package/dist/mcp/tools/search-element.d.ts +0 -198
  162. package/dist/mcp/tools/search-element.js +0 -177
  163. package/dist/mcp/utils.d.ts +0 -18
  164. package/dist/mcp/utils.js +0 -48
  165. package/dist/model/builder/MergedExtends.d.ts +0 -13
  166. package/dist/model/builder/MergedExtends.js +0 -74
  167. package/dist/model/builder/MergedSpecification.d.ts +0 -32
  168. package/dist/model/builder/MergedSpecification.js +0 -175
  169. package/dist/model/builder/buildModel.d.ts +0 -16
  170. package/dist/model/builder/buildModel.js +0 -245
  171. package/dist/model/deployments-index.d.ts +0 -10
  172. package/dist/model/deployments-index.js +0 -102
  173. package/dist/model/fqn-index.d.ts +0 -61
  174. package/dist/model/fqn-index.js +0 -253
  175. package/dist/model/index.d.ts +0 -6
  176. package/dist/model/index.js +0 -6
  177. package/dist/model/model-builder.d.ts +0 -54
  178. package/dist/model/model-builder.js +0 -233
  179. package/dist/model/model-locator.d.ts +0 -39
  180. package/dist/model/model-locator.js +0 -240
  181. package/dist/model/model-parser-where.d.ts +0 -4
  182. package/dist/model/model-parser-where.js +0 -81
  183. package/dist/model/model-parser.d.ts +0 -645
  184. package/dist/model/model-parser.js +0 -133
  185. package/dist/model/parser/Base.d.ts +0 -69
  186. package/dist/model/parser/Base.js +0 -382
  187. package/dist/model/parser/DeploymentModelParser.d.ts +0 -71
  188. package/dist/model/parser/DeploymentModelParser.js +0 -176
  189. package/dist/model/parser/DeploymentViewParser.d.ts +0 -75
  190. package/dist/model/parser/DeploymentViewParser.js +0 -86
  191. package/dist/model/parser/FqnRefParser.d.ts +0 -66
  192. package/dist/model/parser/FqnRefParser.js +0 -382
  193. package/dist/model/parser/GlobalsParser.d.ts +0 -109
  194. package/dist/model/parser/GlobalsParser.js +0 -84
  195. package/dist/model/parser/ImportsParser.d.ts +0 -46
  196. package/dist/model/parser/ImportsParser.js +0 -24
  197. package/dist/model/parser/ModelParser.d.ts +0 -71
  198. package/dist/model/parser/ModelParser.js +0 -209
  199. package/dist/model/parser/PredicatesParser.d.ts +0 -75
  200. package/dist/model/parser/PredicatesParser.js +0 -45
  201. package/dist/model/parser/SpecificationParser.d.ts +0 -53
  202. package/dist/model/parser/SpecificationParser.js +0 -113
  203. package/dist/model/parser/ValueConverter.d.ts +0 -4
  204. package/dist/model/parser/ValueConverter.js +0 -12
  205. package/dist/model/parser/ViewsParser.d.ts +0 -112
  206. package/dist/model/parser/ViewsParser.js +0 -492
  207. package/dist/model-change/ModelChanges.d.ts +0 -18
  208. package/dist/model-change/ModelChanges.js +0 -129
  209. package/dist/model-change/changeElementStyle.d.ts +0 -16
  210. package/dist/model-change/changeElementStyle.js +0 -134
  211. package/dist/model-change/changeViewLayout.d.ts +0 -12
  212. package/dist/model-change/changeViewLayout.js +0 -28
  213. package/dist/model-change/removeManualLayoutV1.d.ts +0 -7
  214. package/dist/model-change/removeManualLayoutV1.js +0 -27
  215. package/dist/module.d.ts +0 -92
  216. package/dist/module.js +0 -143
  217. package/dist/protocol.d.ts +0 -289
  218. package/dist/protocol.js +0 -123
  219. package/dist/references/index.d.ts +0 -3
  220. package/dist/references/index.js +0 -3
  221. package/dist/references/name-provider.d.ts +0 -9
  222. package/dist/references/name-provider.js +0 -37
  223. package/dist/references/scope-computation.d.ts +0 -20
  224. package/dist/references/scope-computation.js +0 -288
  225. package/dist/references/scope-provider.d.ts +0 -40
  226. package/dist/references/scope-provider.js +0 -239
  227. package/dist/shared/NodeKindProvider.d.ts +0 -15
  228. package/dist/shared/NodeKindProvider.js +0 -57
  229. package/dist/shared/WorkspaceSymbolProvider.d.ts +0 -3
  230. package/dist/shared/WorkspaceSymbolProvider.js +0 -3
  231. package/dist/shared/index.d.ts +0 -2
  232. package/dist/shared/index.js +0 -2
  233. package/dist/test/index.d.ts +0 -1
  234. package/dist/test/index.js +0 -1
  235. package/dist/test/testServices.d.ts +0 -64
  236. package/dist/test/testServices.js +0 -210
  237. package/dist/utils/disposable.d.ts +0 -8
  238. package/dist/utils/disposable.js +0 -26
  239. package/dist/utils/elementRef.d.ts +0 -11
  240. package/dist/utils/elementRef.js +0 -33
  241. package/dist/utils/fqnRef.d.ts +0 -11
  242. package/dist/utils/fqnRef.js +0 -63
  243. package/dist/utils/index.d.ts +0 -11
  244. package/dist/utils/index.js +0 -35
  245. package/dist/utils/printDocs.d.ts +0 -2
  246. package/dist/utils/printDocs.js +0 -1
  247. package/dist/utils/projectId.d.ts +0 -4
  248. package/dist/utils/projectId.js +0 -16
  249. package/dist/utils/stringHash.d.ts +0 -1
  250. package/dist/utils/stringHash.js +0 -5
  251. package/dist/validation/DocumentValidator.d.ts +0 -11
  252. package/dist/validation/DocumentValidator.js +0 -17
  253. package/dist/validation/_shared.d.ts +0 -3
  254. package/dist/validation/_shared.js +0 -26
  255. package/dist/validation/deployment-checks.d.ts +0 -7
  256. package/dist/validation/deployment-checks.js +0 -140
  257. package/dist/validation/dynamic-view.d.ts +0 -6
  258. package/dist/validation/dynamic-view.js +0 -67
  259. package/dist/validation/element-ref.d.ts +0 -4
  260. package/dist/validation/element-ref.js +0 -12
  261. package/dist/validation/element.d.ts +0 -4
  262. package/dist/validation/element.js +0 -49
  263. package/dist/validation/imports.d.ts +0 -4
  264. package/dist/validation/imports.js +0 -46
  265. package/dist/validation/index.d.ts +0 -15
  266. package/dist/validation/index.js +0 -167
  267. package/dist/validation/property-checks.d.ts +0 -7
  268. package/dist/validation/property-checks.js +0 -108
  269. package/dist/validation/relation.d.ts +0 -6
  270. package/dist/validation/relation.js +0 -141
  271. package/dist/validation/specification.d.ts +0 -12
  272. package/dist/validation/specification.js +0 -190
  273. package/dist/validation/view-checks.d.ts +0 -4
  274. package/dist/validation/view-checks.js +0 -46
  275. package/dist/validation/view-predicates/fqn-expr-with.d.ts +0 -4
  276. package/dist/validation/view-predicates/fqn-expr-with.js +0 -43
  277. package/dist/validation/view-predicates/fqn-ref-expr.d.ts +0 -4
  278. package/dist/validation/view-predicates/fqn-ref-expr.js +0 -51
  279. package/dist/validation/view-predicates/incoming.d.ts +0 -4
  280. package/dist/validation/view-predicates/incoming.js +0 -16
  281. package/dist/validation/view-predicates/index.d.ts +0 -6
  282. package/dist/validation/view-predicates/index.js +0 -6
  283. package/dist/validation/view-predicates/outgoing.d.ts +0 -4
  284. package/dist/validation/view-predicates/outgoing.js +0 -20
  285. package/dist/validation/view-predicates/relation-expr.d.ts +0 -4
  286. package/dist/validation/view-predicates/relation-expr.js +0 -46
  287. package/dist/validation/view-predicates/relation-with.d.ts +0 -4
  288. package/dist/validation/view-predicates/relation-with.js +0 -16
  289. package/dist/validation/view.d.ts +0 -4
  290. package/dist/validation/view.js +0 -42
  291. package/dist/view-utils/assignNavigateTo.d.ts +0 -2
  292. package/dist/view-utils/assignNavigateTo.js +0 -27
  293. package/dist/view-utils/index.d.ts +0 -2
  294. package/dist/view-utils/index.js +0 -2
  295. package/dist/view-utils/manual-layout.d.ts +0 -13
  296. package/dist/view-utils/manual-layout.js +0 -149
  297. package/dist/views/ConfigurableLayouter.d.ts +0 -7
  298. package/dist/views/ConfigurableLayouter.js +0 -51
  299. package/dist/views/LikeC4ManualLayouts.d.ts +0 -42
  300. package/dist/views/LikeC4ManualLayouts.js +0 -209
  301. package/dist/views/LikeC4Views.d.ts +0 -89
  302. package/dist/views/LikeC4Views.js +0 -216
  303. package/dist/views/index.d.ts +0 -4
  304. package/dist/views/index.js +0 -11
  305. package/dist/workspace/AstNodeDescriptionProvider.d.ts +0 -7
  306. package/dist/workspace/AstNodeDescriptionProvider.js +0 -18
  307. package/dist/workspace/IndexManager.d.ts +0 -10
  308. package/dist/workspace/IndexManager.js +0 -26
  309. package/dist/workspace/LangiumDocuments.d.ts +0 -29
  310. package/dist/workspace/LangiumDocuments.js +0 -104
  311. package/dist/workspace/ProjectsManager.d.ts +0 -134
  312. package/dist/workspace/ProjectsManager.js +0 -610
  313. package/dist/workspace/WorkspaceManager.d.ts +0 -31
  314. package/dist/workspace/WorkspaceManager.js +0 -132
  315. package/dist/workspace/index.d.ts +0 -5
  316. package/dist/workspace/index.js +0 -5
@@ -1,198 +0,0 @@
1
- import * as z from 'zod/v3';
2
- export declare const readProjectSummary: (languageServices: import("../..").LikeC4LanguageServices) => [string, {
3
- inputSchema?: {
4
- project: z.ZodDefault<z.ZodOptional<z.ZodEffects<z.ZodString, import("@likec4/core").ProjectId, string>>>;
5
- };
6
- }, (args: import("@modelcontextprotocol/sdk/server/zod-compat.js").ShapeOutput<{
7
- project: z.ZodDefault<z.ZodOptional<z.ZodEffects<z.ZodString, import("@likec4/core").ProjectId, string>>>;
8
- }>, extra: import("@modelcontextprotocol/sdk/shared/protocol.js").RequestHandlerExtra<import("@modelcontextprotocol/sdk/types.js").ServerRequest, import("@modelcontextprotocol/sdk/types.js").ServerNotification>) => {
9
- [x: string]: unknown;
10
- content: ({
11
- type: "text";
12
- text: string;
13
- annotations?: {
14
- audience?: ("user" | "assistant")[] | undefined;
15
- priority?: number | undefined;
16
- lastModified?: string | undefined;
17
- } | undefined;
18
- _meta?: {
19
- [x: string]: unknown;
20
- } | undefined;
21
- } | {
22
- type: "image";
23
- data: string;
24
- mimeType: string;
25
- annotations?: {
26
- audience?: ("user" | "assistant")[] | undefined;
27
- priority?: number | undefined;
28
- lastModified?: string | undefined;
29
- } | undefined;
30
- _meta?: {
31
- [x: string]: unknown;
32
- } | undefined;
33
- } | {
34
- type: "audio";
35
- data: string;
36
- mimeType: string;
37
- annotations?: {
38
- audience?: ("user" | "assistant")[] | undefined;
39
- priority?: number | undefined;
40
- lastModified?: string | undefined;
41
- } | undefined;
42
- _meta?: {
43
- [x: string]: unknown;
44
- } | undefined;
45
- } | {
46
- uri: string;
47
- name: string;
48
- type: "resource_link";
49
- description?: string | undefined;
50
- mimeType?: string | undefined;
51
- annotations?: {
52
- audience?: ("user" | "assistant")[] | undefined;
53
- priority?: number | undefined;
54
- lastModified?: string | undefined;
55
- } | undefined;
56
- _meta?: {
57
- [x: string]: unknown;
58
- } | undefined;
59
- icons?: {
60
- src: string;
61
- mimeType?: string | undefined;
62
- sizes?: string[] | undefined;
63
- theme?: "light" | "dark" | undefined;
64
- }[] | undefined;
65
- title?: string | undefined;
66
- } | {
67
- type: "resource";
68
- resource: {
69
- uri: string;
70
- text: string;
71
- mimeType?: string | undefined;
72
- _meta?: {
73
- [x: string]: unknown;
74
- } | undefined;
75
- } | {
76
- uri: string;
77
- blob: string;
78
- mimeType?: string | undefined;
79
- _meta?: {
80
- [x: string]: unknown;
81
- } | undefined;
82
- };
83
- annotations?: {
84
- audience?: ("user" | "assistant")[] | undefined;
85
- priority?: number | undefined;
86
- lastModified?: string | undefined;
87
- } | undefined;
88
- _meta?: {
89
- [x: string]: unknown;
90
- } | undefined;
91
- })[];
92
- _meta?: {
93
- [x: string]: unknown;
94
- progressToken?: string | number | undefined;
95
- "io.modelcontextprotocol/related-task"?: {
96
- taskId: string;
97
- } | undefined;
98
- } | undefined;
99
- structuredContent?: {
100
- [x: string]: unknown;
101
- } | undefined;
102
- isError?: boolean | undefined;
103
- } | Promise<{
104
- [x: string]: unknown;
105
- content: ({
106
- type: "text";
107
- text: string;
108
- annotations?: {
109
- audience?: ("user" | "assistant")[] | undefined;
110
- priority?: number | undefined;
111
- lastModified?: string | undefined;
112
- } | undefined;
113
- _meta?: {
114
- [x: string]: unknown;
115
- } | undefined;
116
- } | {
117
- type: "image";
118
- data: string;
119
- mimeType: string;
120
- annotations?: {
121
- audience?: ("user" | "assistant")[] | undefined;
122
- priority?: number | undefined;
123
- lastModified?: string | undefined;
124
- } | undefined;
125
- _meta?: {
126
- [x: string]: unknown;
127
- } | undefined;
128
- } | {
129
- type: "audio";
130
- data: string;
131
- mimeType: string;
132
- annotations?: {
133
- audience?: ("user" | "assistant")[] | undefined;
134
- priority?: number | undefined;
135
- lastModified?: string | undefined;
136
- } | undefined;
137
- _meta?: {
138
- [x: string]: unknown;
139
- } | undefined;
140
- } | {
141
- uri: string;
142
- name: string;
143
- type: "resource_link";
144
- description?: string | undefined;
145
- mimeType?: string | undefined;
146
- annotations?: {
147
- audience?: ("user" | "assistant")[] | undefined;
148
- priority?: number | undefined;
149
- lastModified?: string | undefined;
150
- } | undefined;
151
- _meta?: {
152
- [x: string]: unknown;
153
- } | undefined;
154
- icons?: {
155
- src: string;
156
- mimeType?: string | undefined;
157
- sizes?: string[] | undefined;
158
- theme?: "light" | "dark" | undefined;
159
- }[] | undefined;
160
- title?: string | undefined;
161
- } | {
162
- type: "resource";
163
- resource: {
164
- uri: string;
165
- text: string;
166
- mimeType?: string | undefined;
167
- _meta?: {
168
- [x: string]: unknown;
169
- } | undefined;
170
- } | {
171
- uri: string;
172
- blob: string;
173
- mimeType?: string | undefined;
174
- _meta?: {
175
- [x: string]: unknown;
176
- } | undefined;
177
- };
178
- annotations?: {
179
- audience?: ("user" | "assistant")[] | undefined;
180
- priority?: number | undefined;
181
- lastModified?: string | undefined;
182
- } | undefined;
183
- _meta?: {
184
- [x: string]: unknown;
185
- } | undefined;
186
- })[];
187
- _meta?: {
188
- [x: string]: unknown;
189
- progressToken?: string | number | undefined;
190
- "io.modelcontextprotocol/related-task"?: {
191
- taskId: string;
192
- } | undefined;
193
- } | undefined;
194
- structuredContent?: {
195
- [x: string]: unknown;
196
- } | undefined;
197
- isError?: boolean | undefined;
198
- }>];
@@ -1,176 +0,0 @@
1
- import { keys } from 'remeda';
2
- import * as z from 'zod/v3';
3
- import { likec4Tool } from '../utils';
4
- import { projectIdSchema } from './_common';
5
- export const readProjectSummary = likec4Tool({
6
- name: 'read-project-summary',
7
- annotations: {
8
- readOnlyHint: true,
9
- idempotentHint: true,
10
- title: 'Read project summary',
11
- },
12
- description: `
13
- Request:
14
- - project: string (optional) — project id. Defaults to "default" if omitted.
15
-
16
- Response (JSON object):
17
- - title: string — human-readable project title
18
- - folder: string — absolute path to the project root
19
- - sources: string[] — absolute file paths of model documents
20
- - specification: object
21
- - elementKinds: string[] — all element kinds
22
- - relationshipKinds: string[] — all relationship kinds
23
- - deploymentKinds: string[] — all deployment kinds
24
- - tags: string[] — all tags
25
- - metadataKeys: string[] — used metadata keys
26
- - elements: Element[] — list of elements
27
- - deployments: Deployment[] — list of deployment entities
28
- - views: View[] — list of views defined in the model
29
-
30
- Element (object) fields:
31
- - id: string — element id (FQN)
32
- - kind: string — element kind
33
- - title: string — element title
34
- - tags: string[] — element tags
35
-
36
- Deployment (object) fields:
37
- - type = "deployment-node": { id: string, kind: string, title: string, tags: string[] }
38
- - type = "deployed-instance": { id: string, title: string, tags: string[], referencedElementId: string }
39
-
40
- View (object) fields:
41
- - id: string — view identifier
42
- - title: string — view title
43
- - type: "element" | "deployment" | "dynamic"
44
-
45
- Notes:
46
- - Read-only, idempotent, no side effects.
47
- - Safe to call repeatedly.
48
-
49
- Example response:
50
- {
51
- "title": "Cloud Boutique",
52
- "folder": "/abs/path/to/workspace/examples/cloud-system",
53
- "sources": [
54
- "/abs/path/to/workspace/examples/cloud-system/model.c4"
55
- ],
56
- "specification": {
57
- "elementKinds": ["system", "container", "component"],
58
- "relationshipKinds": ["uses", "depends-on"],
59
- "deploymentKinds": ["node", "cluster"],
60
- "tags": ["public", "internal"],
61
- "metadataKeys": ["owner", "tier"]
62
- },
63
- "elements": [
64
- {
65
- "id": "shop.frontend",
66
- "kind": "component",
67
- "title": "Frontend",
68
- "tags": ["public"]
69
- }
70
- ],
71
- "deployments": [
72
- {
73
- "type": "deployment-node",
74
- "id": "k8s.shop.frontend",
75
- "kind": "cluster",
76
- "title": "Frontend",
77
- "tags": []
78
- }
79
- ],
80
- "views": [
81
- {
82
- "name": "system-overview",
83
- "title": "System Overview",
84
- "type": "element"
85
- }
86
- ]
87
- }
88
- `,
89
- inputSchema: {
90
- project: projectIdSchema,
91
- },
92
- outputSchema: {
93
- title: z.string(),
94
- folder: z.string(),
95
- sources: z.array(z.string()),
96
- specification: z.object({
97
- elementKinds: z.array(z.string()),
98
- relationshipKinds: z.array(z.string()),
99
- deploymentKinds: z.array(z.string()),
100
- tags: z.array(z.string()),
101
- metadataKeys: z.array(z.string()),
102
- }),
103
- elements: z.array(z.object({
104
- id: z.string(),
105
- kind: z.string(),
106
- title: z.string(),
107
- tags: z.array(z.string()),
108
- })).describe('List of elements in the project'),
109
- deployments: z.array(z.discriminatedUnion('type', [
110
- z.object({
111
- type: z.literal('deployment-node'),
112
- id: z.string().describe('Node ID'),
113
- kind: z.string().describe('Deployment node kind'),
114
- title: z.string().describe('Node title'),
115
- tags: z.array(z.string()),
116
- }),
117
- z.object({
118
- type: z.literal('deployed-instance'),
119
- id: z.string().describe('Node ID'),
120
- title: z.string().describe('Node title'),
121
- tags: z.array(z.string()),
122
- referencedElementId: z.string().describe('Element ID (FQN)'),
123
- }),
124
- ])).describe('List of deployment nodes and deployed instances in the project'),
125
- views: z.array(z.object({
126
- id: z.string(),
127
- title: z.string(),
128
- type: z.enum(['element', 'deployment', 'dynamic']),
129
- })),
130
- },
131
- }, async (languageServices, args) => {
132
- const projectId = languageServices.projectsManager.ensureProjectId(args.project);
133
- const project = languageServices.project(projectId);
134
- const model = await languageServices.computedModel(projectId);
135
- return {
136
- title: project.title,
137
- folder: project.folder.fsPath,
138
- specification: {
139
- elementKinds: keys(model.specification.elements),
140
- relationshipKinds: keys(model.specification.relationships),
141
- deploymentKinds: keys(model.specification.deployments),
142
- tags: [...model.tags],
143
- metadataKeys: model.specification.metadataKeys ?? [],
144
- },
145
- elements: [...model.elements()].filter(e => !e.imported).map(e => ({
146
- id: e.id,
147
- kind: e.kind,
148
- title: e.title,
149
- tags: [...e.tags],
150
- })),
151
- deployments: [...model.deployment.elements()].map(d => {
152
- if (d.isInstance()) {
153
- return ({
154
- type: 'deployed-instance',
155
- id: d.id,
156
- title: d.title,
157
- tags: [...d.tags],
158
- referencedElementId: d.element.id,
159
- });
160
- }
161
- return ({
162
- type: 'deployment-node',
163
- id: d.id,
164
- kind: d.kind,
165
- title: d.title,
166
- tags: [...d.tags],
167
- });
168
- }),
169
- views: [...model.views()].map(v => ({
170
- id: v.id,
171
- title: v.titleOrId,
172
- type: v.$view._type,
173
- })),
174
- sources: project.documents?.map(d => d.fsPath) ?? [],
175
- };
176
- });
@@ -1,200 +0,0 @@
1
- import * as z from 'zod/v3';
2
- export declare const readView: (languageServices: import("../..").LikeC4LanguageServices) => [string, {
3
- inputSchema?: {
4
- viewId: z.ZodString;
5
- project: z.ZodDefault<z.ZodOptional<z.ZodEffects<z.ZodString, import("@likec4/core").ProjectId, string>>>;
6
- };
7
- }, (args: import("@modelcontextprotocol/sdk/server/zod-compat.js").ShapeOutput<{
8
- viewId: z.ZodString;
9
- project: z.ZodDefault<z.ZodOptional<z.ZodEffects<z.ZodString, import("@likec4/core").ProjectId, string>>>;
10
- }>, extra: import("@modelcontextprotocol/sdk/shared/protocol.js").RequestHandlerExtra<import("@modelcontextprotocol/sdk/types.js").ServerRequest, import("@modelcontextprotocol/sdk/types.js").ServerNotification>) => {
11
- [x: string]: unknown;
12
- content: ({
13
- type: "text";
14
- text: string;
15
- annotations?: {
16
- audience?: ("user" | "assistant")[] | undefined;
17
- priority?: number | undefined;
18
- lastModified?: string | undefined;
19
- } | undefined;
20
- _meta?: {
21
- [x: string]: unknown;
22
- } | undefined;
23
- } | {
24
- type: "image";
25
- data: string;
26
- mimeType: string;
27
- annotations?: {
28
- audience?: ("user" | "assistant")[] | undefined;
29
- priority?: number | undefined;
30
- lastModified?: string | undefined;
31
- } | undefined;
32
- _meta?: {
33
- [x: string]: unknown;
34
- } | undefined;
35
- } | {
36
- type: "audio";
37
- data: string;
38
- mimeType: string;
39
- annotations?: {
40
- audience?: ("user" | "assistant")[] | undefined;
41
- priority?: number | undefined;
42
- lastModified?: string | undefined;
43
- } | undefined;
44
- _meta?: {
45
- [x: string]: unknown;
46
- } | undefined;
47
- } | {
48
- uri: string;
49
- name: string;
50
- type: "resource_link";
51
- description?: string | undefined;
52
- mimeType?: string | undefined;
53
- annotations?: {
54
- audience?: ("user" | "assistant")[] | undefined;
55
- priority?: number | undefined;
56
- lastModified?: string | undefined;
57
- } | undefined;
58
- _meta?: {
59
- [x: string]: unknown;
60
- } | undefined;
61
- icons?: {
62
- src: string;
63
- mimeType?: string | undefined;
64
- sizes?: string[] | undefined;
65
- theme?: "light" | "dark" | undefined;
66
- }[] | undefined;
67
- title?: string | undefined;
68
- } | {
69
- type: "resource";
70
- resource: {
71
- uri: string;
72
- text: string;
73
- mimeType?: string | undefined;
74
- _meta?: {
75
- [x: string]: unknown;
76
- } | undefined;
77
- } | {
78
- uri: string;
79
- blob: string;
80
- mimeType?: string | undefined;
81
- _meta?: {
82
- [x: string]: unknown;
83
- } | undefined;
84
- };
85
- annotations?: {
86
- audience?: ("user" | "assistant")[] | undefined;
87
- priority?: number | undefined;
88
- lastModified?: string | undefined;
89
- } | undefined;
90
- _meta?: {
91
- [x: string]: unknown;
92
- } | undefined;
93
- })[];
94
- _meta?: {
95
- [x: string]: unknown;
96
- progressToken?: string | number | undefined;
97
- "io.modelcontextprotocol/related-task"?: {
98
- taskId: string;
99
- } | undefined;
100
- } | undefined;
101
- structuredContent?: {
102
- [x: string]: unknown;
103
- } | undefined;
104
- isError?: boolean | undefined;
105
- } | Promise<{
106
- [x: string]: unknown;
107
- content: ({
108
- type: "text";
109
- text: string;
110
- annotations?: {
111
- audience?: ("user" | "assistant")[] | undefined;
112
- priority?: number | undefined;
113
- lastModified?: string | undefined;
114
- } | undefined;
115
- _meta?: {
116
- [x: string]: unknown;
117
- } | undefined;
118
- } | {
119
- type: "image";
120
- data: string;
121
- mimeType: string;
122
- annotations?: {
123
- audience?: ("user" | "assistant")[] | undefined;
124
- priority?: number | undefined;
125
- lastModified?: string | undefined;
126
- } | undefined;
127
- _meta?: {
128
- [x: string]: unknown;
129
- } | undefined;
130
- } | {
131
- type: "audio";
132
- data: string;
133
- mimeType: string;
134
- annotations?: {
135
- audience?: ("user" | "assistant")[] | undefined;
136
- priority?: number | undefined;
137
- lastModified?: string | undefined;
138
- } | undefined;
139
- _meta?: {
140
- [x: string]: unknown;
141
- } | undefined;
142
- } | {
143
- uri: string;
144
- name: string;
145
- type: "resource_link";
146
- description?: string | undefined;
147
- mimeType?: string | undefined;
148
- annotations?: {
149
- audience?: ("user" | "assistant")[] | undefined;
150
- priority?: number | undefined;
151
- lastModified?: string | undefined;
152
- } | undefined;
153
- _meta?: {
154
- [x: string]: unknown;
155
- } | undefined;
156
- icons?: {
157
- src: string;
158
- mimeType?: string | undefined;
159
- sizes?: string[] | undefined;
160
- theme?: "light" | "dark" | undefined;
161
- }[] | undefined;
162
- title?: string | undefined;
163
- } | {
164
- type: "resource";
165
- resource: {
166
- uri: string;
167
- text: string;
168
- mimeType?: string | undefined;
169
- _meta?: {
170
- [x: string]: unknown;
171
- } | undefined;
172
- } | {
173
- uri: string;
174
- blob: string;
175
- mimeType?: string | undefined;
176
- _meta?: {
177
- [x: string]: unknown;
178
- } | undefined;
179
- };
180
- annotations?: {
181
- audience?: ("user" | "assistant")[] | undefined;
182
- priority?: number | undefined;
183
- lastModified?: string | undefined;
184
- } | undefined;
185
- _meta?: {
186
- [x: string]: unknown;
187
- } | undefined;
188
- })[];
189
- _meta?: {
190
- [x: string]: unknown;
191
- progressToken?: string | number | undefined;
192
- "io.modelcontextprotocol/related-task"?: {
193
- taskId: string;
194
- } | undefined;
195
- } | undefined;
196
- structuredContent?: {
197
- [x: string]: unknown;
198
- } | undefined;
199
- isError?: boolean | undefined;
200
- }>];