@crypto512/jicon-mcp 2.2.1 → 2.3.19

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 (228) hide show
  1. package/PROMPT.md +10 -28
  2. package/README.md +39 -6
  3. package/TOOL_LIST.md +542 -407
  4. package/dist/config/constants.d.ts +28 -0
  5. package/dist/config/constants.d.ts.map +1 -1
  6. package/dist/config/constants.js +34 -0
  7. package/dist/config/constants.js.map +1 -1
  8. package/dist/config/loader.d.ts.map +1 -1
  9. package/dist/config/loader.js +12 -2
  10. package/dist/config/loader.js.map +1 -1
  11. package/dist/config/types.d.ts +49 -6
  12. package/dist/config/types.d.ts.map +1 -1
  13. package/dist/config/types.js +18 -0
  14. package/dist/config/types.js.map +1 -1
  15. package/dist/confluence/client.d.ts.map +1 -1
  16. package/dist/confluence/client.js +7 -2
  17. package/dist/confluence/client.js.map +1 -1
  18. package/dist/confluence/formatters.d.ts +20 -0
  19. package/dist/confluence/formatters.d.ts.map +1 -1
  20. package/dist/confluence/formatters.js +74 -8
  21. package/dist/confluence/formatters.js.map +1 -1
  22. package/dist/confluence/tools.d.ts +16 -20
  23. package/dist/confluence/tools.d.ts.map +1 -1
  24. package/dist/confluence/tools.js +71 -68
  25. package/dist/confluence/tools.js.map +1 -1
  26. package/dist/credentials/extractor.d.ts +15 -5
  27. package/dist/credentials/extractor.d.ts.map +1 -1
  28. package/dist/credentials/extractor.js +99 -12
  29. package/dist/credentials/extractor.js.map +1 -1
  30. package/dist/credentials/index.d.ts +4 -3
  31. package/dist/credentials/index.d.ts.map +1 -1
  32. package/dist/credentials/index.js +3 -2
  33. package/dist/credentials/index.js.map +1 -1
  34. package/dist/credentials/types.d.ts +22 -0
  35. package/dist/credentials/types.d.ts.map +1 -1
  36. package/dist/credentials/types.js.map +1 -1
  37. package/dist/index.js +211 -176
  38. package/dist/index.js.map +1 -1
  39. package/dist/jira/activity-tools.d.ts +8 -15
  40. package/dist/jira/activity-tools.d.ts.map +1 -1
  41. package/dist/jira/activity-tools.js +131 -90
  42. package/dist/jira/activity-tools.js.map +1 -1
  43. package/dist/jira/client.d.ts +24 -0
  44. package/dist/jira/client.d.ts.map +1 -1
  45. package/dist/jira/client.js +65 -6
  46. package/dist/jira/client.js.map +1 -1
  47. package/dist/jira/formatters.d.ts +61 -0
  48. package/dist/jira/formatters.d.ts.map +1 -1
  49. package/dist/jira/formatters.js +83 -11
  50. package/dist/jira/formatters.js.map +1 -1
  51. package/dist/jira/tools.d.ts +78 -26
  52. package/dist/jira/tools.d.ts.map +1 -1
  53. package/dist/jira/tools.js +293 -130
  54. package/dist/jira/tools.js.map +1 -1
  55. package/dist/permissions/filter.d.ts.map +1 -1
  56. package/dist/permissions/filter.js +8 -4
  57. package/dist/permissions/filter.js.map +1 -1
  58. package/dist/permissions/tool-registry.d.ts +15 -13
  59. package/dist/permissions/tool-registry.d.ts.map +1 -1
  60. package/dist/permissions/tool-registry.js +19 -10
  61. package/dist/permissions/tool-registry.js.map +1 -1
  62. package/dist/session/context.d.ts +81 -0
  63. package/dist/session/context.d.ts.map +1 -0
  64. package/dist/session/context.js +107 -0
  65. package/dist/session/context.js.map +1 -0
  66. package/dist/session/index.d.ts +12 -0
  67. package/dist/session/index.d.ts.map +1 -0
  68. package/dist/session/index.js +22 -0
  69. package/dist/session/index.js.map +1 -0
  70. package/dist/session/manager.d.ts +186 -0
  71. package/dist/session/manager.d.ts.map +1 -0
  72. package/dist/session/manager.js +383 -0
  73. package/dist/session/manager.js.map +1 -0
  74. package/dist/tempo/client.d.ts +14 -0
  75. package/dist/tempo/client.d.ts.map +1 -1
  76. package/dist/tempo/client.js +57 -0
  77. package/dist/tempo/client.js.map +1 -1
  78. package/dist/tempo/formatters.d.ts +13 -0
  79. package/dist/tempo/formatters.d.ts.map +1 -1
  80. package/dist/tempo/formatters.js +106 -20
  81. package/dist/tempo/formatters.js.map +1 -1
  82. package/dist/tempo/tools.d.ts +14 -13
  83. package/dist/tempo/tools.d.ts.map +1 -1
  84. package/dist/tempo/tools.js +203 -33
  85. package/dist/tempo/tools.js.map +1 -1
  86. package/dist/tempo/types.d.ts +20 -6
  87. package/dist/tempo/types.d.ts.map +1 -1
  88. package/dist/transport/http.d.ts +21 -5
  89. package/dist/transport/http.d.ts.map +1 -1
  90. package/dist/transport/http.js +193 -22
  91. package/dist/transport/http.js.map +1 -1
  92. package/dist/transport/index.d.ts +7 -2
  93. package/dist/transport/index.d.ts.map +1 -1
  94. package/dist/transport/index.js +10 -4
  95. package/dist/transport/index.js.map +1 -1
  96. package/dist/utils/buffer-tools.d.ts +48 -724
  97. package/dist/utils/buffer-tools.d.ts.map +1 -1
  98. package/dist/utils/buffer-tools.js +337 -170
  99. package/dist/utils/buffer-tools.js.map +1 -1
  100. package/dist/utils/content-buffer.d.ts +10 -31
  101. package/dist/utils/content-buffer.d.ts.map +1 -1
  102. package/dist/utils/content-buffer.js +12 -86
  103. package/dist/utils/content-buffer.js.map +1 -1
  104. package/dist/utils/http-client.d.ts.map +1 -1
  105. package/dist/utils/http-client.js +99 -2
  106. package/dist/utils/http-client.js.map +1 -1
  107. package/dist/utils/jicon-help.d.ts +3 -3
  108. package/dist/utils/jicon-help.d.ts.map +1 -1
  109. package/dist/utils/jicon-help.js +164 -312
  110. package/dist/utils/jicon-help.js.map +1 -1
  111. package/dist/utils/logger.d.ts +43 -0
  112. package/dist/utils/logger.d.ts.map +1 -0
  113. package/dist/utils/logger.js +102 -0
  114. package/dist/utils/logger.js.map +1 -0
  115. package/dist/utils/plantuml/tools.d.ts.map +1 -1
  116. package/dist/utils/plantuml/tools.js +10 -9
  117. package/dist/utils/plantuml/tools.js.map +1 -1
  118. package/dist/utils/response-formatter.d.ts +20 -2
  119. package/dist/utils/response-formatter.d.ts.map +1 -1
  120. package/dist/utils/response-formatter.js +147 -17
  121. package/dist/utils/response-formatter.js.map +1 -1
  122. package/dist/utils/sandbox/formatters.d.ts +25 -0
  123. package/dist/utils/sandbox/formatters.d.ts.map +1 -0
  124. package/dist/utils/sandbox/formatters.js +690 -0
  125. package/dist/utils/sandbox/formatters.js.map +1 -0
  126. package/dist/utils/sandbox/helpers.d.ts +16 -0
  127. package/dist/utils/sandbox/helpers.d.ts.map +1 -0
  128. package/dist/utils/sandbox/helpers.js +252 -0
  129. package/dist/utils/sandbox/helpers.js.map +1 -0
  130. package/dist/utils/sandbox/index.d.ts +19 -0
  131. package/dist/utils/sandbox/index.d.ts.map +1 -0
  132. package/dist/utils/sandbox/index.js +269 -0
  133. package/dist/utils/sandbox/index.js.map +1 -0
  134. package/dist/utils/sandbox/schema.d.ts +55 -0
  135. package/dist/utils/sandbox/schema.d.ts.map +1 -0
  136. package/dist/utils/sandbox/schema.js +39 -0
  137. package/dist/utils/sandbox/schema.js.map +1 -0
  138. package/dist/utils/sandbox/types.d.ts +179 -0
  139. package/dist/utils/sandbox/types.d.ts.map +1 -0
  140. package/dist/utils/sandbox/types.js +8 -0
  141. package/dist/utils/sandbox/types.js.map +1 -0
  142. package/dist/utils/schemas/confluence.d.ts +41 -0
  143. package/dist/utils/schemas/confluence.d.ts.map +1 -0
  144. package/dist/utils/schemas/confluence.js +105 -0
  145. package/dist/utils/schemas/confluence.js.map +1 -0
  146. package/dist/utils/schemas/index.d.ts +77 -0
  147. package/dist/utils/schemas/index.d.ts.map +1 -0
  148. package/dist/utils/schemas/index.js +107 -0
  149. package/dist/utils/schemas/index.js.map +1 -0
  150. package/dist/utils/schemas/jira.d.ts +49 -0
  151. package/dist/utils/schemas/jira.d.ts.map +1 -0
  152. package/dist/utils/schemas/jira.js +153 -0
  153. package/dist/utils/schemas/jira.js.map +1 -0
  154. package/dist/utils/schemas/tempo.d.ts +29 -0
  155. package/dist/utils/schemas/tempo.d.ts.map +1 -0
  156. package/dist/utils/schemas/tempo.js +72 -0
  157. package/dist/utils/schemas/tempo.js.map +1 -0
  158. package/dist/utils/whoami-tools.d.ts +17 -0
  159. package/dist/utils/whoami-tools.d.ts.map +1 -0
  160. package/dist/utils/whoami-tools.js +90 -0
  161. package/dist/utils/whoami-tools.js.map +1 -0
  162. package/dist/utils/xhtml/error-locator.js +5 -5
  163. package/dist/utils/xhtml/error-locator.js.map +1 -1
  164. package/package.json +10 -9
  165. package/dist/credentials/client-factory.d.ts +0 -64
  166. package/dist/credentials/client-factory.d.ts.map +0 -1
  167. package/dist/credentials/client-factory.js +0 -110
  168. package/dist/credentials/client-factory.js.map +0 -1
  169. package/dist/credentials/context.d.ts +0 -25
  170. package/dist/credentials/context.d.ts.map +0 -1
  171. package/dist/credentials/context.js +0 -35
  172. package/dist/credentials/context.js.map +0 -1
  173. package/dist/utils/buffer-pipeline/index.d.ts +0 -30
  174. package/dist/utils/buffer-pipeline/index.d.ts.map +0 -1
  175. package/dist/utils/buffer-pipeline/index.js +0 -317
  176. package/dist/utils/buffer-pipeline/index.js.map +0 -1
  177. package/dist/utils/buffer-pipeline/output/csv.d.ts +0 -20
  178. package/dist/utils/buffer-pipeline/output/csv.d.ts.map +0 -1
  179. package/dist/utils/buffer-pipeline/output/csv.js +0 -117
  180. package/dist/utils/buffer-pipeline/output/csv.js.map +0 -1
  181. package/dist/utils/buffer-pipeline/output/json.d.ts +0 -16
  182. package/dist/utils/buffer-pipeline/output/json.d.ts.map +0 -1
  183. package/dist/utils/buffer-pipeline/output/json.js +0 -48
  184. package/dist/utils/buffer-pipeline/output/json.js.map +0 -1
  185. package/dist/utils/buffer-pipeline/output/markdown.d.ts +0 -15
  186. package/dist/utils/buffer-pipeline/output/markdown.d.ts.map +0 -1
  187. package/dist/utils/buffer-pipeline/output/markdown.js +0 -105
  188. package/dist/utils/buffer-pipeline/output/markdown.js.map +0 -1
  189. package/dist/utils/buffer-pipeline/output/xhtml-list.d.ts +0 -16
  190. package/dist/utils/buffer-pipeline/output/xhtml-list.d.ts.map +0 -1
  191. package/dist/utils/buffer-pipeline/output/xhtml-list.js +0 -81
  192. package/dist/utils/buffer-pipeline/output/xhtml-list.js.map +0 -1
  193. package/dist/utils/buffer-pipeline/output/xhtml-table.d.ts +0 -15
  194. package/dist/utils/buffer-pipeline/output/xhtml-table.d.ts.map +0 -1
  195. package/dist/utils/buffer-pipeline/output/xhtml-table.js +0 -176
  196. package/dist/utils/buffer-pipeline/output/xhtml-table.js.map +0 -1
  197. package/dist/utils/buffer-pipeline/schema.d.ts +0 -1878
  198. package/dist/utils/buffer-pipeline/schema.d.ts.map +0 -1
  199. package/dist/utils/buffer-pipeline/schema.js +0 -168
  200. package/dist/utils/buffer-pipeline/schema.js.map +0 -1
  201. package/dist/utils/buffer-pipeline/stages/filter.d.ts +0 -32
  202. package/dist/utils/buffer-pipeline/stages/filter.d.ts.map +0 -1
  203. package/dist/utils/buffer-pipeline/stages/filter.js +0 -208
  204. package/dist/utils/buffer-pipeline/stages/filter.js.map +0 -1
  205. package/dist/utils/buffer-pipeline/stages/format.d.ts +0 -45
  206. package/dist/utils/buffer-pipeline/stages/format.d.ts.map +0 -1
  207. package/dist/utils/buffer-pipeline/stages/format.js +0 -160
  208. package/dist/utils/buffer-pipeline/stages/format.js.map +0 -1
  209. package/dist/utils/buffer-pipeline/stages/group-by.d.ts +0 -25
  210. package/dist/utils/buffer-pipeline/stages/group-by.d.ts.map +0 -1
  211. package/dist/utils/buffer-pipeline/stages/group-by.js +0 -190
  212. package/dist/utils/buffer-pipeline/stages/group-by.js.map +0 -1
  213. package/dist/utils/buffer-pipeline/stages/select.d.ts +0 -54
  214. package/dist/utils/buffer-pipeline/stages/select.d.ts.map +0 -1
  215. package/dist/utils/buffer-pipeline/stages/select.js +0 -228
  216. package/dist/utils/buffer-pipeline/stages/select.js.map +0 -1
  217. package/dist/utils/buffer-pipeline/stages/sort.d.ts +0 -20
  218. package/dist/utils/buffer-pipeline/stages/sort.d.ts.map +0 -1
  219. package/dist/utils/buffer-pipeline/stages/sort.js +0 -96
  220. package/dist/utils/buffer-pipeline/stages/sort.js.map +0 -1
  221. package/dist/utils/buffer-pipeline/types.d.ts +0 -277
  222. package/dist/utils/buffer-pipeline/types.d.ts.map +0 -1
  223. package/dist/utils/buffer-pipeline/types.js +0 -8
  224. package/dist/utils/buffer-pipeline/types.js.map +0 -1
  225. package/dist/utils/plantuml/docker-manager.d.ts +0 -37
  226. package/dist/utils/plantuml/docker-manager.d.ts.map +0 -1
  227. package/dist/utils/plantuml/docker-manager.js +0 -284
  228. package/dist/utils/plantuml/docker-manager.js.map +0 -1
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Logger utility with timestamp and log level support
3
+ *
4
+ * All MCP server logs go to stderr (stdout is reserved for MCP protocol)
5
+ *
6
+ * Log levels (JICON_LOG_LEVEL):
7
+ * - error: Only errors
8
+ * - warn: Errors and warnings
9
+ * - info: Errors, warnings, and info messages (default)
10
+ * - debug: All messages including debug output
11
+ */
12
+ /**
13
+ * Log a message with timestamp prefix (info level)
14
+ * @param args - Arguments to log (same as console.error)
15
+ */
16
+ export declare function log(...args: unknown[]): void;
17
+ /**
18
+ * Log a debug message (only when JICON_LOG_LEVEL=debug)
19
+ * @param args - Arguments to log
20
+ */
21
+ export declare function debug(...args: unknown[]): void;
22
+ /**
23
+ * Log an info message
24
+ * @param message - Message to log
25
+ */
26
+ export declare function info(message: string): void;
27
+ /**
28
+ * Log a warning message
29
+ * @param message - Warning message
30
+ */
31
+ export declare function warn(message: string): void;
32
+ /**
33
+ * Log an error message
34
+ * @param message - Error message
35
+ * @param err - Optional error object
36
+ */
37
+ export declare function error(message: string, err?: unknown): void;
38
+ /**
39
+ * Check if debug logging is enabled
40
+ * Use this to avoid expensive string formatting when debug is disabled
41
+ */
42
+ export declare function isDebugEnabled(): boolean;
43
+ //# sourceMappingURL=logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAyCH;;;GAGG;AACH,wBAAgB,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAI5C;AAED;;;GAGG;AACH,wBAAgB,KAAK,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAI9C;AAED;;;GAGG;AACH,wBAAgB,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAI1C;AAED;;;GAGG;AACH,wBAAgB,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAI1C;AAED;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI,CAQ1D;AAED;;;GAGG;AACH,wBAAgB,cAAc,IAAI,OAAO,CAExC"}
@@ -0,0 +1,102 @@
1
+ /**
2
+ * Logger utility with timestamp and log level support
3
+ *
4
+ * All MCP server logs go to stderr (stdout is reserved for MCP protocol)
5
+ *
6
+ * Log levels (JICON_LOG_LEVEL):
7
+ * - error: Only errors
8
+ * - warn: Errors and warnings
9
+ * - info: Errors, warnings, and info messages (default)
10
+ * - debug: All messages including debug output
11
+ */
12
+ /** Log level enum for comparison */
13
+ const LOG_LEVELS = {
14
+ error: 0,
15
+ warn: 1,
16
+ info: 2,
17
+ debug: 3,
18
+ };
19
+ /**
20
+ * Get current log level from environment
21
+ * Default: "info" (safe default that shows operational messages)
22
+ */
23
+ function getLogLevel() {
24
+ const level = process.env.JICON_LOG_LEVEL?.toLowerCase();
25
+ if (level && level in LOG_LEVELS) {
26
+ return level;
27
+ }
28
+ // Default to "info" - shows operational messages but not debug noise
29
+ return "info";
30
+ }
31
+ /**
32
+ * Check if a log level should be logged
33
+ */
34
+ function shouldLog(level) {
35
+ const currentLevel = getLogLevel();
36
+ return LOG_LEVELS[level] <= LOG_LEVELS[currentLevel];
37
+ }
38
+ /**
39
+ * Format current timestamp as ISO string (e.g., "2024-02-04T12:30:05.123Z")
40
+ */
41
+ function getTimestamp() {
42
+ return new Date().toISOString();
43
+ }
44
+ /**
45
+ * Log a message with timestamp prefix (info level)
46
+ * @param args - Arguments to log (same as console.error)
47
+ */
48
+ export function log(...args) {
49
+ if (shouldLog("info")) {
50
+ console.error(`[${getTimestamp()}]`, ...args);
51
+ }
52
+ }
53
+ /**
54
+ * Log a debug message (only when JICON_LOG_LEVEL=debug)
55
+ * @param args - Arguments to log
56
+ */
57
+ export function debug(...args) {
58
+ if (shouldLog("debug")) {
59
+ console.error(`[${getTimestamp()}] [DEBUG]`, ...args);
60
+ }
61
+ }
62
+ /**
63
+ * Log an info message
64
+ * @param message - Message to log
65
+ */
66
+ export function info(message) {
67
+ if (shouldLog("info")) {
68
+ console.error(`[${getTimestamp()}] ${message}`);
69
+ }
70
+ }
71
+ /**
72
+ * Log a warning message
73
+ * @param message - Warning message
74
+ */
75
+ export function warn(message) {
76
+ if (shouldLog("warn")) {
77
+ console.error(`[${getTimestamp()}] WARN: ${message}`);
78
+ }
79
+ }
80
+ /**
81
+ * Log an error message
82
+ * @param message - Error message
83
+ * @param err - Optional error object
84
+ */
85
+ export function error(message, err) {
86
+ if (shouldLog("error")) {
87
+ if (err) {
88
+ console.error(`[${getTimestamp()}] ERROR: ${message}`, err);
89
+ }
90
+ else {
91
+ console.error(`[${getTimestamp()}] ERROR: ${message}`);
92
+ }
93
+ }
94
+ }
95
+ /**
96
+ * Check if debug logging is enabled
97
+ * Use this to avoid expensive string formatting when debug is disabled
98
+ */
99
+ export function isDebugEnabled() {
100
+ return shouldLog("debug");
101
+ }
102
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,oCAAoC;AACpC,MAAM,UAAU,GAAG;IACjB,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;CACA,CAAC;AAIX;;;GAGG;AACH,SAAS,WAAW;IAClB,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,WAAW,EAAE,CAAC;IACzD,IAAI,KAAK,IAAI,KAAK,IAAI,UAAU,EAAE,CAAC;QACjC,OAAO,KAAiB,CAAC;IAC3B,CAAC;IAED,qEAAqE;IACrE,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,SAAS,SAAS,CAAC,KAAe;IAChC,MAAM,YAAY,GAAG,WAAW,EAAE,CAAC;IACnC,OAAO,UAAU,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,YAAY,CAAC,CAAC;AACvD,CAAC;AAED;;GAEG;AACH,SAAS,YAAY;IACnB,OAAO,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAClC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,GAAG,CAAC,GAAG,IAAe;IACpC,IAAI,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,KAAK,CAAC,IAAI,YAAY,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IAChD,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,KAAK,CAAC,GAAG,IAAe;IACtC,IAAI,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;QACvB,OAAO,CAAC,KAAK,CAAC,IAAI,YAAY,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,CAAC;IACxD,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,IAAI,CAAC,OAAe;IAClC,IAAI,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,KAAK,CAAC,IAAI,YAAY,EAAE,KAAK,OAAO,EAAE,CAAC,CAAC;IAClD,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,IAAI,CAAC,OAAe;IAClC,IAAI,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,KAAK,CAAC,IAAI,YAAY,EAAE,WAAW,OAAO,EAAE,CAAC,CAAC;IACxD,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,KAAK,CAAC,OAAe,EAAE,GAAa;IAClD,IAAI,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;QACvB,IAAI,GAAG,EAAE,CAAC;YACR,OAAO,CAAC,KAAK,CAAC,IAAI,YAAY,EAAE,YAAY,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;QAC9D,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,IAAI,YAAY,EAAE,YAAY,OAAO,EAAE,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc;IAC5B,OAAO,SAAS,CAAC,OAAO,CAAC,CAAC;AAC5B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/utils/plantuml/tools.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAMzE,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,YAAY,CAAC;AAyDpB;;GAEG;AACH,wBAAgB,mBAAmB;;;;;;;;;;;;;wBAMP;YACpB,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,QAAQ,CAAC,EAAE,MAAM,CAAC;SACnB,KAAG,OAAO,CAAC,cAAc,CAAC;;;;;;;;;;;;;;;;;;;;wBA2HL;YACpB,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,QAAQ,CAAC,EAAE,MAAM,CAAC;YAClB,MAAM,CAAC,EAAE,YAAY,CAAC;YACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;SACnB,KAAG,OAAO,CAAC,cAAc,CAAC;;;;;uBA6FR,OAAO,CAAC,cAAc,CAAC;;EAkC/C;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,sEAIjB,CAAC"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/utils/plantuml/tools.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAMzE,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,YAAY,CAAC;AAyDpB;;GAEG;AACH,wBAAgB,mBAAmB;;;;;;;;;;;;;wBAMP;YACpB,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,QAAQ,CAAC,EAAE,MAAM,CAAC;SACnB,KAAG,OAAO,CAAC,cAAc,CAAC;;;;;;;;;;;;;;;;;;;;wBA2HL;YACpB,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,QAAQ,CAAC,EAAE,MAAM,CAAC;YAClB,MAAM,CAAC,EAAE,YAAY,CAAC;YACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;SACnB,KAAG,OAAO,CAAC,cAAc,CAAC;;;;;uBA8FR,OAAO,CAAC,cAAc,CAAC;;EAkC/C;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,sEAIjB,CAAC"}
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { z } from "zod";
7
7
  import { formatSuccess, formatError } from "../response-formatter.js";
8
- import { contentBuffer } from "../content-buffer.js";
8
+ import { getSessionBuffer } from "../../session/context.js";
9
9
  import { createJsonStructure } from "../json-structure.js";
10
10
  import { validate, render, getStatus, getUnavailableReason } from "./service.js";
11
11
  import { IncludeConversionError } from "./include-expander.js";
@@ -23,11 +23,11 @@ function resolveCode(args) {
23
23
  return args.code;
24
24
  }
25
25
  if (args.bufferId !== undefined) {
26
- const info = contentBuffer.getInfo(args.bufferId);
26
+ const info = getSessionBuffer().getInfo(args.bufferId);
27
27
  if (!info) {
28
28
  throw new Error(`Buffer not found: ${args.bufferId}`);
29
29
  }
30
- const chunk = contentBuffer.getChunk(args.bufferId, 0, info.bufferSizeBytes);
30
+ const chunk = getSessionBuffer().getChunk(args.bufferId, 0, info.bufferSizeBytes);
31
31
  if (!chunk) {
32
32
  throw new Error(`Failed to read buffer: ${args.bufferId}`);
33
33
  }
@@ -105,7 +105,7 @@ Validate ONE diagram at a time. Call help(topic="plantuml") for Confluence requi
105
105
  if (codeSize > MAX_INLINE_SIZE) {
106
106
  const jsonData = { normalizedCode: result.normalizedCode };
107
107
  const { content, structure } = createJsonStructure(jsonData);
108
- const bufferId = contentBuffer.storeJsonWithStructure(content, structure, {
108
+ const bufferId = getSessionBuffer().storeJsonWithStructure(content, structure, {
109
109
  type: "plantuml_validate",
110
110
  diagramType: result.diagramType,
111
111
  contentType: "json",
@@ -130,7 +130,7 @@ Validate ONE diagram at a time. Call help(topic="plantuml") for Confluence requi
130
130
  if (codeSize > MAX_INLINE_SIZE) {
131
131
  const jsonData = { normalizedCode: result.normalizedCode };
132
132
  const { content, structure } = createJsonStructure(jsonData);
133
- const bufferId = contentBuffer.storeJsonWithStructure(content, structure, {
133
+ const bufferId = getSessionBuffer().storeJsonWithStructure(content, structure, {
134
134
  type: "plantuml_validate",
135
135
  diagramType: result.diagramType,
136
136
  valid: false,
@@ -143,7 +143,7 @@ Validate ONE diagram at a time. Call help(topic="plantuml") for Confluence requi
143
143
  diagramType: result.diagramType,
144
144
  errors: result.errors,
145
145
  message: `Invalid diagram: ${result.errors?.[0]?.message || "Unknown error"}`,
146
- hint: "Run help(topic=\"plantuml\") for syntax examples",
146
+ tip: 'Call help(topic="plantuml") for PlantUML syntax guide.',
147
147
  });
148
148
  }
149
149
  return formatSuccess({
@@ -152,7 +152,7 @@ Validate ONE diagram at a time. Call help(topic="plantuml") for Confluence requi
152
152
  diagramType: result.diagramType,
153
153
  errors: result.errors,
154
154
  message: `Invalid diagram: ${result.errors?.[0]?.message || "Unknown error"}`,
155
- hint: "Run help(topic=\"plantuml\") for syntax examples",
155
+ tip: 'Call help(topic="plantuml") for PlantUML syntax guide.',
156
156
  });
157
157
  }
158
158
  catch (error) {
@@ -203,10 +203,11 @@ Use ascii with maxWidth=80 to preview before inserting into Confluence.`,
203
203
  if (result.content && result.size > MAX_INLINE_SIZE) {
204
204
  const jsonData = { content: result.content };
205
205
  const { content: jsonContent, structure } = createJsonStructure(jsonData);
206
- const bufferId = contentBuffer.storeJsonWithStructure(jsonContent, structure, {
206
+ const bufferId = getSessionBuffer().storeJsonWithStructure(jsonContent, structure, {
207
207
  type: "plantuml_render",
208
208
  format: result.format,
209
- contentType: result.contentType,
209
+ contentType: "json", // Buffer is JSON-wrapped
210
+ originalContentType: result.contentType,
210
211
  });
211
212
  return formatSuccess({
212
213
  format: result.format,
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/utils/plantuml/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/utils/plantuml/tools.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,28 @@
1
1
  /**
2
2
  * Response formatting utilities for MCP tools
3
+ *
4
+ * All buffer operations use the session-scoped buffer from getSessionBuffer()
5
+ * which provides isolation between MCP sessions.
3
6
  */
4
7
  import type { ToolResult, ApiError } from "../types.js";
8
+ /**
9
+ * Get the maximum number of items to fetch from any paginated API call
10
+ */
11
+ export declare function getMaxApiResults(): number;
12
+ /**
13
+ * Get the default time period for activity tools (digest, comments, changelog)
14
+ */
15
+ export declare function getDefaultPeriod(): string;
5
16
  /**
6
17
  * Get the maximum output size from environment variable or default
7
18
  */
8
19
  export declare function getMaxOutputSize(): number;
20
+ /**
21
+ * Recursively removes null values and empty arrays from an object.
22
+ * Used to reduce token usage in LLM responses.
23
+ * Set JICON_KEEP_NULLS=true to disable this behavior.
24
+ */
25
+ export declare function filterEmptyValues<T>(obj: T): T;
9
26
  export declare function formatSuccess(data: unknown, metadata?: Record<string, unknown>): ToolResult;
10
27
  /**
11
28
  * Format response WITHOUT re-buffering.
@@ -29,12 +46,13 @@ export declare function formatSuccessDirect(data: unknown, options?: {
29
46
  * Returns a consistent response format with clear accessors.
30
47
  *
31
48
  * @param data - JSON data (array or object) to buffer
32
- * @param metadata - Required metadata including resourceType and title
33
- * @returns ToolResult with bufferId, structure, and accessors
49
+ * @param metadata - Required metadata including resourceType, title, and optional schemaType
50
+ * @returns ToolResult with bufferId, structure, schemaType, and fields
34
51
  */
35
52
  export declare function formatSuccessJson(data: unknown, metadata: {
36
53
  resourceType: string;
37
54
  title: string;
55
+ schemaType?: string;
38
56
  [key: string]: unknown;
39
57
  }): ToolResult;
40
58
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"response-formatter.d.ts","sourceRoot":"","sources":["../../src/utils/response-formatter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAQxD;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CASzC;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,UAAU,CAqC3F;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,OAAO,EACb,OAAO,CAAC,EAAE;IACR,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,GACA,UAAU,CAoBZ;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,OAAO,EACb,QAAQ,EAAE;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,GACxE,UAAU,CAwDZ;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,GACxE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CAAE,GAAG;IAAE,WAAW,EAAE,UAAU,CAAA;CAAE,CAuBjI;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,KAAK,GAAG,UAAU,CAmB/D;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,QAAQ,CAO5D;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,iBAAiB,GAAG,YAAY,GAAG,eAAe,CAAC;IAClE,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,YAAY,GAAG,UAAU,CA0BpF;AAiCD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,SAAS,GAAG,YAAY,GAAG,OAAO,CAAC;CAC/C;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,QAAQ,GAAG,KAAK,EACvB,OAAO,EAAE,iBAAiB,GACzB,UAAU,CA6CZ"}
1
+ {"version":3,"file":"response-formatter.d.ts","sourceRoot":"","sources":["../../src/utils/response-formatter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAoBxD;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAGzC;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAGzC;AAWD;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CASzC;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAiB9C;AAWD,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,UAAU,CAsC3F;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,OAAO,EACb,OAAO,CAAC,EAAE;IACR,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,GACA,UAAU,CAoBZ;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,OAAO,EACb,QAAQ,EAAE;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,GAC7F,UAAU,CA2HZ;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,GACxE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CAAE,GAAG;IAAE,WAAW,EAAE,UAAU,CAAA;CAAE,CAuBjI;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,KAAK,GAAG,UAAU,CAkB/D;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,QAAQ,CAO5D;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,iBAAiB,GAAG,YAAY,GAAG,eAAe,CAAC;IAClE,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,YAAY,GAAG,UAAU,CA0BpF;AAiCD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,SAAS,GAAG,YAAY,GAAG,OAAO,CAAC;CAC/C;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,QAAQ,GAAG,KAAK,EACvB,OAAO,EAAE,iBAAiB,GACzB,UAAU,CA4CZ"}
@@ -1,11 +1,47 @@
1
1
  /**
2
2
  * Response formatting utilities for MCP tools
3
+ *
4
+ * All buffer operations use the session-scoped buffer from getSessionBuffer()
5
+ * which provides isolation between MCP sessions.
3
6
  */
4
- import { contentBuffer } from "./content-buffer.js";
7
+ import { getSessionBuffer } from "../session/context.js";
5
8
  import { createJsonStructure } from "./json-structure.js";
6
9
  import { parseXhtml, parseStructure, serializeXhtml } from "./xhtml/index.js";
10
+ import { getSchemaFields } from "./schemas/index.js";
11
+ import { ConfigLoader } from "../config/loader.js";
12
+ import { DEFAULT_MAX_BUFFER_SIZE_KB, DEFAULT_MAX_API_RESULTS, DEFAULT_PERIOD } from "../config/constants.js";
7
13
  // Default max output size (16KB), configurable via JICON_MAX_OUTPUT env var
8
14
  const DEFAULT_MAX_OUTPUT = 16000;
15
+ // Cache config at module level to avoid duplicate "Configuration loaded" messages
16
+ let cachedConfig = null;
17
+ function getConfig() {
18
+ if (!cachedConfig) {
19
+ cachedConfig = ConfigLoader.load();
20
+ }
21
+ return cachedConfig;
22
+ }
23
+ /**
24
+ * Get the maximum number of items to fetch from any paginated API call
25
+ */
26
+ export function getMaxApiResults() {
27
+ const config = getConfig();
28
+ return config.session?.maxApiResults ?? DEFAULT_MAX_API_RESULTS;
29
+ }
30
+ /**
31
+ * Get the default time period for activity tools (digest, comments, changelog)
32
+ */
33
+ export function getDefaultPeriod() {
34
+ const config = getConfig();
35
+ return config.defaultPeriod ?? DEFAULT_PERIOD;
36
+ }
37
+ /**
38
+ * Get the maximum buffer size in bytes from config or default
39
+ */
40
+ function getMaxBufferSizeBytes() {
41
+ const config = getConfig();
42
+ const kb = config.session?.maxBufferSizeKB ?? DEFAULT_MAX_BUFFER_SIZE_KB;
43
+ return kb * 1024;
44
+ }
9
45
  /**
10
46
  * Get the maximum output size from environment variable or default
11
47
  */
@@ -19,9 +55,43 @@ export function getMaxOutputSize() {
19
55
  }
20
56
  return DEFAULT_MAX_OUTPUT;
21
57
  }
58
+ /**
59
+ * Recursively removes null values and empty arrays from an object.
60
+ * Used to reduce token usage in LLM responses.
61
+ * Set JICON_KEEP_NULLS=true to disable this behavior.
62
+ */
63
+ export function filterEmptyValues(obj) {
64
+ if (obj === null || obj === undefined) {
65
+ return obj;
66
+ }
67
+ if (Array.isArray(obj)) {
68
+ return obj.map(filterEmptyValues);
69
+ }
70
+ if (typeof obj === "object") {
71
+ const filtered = {};
72
+ for (const [key, value] of Object.entries(obj)) {
73
+ if (value === null)
74
+ continue;
75
+ if (Array.isArray(value) && value.length === 0)
76
+ continue;
77
+ filtered[key] = filterEmptyValues(value);
78
+ }
79
+ return filtered;
80
+ }
81
+ return obj;
82
+ }
83
+ /**
84
+ * Apply null/empty filtering based on config.
85
+ * Returns data unchanged if JICON_KEEP_NULLS=true.
86
+ */
87
+ function applyFiltering(data) {
88
+ const config = getConfig();
89
+ return config.keepNulls ? data : filterEmptyValues(data);
90
+ }
22
91
  export function formatSuccess(data, metadata) {
23
92
  const maxSize = getMaxOutputSize();
24
- const jsonText = JSON.stringify(data, null, 2);
93
+ const filteredData = applyFiltering(data);
94
+ const jsonText = JSON.stringify(filteredData, null, 2);
25
95
  // If within limit, return directly
26
96
  if (jsonText.length <= maxSize) {
27
97
  return {
@@ -34,8 +104,8 @@ export function formatSuccess(data, metadata) {
34
104
  };
35
105
  }
36
106
  // Exceeds limit: store in buffer as JSON with structure
37
- const { content, structure } = createJsonStructure(data);
38
- const bufferId = contentBuffer.storeJsonWithStructure(content, structure, {
107
+ const { content, structure } = createJsonStructure(filteredData);
108
+ const bufferId = getSessionBuffer().storeJsonWithStructure(content, structure, {
39
109
  ...metadata,
40
110
  contentType: "json",
41
111
  });
@@ -91,14 +161,41 @@ export function formatSuccessDirect(data, options) {
91
161
  * Returns a consistent response format with clear accessors.
92
162
  *
93
163
  * @param data - JSON data (array or object) to buffer
94
- * @param metadata - Required metadata including resourceType and title
95
- * @returns ToolResult with bufferId, structure, and accessors
164
+ * @param metadata - Required metadata including resourceType, title, and optional schemaType
165
+ * @returns ToolResult with bufferId, structure, schemaType, and fields
96
166
  */
97
167
  export function formatSuccessJson(data, metadata) {
98
- const { content, structure } = createJsonStructure(data);
99
- const bufferId = contentBuffer.storeJsonWithStructure(content, structure, {
168
+ let filteredData = applyFiltering(data);
169
+ let { content, structure } = createJsonStructure(filteredData);
170
+ // Enforce max buffer size (KB) — truncate arrays cleanly (whole items only)
171
+ const maxBytes = getMaxBufferSizeBytes();
172
+ let bufferTruncated = false;
173
+ let totalBeforeTruncation;
174
+ if (content.length > maxBytes && Array.isArray(filteredData) && filteredData.length > 1) {
175
+ totalBeforeTruncation = filteredData.length;
176
+ // Binary search for the largest N items that fit
177
+ let lo = 1, hi = filteredData.length;
178
+ while (lo < hi) {
179
+ const mid = Math.ceil((lo + hi) / 2);
180
+ if (JSON.stringify(filteredData.slice(0, mid)).length <= maxBytes) {
181
+ lo = mid;
182
+ }
183
+ else {
184
+ hi = mid - 1;
185
+ }
186
+ }
187
+ filteredData = filteredData.slice(0, lo);
188
+ ({ content, structure } = createJsonStructure(filteredData));
189
+ bufferTruncated = true;
190
+ }
191
+ // Add schemaType to structure if provided
192
+ if (metadata.schemaType) {
193
+ structure.schemaType = metadata.schemaType;
194
+ }
195
+ const bufferId = getSessionBuffer().storeJsonWithStructure(content, structure, {
100
196
  ...metadata,
101
197
  contentType: "json",
198
+ ...(bufferTruncated && { bufferTruncated: true, totalBeforeTruncation }),
102
199
  });
103
200
  // Build response based on structure type
104
201
  const isArray = structure.rootType === "array";
@@ -110,16 +207,46 @@ export function formatSuccessJson(data, metadata) {
110
207
  preview: item.preview,
111
208
  }))
112
209
  : undefined;
210
+ // Get schema fields if schemaType is provided
211
+ const schemaFields = metadata.schemaType ? getSchemaFields(metadata.schemaType) : undefined;
212
+ // Extract a sample item showing flat field structure (helps LLM understand data shape)
213
+ let sampleItem;
214
+ if (isArray && Array.isArray(filteredData) && filteredData.length > 0 && schemaFields) {
215
+ const firstItem = filteredData[0];
216
+ // Pick first few schema fields to show flat structure
217
+ sampleItem = {};
218
+ const fieldsToShow = schemaFields.slice(0, 6);
219
+ for (const field of fieldsToShow) {
220
+ if (field in firstItem) {
221
+ const value = firstItem[field];
222
+ // Truncate long strings
223
+ if (typeof value === "string" && value.length > 40) {
224
+ sampleItem[field] = value.substring(0, 40) + "...";
225
+ }
226
+ else {
227
+ sampleItem[field] = value;
228
+ }
229
+ }
230
+ }
231
+ }
232
+ // Extract LLM-visible context from metadata (tools surface info the LLM needs to see)
233
+ const info = metadata.info;
113
234
  // Extract Jira-specific metadata for clearer field names
114
235
  const totalIssues = metadata.totalIssues;
115
236
  const itemCount = structure.itemCount ?? 0;
116
- // Build truncation note when Jira found more than we returned
117
- const truncationNote = isArray && totalIssues && totalIssues > itemCount
118
- ? `${totalIssues} issues match query, ${itemCount} returned (API limit)`
119
- : undefined;
237
+ // Build truncation note when more data was available than returned
238
+ const truncationNote = bufferTruncated
239
+ ? `Buffer size limit reached: ${itemCount} of ${totalBeforeTruncation} items stored (JICON_MAX_BUFFER_SIZE=${Math.round(maxBytes / 1024)}KB)`
240
+ : isArray && totalIssues && totalIssues > itemCount
241
+ ? `${totalIssues} issues match query, ${itemCount} returned (API limit)`
242
+ : undefined;
120
243
  // Compact hint for large arrays
121
244
  const hint = isArray && (structure.itemCount ?? 0) > 20
122
- ? `${structure.itemCount} items. buffer_pipeline for tables, buffer_get_items for analysis.`
245
+ ? `${structure.itemCount} items. buffer_transform for tables, buffer_get_items for analysis.`
246
+ : undefined;
247
+ // Add note about flat field access when schema is present
248
+ const fieldAccessNote = schemaFields
249
+ ? "Fields are FLAT (use i.status not i.status.name, i.assignee not i.assignee.displayName)"
123
250
  : undefined;
124
251
  return {
125
252
  content: [
@@ -130,7 +257,12 @@ export function formatSuccessJson(data, metadata) {
130
257
  bufferId,
131
258
  contentType: "json",
132
259
  resourceType: metadata.resourceType,
260
+ ...(metadata.schemaType && { schemaType: metadata.schemaType }),
261
+ ...(schemaFields && { fields: schemaFields }),
262
+ ...(sampleItem && { sampleItem }),
263
+ ...(fieldAccessNote && { fieldAccess: fieldAccessNote }),
133
264
  ...(isArray && { returnedItems: itemCount }),
265
+ ...(info && { info }),
134
266
  ...(totalIssues !== undefined && { jiraTotalMatching: totalIssues }),
135
267
  ...(truncationNote && { note: truncationNote }),
136
268
  ...(hint && { hint }),
@@ -139,7 +271,7 @@ export function formatSuccessJson(data, metadata) {
139
271
  ...(isArray && preview && { preview }),
140
272
  ...(isObject && { keys: structure.keys }),
141
273
  },
142
- actions: ["buffer_pipeline", "buffer_get_items", "buffer_grep"],
274
+ actions: ["buffer_transform", "buffer_get_items", "buffer_get_schema"],
143
275
  }),
144
276
  },
145
277
  ],
@@ -168,7 +300,7 @@ export function formatSuccessXhtml(content, metadata) {
168
300
  }
169
301
  const structureResult = parseStructure(parseResult.document);
170
302
  const contentWithIds = serializeXhtml(parseResult.document);
171
- const bufferId = contentBuffer.storeWithStructure(contentWithIds, structureResult.structure, structureResult.nextId, {
303
+ const bufferId = getSessionBuffer().storeWithStructure(contentWithIds, structureResult.structure, structureResult.nextId, {
172
304
  ...metadata,
173
305
  contentType: "xhtml",
174
306
  });
@@ -179,7 +311,6 @@ export function formatError(error) {
179
311
  ? {
180
312
  error: true,
181
313
  message: error.message,
182
- details: { stack: error.stack },
183
314
  }
184
315
  : error;
185
316
  return {
@@ -248,7 +379,6 @@ export function formatXhtmlError(error, context) {
248
379
  ? {
249
380
  error: true,
250
381
  message: error.message,
251
- details: { stack: error.stack },
252
382
  }
253
383
  : error;
254
384
  const suggestedActions = {
@@ -1 +1 @@
1
- {"version":3,"file":"response-formatter.js","sourceRoot":"","sources":["../../src/utils/response-formatter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"response-formatter.js","sourceRoot":"","sources":["../../src/utils/response-formatter.ts"],"names":[],"mappings":"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"}