@cyanheads/git-mcp-server 2.2.4 → 2.3.2

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 (471) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +69 -25
  3. package/dist/config/index.d.ts +87 -0
  4. package/dist/config/index.d.ts.map +1 -0
  5. package/dist/config/index.js +7 -3
  6. package/dist/config/index.js.map +1 -0
  7. package/dist/index.d.ts +3 -0
  8. package/dist/index.d.ts.map +1 -0
  9. package/dist/index.js +1 -0
  10. package/dist/index.js.map +1 -0
  11. package/dist/mcp-server/resources/gitWorkingDir/index.d.ts +6 -0
  12. package/dist/mcp-server/resources/gitWorkingDir/index.d.ts.map +1 -0
  13. package/dist/mcp-server/resources/gitWorkingDir/index.js +1 -0
  14. package/dist/mcp-server/resources/gitWorkingDir/index.js.map +1 -0
  15. package/dist/mcp-server/resources/gitWorkingDir/logic.d.ts +15 -0
  16. package/dist/mcp-server/resources/gitWorkingDir/logic.d.ts.map +1 -0
  17. package/dist/mcp-server/resources/gitWorkingDir/logic.js +1 -0
  18. package/dist/mcp-server/resources/gitWorkingDir/logic.js.map +1 -0
  19. package/dist/mcp-server/resources/gitWorkingDir/registration.d.ts +15 -0
  20. package/dist/mcp-server/resources/gitWorkingDir/registration.d.ts.map +1 -0
  21. package/dist/mcp-server/resources/gitWorkingDir/registration.js +9 -7
  22. package/dist/mcp-server/resources/gitWorkingDir/registration.js.map +1 -0
  23. package/dist/mcp-server/server.d.ts +13 -0
  24. package/dist/mcp-server/server.d.ts.map +1 -0
  25. package/dist/mcp-server/server.js +17 -6
  26. package/dist/mcp-server/server.js.map +1 -0
  27. package/dist/mcp-server/tools/gitAdd/index.d.ts +6 -0
  28. package/dist/mcp-server/tools/gitAdd/index.d.ts.map +1 -0
  29. package/dist/mcp-server/tools/gitAdd/index.js +1 -0
  30. package/dist/mcp-server/tools/gitAdd/index.js.map +1 -0
  31. package/dist/mcp-server/tools/gitAdd/logic.d.ts +167 -0
  32. package/dist/mcp-server/tools/gitAdd/logic.d.ts.map +1 -0
  33. package/dist/mcp-server/tools/gitAdd/logic.js +24 -5
  34. package/dist/mcp-server/tools/gitAdd/logic.js.map +1 -0
  35. package/dist/mcp-server/tools/gitAdd/registration.d.ts +6 -0
  36. package/dist/mcp-server/tools/gitAdd/registration.d.ts.map +1 -0
  37. package/dist/mcp-server/tools/gitAdd/registration.js +5 -2
  38. package/dist/mcp-server/tools/gitAdd/registration.js.map +1 -0
  39. package/dist/mcp-server/tools/gitBranch/index.d.ts +6 -0
  40. package/dist/mcp-server/tools/gitBranch/index.d.ts.map +1 -0
  41. package/dist/mcp-server/tools/gitBranch/index.js +1 -0
  42. package/dist/mcp-server/tools/gitBranch/index.js.map +1 -0
  43. package/dist/mcp-server/tools/gitBranch/logic.d.ts +175 -0
  44. package/dist/mcp-server/tools/gitBranch/logic.d.ts.map +1 -0
  45. package/dist/mcp-server/tools/gitBranch/logic.js +75 -27
  46. package/dist/mcp-server/tools/gitBranch/logic.js.map +1 -0
  47. package/dist/mcp-server/tools/gitBranch/registration.d.ts +16 -0
  48. package/dist/mcp-server/tools/gitBranch/registration.d.ts.map +1 -0
  49. package/dist/mcp-server/tools/gitBranch/registration.js +13 -4
  50. package/dist/mcp-server/tools/gitBranch/registration.js.map +1 -0
  51. package/dist/mcp-server/tools/gitCheckout/index.d.ts +6 -0
  52. package/dist/mcp-server/tools/gitCheckout/index.d.ts.map +1 -0
  53. package/dist/mcp-server/tools/gitCheckout/index.js +1 -0
  54. package/dist/mcp-server/tools/gitCheckout/index.js.map +1 -0
  55. package/dist/mcp-server/tools/gitCheckout/logic.d.ts +184 -0
  56. package/dist/mcp-server/tools/gitCheckout/logic.d.ts.map +1 -0
  57. package/dist/mcp-server/tools/gitCheckout/logic.js +45 -10
  58. package/dist/mcp-server/tools/gitCheckout/logic.js.map +1 -0
  59. package/dist/mcp-server/tools/gitCheckout/registration.d.ts +16 -0
  60. package/dist/mcp-server/tools/gitCheckout/registration.d.ts.map +1 -0
  61. package/dist/mcp-server/tools/gitCheckout/registration.js +12 -3
  62. package/dist/mcp-server/tools/gitCheckout/registration.js.map +1 -0
  63. package/dist/mcp-server/tools/gitCherryPick/index.d.ts +6 -0
  64. package/dist/mcp-server/tools/gitCherryPick/index.d.ts.map +1 -0
  65. package/dist/mcp-server/tools/gitCherryPick/index.js +1 -0
  66. package/dist/mcp-server/tools/gitCherryPick/index.js.map +1 -0
  67. package/dist/mcp-server/tools/gitCherryPick/logic.d.ts +190 -0
  68. package/dist/mcp-server/tools/gitCherryPick/logic.d.ts.map +1 -0
  69. package/dist/mcp-server/tools/gitCherryPick/logic.js +38 -10
  70. package/dist/mcp-server/tools/gitCherryPick/logic.js.map +1 -0
  71. package/dist/mcp-server/tools/gitCherryPick/registration.d.ts +16 -0
  72. package/dist/mcp-server/tools/gitCherryPick/registration.d.ts.map +1 -0
  73. package/dist/mcp-server/tools/gitCherryPick/registration.js +12 -3
  74. package/dist/mcp-server/tools/gitCherryPick/registration.js.map +1 -0
  75. package/dist/mcp-server/tools/gitClean/index.d.ts +6 -0
  76. package/dist/mcp-server/tools/gitClean/index.d.ts.map +1 -0
  77. package/dist/mcp-server/tools/gitClean/index.js +1 -0
  78. package/dist/mcp-server/tools/gitClean/index.js.map +1 -0
  79. package/dist/mcp-server/tools/gitClean/logic.d.ts +187 -0
  80. package/dist/mcp-server/tools/gitClean/logic.d.ts.map +1 -0
  81. package/dist/mcp-server/tools/gitClean/logic.js +48 -11
  82. package/dist/mcp-server/tools/gitClean/logic.js.map +1 -0
  83. package/dist/mcp-server/tools/gitClean/registration.d.ts +16 -0
  84. package/dist/mcp-server/tools/gitClean/registration.d.ts.map +1 -0
  85. package/dist/mcp-server/tools/gitClean/registration.js +12 -3
  86. package/dist/mcp-server/tools/gitClean/registration.js.map +1 -0
  87. package/dist/mcp-server/tools/gitClearWorkingDir/index.d.ts +6 -0
  88. package/dist/mcp-server/tools/gitClearWorkingDir/index.d.ts.map +1 -0
  89. package/dist/mcp-server/tools/gitClearWorkingDir/index.js +1 -0
  90. package/dist/mcp-server/tools/gitClearWorkingDir/index.js.map +1 -0
  91. package/dist/mcp-server/tools/gitClearWorkingDir/logic.d.ts +33 -0
  92. package/dist/mcp-server/tools/gitClearWorkingDir/logic.d.ts.map +1 -0
  93. package/dist/mcp-server/tools/gitClearWorkingDir/logic.js +21 -5
  94. package/dist/mcp-server/tools/gitClearWorkingDir/logic.js.map +1 -0
  95. package/dist/mcp-server/tools/gitClearWorkingDir/registration.d.ts +16 -0
  96. package/dist/mcp-server/tools/gitClearWorkingDir/registration.d.ts.map +1 -0
  97. package/dist/mcp-server/tools/gitClearWorkingDir/registration.js +12 -3
  98. package/dist/mcp-server/tools/gitClearWorkingDir/registration.js.map +1 -0
  99. package/dist/mcp-server/tools/gitClone/index.d.ts +6 -0
  100. package/dist/mcp-server/tools/gitClone/index.d.ts.map +1 -0
  101. package/dist/mcp-server/tools/gitClone/index.js +1 -0
  102. package/dist/mcp-server/tools/gitClone/index.js.map +1 -0
  103. package/dist/mcp-server/tools/gitClone/logic.d.ts +46 -0
  104. package/dist/mcp-server/tools/gitClone/logic.d.ts.map +1 -0
  105. package/dist/mcp-server/tools/gitClone/logic.js +33 -10
  106. package/dist/mcp-server/tools/gitClone/logic.js.map +1 -0
  107. package/dist/mcp-server/tools/gitClone/registration.d.ts +12 -0
  108. package/dist/mcp-server/tools/gitClone/registration.d.ts.map +1 -0
  109. package/dist/mcp-server/tools/gitClone/registration.js +13 -5
  110. package/dist/mcp-server/tools/gitClone/registration.js.map +1 -0
  111. package/dist/mcp-server/tools/gitCommit/index.d.ts +6 -0
  112. package/dist/mcp-server/tools/gitCommit/index.d.ts.map +1 -0
  113. package/dist/mcp-server/tools/gitCommit/index.js +1 -0
  114. package/dist/mcp-server/tools/gitCommit/index.js.map +1 -0
  115. package/dist/mcp-server/tools/gitCommit/logic.d.ts +211 -0
  116. package/dist/mcp-server/tools/gitCommit/logic.d.ts.map +1 -0
  117. package/dist/mcp-server/tools/gitCommit/logic.js +67 -14
  118. package/dist/mcp-server/tools/gitCommit/logic.js.map +1 -0
  119. package/dist/mcp-server/tools/gitCommit/registration.d.ts +16 -0
  120. package/dist/mcp-server/tools/gitCommit/registration.d.ts.map +1 -0
  121. package/dist/mcp-server/tools/gitCommit/registration.js +12 -3
  122. package/dist/mcp-server/tools/gitCommit/registration.js.map +1 -0
  123. package/dist/mcp-server/tools/gitDiff/index.d.ts +6 -0
  124. package/dist/mcp-server/tools/gitDiff/index.d.ts.map +1 -0
  125. package/dist/mcp-server/tools/gitDiff/index.js +1 -0
  126. package/dist/mcp-server/tools/gitDiff/index.js.map +1 -0
  127. package/dist/mcp-server/tools/gitDiff/logic.d.ts +87 -0
  128. package/dist/mcp-server/tools/gitDiff/logic.d.ts.map +1 -0
  129. package/dist/mcp-server/tools/gitDiff/logic.js +59 -15
  130. package/dist/mcp-server/tools/gitDiff/logic.js.map +1 -0
  131. package/dist/mcp-server/tools/gitDiff/registration.d.ts +16 -0
  132. package/dist/mcp-server/tools/gitDiff/registration.d.ts.map +1 -0
  133. package/dist/mcp-server/tools/gitDiff/registration.js +13 -3
  134. package/dist/mcp-server/tools/gitDiff/registration.js.map +1 -0
  135. package/dist/mcp-server/tools/gitFetch/index.d.ts +6 -0
  136. package/dist/mcp-server/tools/gitFetch/index.d.ts.map +1 -0
  137. package/dist/mcp-server/tools/gitFetch/index.js +1 -0
  138. package/dist/mcp-server/tools/gitFetch/index.js.map +1 -0
  139. package/dist/mcp-server/tools/gitFetch/logic.d.ts +45 -0
  140. package/dist/mcp-server/tools/gitFetch/logic.d.ts.map +1 -0
  141. package/dist/mcp-server/tools/gitFetch/logic.js +18 -5
  142. package/dist/mcp-server/tools/gitFetch/logic.js.map +1 -0
  143. package/dist/mcp-server/tools/gitFetch/registration.d.ts +16 -0
  144. package/dist/mcp-server/tools/gitFetch/registration.d.ts.map +1 -0
  145. package/dist/mcp-server/tools/gitFetch/registration.js +12 -3
  146. package/dist/mcp-server/tools/gitFetch/registration.js.map +1 -0
  147. package/dist/mcp-server/tools/gitInit/index.d.ts +6 -0
  148. package/dist/mcp-server/tools/gitInit/index.d.ts.map +1 -0
  149. package/dist/mcp-server/tools/gitInit/index.js +1 -0
  150. package/dist/mcp-server/tools/gitInit/index.js.map +1 -0
  151. package/dist/mcp-server/tools/gitInit/logic.d.ts +46 -0
  152. package/dist/mcp-server/tools/gitInit/logic.d.ts.map +1 -0
  153. package/dist/mcp-server/tools/gitInit/logic.js +73 -21
  154. package/dist/mcp-server/tools/gitInit/logic.js.map +1 -0
  155. package/dist/mcp-server/tools/gitInit/registration.d.ts +12 -0
  156. package/dist/mcp-server/tools/gitInit/registration.d.ts.map +1 -0
  157. package/dist/mcp-server/tools/gitInit/registration.js +13 -5
  158. package/dist/mcp-server/tools/gitInit/registration.js.map +1 -0
  159. package/dist/mcp-server/tools/gitLog/index.d.ts +6 -0
  160. package/dist/mcp-server/tools/gitLog/index.d.ts.map +1 -0
  161. package/dist/mcp-server/tools/gitLog/index.js +1 -0
  162. package/dist/mcp-server/tools/gitLog/index.js.map +1 -0
  163. package/dist/mcp-server/tools/gitLog/logic.d.ts +92 -0
  164. package/dist/mcp-server/tools/gitLog/logic.d.ts.map +1 -0
  165. package/dist/mcp-server/tools/gitLog/logic.js +84 -26
  166. package/dist/mcp-server/tools/gitLog/logic.js.map +1 -0
  167. package/dist/mcp-server/tools/gitLog/registration.d.ts +16 -0
  168. package/dist/mcp-server/tools/gitLog/registration.d.ts.map +1 -0
  169. package/dist/mcp-server/tools/gitLog/registration.js +12 -3
  170. package/dist/mcp-server/tools/gitLog/registration.js.map +1 -0
  171. package/dist/mcp-server/tools/gitMerge/index.d.ts +6 -0
  172. package/dist/mcp-server/tools/gitMerge/index.d.ts.map +1 -0
  173. package/dist/mcp-server/tools/gitMerge/index.js +1 -0
  174. package/dist/mcp-server/tools/gitMerge/index.js.map +1 -0
  175. package/dist/mcp-server/tools/gitMerge/logic.d.ts +196 -0
  176. package/dist/mcp-server/tools/gitMerge/logic.d.ts.map +1 -0
  177. package/dist/mcp-server/tools/gitMerge/logic.js +44 -11
  178. package/dist/mcp-server/tools/gitMerge/logic.js.map +1 -0
  179. package/dist/mcp-server/tools/gitMerge/registration.d.ts +16 -0
  180. package/dist/mcp-server/tools/gitMerge/registration.d.ts.map +1 -0
  181. package/dist/mcp-server/tools/gitMerge/registration.js +12 -3
  182. package/dist/mcp-server/tools/gitMerge/registration.js.map +1 -0
  183. package/dist/mcp-server/tools/gitPull/index.d.ts +6 -0
  184. package/dist/mcp-server/tools/gitPull/index.d.ts.map +1 -0
  185. package/dist/mcp-server/tools/gitPull/index.js +1 -0
  186. package/dist/mcp-server/tools/gitPull/index.js.map +1 -0
  187. package/dist/mcp-server/tools/gitPull/logic.d.ts +184 -0
  188. package/dist/mcp-server/tools/gitPull/logic.d.ts.map +1 -0
  189. package/dist/mcp-server/tools/gitPull/logic.js +31 -7
  190. package/dist/mcp-server/tools/gitPull/logic.js.map +1 -0
  191. package/dist/mcp-server/tools/gitPull/registration.d.ts +16 -0
  192. package/dist/mcp-server/tools/gitPull/registration.d.ts.map +1 -0
  193. package/dist/mcp-server/tools/gitPull/registration.js +12 -3
  194. package/dist/mcp-server/tools/gitPull/registration.js.map +1 -0
  195. package/dist/mcp-server/tools/gitPush/index.d.ts +6 -0
  196. package/dist/mcp-server/tools/gitPush/index.d.ts.map +1 -0
  197. package/dist/mcp-server/tools/gitPush/index.js +1 -0
  198. package/dist/mcp-server/tools/gitPush/index.js.map +1 -0
  199. package/dist/mcp-server/tools/gitPush/logic.d.ts +134 -0
  200. package/dist/mcp-server/tools/gitPush/logic.d.ts.map +1 -0
  201. package/dist/mcp-server/tools/gitPush/logic.js +28 -9
  202. package/dist/mcp-server/tools/gitPush/logic.js.map +1 -0
  203. package/dist/mcp-server/tools/gitPush/registration.d.ts +16 -0
  204. package/dist/mcp-server/tools/gitPush/registration.d.ts.map +1 -0
  205. package/dist/mcp-server/tools/gitPush/registration.js +12 -3
  206. package/dist/mcp-server/tools/gitPush/registration.js.map +1 -0
  207. package/dist/mcp-server/tools/gitRebase/index.d.ts +6 -0
  208. package/dist/mcp-server/tools/gitRebase/index.d.ts.map +1 -0
  209. package/dist/mcp-server/tools/gitRebase/index.js +1 -0
  210. package/dist/mcp-server/tools/gitRebase/index.js.map +1 -0
  211. package/dist/mcp-server/tools/gitRebase/logic.d.ts +242 -0
  212. package/dist/mcp-server/tools/gitRebase/logic.d.ts.map +1 -0
  213. package/dist/mcp-server/tools/gitRebase/logic.js +44 -10
  214. package/dist/mcp-server/tools/gitRebase/logic.js.map +1 -0
  215. package/dist/mcp-server/tools/gitRebase/registration.d.ts +16 -0
  216. package/dist/mcp-server/tools/gitRebase/registration.d.ts.map +1 -0
  217. package/dist/mcp-server/tools/gitRebase/registration.js +12 -3
  218. package/dist/mcp-server/tools/gitRebase/registration.js.map +1 -0
  219. package/dist/mcp-server/tools/gitRemote/index.d.ts +6 -0
  220. package/dist/mcp-server/tools/gitRemote/index.d.ts.map +1 -0
  221. package/dist/mcp-server/tools/gitRemote/index.js +1 -0
  222. package/dist/mcp-server/tools/gitRemote/index.js.map +1 -0
  223. package/dist/mcp-server/tools/gitRemote/logic.d.ts +107 -0
  224. package/dist/mcp-server/tools/gitRemote/logic.d.ts.map +1 -0
  225. package/dist/mcp-server/tools/gitRemote/logic.js +45 -19
  226. package/dist/mcp-server/tools/gitRemote/logic.js.map +1 -0
  227. package/dist/mcp-server/tools/gitRemote/registration.d.ts +16 -0
  228. package/dist/mcp-server/tools/gitRemote/registration.d.ts.map +1 -0
  229. package/dist/mcp-server/tools/gitRemote/registration.js +12 -3
  230. package/dist/mcp-server/tools/gitRemote/registration.js.map +1 -0
  231. package/dist/mcp-server/tools/gitReset/index.d.ts +6 -0
  232. package/dist/mcp-server/tools/gitReset/index.d.ts.map +1 -0
  233. package/dist/mcp-server/tools/gitReset/index.js +1 -0
  234. package/dist/mcp-server/tools/gitReset/index.js.map +1 -0
  235. package/dist/mcp-server/tools/gitReset/logic.d.ts +178 -0
  236. package/dist/mcp-server/tools/gitReset/logic.d.ts.map +1 -0
  237. package/dist/mcp-server/tools/gitReset/logic.js +24 -7
  238. package/dist/mcp-server/tools/gitReset/logic.js.map +1 -0
  239. package/dist/mcp-server/tools/gitReset/registration.d.ts +16 -0
  240. package/dist/mcp-server/tools/gitReset/registration.d.ts.map +1 -0
  241. package/dist/mcp-server/tools/gitReset/registration.js +12 -3
  242. package/dist/mcp-server/tools/gitReset/registration.js.map +1 -0
  243. package/dist/mcp-server/tools/gitSetWorkingDir/index.d.ts +6 -0
  244. package/dist/mcp-server/tools/gitSetWorkingDir/index.d.ts.map +1 -0
  245. package/dist/mcp-server/tools/gitSetWorkingDir/index.js +1 -0
  246. package/dist/mcp-server/tools/gitSetWorkingDir/index.js.map +1 -0
  247. package/dist/mcp-server/tools/gitSetWorkingDir/logic.d.ts +45 -0
  248. package/dist/mcp-server/tools/gitSetWorkingDir/logic.d.ts.map +1 -0
  249. package/dist/mcp-server/tools/gitSetWorkingDir/logic.js +29 -8
  250. package/dist/mcp-server/tools/gitSetWorkingDir/logic.js.map +1 -0
  251. package/dist/mcp-server/tools/gitSetWorkingDir/registration.d.ts +16 -0
  252. package/dist/mcp-server/tools/gitSetWorkingDir/registration.d.ts.map +1 -0
  253. package/dist/mcp-server/tools/gitSetWorkingDir/registration.js +12 -3
  254. package/dist/mcp-server/tools/gitSetWorkingDir/registration.js.map +1 -0
  255. package/dist/mcp-server/tools/gitShow/index.d.ts +6 -0
  256. package/dist/mcp-server/tools/gitShow/index.d.ts.map +1 -0
  257. package/dist/mcp-server/tools/gitShow/index.js +1 -0
  258. package/dist/mcp-server/tools/gitShow/index.js.map +1 -0
  259. package/dist/mcp-server/tools/gitShow/logic.d.ts +39 -0
  260. package/dist/mcp-server/tools/gitShow/logic.d.ts.map +1 -0
  261. package/dist/mcp-server/tools/gitShow/logic.js +17 -5
  262. package/dist/mcp-server/tools/gitShow/logic.js.map +1 -0
  263. package/dist/mcp-server/tools/gitShow/registration.d.ts +16 -0
  264. package/dist/mcp-server/tools/gitShow/registration.d.ts.map +1 -0
  265. package/dist/mcp-server/tools/gitShow/registration.js +13 -3
  266. package/dist/mcp-server/tools/gitShow/registration.js.map +1 -0
  267. package/dist/mcp-server/tools/gitStash/index.d.ts +6 -0
  268. package/dist/mcp-server/tools/gitStash/index.d.ts.map +1 -0
  269. package/dist/mcp-server/tools/gitStash/index.js +1 -0
  270. package/dist/mcp-server/tools/gitStash/index.js.map +1 -0
  271. package/dist/mcp-server/tools/gitStash/logic.d.ts +236 -0
  272. package/dist/mcp-server/tools/gitStash/logic.d.ts.map +1 -0
  273. package/dist/mcp-server/tools/gitStash/logic.js +76 -18
  274. package/dist/mcp-server/tools/gitStash/logic.js.map +1 -0
  275. package/dist/mcp-server/tools/gitStash/registration.d.ts +16 -0
  276. package/dist/mcp-server/tools/gitStash/registration.d.ts.map +1 -0
  277. package/dist/mcp-server/tools/gitStash/registration.js +12 -3
  278. package/dist/mcp-server/tools/gitStash/registration.js.map +1 -0
  279. package/dist/mcp-server/tools/gitStatus/index.d.ts +6 -0
  280. package/dist/mcp-server/tools/gitStatus/index.d.ts.map +1 -0
  281. package/dist/mcp-server/tools/gitStatus/index.js +1 -0
  282. package/dist/mcp-server/tools/gitStatus/index.js.map +1 -0
  283. package/dist/mcp-server/tools/gitStatus/logic.d.ts +115 -0
  284. package/dist/mcp-server/tools/gitStatus/logic.d.ts.map +1 -0
  285. package/dist/mcp-server/tools/gitStatus/logic.js +38 -23
  286. package/dist/mcp-server/tools/gitStatus/logic.js.map +1 -0
  287. package/dist/mcp-server/tools/gitStatus/registration.d.ts +16 -0
  288. package/dist/mcp-server/tools/gitStatus/registration.d.ts.map +1 -0
  289. package/dist/mcp-server/tools/gitStatus/registration.js +12 -3
  290. package/dist/mcp-server/tools/gitStatus/registration.js.map +1 -0
  291. package/dist/mcp-server/tools/gitTag/index.d.ts +6 -0
  292. package/dist/mcp-server/tools/gitTag/index.d.ts.map +1 -0
  293. package/dist/mcp-server/tools/gitTag/index.js +1 -0
  294. package/dist/mcp-server/tools/gitTag/index.js.map +1 -0
  295. package/dist/mcp-server/tools/gitTag/logic.d.ts +121 -0
  296. package/dist/mcp-server/tools/gitTag/logic.d.ts.map +1 -0
  297. package/dist/mcp-server/tools/gitTag/logic.js +59 -17
  298. package/dist/mcp-server/tools/gitTag/logic.js.map +1 -0
  299. package/dist/mcp-server/tools/gitTag/registration.d.ts +16 -0
  300. package/dist/mcp-server/tools/gitTag/registration.d.ts.map +1 -0
  301. package/dist/mcp-server/tools/gitTag/registration.js +12 -3
  302. package/dist/mcp-server/tools/gitTag/registration.js.map +1 -0
  303. package/dist/mcp-server/tools/gitWorktree/index.d.ts +6 -0
  304. package/dist/mcp-server/tools/gitWorktree/index.d.ts.map +1 -0
  305. package/dist/mcp-server/tools/gitWorktree/index.js +1 -0
  306. package/dist/mcp-server/tools/gitWorktree/index.js.map +1 -0
  307. package/dist/mcp-server/tools/gitWorktree/logic.d.ts +218 -0
  308. package/dist/mcp-server/tools/gitWorktree/logic.d.ts.map +1 -0
  309. package/dist/mcp-server/tools/gitWorktree/logic.js +61 -17
  310. package/dist/mcp-server/tools/gitWorktree/logic.js.map +1 -0
  311. package/dist/mcp-server/tools/gitWorktree/registration.d.ts +16 -0
  312. package/dist/mcp-server/tools/gitWorktree/registration.d.ts.map +1 -0
  313. package/dist/mcp-server/tools/gitWorktree/registration.js +12 -3
  314. package/dist/mcp-server/tools/gitWorktree/registration.js.map +1 -0
  315. package/dist/mcp-server/tools/gitWrapupInstructions/index.d.ts +6 -0
  316. package/dist/mcp-server/tools/gitWrapupInstructions/index.d.ts.map +1 -0
  317. package/dist/mcp-server/tools/gitWrapupInstructions/index.js +1 -0
  318. package/dist/mcp-server/tools/gitWrapupInstructions/index.js.map +1 -0
  319. package/dist/mcp-server/tools/gitWrapupInstructions/logic.d.ts +175 -0
  320. package/dist/mcp-server/tools/gitWrapupInstructions/logic.d.ts.map +1 -0
  321. package/dist/mcp-server/tools/gitWrapupInstructions/logic.js +20 -6
  322. package/dist/mcp-server/tools/gitWrapupInstructions/logic.js.map +1 -0
  323. package/dist/mcp-server/tools/gitWrapupInstructions/registration.d.ts +16 -0
  324. package/dist/mcp-server/tools/gitWrapupInstructions/registration.d.ts.map +1 -0
  325. package/dist/mcp-server/tools/gitWrapupInstructions/registration.js +12 -3
  326. package/dist/mcp-server/tools/gitWrapupInstructions/registration.js.map +1 -0
  327. package/dist/mcp-server/transports/auth/authFactory.d.ts +11 -0
  328. package/dist/mcp-server/transports/auth/authFactory.d.ts.map +1 -0
  329. package/dist/mcp-server/transports/auth/authFactory.js +1 -0
  330. package/dist/mcp-server/transports/auth/authFactory.js.map +1 -0
  331. package/dist/mcp-server/transports/auth/authMiddleware.d.ts +20 -0
  332. package/dist/mcp-server/transports/auth/authMiddleware.d.ts.map +1 -0
  333. package/dist/mcp-server/transports/auth/authMiddleware.js +1 -0
  334. package/dist/mcp-server/transports/auth/authMiddleware.js.map +1 -0
  335. package/dist/mcp-server/transports/auth/index.d.ts +14 -0
  336. package/dist/mcp-server/transports/auth/index.d.ts.map +1 -0
  337. package/dist/mcp-server/transports/auth/index.js +1 -0
  338. package/dist/mcp-server/transports/auth/index.js.map +1 -0
  339. package/dist/mcp-server/transports/auth/lib/authContext.d.ts +34 -0
  340. package/dist/mcp-server/transports/auth/lib/authContext.d.ts.map +1 -0
  341. package/dist/mcp-server/transports/auth/lib/authContext.js +1 -0
  342. package/dist/mcp-server/transports/auth/lib/authContext.js.map +1 -0
  343. package/dist/mcp-server/transports/auth/lib/authTypes.d.ts +13 -0
  344. package/dist/mcp-server/transports/auth/lib/authTypes.d.ts.map +1 -0
  345. package/dist/mcp-server/transports/auth/lib/authTypes.js +1 -0
  346. package/dist/mcp-server/transports/auth/lib/authTypes.js.map +1 -0
  347. package/dist/mcp-server/transports/auth/lib/authUtils.d.ts +19 -0
  348. package/dist/mcp-server/transports/auth/lib/authUtils.d.ts.map +1 -0
  349. package/dist/mcp-server/transports/auth/lib/authUtils.js +1 -0
  350. package/dist/mcp-server/transports/auth/lib/authUtils.js.map +1 -0
  351. package/dist/mcp-server/transports/auth/strategies/authStrategy.d.ts +18 -0
  352. package/dist/mcp-server/transports/auth/strategies/authStrategy.d.ts.map +1 -0
  353. package/dist/mcp-server/transports/auth/strategies/authStrategy.js +1 -0
  354. package/dist/mcp-server/transports/auth/strategies/authStrategy.js.map +1 -0
  355. package/dist/mcp-server/transports/auth/strategies/jwtStrategy.d.ts +8 -0
  356. package/dist/mcp-server/transports/auth/strategies/jwtStrategy.d.ts.map +1 -0
  357. package/dist/mcp-server/transports/auth/strategies/jwtStrategy.js +5 -0
  358. package/dist/mcp-server/transports/auth/strategies/jwtStrategy.js.map +1 -0
  359. package/dist/mcp-server/transports/auth/strategies/oauthStrategy.d.ts +8 -0
  360. package/dist/mcp-server/transports/auth/strategies/oauthStrategy.d.ts.map +1 -0
  361. package/dist/mcp-server/transports/auth/strategies/oauthStrategy.js +6 -0
  362. package/dist/mcp-server/transports/auth/strategies/oauthStrategy.js.map +1 -0
  363. package/dist/mcp-server/transports/core/baseTransportManager.d.ts +18 -0
  364. package/dist/mcp-server/transports/core/baseTransportManager.d.ts.map +1 -0
  365. package/dist/mcp-server/transports/core/baseTransportManager.js +1 -0
  366. package/dist/mcp-server/transports/core/baseTransportManager.js.map +1 -0
  367. package/dist/mcp-server/transports/core/honoNodeBridge.d.ts +24 -0
  368. package/dist/mcp-server/transports/core/honoNodeBridge.d.ts.map +1 -0
  369. package/dist/mcp-server/transports/core/honoNodeBridge.js +11 -4
  370. package/dist/mcp-server/transports/core/honoNodeBridge.js.map +1 -0
  371. package/dist/mcp-server/transports/core/statefulTransportManager.d.ts +32 -0
  372. package/dist/mcp-server/transports/core/statefulTransportManager.d.ts.map +1 -0
  373. package/dist/mcp-server/transports/core/statefulTransportManager.js +1 -0
  374. package/dist/mcp-server/transports/core/statefulTransportManager.js.map +1 -0
  375. package/dist/mcp-server/transports/core/statelessTransportManager.d.ts +21 -0
  376. package/dist/mcp-server/transports/core/statelessTransportManager.d.ts.map +1 -0
  377. package/dist/mcp-server/transports/core/statelessTransportManager.js +1 -0
  378. package/dist/mcp-server/transports/core/statelessTransportManager.js.map +1 -0
  379. package/dist/mcp-server/transports/core/transportTypes.d.ts +69 -0
  380. package/dist/mcp-server/transports/core/transportTypes.d.ts.map +1 -0
  381. package/dist/mcp-server/transports/core/transportTypes.js +1 -0
  382. package/dist/mcp-server/transports/core/transportTypes.js.map +1 -0
  383. package/dist/mcp-server/transports/http/httpErrorHandler.d.ts +22 -0
  384. package/dist/mcp-server/transports/http/httpErrorHandler.d.ts.map +1 -0
  385. package/dist/mcp-server/transports/http/httpErrorHandler.js +1 -0
  386. package/dist/mcp-server/transports/http/httpErrorHandler.js.map +1 -0
  387. package/dist/mcp-server/transports/http/httpTransport.d.ts +23 -0
  388. package/dist/mcp-server/transports/http/httpTransport.d.ts.map +1 -0
  389. package/dist/mcp-server/transports/http/httpTransport.js +29 -10
  390. package/dist/mcp-server/transports/http/httpTransport.js.map +1 -0
  391. package/dist/mcp-server/transports/http/httpTypes.d.ts +17 -0
  392. package/dist/mcp-server/transports/http/httpTypes.d.ts.map +1 -0
  393. package/dist/mcp-server/transports/http/httpTypes.js +1 -0
  394. package/dist/mcp-server/transports/http/httpTypes.js.map +1 -0
  395. package/dist/mcp-server/transports/http/index.d.ts +8 -0
  396. package/dist/mcp-server/transports/http/index.d.ts.map +1 -0
  397. package/dist/mcp-server/transports/http/index.js +1 -0
  398. package/dist/mcp-server/transports/http/index.js.map +1 -0
  399. package/dist/mcp-server/transports/http/mcpTransportMiddleware.d.ts +27 -0
  400. package/dist/mcp-server/transports/http/mcpTransportMiddleware.d.ts.map +1 -0
  401. package/dist/mcp-server/transports/http/mcpTransportMiddleware.js +27 -24
  402. package/dist/mcp-server/transports/http/mcpTransportMiddleware.js.map +1 -0
  403. package/dist/mcp-server/transports/stdio/index.d.ts +6 -0
  404. package/dist/mcp-server/transports/stdio/index.d.ts.map +1 -0
  405. package/dist/mcp-server/transports/stdio/index.js +1 -0
  406. package/dist/mcp-server/transports/stdio/index.js.map +1 -0
  407. package/dist/mcp-server/transports/stdio/stdioTransport.d.ts +43 -0
  408. package/dist/mcp-server/transports/stdio/stdioTransport.d.ts.map +1 -0
  409. package/dist/mcp-server/transports/stdio/stdioTransport.js +1 -0
  410. package/dist/mcp-server/transports/stdio/stdioTransport.js.map +1 -0
  411. package/dist/types-global/errors.d.ts +122 -0
  412. package/dist/types-global/errors.d.ts.map +1 -0
  413. package/dist/types-global/errors.js +1 -0
  414. package/dist/types-global/errors.js.map +1 -0
  415. package/dist/utils/index.d.ts +5 -0
  416. package/dist/utils/index.d.ts.map +1 -0
  417. package/dist/utils/index.js +1 -0
  418. package/dist/utils/index.js.map +1 -0
  419. package/dist/utils/internal/errorHandler.d.ts +91 -0
  420. package/dist/utils/internal/errorHandler.d.ts.map +1 -0
  421. package/dist/utils/internal/errorHandler.js +8 -6
  422. package/dist/utils/internal/errorHandler.js.map +1 -0
  423. package/dist/utils/internal/index.d.ts +4 -0
  424. package/dist/utils/internal/index.d.ts.map +1 -0
  425. package/dist/utils/internal/index.js +1 -0
  426. package/dist/utils/internal/index.js.map +1 -0
  427. package/dist/utils/internal/logger.d.ts +55 -0
  428. package/dist/utils/internal/logger.d.ts.map +1 -0
  429. package/dist/utils/internal/logger.js +19 -5
  430. package/dist/utils/internal/logger.js.map +1 -0
  431. package/dist/utils/internal/requestContext.d.ts +48 -0
  432. package/dist/utils/internal/requestContext.d.ts.map +1 -0
  433. package/dist/utils/internal/requestContext.js +1 -0
  434. package/dist/utils/internal/requestContext.js.map +1 -0
  435. package/dist/utils/metrics/index.d.ts +2 -0
  436. package/dist/utils/metrics/index.d.ts.map +1 -0
  437. package/dist/utils/metrics/index.js +1 -0
  438. package/dist/utils/metrics/index.js.map +1 -0
  439. package/dist/utils/metrics/tokenCounter.d.ts +28 -0
  440. package/dist/utils/metrics/tokenCounter.d.ts.map +1 -0
  441. package/dist/utils/metrics/tokenCounter.js +1 -0
  442. package/dist/utils/metrics/tokenCounter.js.map +1 -0
  443. package/dist/utils/parsing/dateParser.d.ts +25 -0
  444. package/dist/utils/parsing/dateParser.d.ts.map +1 -0
  445. package/dist/utils/parsing/dateParser.js +57 -56
  446. package/dist/utils/parsing/dateParser.js.map +1 -0
  447. package/dist/utils/parsing/index.d.ts +3 -0
  448. package/dist/utils/parsing/index.d.ts.map +1 -0
  449. package/dist/utils/parsing/index.js +1 -0
  450. package/dist/utils/parsing/index.js.map +1 -0
  451. package/dist/utils/parsing/jsonParser.d.ts +83 -0
  452. package/dist/utils/parsing/jsonParser.d.ts.map +1 -0
  453. package/dist/utils/parsing/jsonParser.js +85 -45
  454. package/dist/utils/parsing/jsonParser.js.map +1 -0
  455. package/dist/utils/security/idGenerator.d.ts +94 -0
  456. package/dist/utils/security/idGenerator.d.ts.map +1 -0
  457. package/dist/utils/security/idGenerator.js +9 -2
  458. package/dist/utils/security/idGenerator.js.map +1 -0
  459. package/dist/utils/security/index.d.ts +4 -0
  460. package/dist/utils/security/index.d.ts.map +1 -0
  461. package/dist/utils/security/index.js +1 -0
  462. package/dist/utils/security/index.js.map +1 -0
  463. package/dist/utils/security/rateLimiter.d.ts +93 -0
  464. package/dist/utils/security/rateLimiter.d.ts.map +1 -0
  465. package/dist/utils/security/rateLimiter.js +1 -0
  466. package/dist/utils/security/rateLimiter.js.map +1 -0
  467. package/dist/utils/security/sanitization.d.ts +181 -0
  468. package/dist/utils/security/sanitization.d.ts.map +1 -0
  469. package/dist/utils/security/sanitization.js +6 -5
  470. package/dist/utils/security/sanitization.js.map +1 -0
  471. package/package.json +52 -34
@@ -5,36 +5,78 @@
5
5
  import { execFile } from "child_process";
6
6
  import { promisify } from "util";
7
7
  import { z } from "zod";
8
- import { logger, sanitization } from "../../../utils/index.js";
8
+ import { logger, sanitization, } from "../../../utils/index.js";
9
9
  import { McpError, BaseErrorCode } from "../../../types-global/errors.js";
10
10
  import { config } from "../../../config/index.js";
11
+ import { getGitStatus, GitStatusOutputSchema } from "../gitStatus/logic.js";
11
12
  const execFileAsync = promisify(execFile);
12
13
  // 1. DEFINE the Zod input schema.
13
14
  export const GitCommitInputSchema = z.object({
14
15
  path: z.string().default(".").describe("Path to the Git repository."),
15
- message: z.string().min(1).describe("Commit message, preferably following Conventional Commits format."),
16
- author: z.object({ name: z.string(), email: z.string().email() }).optional().describe("Override the commit author."),
17
- allowEmpty: z.boolean().default(false).describe("Allow creating a commit with no changes."),
16
+ message: z
17
+ .string()
18
+ .min(1)
19
+ .describe("Commit message, preferably following Conventional Commits format."),
20
+ author: z
21
+ .object({ name: z.string(), email: z.string().email() })
22
+ .optional()
23
+ .describe("Override the commit author."),
24
+ allowEmpty: z
25
+ .boolean()
26
+ .default(false)
27
+ .describe("Allow creating a commit with no changes."),
18
28
  amend: z.boolean().default(false).describe("Amend the previous commit."),
19
- forceUnsignedOnFailure: z.boolean().default(false).describe("If signing fails, attempt the commit without a signature."),
20
- filesToStage: z.array(z.string().min(1)).optional().describe("An array of file paths to stage before committing."),
29
+ forceUnsignedOnFailure: z
30
+ .boolean()
31
+ .default(false)
32
+ .describe("If signing fails, attempt the commit without a signature."),
33
+ filesToStage: z
34
+ .array(z.string().min(1))
35
+ .optional()
36
+ .describe("An array of file paths to stage before committing."),
21
37
  });
22
38
  // 2. DEFINE the Zod response schema.
23
39
  export const GitCommitOutputSchema = z.object({
24
40
  success: z.boolean().describe("Indicates if the command was successful."),
25
41
  message: z.string().describe("A summary message of the result."),
26
42
  commitHash: z.string().optional().describe("The hash of the new commit."),
27
- committedFiles: z.array(z.string()).optional().describe("A list of files included in the commit."),
28
- nothingToCommit: z.boolean().optional().describe("True if there were no changes to commit."),
43
+ committedFiles: z
44
+ .array(z.string())
45
+ .optional()
46
+ .describe("A list of files included in the commit."),
47
+ nothingToCommit: z
48
+ .boolean()
49
+ .optional()
50
+ .describe("True if there were no changes to commit."),
51
+ status: GitStatusOutputSchema.optional().describe("The status of the repository after the commit."),
29
52
  });
30
53
  async function stageFiles(targetPath, files, context) {
31
54
  const operation = "stageFilesForCommit";
32
55
  logger.debug(`Staging files: ${files.join(", ")}`, { ...context, operation });
33
- const sanitizedFiles = files.map(file => sanitization.sanitizePath(file, { rootDir: targetPath }).sanitizedPath);
34
- await execFileAsync("git", ["-C", targetPath, "add", "--", ...sanitizedFiles]);
56
+ const sanitizedFiles = files.map((file) => sanitization.sanitizePath(file, { rootDir: targetPath }).sanitizedPath);
57
+ await execFileAsync("git", [
58
+ "-C",
59
+ targetPath,
60
+ "add",
61
+ "--",
62
+ ...sanitizedFiles,
63
+ ]);
35
64
  }
36
65
  async function getCommittedFiles(targetPath, commitHash, context) {
37
- const { stdout } = await execFileAsync("git", ["-C", targetPath, "show", "--pretty=", "--name-only", commitHash]);
66
+ const operation = "getCommittedFiles";
67
+ const args = [
68
+ "-C",
69
+ targetPath,
70
+ "show",
71
+ "--pretty=",
72
+ "--name-only",
73
+ commitHash,
74
+ ];
75
+ logger.debug(`Executing command: git ${args.join(" ")}`, {
76
+ ...context,
77
+ operation,
78
+ });
79
+ const { stdout } = await execFileAsync("git", args);
38
80
  return stdout.trim().split("\n").filter(Boolean);
39
81
  }
40
82
  /**
@@ -64,7 +106,10 @@ export async function commitGitChanges(params, context) {
64
106
  const finalArgs = [...args];
65
107
  if (withSigning)
66
108
  finalArgs.push("-S");
67
- logger.debug(`Executing command: git ${finalArgs.join(" ")}`, { ...context, operation });
109
+ logger.debug(`Executing command: git ${finalArgs.join(" ")}`, {
110
+ ...context,
111
+ operation,
112
+ });
68
113
  return await execFileAsync("git", finalArgs);
69
114
  };
70
115
  let result;
@@ -73,7 +118,10 @@ export async function commitGitChanges(params, context) {
73
118
  result = await attemptCommit(shouldSign || false);
74
119
  }
75
120
  catch (error) {
76
- const isSigningError = (error.stderr || "").includes("gpg failed to sign");
121
+ const stderr = error && typeof error === "object" && "stderr" in error
122
+ ? String(error.stderr)
123
+ : "";
124
+ const isSigningError = stderr.includes("gpg failed to sign");
77
125
  if (shouldSign && isSigningError && params.forceUnsignedOnFailure) {
78
126
  logger.warning("Commit with signing failed. Retrying without signature.", { ...context, operation });
79
127
  result = await attemptCommit(false);
@@ -84,11 +132,16 @@ export async function commitGitChanges(params, context) {
84
132
  }
85
133
  const commitHashMatch = result.stdout.match(/([a-f0-9]{7,40})/);
86
134
  const commitHash = commitHashMatch ? commitHashMatch[1] : undefined;
87
- const committedFiles = commitHash ? await getCommittedFiles(targetPath, commitHash, context) : [];
135
+ const committedFiles = commitHash
136
+ ? await getCommittedFiles(targetPath, commitHash, context)
137
+ : [];
138
+ const status = await getGitStatus({ path: targetPath }, context);
88
139
  return {
89
140
  success: true,
90
141
  message: `Commit successful: ${commitHash}`,
91
142
  commitHash,
92
143
  committedFiles,
144
+ status,
93
145
  };
94
146
  }
147
+ //# sourceMappingURL=logic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logic.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitCommit/logic.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @fileoverview Handles registration and error handling for the git_commit tool.
3
+ * @module src/mcp-server/tools/gitCommit/registration
4
+ */
5
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
6
+ import { RequestContext } from "../../../utils/index.js";
7
+ export type GetWorkingDirectoryFn = (sessionId: string | undefined) => string | undefined;
8
+ export type GetSessionIdFn = (context: RequestContext) => string | undefined;
9
+ /**
10
+ * Registers the git_commit tool with the MCP server instance.
11
+ * @param server The MCP server instance.
12
+ * @param getWorkingDirectory Function to get the session's working directory.
13
+ * @param getSessionId Function to get the session ID from context.
14
+ */
15
+ export declare const registerGitCommitTool: (server: McpServer, getWorkingDirectory: GetWorkingDirectoryFn, getSessionId: GetSessionIdFn) => Promise<void>;
16
+ //# sourceMappingURL=registration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registration.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitCommit/registration.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAGL,cAAc,EAEf,MAAM,yBAAyB,CAAC;AASjC,MAAM,MAAM,qBAAqB,GAAG,CAClC,SAAS,EAAE,MAAM,GAAG,SAAS,KAC1B,MAAM,GAAG,SAAS,CAAC;AACxB,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE,cAAc,KAAK,MAAM,GAAG,SAAS,CAAC;AA2B7E;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,GAChC,QAAQ,SAAS,EACjB,qBAAqB,qBAAqB,EAC1C,cAAc,cAAc,KAC3B,OAAO,CAAC,IAAI,CAgEd,CAAC"}
@@ -2,7 +2,7 @@
2
2
  * @fileoverview Handles registration and error handling for the git_commit tool.
3
3
  * @module src/mcp-server/tools/gitCommit/registration
4
4
  */
5
- import { ErrorHandler, logger, requestContextService } from "../../../utils/index.js";
5
+ import { ErrorHandler, logger, requestContextService, } from "../../../utils/index.js";
6
6
  import { commitGitChanges, GitCommitInputSchema, GitCommitOutputSchema, } from "./logic.js";
7
7
  const TOOL_NAME = "git_commit";
8
8
  const TOOL_DESCRIPTION = `Commits staged changes to the Git repository index with a descriptive message. Supports author override, amending, and empty commits. Returns a JSON result.
@@ -61,11 +61,19 @@ export const registerGitCommitTool = async (server, getWorkingDirectory, getSess
61
61
  });
62
62
  return {
63
63
  structuredContent: result,
64
- content: [{ type: "text", text: `Success: ${JSON.stringify(result, null, 2)}` }],
64
+ content: [
65
+ {
66
+ type: "text",
67
+ text: `Success: ${JSON.stringify(result, null, 2)}`,
68
+ },
69
+ ],
65
70
  };
66
71
  }
67
72
  catch (error) {
68
- logger.error(`Error in ${TOOL_NAME} handler`, { error, ...handlerContext });
73
+ logger.error(`Error in ${TOOL_NAME} handler`, {
74
+ error,
75
+ ...handlerContext,
76
+ });
69
77
  const mcpError = ErrorHandler.handleError(error, {
70
78
  operation: `tool:${TOOL_NAME}`,
71
79
  context: handlerContext,
@@ -84,3 +92,4 @@ export const registerGitCommitTool = async (server, getWorkingDirectory, getSess
84
92
  });
85
93
  logger.info(`Tool '${TOOL_NAME}' registered successfully.`, context);
86
94
  };
95
+ //# sourceMappingURL=registration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registration.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitCommit/registration.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EACL,YAAY,EACZ,MAAM,EAEN,qBAAqB,GACtB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,gBAAgB,EAEhB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,YAAY,CAAC;AAOpB,MAAM,SAAS,GAAG,YAAY,CAAC;AAC/B,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;sMAsB6K,CAAC;AAEvM;;;;;GAKG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,EACxC,MAAiB,EACjB,mBAA0C,EAC1C,YAA4B,EACb,EAAE;IACjB,MAAM,SAAS,GAAG,uBAAuB,CAAC;IAC1C,MAAM,OAAO,GAAG,qBAAqB,CAAC,oBAAoB,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;IAE1E,MAAM,CAAC,YAAY,CACjB,SAAS,EACT;QACE,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,gBAAgB;QAC7B,WAAW,EAAE,oBAAoB,CAAC,KAAK;QACvC,YAAY,EAAE,qBAAqB,CAAC,KAAK;QACzC,WAAW,EAAE;YACX,YAAY,EAAE,KAAK;YACnB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,KAAK,EAAE,+BAA+B;YACtD,aAAa,EAAE,KAAK;SACrB;KACF,EACD,KAAK,EAAE,MAAsB,EAAE,WAAoC,EAAE,EAAE;QACrE,MAAM,cAAc,GAAG,qBAAqB,CAAC,oBAAoB,CAAC;YAChE,QAAQ,EAAE,SAAS;YACnB,aAAa,EAAE,WAAW;SAC3B,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,YAAY,CAAC,cAAc,CAAC,CAAC;YAC/C,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,MAAM,EAAE;gBAC5C,GAAG,cAAc;gBACjB,mBAAmB,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,SAAS,CAAC;aAC1D,CAAC,CAAC;YAEH,OAAO;gBACL,iBAAiB,EAAE,MAAM;gBACzB,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,YAAY,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE;qBACpD;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,YAAY,SAAS,UAAU,EAAE;gBAC5C,KAAK;gBACL,GAAG,cAAc;aAClB,CAAC,CAAC;YACH,MAAM,QAAQ,GAAG,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE;gBAC/C,SAAS,EAAE,QAAQ,SAAS,EAAE;gBAC9B,OAAO,EAAE,cAAc;gBACvB,KAAK,EAAE,MAAM;aACd,CAAa,CAAC;YAEf,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;gBAC/D,iBAAiB,EAAE;oBACjB,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,OAAO,EAAE,QAAQ,CAAC,OAAO;oBACzB,OAAO,EAAE,QAAQ,CAAC,OAAO;iBAC1B;aACF,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IACF,MAAM,CAAC,IAAI,CAAC,SAAS,SAAS,4BAA4B,EAAE,OAAO,CAAC,CAAC;AACvE,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @fileoverview Barrel file for the gitDiff tool.
3
+ * @module src/mcp-server/tools/gitDiff/index
4
+ */
5
+ export { registerGitDiffTool } from "./registration.js";
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitDiff/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC"}
@@ -3,3 +3,4 @@
3
3
  * @module src/mcp-server/tools/gitDiff/index
4
4
  */
5
5
  export { registerGitDiffTool } from "./registration.js";
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitDiff/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,87 @@
1
+ /**
2
+ * @fileoverview Defines the core logic, schemas, and types for the git_diff tool.
3
+ * @module src/mcp-server/tools/gitDiff/logic
4
+ */
5
+ import { z } from "zod";
6
+ import { type RequestContext } from "../../../utils/index.js";
7
+ export declare const GitDiffBaseSchema: z.ZodObject<{
8
+ path: z.ZodDefault<z.ZodString>;
9
+ commit1: z.ZodOptional<z.ZodString>;
10
+ commit2: z.ZodOptional<z.ZodString>;
11
+ staged: z.ZodDefault<z.ZodBoolean>;
12
+ file: z.ZodOptional<z.ZodString>;
13
+ includeUntracked: z.ZodDefault<z.ZodBoolean>;
14
+ }, "strip", z.ZodTypeAny, {
15
+ path: string;
16
+ staged: boolean;
17
+ includeUntracked: boolean;
18
+ file?: string | undefined;
19
+ commit1?: string | undefined;
20
+ commit2?: string | undefined;
21
+ }, {
22
+ path?: string | undefined;
23
+ file?: string | undefined;
24
+ commit1?: string | undefined;
25
+ commit2?: string | undefined;
26
+ staged?: boolean | undefined;
27
+ includeUntracked?: boolean | undefined;
28
+ }>;
29
+ export declare const GitDiffInputSchema: z.ZodEffects<z.ZodObject<{
30
+ path: z.ZodDefault<z.ZodString>;
31
+ commit1: z.ZodOptional<z.ZodString>;
32
+ commit2: z.ZodOptional<z.ZodString>;
33
+ staged: z.ZodDefault<z.ZodBoolean>;
34
+ file: z.ZodOptional<z.ZodString>;
35
+ includeUntracked: z.ZodDefault<z.ZodBoolean>;
36
+ }, "strip", z.ZodTypeAny, {
37
+ path: string;
38
+ staged: boolean;
39
+ includeUntracked: boolean;
40
+ file?: string | undefined;
41
+ commit1?: string | undefined;
42
+ commit2?: string | undefined;
43
+ }, {
44
+ path?: string | undefined;
45
+ file?: string | undefined;
46
+ commit1?: string | undefined;
47
+ commit2?: string | undefined;
48
+ staged?: boolean | undefined;
49
+ includeUntracked?: boolean | undefined;
50
+ }>, {
51
+ path: string;
52
+ staged: boolean;
53
+ includeUntracked: boolean;
54
+ file?: string | undefined;
55
+ commit1?: string | undefined;
56
+ commit2?: string | undefined;
57
+ }, {
58
+ path?: string | undefined;
59
+ file?: string | undefined;
60
+ commit1?: string | undefined;
61
+ commit2?: string | undefined;
62
+ staged?: boolean | undefined;
63
+ includeUntracked?: boolean | undefined;
64
+ }>;
65
+ export declare const GitDiffOutputSchema: z.ZodObject<{
66
+ success: z.ZodBoolean;
67
+ diff: z.ZodString;
68
+ message: z.ZodString;
69
+ }, "strip", z.ZodTypeAny, {
70
+ message: string;
71
+ success: boolean;
72
+ diff: string;
73
+ }, {
74
+ message: string;
75
+ success: boolean;
76
+ diff: string;
77
+ }>;
78
+ export type GitDiffInput = z.infer<typeof GitDiffInputSchema>;
79
+ export type GitDiffOutput = z.infer<typeof GitDiffOutputSchema>;
80
+ /**
81
+ * 4. IMPLEMENT the core logic function.
82
+ * @throws {McpError} If the logic encounters an unrecoverable issue.
83
+ */
84
+ export declare function diffGitChanges(params: GitDiffInput, context: RequestContext & {
85
+ getWorkingDirectory: () => string | undefined;
86
+ }): Promise<GitDiffOutput>;
87
+ //# sourceMappingURL=logic.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logic.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitDiff/logic.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAEL,KAAK,cAAc,EAEpB,MAAM,yBAAyB,CAAC;AAMjC,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;EA2B5B,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAM9B,CAAC;AAGF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;EAQ9B,CAAC;AAGH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAsChE;;;GAGG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,cAAc,GAAG;IAAE,mBAAmB,EAAE,MAAM,MAAM,GAAG,SAAS,CAAA;CAAE,GAC1E,OAAO,CAAC,aAAa,CAAC,CAmDxB"}
@@ -5,39 +5,75 @@
5
5
  import { execFile } from "child_process";
6
6
  import { promisify } from "util";
7
7
  import { z } from "zod";
8
- import { logger, sanitization } from "../../../utils/index.js";
8
+ import { logger, sanitization, } from "../../../utils/index.js";
9
9
  import { McpError, BaseErrorCode } from "../../../types-global/errors.js";
10
10
  const execFileAsync = promisify(execFile);
11
11
  // 1. DEFINE the Zod input schema.
12
12
  export const GitDiffBaseSchema = z.object({
13
- path: z.string().default(".").describe("Path to the Git repository. Defaults to the directory set via `git_set_working_dir` for the session; set 'git_set_working_dir' if not set."),
14
- commit1: z.string().optional().describe("First commit, branch, or ref for comparison."),
15
- commit2: z.string().optional().describe("Second commit, branch, or ref for comparison."),
16
- staged: z.boolean().default(false).describe("Show diff of changes staged for the next commit."),
17
- file: z.string().optional().describe("Limit the diff output to a specific file path."),
18
- includeUntracked: z.boolean().default(false).describe("Include untracked files in the diff output."),
13
+ path: z
14
+ .string()
15
+ .default(".")
16
+ .describe("Path to the Git repository. Defaults to the directory set via `git_set_working_dir` for the session; set 'git_set_working_dir' if not set."),
17
+ commit1: z
18
+ .string()
19
+ .optional()
20
+ .describe("First commit, branch, or ref for comparison."),
21
+ commit2: z
22
+ .string()
23
+ .optional()
24
+ .describe("Second commit, branch, or ref for comparison."),
25
+ staged: z
26
+ .boolean()
27
+ .default(false)
28
+ .describe("Show diff of changes staged for the next commit."),
29
+ file: z
30
+ .string()
31
+ .optional()
32
+ .describe("Limit the diff output to a specific file path."),
33
+ includeUntracked: z
34
+ .boolean()
35
+ .default(false)
36
+ .describe("Include untracked files in the diff output."),
19
37
  });
20
- export const GitDiffInputSchema = GitDiffBaseSchema.refine(data => !(data.staged && (data.commit1 || data.commit2)), {
38
+ export const GitDiffInputSchema = GitDiffBaseSchema.refine((data) => !(data.staged && (data.commit1 || data.commit2)), {
21
39
  message: "Cannot use 'staged' option with specific commit references.",
22
40
  path: ["staged"],
23
41
  });
24
42
  // 2. DEFINE the Zod response schema.
25
43
  export const GitDiffOutputSchema = z.object({
26
44
  success: z.boolean().describe("Indicates if the command was successful."),
27
- diff: z.string().describe("The diff output. Will be 'No changes found.' if there are no differences."),
45
+ diff: z
46
+ .string()
47
+ .describe("The diff output. Will be 'No changes found.' if there are no differences."),
28
48
  message: z.string().describe("A summary message of the result."),
29
49
  });
30
50
  async function getUntrackedFilesDiff(targetPath, context) {
31
- const { stdout } = await execFileAsync("git", ["-C", targetPath, "ls-files", "--others", "--exclude-standard"]);
51
+ const { stdout } = await execFileAsync("git", [
52
+ "-C",
53
+ targetPath,
54
+ "ls-files",
55
+ "--others",
56
+ "--exclude-standard",
57
+ ]);
32
58
  const untrackedFiles = stdout.trim().split("\n").filter(Boolean);
33
59
  if (untrackedFiles.length === 0)
34
60
  return "";
35
61
  let diffs = "";
36
62
  for (const file of untrackedFiles) {
37
- const { stdout: diffOut } = await execFileAsync("git", ["-C", targetPath, "diff", "--no-index", "/dev/null", file]).catch(err => {
63
+ const { stdout: diffOut } = await execFileAsync("git", [
64
+ "-C",
65
+ targetPath,
66
+ "diff",
67
+ "--no-index",
68
+ "/dev/null",
69
+ file,
70
+ ]).catch((err) => {
38
71
  if (err.stdout)
39
72
  return { stdout: err.stdout };
40
- logger.warning(`Failed to diff untracked file: ${file}`, { ...context, error: err.message });
73
+ logger.warning(`Failed to diff untracked file: ${file}`, {
74
+ ...context,
75
+ error: err.message,
76
+ });
41
77
  return { stdout: "" };
42
78
  });
43
79
  diffs += diffOut;
@@ -68,8 +104,13 @@ export async function diffGitChanges(params, context) {
68
104
  }
69
105
  if (params.file)
70
106
  args.push("--", params.file);
71
- logger.debug(`Executing command: git ${args.join(" ")}`, { ...context, operation });
72
- const { stdout } = await execFileAsync("git", args, { maxBuffer: 1024 * 1024 * 20 });
107
+ logger.debug(`Executing command: git ${args.join(" ")}`, {
108
+ ...context,
109
+ operation,
110
+ });
111
+ const { stdout } = await execFileAsync("git", args, {
112
+ maxBuffer: 1024 * 1024 * 20,
113
+ });
73
114
  let combinedDiff = stdout;
74
115
  if (params.includeUntracked) {
75
116
  const untrackedDiff = await getUntrackedFilesDiff(targetPath, context);
@@ -78,10 +119,13 @@ export async function diffGitChanges(params, context) {
78
119
  }
79
120
  }
80
121
  const noChanges = combinedDiff.trim() === "";
81
- const message = noChanges ? "No changes found." : `Diff generated successfully.${params.includeUntracked ? " Untracked files included." : ""}`;
122
+ const message = noChanges
123
+ ? "No changes found."
124
+ : `Diff generated successfully.${params.includeUntracked ? " Untracked files included." : ""}`;
82
125
  return {
83
126
  success: true,
84
127
  diff: noChanges ? "No changes found." : combinedDiff,
85
128
  message,
86
129
  };
87
130
  }
131
+ //# sourceMappingURL=logic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logic.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitDiff/logic.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @fileoverview Handles registration and error handling for the git_diff tool.
3
+ * @module src/mcp-server/tools/gitDiff/registration
4
+ */
5
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
6
+ import { RequestContext } from "../../../utils/index.js";
7
+ export type GetWorkingDirectoryFn = (sessionId: string | undefined) => string | undefined;
8
+ export type GetSessionIdFn = (context: RequestContext) => string | undefined;
9
+ /**
10
+ * Registers the git_diff tool with the MCP server instance.
11
+ * @param server The MCP server instance.
12
+ * @param getWorkingDirectory Function to get the session's working directory.
13
+ * @param getSessionId Function to get the session ID from context.
14
+ */
15
+ export declare const registerGitDiffTool: (server: McpServer, getWorkingDirectory: GetWorkingDirectoryFn, getSessionId: GetSessionIdFn) => Promise<void>;
16
+ //# sourceMappingURL=registration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registration.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitDiff/registration.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAGL,cAAc,EAEf,MAAM,yBAAyB,CAAC;AASjC,MAAM,MAAM,qBAAqB,GAAG,CAClC,SAAS,EAAE,MAAM,GAAG,SAAS,KAC1B,MAAM,GAAG,SAAS,CAAC;AACxB,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE,cAAc,KAAK,MAAM,GAAG,SAAS,CAAC;AAM7E;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAC9B,QAAQ,SAAS,EACjB,qBAAqB,qBAAqB,EAC1C,cAAc,cAAc,KAC3B,OAAO,CAAC,IAAI,CAiEd,CAAC"}
@@ -2,7 +2,7 @@
2
2
  * @fileoverview Handles registration and error handling for the git_diff tool.
3
3
  * @module src/mcp-server/tools/gitDiff/registration
4
4
  */
5
- import { ErrorHandler, logger, requestContextService } from "../../../utils/index.js";
5
+ import { ErrorHandler, logger, requestContextService, } from "../../../utils/index.js";
6
6
  import { diffGitChanges, GitDiffOutputSchema, GitDiffBaseSchema, } from "./logic.js";
7
7
  const TOOL_NAME = "git_diff";
8
8
  const TOOL_DESCRIPTION = "Shows changes between commits, commit and working tree, etc. Can show staged changes or diff specific files. An optional 'includeUntracked' parameter (boolean) can be used to also show the content of untracked files. Returns the diff output as plain text.";
@@ -39,11 +39,20 @@ export const registerGitDiffTool = async (server, getWorkingDirectory, getSessio
39
39
  });
40
40
  return {
41
41
  structuredContent: result,
42
- content: [{ type: "text", text: result.diff, contentType: "text/plain; charset=utf-8" }],
42
+ content: [
43
+ {
44
+ type: "text",
45
+ text: result.diff,
46
+ contentType: "text/plain; charset=utf-8",
47
+ },
48
+ ],
43
49
  };
44
50
  }
45
51
  catch (error) {
46
- logger.error(`Error in ${TOOL_NAME} handler`, { error, ...handlerContext });
52
+ logger.error(`Error in ${TOOL_NAME} handler`, {
53
+ error,
54
+ ...handlerContext,
55
+ });
47
56
  const mcpError = ErrorHandler.handleError(error, {
48
57
  operation: `tool:${TOOL_NAME}`,
49
58
  context: handlerContext,
@@ -62,3 +71,4 @@ export const registerGitDiffTool = async (server, getWorkingDirectory, getSessio
62
71
  });
63
72
  logger.info(`Tool '${TOOL_NAME}' registered successfully.`, context);
64
73
  };
74
+ //# sourceMappingURL=registration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registration.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitDiff/registration.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EACL,YAAY,EACZ,MAAM,EAEN,qBAAqB,GACtB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,cAAc,EAEd,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AAOpB,MAAM,SAAS,GAAG,UAAU,CAAC;AAC7B,MAAM,gBAAgB,GACpB,iQAAiQ,CAAC;AAEpQ;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EACtC,MAAiB,EACjB,mBAA0C,EAC1C,YAA4B,EACb,EAAE;IACjB,MAAM,SAAS,GAAG,qBAAqB,CAAC;IACxC,MAAM,OAAO,GAAG,qBAAqB,CAAC,oBAAoB,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;IAE1E,MAAM,CAAC,YAAY,CACjB,SAAS,EACT;QACE,KAAK,EAAE,UAAU;QACjB,WAAW,EAAE,gBAAgB;QAC7B,WAAW,EAAE,iBAAiB,CAAC,KAAK;QACpC,YAAY,EAAE,mBAAmB,CAAC,KAAK;QACvC,WAAW,EAAE;YACX,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,KAAK;SACrB;KACF,EACD,KAAK,EAAE,MAAoB,EAAE,WAAoC,EAAE,EAAE;QACnE,MAAM,cAAc,GAAG,qBAAqB,CAAC,oBAAoB,CAAC;YAChE,QAAQ,EAAE,SAAS;YACnB,aAAa,EAAE,WAAW;SAC3B,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,YAAY,CAAC,cAAc,CAAC,CAAC;YAC/C,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE;gBAC1C,GAAG,cAAc;gBACjB,mBAAmB,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,SAAS,CAAC;aAC1D,CAAC,CAAC;YAEH,OAAO;gBACL,iBAAiB,EAAE,MAAM;gBACzB,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,MAAM,CAAC,IAAI;wBACjB,WAAW,EAAE,2BAA2B;qBACzC;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,YAAY,SAAS,UAAU,EAAE;gBAC5C,KAAK;gBACL,GAAG,cAAc;aAClB,CAAC,CAAC;YACH,MAAM,QAAQ,GAAG,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE;gBAC/C,SAAS,EAAE,QAAQ,SAAS,EAAE;gBAC9B,OAAO,EAAE,cAAc;gBACvB,KAAK,EAAE,MAAM;aACd,CAAa,CAAC;YAEf,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;gBAC/D,iBAAiB,EAAE;oBACjB,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,OAAO,EAAE,QAAQ,CAAC,OAAO;oBACzB,OAAO,EAAE,QAAQ,CAAC,OAAO;iBAC1B;aACF,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IACF,MAAM,CAAC,IAAI,CAAC,SAAS,SAAS,4BAA4B,EAAE,OAAO,CAAC,CAAC;AACvE,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @fileoverview Barrel file for the gitFetch tool.
3
+ * @module src/mcp-server/tools/gitFetch/index
4
+ */
5
+ export { registerGitFetchTool } from "./registration.js";
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitFetch/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC"}
@@ -3,3 +3,4 @@
3
3
  * @module src/mcp-server/tools/gitFetch/index
4
4
  */
5
5
  export { registerGitFetchTool } from "./registration.js";
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitFetch/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * @fileoverview Defines the core logic, schemas, and types for the git_fetch tool.
3
+ * @module src/mcp-server/tools/gitFetch/logic
4
+ */
5
+ import { z } from "zod";
6
+ import { type RequestContext } from "../../../utils/index.js";
7
+ export declare const GitFetchInputSchema: z.ZodObject<{
8
+ path: z.ZodDefault<z.ZodString>;
9
+ remote: z.ZodOptional<z.ZodString>;
10
+ prune: z.ZodDefault<z.ZodBoolean>;
11
+ tags: z.ZodDefault<z.ZodBoolean>;
12
+ all: z.ZodDefault<z.ZodBoolean>;
13
+ }, "strip", z.ZodTypeAny, {
14
+ path: string;
15
+ all: boolean;
16
+ prune: boolean;
17
+ tags: boolean;
18
+ remote?: string | undefined;
19
+ }, {
20
+ path?: string | undefined;
21
+ all?: boolean | undefined;
22
+ remote?: string | undefined;
23
+ prune?: boolean | undefined;
24
+ tags?: boolean | undefined;
25
+ }>;
26
+ export declare const GitFetchOutputSchema: z.ZodObject<{
27
+ success: z.ZodBoolean;
28
+ message: z.ZodString;
29
+ }, "strip", z.ZodTypeAny, {
30
+ message: string;
31
+ success: boolean;
32
+ }, {
33
+ message: string;
34
+ success: boolean;
35
+ }>;
36
+ export type GitFetchInput = z.infer<typeof GitFetchInputSchema>;
37
+ export type GitFetchOutput = z.infer<typeof GitFetchOutputSchema>;
38
+ /**
39
+ * 4. IMPLEMENT the core logic function.
40
+ * @throws {McpError} If the logic encounters an unrecoverable issue.
41
+ */
42
+ export declare function fetchGitRemote(params: GitFetchInput, context: RequestContext & {
43
+ getWorkingDirectory: () => string | undefined;
44
+ }): Promise<GitFetchOutput>;
45
+ //# sourceMappingURL=logic.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logic.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitFetch/logic.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAEL,KAAK,cAAc,EAEpB,MAAM,yBAAyB,CAAC;AAMjC,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;EAmB9B,CAAC;AAGH,eAAO,MAAM,oBAAoB;;;;;;;;;EAG/B,CAAC;AAGH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;;GAGG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,cAAc,GAAG;IAAE,mBAAmB,EAAE,MAAM,MAAM,GAAG,SAAS,CAAA;CAAE,GAC1E,OAAO,CAAC,cAAc,CAAC,CAkCzB"}
@@ -5,14 +5,23 @@
5
5
  import { execFile } from "child_process";
6
6
  import { promisify } from "util";
7
7
  import { z } from "zod";
8
- import { logger, sanitization } from "../../../utils/index.js";
8
+ import { logger, sanitization, } from "../../../utils/index.js";
9
9
  import { McpError, BaseErrorCode } from "../../../types-global/errors.js";
10
10
  const execFileAsync = promisify(execFile);
11
11
  // 1. DEFINE the Zod input schema.
12
12
  export const GitFetchInputSchema = z.object({
13
- path: z.string().default(".").describe("Path to the Git repository. Defaults to the directory set via `git_set_working_dir` for the session; set 'git_set_working_dir' if not set."),
14
- remote: z.string().optional().describe("The remote repository to fetch from (e.g., 'origin')."),
15
- prune: z.boolean().default(false).describe("Remove remote-tracking references that no longer exist on the remote."),
13
+ path: z
14
+ .string()
15
+ .default(".")
16
+ .describe("Path to the Git repository. Defaults to the directory set via `git_set_working_dir` for the session; set 'git_set_working_dir' if not set."),
17
+ remote: z
18
+ .string()
19
+ .optional()
20
+ .describe("The remote repository to fetch from (e.g., 'origin')."),
21
+ prune: z
22
+ .boolean()
23
+ .default(false)
24
+ .describe("Remove remote-tracking references that no longer exist on the remote."),
16
25
  tags: z.boolean().default(false).describe("Fetch all tags from the remote."),
17
26
  all: z.boolean().default(false).describe("Fetch all remotes."),
18
27
  });
@@ -44,8 +53,12 @@ export async function fetchGitRemote(params, context) {
44
53
  else if (params.remote) {
45
54
  args.push(params.remote);
46
55
  }
47
- logger.debug(`Executing command: git ${args.join(" ")}`, { ...context, operation });
56
+ logger.debug(`Executing command: git ${args.join(" ")}`, {
57
+ ...context,
58
+ operation,
59
+ });
48
60
  const { stderr } = await execFileAsync("git", args);
49
61
  const message = stderr.trim() || "Fetch successful.";
50
62
  return { success: true, message };
51
63
  }
64
+ //# sourceMappingURL=logic.js.map