@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.
- package/LICENSE +1 -1
- package/README.md +69 -25
- package/dist/config/index.d.ts +87 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +7 -3
- package/dist/config/index.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -0
- package/dist/mcp-server/resources/gitWorkingDir/index.d.ts +6 -0
- package/dist/mcp-server/resources/gitWorkingDir/index.d.ts.map +1 -0
- package/dist/mcp-server/resources/gitWorkingDir/index.js +1 -0
- package/dist/mcp-server/resources/gitWorkingDir/index.js.map +1 -0
- package/dist/mcp-server/resources/gitWorkingDir/logic.d.ts +15 -0
- package/dist/mcp-server/resources/gitWorkingDir/logic.d.ts.map +1 -0
- package/dist/mcp-server/resources/gitWorkingDir/logic.js +1 -0
- package/dist/mcp-server/resources/gitWorkingDir/logic.js.map +1 -0
- package/dist/mcp-server/resources/gitWorkingDir/registration.d.ts +15 -0
- package/dist/mcp-server/resources/gitWorkingDir/registration.d.ts.map +1 -0
- package/dist/mcp-server/resources/gitWorkingDir/registration.js +9 -7
- package/dist/mcp-server/resources/gitWorkingDir/registration.js.map +1 -0
- package/dist/mcp-server/server.d.ts +13 -0
- package/dist/mcp-server/server.d.ts.map +1 -0
- package/dist/mcp-server/server.js +17 -6
- package/dist/mcp-server/server.js.map +1 -0
- package/dist/mcp-server/tools/gitAdd/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitAdd/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitAdd/index.js +1 -0
- package/dist/mcp-server/tools/gitAdd/index.js.map +1 -0
- package/dist/mcp-server/tools/gitAdd/logic.d.ts +167 -0
- package/dist/mcp-server/tools/gitAdd/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitAdd/logic.js +24 -5
- package/dist/mcp-server/tools/gitAdd/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitAdd/registration.d.ts +6 -0
- package/dist/mcp-server/tools/gitAdd/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitAdd/registration.js +5 -2
- package/dist/mcp-server/tools/gitAdd/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitBranch/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitBranch/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitBranch/index.js +1 -0
- package/dist/mcp-server/tools/gitBranch/index.js.map +1 -0
- package/dist/mcp-server/tools/gitBranch/logic.d.ts +175 -0
- package/dist/mcp-server/tools/gitBranch/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitBranch/logic.js +75 -27
- package/dist/mcp-server/tools/gitBranch/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitBranch/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitBranch/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitBranch/registration.js +13 -4
- package/dist/mcp-server/tools/gitBranch/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitCheckout/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitCheckout/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitCheckout/index.js +1 -0
- package/dist/mcp-server/tools/gitCheckout/index.js.map +1 -0
- package/dist/mcp-server/tools/gitCheckout/logic.d.ts +184 -0
- package/dist/mcp-server/tools/gitCheckout/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitCheckout/logic.js +45 -10
- package/dist/mcp-server/tools/gitCheckout/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitCheckout/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitCheckout/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitCheckout/registration.js +12 -3
- package/dist/mcp-server/tools/gitCheckout/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitCherryPick/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitCherryPick/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitCherryPick/index.js +1 -0
- package/dist/mcp-server/tools/gitCherryPick/index.js.map +1 -0
- package/dist/mcp-server/tools/gitCherryPick/logic.d.ts +190 -0
- package/dist/mcp-server/tools/gitCherryPick/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitCherryPick/logic.js +38 -10
- package/dist/mcp-server/tools/gitCherryPick/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitCherryPick/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitCherryPick/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitCherryPick/registration.js +12 -3
- package/dist/mcp-server/tools/gitCherryPick/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitClean/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitClean/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitClean/index.js +1 -0
- package/dist/mcp-server/tools/gitClean/index.js.map +1 -0
- package/dist/mcp-server/tools/gitClean/logic.d.ts +187 -0
- package/dist/mcp-server/tools/gitClean/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitClean/logic.js +48 -11
- package/dist/mcp-server/tools/gitClean/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitClean/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitClean/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitClean/registration.js +12 -3
- package/dist/mcp-server/tools/gitClean/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitClearWorkingDir/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitClearWorkingDir/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitClearWorkingDir/index.js +1 -0
- package/dist/mcp-server/tools/gitClearWorkingDir/index.js.map +1 -0
- package/dist/mcp-server/tools/gitClearWorkingDir/logic.d.ts +33 -0
- package/dist/mcp-server/tools/gitClearWorkingDir/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitClearWorkingDir/logic.js +21 -5
- package/dist/mcp-server/tools/gitClearWorkingDir/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitClearWorkingDir/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitClearWorkingDir/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitClearWorkingDir/registration.js +12 -3
- package/dist/mcp-server/tools/gitClearWorkingDir/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitClone/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitClone/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitClone/index.js +1 -0
- package/dist/mcp-server/tools/gitClone/index.js.map +1 -0
- package/dist/mcp-server/tools/gitClone/logic.d.ts +46 -0
- package/dist/mcp-server/tools/gitClone/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitClone/logic.js +33 -10
- package/dist/mcp-server/tools/gitClone/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitClone/registration.d.ts +12 -0
- package/dist/mcp-server/tools/gitClone/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitClone/registration.js +13 -5
- package/dist/mcp-server/tools/gitClone/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitCommit/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitCommit/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitCommit/index.js +1 -0
- package/dist/mcp-server/tools/gitCommit/index.js.map +1 -0
- package/dist/mcp-server/tools/gitCommit/logic.d.ts +211 -0
- package/dist/mcp-server/tools/gitCommit/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitCommit/logic.js +67 -14
- package/dist/mcp-server/tools/gitCommit/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitCommit/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitCommit/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitCommit/registration.js +12 -3
- package/dist/mcp-server/tools/gitCommit/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitDiff/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitDiff/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitDiff/index.js +1 -0
- package/dist/mcp-server/tools/gitDiff/index.js.map +1 -0
- package/dist/mcp-server/tools/gitDiff/logic.d.ts +87 -0
- package/dist/mcp-server/tools/gitDiff/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitDiff/logic.js +59 -15
- package/dist/mcp-server/tools/gitDiff/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitDiff/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitDiff/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitDiff/registration.js +13 -3
- package/dist/mcp-server/tools/gitDiff/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitFetch/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitFetch/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitFetch/index.js +1 -0
- package/dist/mcp-server/tools/gitFetch/index.js.map +1 -0
- package/dist/mcp-server/tools/gitFetch/logic.d.ts +45 -0
- package/dist/mcp-server/tools/gitFetch/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitFetch/logic.js +18 -5
- package/dist/mcp-server/tools/gitFetch/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitFetch/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitFetch/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitFetch/registration.js +12 -3
- package/dist/mcp-server/tools/gitFetch/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitInit/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitInit/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitInit/index.js +1 -0
- package/dist/mcp-server/tools/gitInit/index.js.map +1 -0
- package/dist/mcp-server/tools/gitInit/logic.d.ts +46 -0
- package/dist/mcp-server/tools/gitInit/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitInit/logic.js +73 -21
- package/dist/mcp-server/tools/gitInit/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitInit/registration.d.ts +12 -0
- package/dist/mcp-server/tools/gitInit/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitInit/registration.js +13 -5
- package/dist/mcp-server/tools/gitInit/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitLog/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitLog/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitLog/index.js +1 -0
- package/dist/mcp-server/tools/gitLog/index.js.map +1 -0
- package/dist/mcp-server/tools/gitLog/logic.d.ts +92 -0
- package/dist/mcp-server/tools/gitLog/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitLog/logic.js +84 -26
- package/dist/mcp-server/tools/gitLog/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitLog/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitLog/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitLog/registration.js +12 -3
- package/dist/mcp-server/tools/gitLog/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitMerge/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitMerge/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitMerge/index.js +1 -0
- package/dist/mcp-server/tools/gitMerge/index.js.map +1 -0
- package/dist/mcp-server/tools/gitMerge/logic.d.ts +196 -0
- package/dist/mcp-server/tools/gitMerge/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitMerge/logic.js +44 -11
- package/dist/mcp-server/tools/gitMerge/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitMerge/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitMerge/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitMerge/registration.js +12 -3
- package/dist/mcp-server/tools/gitMerge/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitPull/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitPull/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitPull/index.js +1 -0
- package/dist/mcp-server/tools/gitPull/index.js.map +1 -0
- package/dist/mcp-server/tools/gitPull/logic.d.ts +184 -0
- package/dist/mcp-server/tools/gitPull/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitPull/logic.js +31 -7
- package/dist/mcp-server/tools/gitPull/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitPull/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitPull/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitPull/registration.js +12 -3
- package/dist/mcp-server/tools/gitPull/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitPush/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitPush/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitPush/index.js +1 -0
- package/dist/mcp-server/tools/gitPush/index.js.map +1 -0
- package/dist/mcp-server/tools/gitPush/logic.d.ts +134 -0
- package/dist/mcp-server/tools/gitPush/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitPush/logic.js +28 -9
- package/dist/mcp-server/tools/gitPush/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitPush/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitPush/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitPush/registration.js +12 -3
- package/dist/mcp-server/tools/gitPush/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitRebase/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitRebase/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitRebase/index.js +1 -0
- package/dist/mcp-server/tools/gitRebase/index.js.map +1 -0
- package/dist/mcp-server/tools/gitRebase/logic.d.ts +242 -0
- package/dist/mcp-server/tools/gitRebase/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitRebase/logic.js +44 -10
- package/dist/mcp-server/tools/gitRebase/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitRebase/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitRebase/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitRebase/registration.js +12 -3
- package/dist/mcp-server/tools/gitRebase/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitRemote/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitRemote/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitRemote/index.js +1 -0
- package/dist/mcp-server/tools/gitRemote/index.js.map +1 -0
- package/dist/mcp-server/tools/gitRemote/logic.d.ts +107 -0
- package/dist/mcp-server/tools/gitRemote/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitRemote/logic.js +45 -19
- package/dist/mcp-server/tools/gitRemote/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitRemote/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitRemote/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitRemote/registration.js +12 -3
- package/dist/mcp-server/tools/gitRemote/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitReset/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitReset/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitReset/index.js +1 -0
- package/dist/mcp-server/tools/gitReset/index.js.map +1 -0
- package/dist/mcp-server/tools/gitReset/logic.d.ts +178 -0
- package/dist/mcp-server/tools/gitReset/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitReset/logic.js +24 -7
- package/dist/mcp-server/tools/gitReset/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitReset/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitReset/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitReset/registration.js +12 -3
- package/dist/mcp-server/tools/gitReset/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitSetWorkingDir/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitSetWorkingDir/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitSetWorkingDir/index.js +1 -0
- package/dist/mcp-server/tools/gitSetWorkingDir/index.js.map +1 -0
- package/dist/mcp-server/tools/gitSetWorkingDir/logic.d.ts +45 -0
- package/dist/mcp-server/tools/gitSetWorkingDir/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitSetWorkingDir/logic.js +29 -8
- package/dist/mcp-server/tools/gitSetWorkingDir/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitSetWorkingDir/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitSetWorkingDir/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitSetWorkingDir/registration.js +12 -3
- package/dist/mcp-server/tools/gitSetWorkingDir/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitShow/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitShow/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitShow/index.js +1 -0
- package/dist/mcp-server/tools/gitShow/index.js.map +1 -0
- package/dist/mcp-server/tools/gitShow/logic.d.ts +39 -0
- package/dist/mcp-server/tools/gitShow/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitShow/logic.js +17 -5
- package/dist/mcp-server/tools/gitShow/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitShow/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitShow/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitShow/registration.js +13 -3
- package/dist/mcp-server/tools/gitShow/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitStash/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitStash/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitStash/index.js +1 -0
- package/dist/mcp-server/tools/gitStash/index.js.map +1 -0
- package/dist/mcp-server/tools/gitStash/logic.d.ts +236 -0
- package/dist/mcp-server/tools/gitStash/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitStash/logic.js +76 -18
- package/dist/mcp-server/tools/gitStash/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitStash/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitStash/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitStash/registration.js +12 -3
- package/dist/mcp-server/tools/gitStash/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitStatus/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitStatus/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitStatus/index.js +1 -0
- package/dist/mcp-server/tools/gitStatus/index.js.map +1 -0
- package/dist/mcp-server/tools/gitStatus/logic.d.ts +115 -0
- package/dist/mcp-server/tools/gitStatus/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitStatus/logic.js +38 -23
- package/dist/mcp-server/tools/gitStatus/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitStatus/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitStatus/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitStatus/registration.js +12 -3
- package/dist/mcp-server/tools/gitStatus/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitTag/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitTag/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitTag/index.js +1 -0
- package/dist/mcp-server/tools/gitTag/index.js.map +1 -0
- package/dist/mcp-server/tools/gitTag/logic.d.ts +121 -0
- package/dist/mcp-server/tools/gitTag/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitTag/logic.js +59 -17
- package/dist/mcp-server/tools/gitTag/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitTag/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitTag/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitTag/registration.js +12 -3
- package/dist/mcp-server/tools/gitTag/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitWorktree/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitWorktree/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitWorktree/index.js +1 -0
- package/dist/mcp-server/tools/gitWorktree/index.js.map +1 -0
- package/dist/mcp-server/tools/gitWorktree/logic.d.ts +218 -0
- package/dist/mcp-server/tools/gitWorktree/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitWorktree/logic.js +61 -17
- package/dist/mcp-server/tools/gitWorktree/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitWorktree/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitWorktree/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitWorktree/registration.js +12 -3
- package/dist/mcp-server/tools/gitWorktree/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitWrapupInstructions/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitWrapupInstructions/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitWrapupInstructions/index.js +1 -0
- package/dist/mcp-server/tools/gitWrapupInstructions/index.js.map +1 -0
- package/dist/mcp-server/tools/gitWrapupInstructions/logic.d.ts +175 -0
- package/dist/mcp-server/tools/gitWrapupInstructions/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitWrapupInstructions/logic.js +20 -6
- package/dist/mcp-server/tools/gitWrapupInstructions/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitWrapupInstructions/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitWrapupInstructions/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitWrapupInstructions/registration.js +12 -3
- package/dist/mcp-server/tools/gitWrapupInstructions/registration.js.map +1 -0
- package/dist/mcp-server/transports/auth/authFactory.d.ts +11 -0
- package/dist/mcp-server/transports/auth/authFactory.d.ts.map +1 -0
- package/dist/mcp-server/transports/auth/authFactory.js +1 -0
- package/dist/mcp-server/transports/auth/authFactory.js.map +1 -0
- package/dist/mcp-server/transports/auth/authMiddleware.d.ts +20 -0
- package/dist/mcp-server/transports/auth/authMiddleware.d.ts.map +1 -0
- package/dist/mcp-server/transports/auth/authMiddleware.js +1 -0
- package/dist/mcp-server/transports/auth/authMiddleware.js.map +1 -0
- package/dist/mcp-server/transports/auth/index.d.ts +14 -0
- package/dist/mcp-server/transports/auth/index.d.ts.map +1 -0
- package/dist/mcp-server/transports/auth/index.js +1 -0
- package/dist/mcp-server/transports/auth/index.js.map +1 -0
- package/dist/mcp-server/transports/auth/lib/authContext.d.ts +34 -0
- package/dist/mcp-server/transports/auth/lib/authContext.d.ts.map +1 -0
- package/dist/mcp-server/transports/auth/lib/authContext.js +1 -0
- package/dist/mcp-server/transports/auth/lib/authContext.js.map +1 -0
- package/dist/mcp-server/transports/auth/lib/authTypes.d.ts +13 -0
- package/dist/mcp-server/transports/auth/lib/authTypes.d.ts.map +1 -0
- package/dist/mcp-server/transports/auth/lib/authTypes.js +1 -0
- package/dist/mcp-server/transports/auth/lib/authTypes.js.map +1 -0
- package/dist/mcp-server/transports/auth/lib/authUtils.d.ts +19 -0
- package/dist/mcp-server/transports/auth/lib/authUtils.d.ts.map +1 -0
- package/dist/mcp-server/transports/auth/lib/authUtils.js +1 -0
- package/dist/mcp-server/transports/auth/lib/authUtils.js.map +1 -0
- package/dist/mcp-server/transports/auth/strategies/authStrategy.d.ts +18 -0
- package/dist/mcp-server/transports/auth/strategies/authStrategy.d.ts.map +1 -0
- package/dist/mcp-server/transports/auth/strategies/authStrategy.js +1 -0
- package/dist/mcp-server/transports/auth/strategies/authStrategy.js.map +1 -0
- package/dist/mcp-server/transports/auth/strategies/jwtStrategy.d.ts +8 -0
- package/dist/mcp-server/transports/auth/strategies/jwtStrategy.d.ts.map +1 -0
- package/dist/mcp-server/transports/auth/strategies/jwtStrategy.js +5 -0
- package/dist/mcp-server/transports/auth/strategies/jwtStrategy.js.map +1 -0
- package/dist/mcp-server/transports/auth/strategies/oauthStrategy.d.ts +8 -0
- package/dist/mcp-server/transports/auth/strategies/oauthStrategy.d.ts.map +1 -0
- package/dist/mcp-server/transports/auth/strategies/oauthStrategy.js +6 -0
- package/dist/mcp-server/transports/auth/strategies/oauthStrategy.js.map +1 -0
- package/dist/mcp-server/transports/core/baseTransportManager.d.ts +18 -0
- package/dist/mcp-server/transports/core/baseTransportManager.d.ts.map +1 -0
- package/dist/mcp-server/transports/core/baseTransportManager.js +1 -0
- package/dist/mcp-server/transports/core/baseTransportManager.js.map +1 -0
- package/dist/mcp-server/transports/core/honoNodeBridge.d.ts +24 -0
- package/dist/mcp-server/transports/core/honoNodeBridge.d.ts.map +1 -0
- package/dist/mcp-server/transports/core/honoNodeBridge.js +11 -4
- package/dist/mcp-server/transports/core/honoNodeBridge.js.map +1 -0
- package/dist/mcp-server/transports/core/statefulTransportManager.d.ts +32 -0
- package/dist/mcp-server/transports/core/statefulTransportManager.d.ts.map +1 -0
- package/dist/mcp-server/transports/core/statefulTransportManager.js +1 -0
- package/dist/mcp-server/transports/core/statefulTransportManager.js.map +1 -0
- package/dist/mcp-server/transports/core/statelessTransportManager.d.ts +21 -0
- package/dist/mcp-server/transports/core/statelessTransportManager.d.ts.map +1 -0
- package/dist/mcp-server/transports/core/statelessTransportManager.js +1 -0
- package/dist/mcp-server/transports/core/statelessTransportManager.js.map +1 -0
- package/dist/mcp-server/transports/core/transportTypes.d.ts +69 -0
- package/dist/mcp-server/transports/core/transportTypes.d.ts.map +1 -0
- package/dist/mcp-server/transports/core/transportTypes.js +1 -0
- package/dist/mcp-server/transports/core/transportTypes.js.map +1 -0
- package/dist/mcp-server/transports/http/httpErrorHandler.d.ts +22 -0
- package/dist/mcp-server/transports/http/httpErrorHandler.d.ts.map +1 -0
- package/dist/mcp-server/transports/http/httpErrorHandler.js +1 -0
- package/dist/mcp-server/transports/http/httpErrorHandler.js.map +1 -0
- package/dist/mcp-server/transports/http/httpTransport.d.ts +23 -0
- package/dist/mcp-server/transports/http/httpTransport.d.ts.map +1 -0
- package/dist/mcp-server/transports/http/httpTransport.js +29 -10
- package/dist/mcp-server/transports/http/httpTransport.js.map +1 -0
- package/dist/mcp-server/transports/http/httpTypes.d.ts +17 -0
- package/dist/mcp-server/transports/http/httpTypes.d.ts.map +1 -0
- package/dist/mcp-server/transports/http/httpTypes.js +1 -0
- package/dist/mcp-server/transports/http/httpTypes.js.map +1 -0
- package/dist/mcp-server/transports/http/index.d.ts +8 -0
- package/dist/mcp-server/transports/http/index.d.ts.map +1 -0
- package/dist/mcp-server/transports/http/index.js +1 -0
- package/dist/mcp-server/transports/http/index.js.map +1 -0
- package/dist/mcp-server/transports/http/mcpTransportMiddleware.d.ts +27 -0
- package/dist/mcp-server/transports/http/mcpTransportMiddleware.d.ts.map +1 -0
- package/dist/mcp-server/transports/http/mcpTransportMiddleware.js +27 -24
- package/dist/mcp-server/transports/http/mcpTransportMiddleware.js.map +1 -0
- package/dist/mcp-server/transports/stdio/index.d.ts +6 -0
- package/dist/mcp-server/transports/stdio/index.d.ts.map +1 -0
- package/dist/mcp-server/transports/stdio/index.js +1 -0
- package/dist/mcp-server/transports/stdio/index.js.map +1 -0
- package/dist/mcp-server/transports/stdio/stdioTransport.d.ts +43 -0
- package/dist/mcp-server/transports/stdio/stdioTransport.d.ts.map +1 -0
- package/dist/mcp-server/transports/stdio/stdioTransport.js +1 -0
- package/dist/mcp-server/transports/stdio/stdioTransport.js.map +1 -0
- package/dist/types-global/errors.d.ts +122 -0
- package/dist/types-global/errors.d.ts.map +1 -0
- package/dist/types-global/errors.js +1 -0
- package/dist/types-global/errors.js.map +1 -0
- package/dist/utils/index.d.ts +5 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +1 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/internal/errorHandler.d.ts +91 -0
- package/dist/utils/internal/errorHandler.d.ts.map +1 -0
- package/dist/utils/internal/errorHandler.js +8 -6
- package/dist/utils/internal/errorHandler.js.map +1 -0
- package/dist/utils/internal/index.d.ts +4 -0
- package/dist/utils/internal/index.d.ts.map +1 -0
- package/dist/utils/internal/index.js +1 -0
- package/dist/utils/internal/index.js.map +1 -0
- package/dist/utils/internal/logger.d.ts +55 -0
- package/dist/utils/internal/logger.d.ts.map +1 -0
- package/dist/utils/internal/logger.js +19 -5
- package/dist/utils/internal/logger.js.map +1 -0
- package/dist/utils/internal/requestContext.d.ts +48 -0
- package/dist/utils/internal/requestContext.d.ts.map +1 -0
- package/dist/utils/internal/requestContext.js +1 -0
- package/dist/utils/internal/requestContext.js.map +1 -0
- package/dist/utils/metrics/index.d.ts +2 -0
- package/dist/utils/metrics/index.d.ts.map +1 -0
- package/dist/utils/metrics/index.js +1 -0
- package/dist/utils/metrics/index.js.map +1 -0
- package/dist/utils/metrics/tokenCounter.d.ts +28 -0
- package/dist/utils/metrics/tokenCounter.d.ts.map +1 -0
- package/dist/utils/metrics/tokenCounter.js +1 -0
- package/dist/utils/metrics/tokenCounter.js.map +1 -0
- package/dist/utils/parsing/dateParser.d.ts +25 -0
- package/dist/utils/parsing/dateParser.d.ts.map +1 -0
- package/dist/utils/parsing/dateParser.js +57 -56
- package/dist/utils/parsing/dateParser.js.map +1 -0
- package/dist/utils/parsing/index.d.ts +3 -0
- package/dist/utils/parsing/index.d.ts.map +1 -0
- package/dist/utils/parsing/index.js +1 -0
- package/dist/utils/parsing/index.js.map +1 -0
- package/dist/utils/parsing/jsonParser.d.ts +83 -0
- package/dist/utils/parsing/jsonParser.d.ts.map +1 -0
- package/dist/utils/parsing/jsonParser.js +85 -45
- package/dist/utils/parsing/jsonParser.js.map +1 -0
- package/dist/utils/security/idGenerator.d.ts +94 -0
- package/dist/utils/security/idGenerator.d.ts.map +1 -0
- package/dist/utils/security/idGenerator.js +9 -2
- package/dist/utils/security/idGenerator.js.map +1 -0
- package/dist/utils/security/index.d.ts +4 -0
- package/dist/utils/security/index.d.ts.map +1 -0
- package/dist/utils/security/index.js +1 -0
- package/dist/utils/security/index.js.map +1 -0
- package/dist/utils/security/rateLimiter.d.ts +93 -0
- package/dist/utils/security/rateLimiter.d.ts.map +1 -0
- package/dist/utils/security/rateLimiter.js +1 -0
- package/dist/utils/security/rateLimiter.js.map +1 -0
- package/dist/utils/security/sanitization.d.ts +181 -0
- package/dist/utils/security/sanitization.d.ts.map +1 -0
- package/dist/utils/security/sanitization.js +6 -5
- package/dist/utils/security/sanitization.js.map +1 -0
- package/package.json +52 -34
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/utils/internal/logger.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Defines the structure for context information associated with a request or operation.
|
|
3
|
+
*/
|
|
4
|
+
export interface RequestContext {
|
|
5
|
+
/** Unique identifier generated for the request context instance. */
|
|
6
|
+
requestId: string;
|
|
7
|
+
/** ISO 8601 timestamp indicating when the context was created. */
|
|
8
|
+
timestamp: string;
|
|
9
|
+
/** Allows for additional, arbitrary key-value pairs for specific context needs. */
|
|
10
|
+
[key: string]: unknown;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Configuration interface for request context utilities
|
|
14
|
+
*/
|
|
15
|
+
export interface ContextConfig {
|
|
16
|
+
/** Custom configuration properties */
|
|
17
|
+
[key: string]: unknown;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Operation context with request data
|
|
21
|
+
*/
|
|
22
|
+
export interface OperationContext {
|
|
23
|
+
/** Request context data */
|
|
24
|
+
requestContext?: RequestContext;
|
|
25
|
+
/** Custom context properties */
|
|
26
|
+
[key: string]: unknown;
|
|
27
|
+
}
|
|
28
|
+
export declare const requestContextService: {
|
|
29
|
+
config: ContextConfig;
|
|
30
|
+
/**
|
|
31
|
+
* Configure service settings
|
|
32
|
+
* @param config New configuration
|
|
33
|
+
* @returns Updated configuration
|
|
34
|
+
*/
|
|
35
|
+
configure(config: Partial<ContextConfig>): ContextConfig;
|
|
36
|
+
/**
|
|
37
|
+
* Get current configuration
|
|
38
|
+
* @returns Current configuration
|
|
39
|
+
*/
|
|
40
|
+
getConfig(): ContextConfig;
|
|
41
|
+
/**
|
|
42
|
+
* Create a request context with unique ID and timestamp
|
|
43
|
+
* @param additionalContext Additional context properties
|
|
44
|
+
* @returns Request context object
|
|
45
|
+
*/
|
|
46
|
+
createRequestContext(additionalContext?: Record<string, unknown>): RequestContext;
|
|
47
|
+
};
|
|
48
|
+
//# sourceMappingURL=requestContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"requestContext.d.ts","sourceRoot":"","sources":["../../../src/utils/internal/requestContext.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,oEAAoE;IACpE,SAAS,EAAE,MAAM,CAAC;IAClB,kEAAkE;IAClE,SAAS,EAAE,MAAM,CAAC;IAClB,mFAAmF;IACnF,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,sCAAsC;IACtC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,2BAA2B;IAC3B,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,gCAAgC;IAChC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAoDD,eAAO,MAAM,qBAAqB;YAhDlB,aAAa;IAE3B;;;;OAIG;sBACe,OAAO,CAAC,aAAa,CAAC,GAAG,aAAa;IAWxD;;;OAGG;iBACU,aAAa;IAI1B;;;;OAIG;6CAEkB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACzC,cAAc;CAe+C,CAAC"}
|
|
@@ -48,3 +48,4 @@ export const requestContextService = requestContextServiceInstance;
|
|
|
48
48
|
// Users should import and use `requestContextService` directly.
|
|
49
49
|
// e.g., import { requestContextService } from './requestContext.js';
|
|
50
50
|
// requestContextService.createRequestContext();
|
|
51
|
+
//# sourceMappingURL=requestContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"requestContext.js","sourceRoot":"","sources":["../../../src/utils/internal/requestContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,wFAAwF;AACxF,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAiC3C,gDAAgD;AAChD,MAAM,6BAA6B,GAAG;IACpC,MAAM,EAAE,EAAmB;IAE3B;;;;OAIG;IACH,SAAS,CAAC,MAA8B;QACtC,IAAI,CAAC,MAAM,GAAG;YACZ,GAAG,IAAI,CAAC,MAAM;YACd,GAAG,MAAM;SACV,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE;YACnD,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC,CAAC;QACH,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACH,SAAS;QACP,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;IAC5B,CAAC;IAED;;;;OAIG;IACH,oBAAoB,CAClB,oBAA6C,EAAE;QAE/C,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC,CAAC,4BAA4B;QAC9D,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAE3C,OAAO;YACL,SAAS;YACT,SAAS;YACT,GAAG,iBAAiB;SACrB,CAAC;IACJ,CAAC;IAED,6EAA6E;CAC9E,CAAC;AAEF,+BAA+B;AAC/B,MAAM,CAAC,MAAM,qBAAqB,GAAG,6BAA6B,CAAC;AAEnE,gEAAgE;AAChE,gEAAgE;AAChE,qEAAqE;AACrE,gDAAgD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/metrics/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/metrics/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { ChatCompletionMessageParam } from "openai/resources/chat/completions";
|
|
2
|
+
import { RequestContext } from "../index.js";
|
|
3
|
+
/**
|
|
4
|
+
* Calculates the number of tokens for a given text using the 'gpt-4o' tokenizer.
|
|
5
|
+
* Uses ErrorHandler for consistent error management.
|
|
6
|
+
*
|
|
7
|
+
* @param text - The input text to tokenize.
|
|
8
|
+
* @param context - Optional request context for logging and error handling.
|
|
9
|
+
* @returns The number of tokens.
|
|
10
|
+
* @throws {McpError} Throws an McpError if tokenization fails.
|
|
11
|
+
*/
|
|
12
|
+
export declare function countTokens(text: string, context?: RequestContext): Promise<number>;
|
|
13
|
+
/**
|
|
14
|
+
* Calculates the number of tokens for chat messages using the ChatCompletionMessageParam structure
|
|
15
|
+
* and the 'gpt-4o' tokenizer, considering special tokens and message overhead.
|
|
16
|
+
* This implementation is based on OpenAI's guidelines for gpt-4/gpt-3.5-turbo models.
|
|
17
|
+
* Uses ErrorHandler for consistent error management.
|
|
18
|
+
*
|
|
19
|
+
* See: https://github.com/openai/openai-cookbook/blob/main/examples/How_to_count_tokens_with_tiktoken.ipynb
|
|
20
|
+
*
|
|
21
|
+
* @param messages - An array of chat messages in the `ChatCompletionMessageParam` format.
|
|
22
|
+
* @param context - Optional request context for logging and error handling.
|
|
23
|
+
* @returns The estimated number of tokens.
|
|
24
|
+
* @throws {McpError} Throws an McpError if tokenization fails.
|
|
25
|
+
*/
|
|
26
|
+
export declare function countChatTokens(messages: ReadonlyArray<ChatCompletionMessageParam>, // Use the complex type
|
|
27
|
+
context?: RequestContext): Promise<number>;
|
|
28
|
+
//# sourceMappingURL=tokenCounter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokenCounter.d.ts","sourceRoot":"","sources":["../../../src/utils/metrics/tokenCounter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAI/E,OAAO,EAAwB,cAAc,EAAE,MAAM,aAAa,CAAC;AAKnE;;;;;;;;GAQG;AACH,wBAAsB,WAAW,CAC/B,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,MAAM,CAAC,CAuBjB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,aAAa,CAAC,0BAA0B,CAAC,EAAE,uBAAuB;AAC5E,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,MAAM,CAAC,CA2FjB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokenCounter.js","sourceRoot":"","sources":["../../../src/utils/metrics/tokenCounter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAA2B,MAAM,UAAU,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,mGAAmG;AACnG,OAAO,EAAE,YAAY,EAAE,MAAM,EAAkB,MAAM,aAAa,CAAC;AAEnE,wDAAwD;AACxD,MAAM,kBAAkB,GAAkB,QAAQ,CAAC,CAAC,6EAA6E;AAEjI;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,IAAY,EACZ,OAAwB;IAExB,2EAA2E;IAC3E,OAAO,YAAY,CAAC,QAAQ,CAC1B,GAAG,EAAE;QACH,IAAI,QAAQ,GAAoB,IAAI,CAAC;QACrC,IAAI,CAAC;YACH,4CAA4C;YAC5C,QAAQ,GAAG,kBAAkB,CAAC,kBAAkB,CAAC,CAAC;YAClD,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACrC,OAAO,MAAM,CAAC,MAAM,CAAC;QACvB,CAAC;gBAAS,CAAC;YACT,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,6DAA6D;QACjF,CAAC;IACH,CAAC,EACD;QACE,SAAS,EAAE,aAAa;QACxB,OAAO,EAAE,OAAO;QAChB,KAAK,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,EAAE,EAAE,sBAAsB;QAC5E,SAAS,EAAE,aAAa,CAAC,cAAc,EAAE,6CAA6C;QACtF,OAAO,EAAE,IAAI,EAAE,sBAAsB;QACrC,0CAA0C;KAC3C,CACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,QAAmD,EAAE,uBAAuB;AAC5E,OAAwB;IAExB,6CAA6C;IAC7C,OAAO,YAAY,CAAC,QAAQ,CAC1B,GAAG,EAAE;QACH,IAAI,QAAQ,GAAoB,IAAI,CAAC;QACrC,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,IAAI,CAAC;YACH,4CAA4C;YAC5C,QAAQ,GAAG,kBAAkB,CAAC,kBAAkB,CAAC,CAAC;YAElD,+EAA+E;YAC/E,MAAM,kBAAkB,GAAG,CAAC,CAAC;YAC7B,MAAM,eAAe,GAAG,CAAC,CAAC;YAE1B,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAC/B,UAAU,IAAI,kBAAkB,CAAC;gBACjC,cAAc;gBACd,UAAU,IAAI,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;gBAEnD,mEAAmE;gBACnE,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;oBACxC,UAAU,IAAI,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;gBACxD,CAAC;qBAAM,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC1C,sFAAsF;oBACtF,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;wBACnC,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;4BACzB,UAAU,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;wBAClD,CAAC;6BAAM,CAAC;4BACN,0EAA0E;4BAC1E,iFAAiF;4BACjF,MAAM,CAAC,OAAO,CACZ,sCAAsC,IAAI,CAAC,IAAI,sCAAsC,EACrF,OAAO,CACR,CAAC;4BACF,iDAAiD;wBACnD,CAAC;oBACH,CAAC;gBACH,CAAC,CAAC,sCAAsC;gBAExC,4FAA4F;gBAC5F,IAAI,MAAM,IAAI,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;oBACtC,UAAU,IAAI,eAAe,CAAC;oBAC9B,UAAU,IAAI,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;gBACrD,CAAC;gBAED,uDAAuD;gBACvD,0CAA0C;gBAC1C,IACE,OAAO,CAAC,IAAI,KAAK,WAAW;oBAC5B,YAAY,IAAI,OAAO;oBACvB,OAAO,CAAC,UAAU,EAClB,CAAC;oBACD,KAAK,MAAM,SAAS,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;wBAC3C,iDAAiD;wBACjD,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;4BAC5B,UAAU,IAAI,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;wBAChE,CAAC;wBACD,IAAI,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;4BACjC,mCAAmC;4BACnC,UAAU,IAAI,QAAQ,CAAC,MAAM,CAC3B,SAAS,CAAC,QAAQ,CAAC,SAAS,CAC7B,CAAC,MAAM,CAAC;wBACX,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,iCAAiC;gBACjC,IACE,OAAO,CAAC,IAAI,KAAK,MAAM;oBACvB,cAAc,IAAI,OAAO;oBACzB,OAAO,CAAC,YAAY,EACpB,CAAC;oBACD,UAAU,IAAI,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC;oBAC3D,gGAAgG;gBAClG,CAAC;YACH,CAAC;YACD,UAAU,IAAI,CAAC,CAAC,CAAC,2DAA2D;YAC5E,OAAO,UAAU,CAAC;QACpB,CAAC;gBAAS,CAAC;YACT,QAAQ,EAAE,IAAI,EAAE,CAAC;QACnB,CAAC;IACH,CAAC,EACD;QACE,SAAS,EAAE,iBAAiB;QAC5B,OAAO,EAAE,OAAO;QAChB,KAAK,EAAE,EAAE,YAAY,EAAE,QAAQ,CAAC,MAAM,EAAE,EAAE,sBAAsB;QAChE,SAAS,EAAE,aAAa,CAAC,cAAc,EAAE,qBAAqB;QAC9D,OAAO,EAAE,IAAI,EAAE,sBAAsB;QACrC,wBAAwB;KACzB,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import * as chrono from "chrono-node";
|
|
2
|
+
import { RequestContext } from "../index.js";
|
|
3
|
+
export declare const dateParser: {
|
|
4
|
+
/**
|
|
5
|
+
* Parses a natural language date string and returns detailed parsing results.
|
|
6
|
+
*
|
|
7
|
+
* @param text The natural language date string.
|
|
8
|
+
* @param context The request context for logging and error tracking.
|
|
9
|
+
* @param refDate Optional reference date for parsing relative dates. Defaults to now.
|
|
10
|
+
* @returns An array of chrono.ParsedResult objects, or an empty array if parsing fails.
|
|
11
|
+
* @throws McpError if parsing fails unexpectedly.
|
|
12
|
+
*/
|
|
13
|
+
parse: (text: string, context: RequestContext, refDate?: Date) => Promise<chrono.ParsedResult[]>;
|
|
14
|
+
/**
|
|
15
|
+
* Parses a natural language date string into a Date object.
|
|
16
|
+
*
|
|
17
|
+
* @param text The natural language date string (e.g., "tomorrow", "in 5 days", "2024-01-15").
|
|
18
|
+
* @param context The request context for logging and error tracking.
|
|
19
|
+
* @param refDate Optional reference date for parsing relative dates. Defaults to now.
|
|
20
|
+
* @returns A Date object representing the parsed date, or null if parsing fails.
|
|
21
|
+
* @throws McpError if parsing fails unexpectedly.
|
|
22
|
+
*/
|
|
23
|
+
parseDate: (text: string, context: RequestContext, refDate?: Date) => Promise<Date | null>;
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=dateParser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dateParser.d.ts","sourceRoot":"","sources":["../../../src/utils/parsing/dateParser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AAEtC,OAAO,EAAwB,cAAc,EAAE,MAAM,aAAa,CAAC;AAGnE,eAAO,MAAM,UAAU;IACrB;;;;;;;;OAQG;kBAEK,MAAM,WACH,cAAc,YACb,IAAI,KACb,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;IA0BjC;;;;;;;;OAQG;sBAEK,MAAM,WACH,cAAc,YACb,IAAI,KACb,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;CA6BxB,CAAC"}
|
|
@@ -2,61 +2,62 @@ import * as chrono from "chrono-node";
|
|
|
2
2
|
// Import utils from the main barrel file (logger, ErrorHandler, RequestContext from ../internal/*)
|
|
3
3
|
import { logger, ErrorHandler } from "../index.js";
|
|
4
4
|
import { BaseErrorCode } from "../../types-global/errors.js"; // Corrected path
|
|
5
|
-
/**
|
|
6
|
-
* Parses a natural language date string into a Date object.
|
|
7
|
-
*
|
|
8
|
-
* @param text The natural language date string (e.g., "tomorrow", "in 5 days", "2024-01-15").
|
|
9
|
-
* @param context The request context for logging and error tracking.
|
|
10
|
-
* @param refDate Optional reference date for parsing relative dates. Defaults to now.
|
|
11
|
-
* @returns A Date object representing the parsed date, or null if parsing fails.
|
|
12
|
-
* @throws McpError if parsing fails unexpectedly.
|
|
13
|
-
*/
|
|
14
|
-
async function parseDateString(text, context, refDate) {
|
|
15
|
-
const operation = "parseDateString";
|
|
16
|
-
const logContext = { ...context, operation, inputText: text, refDate };
|
|
17
|
-
logger.debug(`Attempting to parse date string: "${text}"`, logContext);
|
|
18
|
-
return await ErrorHandler.tryCatch(async () => {
|
|
19
|
-
const parsedDate = chrono.parseDate(text, refDate, { forwardDate: true });
|
|
20
|
-
if (parsedDate) {
|
|
21
|
-
logger.debug(`Successfully parsed "${text}" to ${parsedDate.toISOString()}`, logContext);
|
|
22
|
-
return parsedDate;
|
|
23
|
-
}
|
|
24
|
-
else {
|
|
25
|
-
logger.warning(`Failed to parse date string: "${text}"`, logContext);
|
|
26
|
-
return null;
|
|
27
|
-
}
|
|
28
|
-
}, {
|
|
29
|
-
operation,
|
|
30
|
-
context: logContext,
|
|
31
|
-
input: { text, refDate },
|
|
32
|
-
errorCode: BaseErrorCode.PARSING_ERROR,
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
* Parses a natural language date string and returns detailed parsing results.
|
|
37
|
-
*
|
|
38
|
-
* @param text The natural language date string.
|
|
39
|
-
* @param context The request context for logging and error tracking.
|
|
40
|
-
* @param refDate Optional reference date for parsing relative dates. Defaults to now.
|
|
41
|
-
* @returns An array of chrono.ParsedResult objects, or an empty array if parsing fails.
|
|
42
|
-
* @throws McpError if parsing fails unexpectedly.
|
|
43
|
-
*/
|
|
44
|
-
async function parseDateStringDetailed(text, context, refDate) {
|
|
45
|
-
const operation = "parseDateStringDetailed";
|
|
46
|
-
const logContext = { ...context, operation, inputText: text, refDate };
|
|
47
|
-
logger.debug(`Attempting detailed parse of date string: "${text}"`, logContext);
|
|
48
|
-
return await ErrorHandler.tryCatch(async () => {
|
|
49
|
-
const results = chrono.parse(text, refDate, { forwardDate: true });
|
|
50
|
-
logger.debug(`Detailed parse of "${text}" resulted in ${results.length} result(s)`, logContext);
|
|
51
|
-
return results;
|
|
52
|
-
}, {
|
|
53
|
-
operation,
|
|
54
|
-
context: logContext,
|
|
55
|
-
input: { text, refDate },
|
|
56
|
-
errorCode: BaseErrorCode.PARSING_ERROR,
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
5
|
export const dateParser = {
|
|
60
|
-
|
|
61
|
-
|
|
6
|
+
/**
|
|
7
|
+
* Parses a natural language date string and returns detailed parsing results.
|
|
8
|
+
*
|
|
9
|
+
* @param text The natural language date string.
|
|
10
|
+
* @param context The request context for logging and error tracking.
|
|
11
|
+
* @param refDate Optional reference date for parsing relative dates. Defaults to now.
|
|
12
|
+
* @returns An array of chrono.ParsedResult objects, or an empty array if parsing fails.
|
|
13
|
+
* @throws McpError if parsing fails unexpectedly.
|
|
14
|
+
*/
|
|
15
|
+
parse: async (text, context, refDate) => {
|
|
16
|
+
const operation = "parseDateStringDetailed";
|
|
17
|
+
const logContext = { ...context, operation, inputText: text, refDate };
|
|
18
|
+
logger.debug(`Attempting detailed parse of date string: "${text}"`, logContext);
|
|
19
|
+
return await ErrorHandler.tryCatch(async () => {
|
|
20
|
+
const results = chrono.parse(text, refDate, { forwardDate: true });
|
|
21
|
+
logger.debug(`Detailed parse of "${text}" resulted in ${results.length} result(s)`, logContext);
|
|
22
|
+
return results;
|
|
23
|
+
}, {
|
|
24
|
+
operation,
|
|
25
|
+
context: logContext,
|
|
26
|
+
input: { text, refDate },
|
|
27
|
+
errorCode: BaseErrorCode.PARSING_ERROR,
|
|
28
|
+
});
|
|
29
|
+
},
|
|
30
|
+
/**
|
|
31
|
+
* Parses a natural language date string into a Date object.
|
|
32
|
+
*
|
|
33
|
+
* @param text The natural language date string (e.g., "tomorrow", "in 5 days", "2024-01-15").
|
|
34
|
+
* @param context The request context for logging and error tracking.
|
|
35
|
+
* @param refDate Optional reference date for parsing relative dates. Defaults to now.
|
|
36
|
+
* @returns A Date object representing the parsed date, or null if parsing fails.
|
|
37
|
+
* @throws McpError if parsing fails unexpectedly.
|
|
38
|
+
*/
|
|
39
|
+
parseDate: async (text, context, refDate) => {
|
|
40
|
+
const operation = "parseDateString";
|
|
41
|
+
const logContext = { ...context, operation, inputText: text, refDate };
|
|
42
|
+
logger.debug(`Attempting to parse date string: "${text}"`, logContext);
|
|
43
|
+
return await ErrorHandler.tryCatch(async () => {
|
|
44
|
+
const parsedDate = chrono.parseDate(text, refDate, {
|
|
45
|
+
forwardDate: true,
|
|
46
|
+
});
|
|
47
|
+
if (parsedDate) {
|
|
48
|
+
logger.debug(`Successfully parsed "${text}" to ${parsedDate.toISOString()}`, logContext);
|
|
49
|
+
return parsedDate;
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
logger.warning(`Failed to parse date string: "${text}"`, logContext);
|
|
53
|
+
return null;
|
|
54
|
+
}
|
|
55
|
+
}, {
|
|
56
|
+
operation,
|
|
57
|
+
context: logContext,
|
|
58
|
+
input: { text, refDate },
|
|
59
|
+
errorCode: BaseErrorCode.PARSING_ERROR,
|
|
60
|
+
});
|
|
61
|
+
},
|
|
62
62
|
};
|
|
63
|
+
//# sourceMappingURL=dateParser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dateParser.js","sourceRoot":"","sources":["../../../src/utils/parsing/dateParser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,mGAAmG;AACnG,OAAO,EAAE,MAAM,EAAE,YAAY,EAAkB,MAAM,aAAa,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC,CAAC,iBAAiB;AAE/E,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB;;;;;;;;OAQG;IACH,KAAK,EAAE,KAAK,EACV,IAAY,EACZ,OAAuB,EACvB,OAAc,EACkB,EAAE;QAClC,MAAM,SAAS,GAAG,yBAAyB,CAAC;QAC5C,MAAM,UAAU,GAAG,EAAE,GAAG,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;QACvE,MAAM,CAAC,KAAK,CACV,8CAA8C,IAAI,GAAG,EACrD,UAAU,CACX,CAAC;QAEF,OAAO,MAAM,YAAY,CAAC,QAAQ,CAChC,KAAK,IAAI,EAAE;YACT,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;YACnE,MAAM,CAAC,KAAK,CACV,sBAAsB,IAAI,iBAAiB,OAAO,CAAC,MAAM,YAAY,EACrE,UAAU,CACX,CAAC;YACF,OAAO,OAAO,CAAC;QACjB,CAAC,EACD;YACE,SAAS;YACT,OAAO,EAAE,UAAU;YACnB,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;YACxB,SAAS,EAAE,aAAa,CAAC,aAAa;SACvC,CACF,CAAC;IACJ,CAAC;IAED;;;;;;;;OAQG;IACH,SAAS,EAAE,KAAK,EACd,IAAY,EACZ,OAAuB,EACvB,OAAc,EACQ,EAAE;QACxB,MAAM,SAAS,GAAG,iBAAiB,CAAC;QACpC,MAAM,UAAU,GAAG,EAAE,GAAG,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;QACvE,MAAM,CAAC,KAAK,CAAC,qCAAqC,IAAI,GAAG,EAAE,UAAU,CAAC,CAAC;QAEvE,OAAO,MAAM,YAAY,CAAC,QAAQ,CAChC,KAAK,IAAI,EAAE;YACT,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE;gBACjD,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC;YACH,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CACV,wBAAwB,IAAI,QAAQ,UAAU,CAAC,WAAW,EAAE,EAAE,EAC9D,UAAU,CACX,CAAC;gBACF,OAAO,UAAU,CAAC;YACpB,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,OAAO,CAAC,iCAAiC,IAAI,GAAG,EAAE,UAAU,CAAC,CAAC;gBACrE,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC,EACD;YACE,SAAS;YACT,OAAO,EAAE,UAAU;YACnB,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;YACxB,SAAS,EAAE,aAAa,CAAC,aAAa;SACvC,CACF,CAAC;IACJ,CAAC;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/parsing/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/parsing/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { RequestContext } from "../index.js";
|
|
2
|
+
/**
|
|
3
|
+
* Enum mirroring `partial-json`'s `Allow` constants. These specify
|
|
4
|
+
* what types of partial JSON structures are permissible during parsing.
|
|
5
|
+
* They can be combined using bitwise OR (e.g., `Allow.STR | Allow.OBJ`).
|
|
6
|
+
*
|
|
7
|
+
* The available properties are:
|
|
8
|
+
* - `STR`: Allow partial string.
|
|
9
|
+
* - `NUM`: Allow partial number.
|
|
10
|
+
* - `ARR`: Allow partial array.
|
|
11
|
+
* - `OBJ`: Allow partial object.
|
|
12
|
+
* - `NULL`: Allow partial null.
|
|
13
|
+
* - `BOOL`: Allow partial boolean.
|
|
14
|
+
* - `NAN`: Allow partial NaN. (Note: Standard JSON does not support NaN)
|
|
15
|
+
* - `INFINITY`: Allow partial Infinity. (Note: Standard JSON does not support Infinity)
|
|
16
|
+
* - `_INFINITY`: Allow partial -Infinity. (Note: Standard JSON does not support -Infinity)
|
|
17
|
+
* - `INF`: Allow both partial Infinity and -Infinity.
|
|
18
|
+
* - `SPECIAL`: Allow all special values (NaN, Infinity, -Infinity).
|
|
19
|
+
* - `ATOM`: Allow all atomic values (strings, numbers, booleans, null, special values).
|
|
20
|
+
* - `COLLECTION`: Allow all collection values (objects, arrays).
|
|
21
|
+
* - `ALL`: Allow all value types to be partial (default for `partial-json`'s parse).
|
|
22
|
+
* @see {@link https://github.com/promplate/partial-json-parser-js} for more details.
|
|
23
|
+
*/
|
|
24
|
+
export declare const Allow: {
|
|
25
|
+
STR: number;
|
|
26
|
+
NUM: number;
|
|
27
|
+
ARR: number;
|
|
28
|
+
OBJ: number;
|
|
29
|
+
NULL: number;
|
|
30
|
+
BOOL: number;
|
|
31
|
+
NAN: number;
|
|
32
|
+
INFINITY: number;
|
|
33
|
+
_INFINITY: number;
|
|
34
|
+
INF: number;
|
|
35
|
+
SPECIAL: number;
|
|
36
|
+
ATOM: number;
|
|
37
|
+
COLLECTION: number;
|
|
38
|
+
ALL: number;
|
|
39
|
+
};
|
|
40
|
+
/**
|
|
41
|
+
* Utility class for parsing potentially partial JSON strings.
|
|
42
|
+
* Wraps the 'partial-json' library for robust JSON parsing, handling
|
|
43
|
+
* incomplete structures and optional <think> blocks from LLMs.
|
|
44
|
+
*/
|
|
45
|
+
export declare class JsonParser {
|
|
46
|
+
/**
|
|
47
|
+
* Parses a JSON string, which may be partial or prefixed with a <think> block.
|
|
48
|
+
* If a <think> block is present, its content is logged, and parsing proceeds on the
|
|
49
|
+
* remainder. Uses 'partial-json' to handle incomplete JSON.
|
|
50
|
+
*
|
|
51
|
+
* @template T The expected type of the parsed JSON object. Defaults to `unknown`.
|
|
52
|
+
* @param jsonString - The JSON string to parse.
|
|
53
|
+
* @param allowPartial - Bitwise OR combination of `Allow` constants specifying permissible
|
|
54
|
+
* partial JSON types. Defaults to `Allow.ALL`.
|
|
55
|
+
* @param context - Optional `RequestContext` for logging and error correlation.
|
|
56
|
+
* @returns The parsed JavaScript value.
|
|
57
|
+
* @throws {McpError} If the string is empty after processing or if `partial-json` fails.
|
|
58
|
+
*/
|
|
59
|
+
parse<T = unknown>(jsonString: string, allowPartial?: number, context?: RequestContext): T;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Singleton instance of the `JsonParser`.
|
|
63
|
+
* Use this instance to parse JSON strings, with support for partial JSON and <think> blocks.
|
|
64
|
+
* @example
|
|
65
|
+
* ```typescript
|
|
66
|
+
* import { jsonParser, Allow, requestContextService } from './utils';
|
|
67
|
+
* const context = requestContextService.createRequestContext({ operation: 'TestJsonParsing' });
|
|
68
|
+
*
|
|
69
|
+
* const fullJson = '{"key": "value"}';
|
|
70
|
+
* const parsedFull = jsonParser.parse(fullJson, Allow.ALL, context);
|
|
71
|
+
* console.log(parsedFull); // Output: { key: 'value' }
|
|
72
|
+
*
|
|
73
|
+
* const partialObject = '<think>This is a thought.</think>{"key": "value", "arr": [1,';
|
|
74
|
+
* try {
|
|
75
|
+
* const parsedPartial = jsonParser.parse(partialObject, undefined, context);
|
|
76
|
+
* console.log(parsedPartial);
|
|
77
|
+
* } catch (e) {
|
|
78
|
+
* console.error("Parsing partial object failed:", e);
|
|
79
|
+
* }
|
|
80
|
+
* ```
|
|
81
|
+
*/
|
|
82
|
+
export declare const jsonParser: JsonParser;
|
|
83
|
+
//# sourceMappingURL=jsonParser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jsonParser.d.ts","sourceRoot":"","sources":["../../../src/utils/parsing/jsonParser.ts"],"names":[],"mappings":"AAWA,OAAO,EAAU,cAAc,EAAyB,MAAM,aAAa,CAAC;AAE5E;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;CAAmB,CAAC;AAStC;;;;GAIG;AACH,qBAAa,UAAU;IACrB;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,CAAC,GAAG,OAAO,EACf,UAAU,EAAE,MAAM,EAClB,YAAY,GAAE,MAAkB,EAChC,OAAO,CAAC,EAAE,cAAc,GACvB,CAAC;CA8DL;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,UAAU,YAAmB,CAAC"}
|
|
@@ -1,88 +1,128 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Provides a utility class for parsing potentially partial JSON strings.
|
|
3
|
+
* It wraps the 'partial-json' npm library and includes functionality to handle
|
|
4
|
+
* optional <think>...</think> blocks often found at the beginning of LLM outputs.
|
|
5
|
+
* @module src/utils/parsing/jsonParser
|
|
6
|
+
*/
|
|
1
7
|
import { parse as parsePartialJson, Allow as PartialJsonAllow, } from "partial-json";
|
|
2
8
|
import { BaseErrorCode, McpError } from "../../types-global/errors.js";
|
|
3
|
-
|
|
4
|
-
import { logger } from "../index.js";
|
|
9
|
+
import { logger, requestContextService } from "../index.js";
|
|
5
10
|
/**
|
|
6
|
-
* Enum mirroring partial-json's Allow constants
|
|
11
|
+
* Enum mirroring `partial-json`'s `Allow` constants. These specify
|
|
7
12
|
* what types of partial JSON structures are permissible during parsing.
|
|
8
|
-
*
|
|
13
|
+
* They can be combined using bitwise OR (e.g., `Allow.STR | Allow.OBJ`).
|
|
14
|
+
*
|
|
15
|
+
* The available properties are:
|
|
16
|
+
* - `STR`: Allow partial string.
|
|
17
|
+
* - `NUM`: Allow partial number.
|
|
18
|
+
* - `ARR`: Allow partial array.
|
|
19
|
+
* - `OBJ`: Allow partial object.
|
|
20
|
+
* - `NULL`: Allow partial null.
|
|
21
|
+
* - `BOOL`: Allow partial boolean.
|
|
22
|
+
* - `NAN`: Allow partial NaN. (Note: Standard JSON does not support NaN)
|
|
23
|
+
* - `INFINITY`: Allow partial Infinity. (Note: Standard JSON does not support Infinity)
|
|
24
|
+
* - `_INFINITY`: Allow partial -Infinity. (Note: Standard JSON does not support -Infinity)
|
|
25
|
+
* - `INF`: Allow both partial Infinity and -Infinity.
|
|
26
|
+
* - `SPECIAL`: Allow all special values (NaN, Infinity, -Infinity).
|
|
27
|
+
* - `ATOM`: Allow all atomic values (strings, numbers, booleans, null, special values).
|
|
28
|
+
* - `COLLECTION`: Allow all collection values (objects, arrays).
|
|
29
|
+
* - `ALL`: Allow all value types to be partial (default for `partial-json`'s parse).
|
|
30
|
+
* @see {@link https://github.com/promplate/partial-json-parser-js} for more details.
|
|
9
31
|
*/
|
|
10
32
|
export const Allow = PartialJsonAllow;
|
|
11
|
-
|
|
33
|
+
/**
|
|
34
|
+
* Regular expression to find a <think> block at the start of a string.
|
|
35
|
+
* Captures content within <think>...</think> (Group 1) and the rest of the string (Group 2).
|
|
36
|
+
* @private
|
|
37
|
+
*/
|
|
12
38
|
const thinkBlockRegex = /^<think>([\s\S]*?)<\/think>\s*([\s\S]*)$/;
|
|
13
39
|
/**
|
|
14
40
|
* Utility class for parsing potentially partial JSON strings.
|
|
15
|
-
* Wraps the 'partial-json' library
|
|
16
|
-
*
|
|
17
|
-
* Handles optional <think>...</think> blocks at the beginning of the input.
|
|
41
|
+
* Wraps the 'partial-json' library for robust JSON parsing, handling
|
|
42
|
+
* incomplete structures and optional <think> blocks from LLMs.
|
|
18
43
|
*/
|
|
19
|
-
class JsonParser {
|
|
44
|
+
export class JsonParser {
|
|
20
45
|
/**
|
|
21
|
-
* Parses a JSON string,
|
|
22
|
-
*
|
|
46
|
+
* Parses a JSON string, which may be partial or prefixed with a <think> block.
|
|
47
|
+
* If a <think> block is present, its content is logged, and parsing proceeds on the
|
|
48
|
+
* remainder. Uses 'partial-json' to handle incomplete JSON.
|
|
23
49
|
*
|
|
24
|
-
* @
|
|
25
|
-
* @param
|
|
26
|
-
* @param
|
|
50
|
+
* @template T The expected type of the parsed JSON object. Defaults to `unknown`.
|
|
51
|
+
* @param jsonString - The JSON string to parse.
|
|
52
|
+
* @param allowPartial - Bitwise OR combination of `Allow` constants specifying permissible
|
|
53
|
+
* partial JSON types. Defaults to `Allow.ALL`.
|
|
54
|
+
* @param context - Optional `RequestContext` for logging and error correlation.
|
|
27
55
|
* @returns The parsed JavaScript value.
|
|
28
|
-
* @throws {McpError}
|
|
56
|
+
* @throws {McpError} If the string is empty after processing or if `partial-json` fails.
|
|
29
57
|
*/
|
|
30
58
|
parse(jsonString, allowPartial = Allow.ALL, context) {
|
|
31
59
|
let stringToParse = jsonString;
|
|
32
60
|
const match = jsonString.match(thinkBlockRegex);
|
|
33
61
|
if (match) {
|
|
34
|
-
const thinkContent = match[1].trim();
|
|
35
|
-
const restOfString = match[2];
|
|
62
|
+
const thinkContent = (match[1] || "").trim();
|
|
63
|
+
const restOfString = match[2] || "";
|
|
64
|
+
const logContext = context ||
|
|
65
|
+
requestContextService.createRequestContext({
|
|
66
|
+
operation: "JsonParser.thinkBlock",
|
|
67
|
+
});
|
|
36
68
|
if (thinkContent) {
|
|
37
69
|
logger.debug("LLM <think> block detected and logged.", {
|
|
38
|
-
...
|
|
70
|
+
...logContext,
|
|
39
71
|
thinkContent,
|
|
40
72
|
});
|
|
41
73
|
}
|
|
42
74
|
else {
|
|
43
|
-
logger.debug("Empty LLM <think> block detected.",
|
|
75
|
+
logger.debug("Empty LLM <think> block detected.", logContext);
|
|
44
76
|
}
|
|
45
|
-
stringToParse = restOfString;
|
|
77
|
+
stringToParse = restOfString;
|
|
46
78
|
}
|
|
47
|
-
// Trim leading/trailing whitespace which might interfere with JSON parsing, especially if only JSON is left
|
|
48
79
|
stringToParse = stringToParse.trim();
|
|
49
80
|
if (!stringToParse) {
|
|
50
|
-
|
|
51
|
-
throw new McpError(BaseErrorCode.VALIDATION_ERROR, "JSON string is empty after removing <think> block.", context);
|
|
81
|
+
throw new McpError(BaseErrorCode.VALIDATION_ERROR, "JSON string is empty after removing <think> block and trimming.", context);
|
|
52
82
|
}
|
|
53
83
|
try {
|
|
54
|
-
// Ensure the string starts with '{' or '[' if we expect an object or array after stripping <think>
|
|
55
|
-
// This helps catch cases where only non-JSON text remains.
|
|
56
|
-
if (!stringToParse.startsWith("{") && !stringToParse.startsWith("[")) {
|
|
57
|
-
// Check if it might be a simple string value that partial-json could parse
|
|
58
|
-
// Allow simple strings only if specifically permitted or Allow.ALL is used
|
|
59
|
-
const allowsString = (allowPartial & Allow.STR) === Allow.STR;
|
|
60
|
-
if (!allowsString && !stringToParse.startsWith('"')) {
|
|
61
|
-
// Allow quoted strings if Allow.STR is set
|
|
62
|
-
throw new Error("Remaining content does not appear to be valid JSON object or array.");
|
|
63
|
-
}
|
|
64
|
-
// If it starts with a quote and strings are allowed, let parsePartialJson handle it
|
|
65
|
-
}
|
|
66
84
|
return parsePartialJson(stringToParse, allowPartial);
|
|
67
85
|
}
|
|
68
|
-
catch (
|
|
69
|
-
|
|
70
|
-
|
|
86
|
+
catch (e) {
|
|
87
|
+
const error = e;
|
|
88
|
+
const errorLogContext = context ||
|
|
89
|
+
requestContextService.createRequestContext({
|
|
90
|
+
operation: "JsonParser.parseError",
|
|
91
|
+
});
|
|
71
92
|
logger.error("Failed to parse JSON content.", {
|
|
72
|
-
...
|
|
73
|
-
|
|
74
|
-
contentAttempted: stringToParse,
|
|
93
|
+
...errorLogContext,
|
|
94
|
+
errorDetails: error.message,
|
|
95
|
+
contentAttempted: stringToParse.substring(0, 200),
|
|
75
96
|
});
|
|
76
97
|
throw new McpError(BaseErrorCode.VALIDATION_ERROR, `Failed to parse JSON: ${error.message}`, {
|
|
77
|
-
// Combine context and details into the third argument
|
|
78
98
|
...context,
|
|
79
|
-
|
|
80
|
-
|
|
99
|
+
originalContentSample: stringToParse.substring(0, 200) +
|
|
100
|
+
(stringToParse.length > 200 ? "..." : ""),
|
|
101
|
+
rawError: error instanceof Error ? error.stack : String(error),
|
|
81
102
|
});
|
|
82
103
|
}
|
|
83
104
|
}
|
|
84
105
|
}
|
|
85
106
|
/**
|
|
86
|
-
* Singleton instance of the JsonParser
|
|
107
|
+
* Singleton instance of the `JsonParser`.
|
|
108
|
+
* Use this instance to parse JSON strings, with support for partial JSON and <think> blocks.
|
|
109
|
+
* @example
|
|
110
|
+
* ```typescript
|
|
111
|
+
* import { jsonParser, Allow, requestContextService } from './utils';
|
|
112
|
+
* const context = requestContextService.createRequestContext({ operation: 'TestJsonParsing' });
|
|
113
|
+
*
|
|
114
|
+
* const fullJson = '{"key": "value"}';
|
|
115
|
+
* const parsedFull = jsonParser.parse(fullJson, Allow.ALL, context);
|
|
116
|
+
* console.log(parsedFull); // Output: { key: 'value' }
|
|
117
|
+
*
|
|
118
|
+
* const partialObject = '<think>This is a thought.</think>{"key": "value", "arr": [1,';
|
|
119
|
+
* try {
|
|
120
|
+
* const parsedPartial = jsonParser.parse(partialObject, undefined, context);
|
|
121
|
+
* console.log(parsedPartial);
|
|
122
|
+
* } catch (e) {
|
|
123
|
+
* console.error("Parsing partial object failed:", e);
|
|
124
|
+
* }
|
|
125
|
+
* ```
|
|
87
126
|
*/
|
|
88
127
|
export const jsonParser = new JsonParser();
|
|
128
|
+
//# sourceMappingURL=jsonParser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jsonParser.js","sourceRoot":"","sources":["../../../src/utils/parsing/jsonParser.ts"],"names":[],"mappings":"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"}
|