@decaf-ts/mcp-server 0.4.2 → 0.4.6
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.md +31 -0
- package/dist/mcp-server.cjs +2 -2360
- package/dist/mcp-server.cjs.map +1 -0
- package/dist/mcp-server.js +2 -0
- package/dist/mcp-server.js.map +1 -0
- package/lib/bin/cli.cjs +7 -35
- package/lib/bin/cli.js.map +1 -0
- package/lib/builders/builder.cjs +91 -0
- package/lib/builders/builder.d.ts +25 -0
- package/lib/builders/builder.js.map +1 -0
- package/lib/{mcp/resources → builders}/index.cjs +5 -2
- package/lib/builders/index.d.ts +4 -0
- package/lib/builders/index.js.map +1 -0
- package/lib/builders/prompt-builder.cjs +76 -0
- package/lib/builders/prompt-builder.d.ts +12 -0
- package/lib/builders/prompt-builder.js.map +1 -0
- package/lib/builders/resource-builder.cjs +83 -0
- package/lib/builders/resource-builder.d.ts +14 -0
- package/lib/builders/resource-builder.js.map +1 -0
- package/lib/builders/tool-builder.cjs +104 -0
- package/lib/builders/tool-builder.d.ts +16 -0
- package/lib/builders/tool-builder.js.map +1 -0
- package/lib/constants.cjs +28 -30
- package/lib/constants.d.ts +19 -24
- package/lib/constants.js.map +1 -0
- package/lib/environment.cjs +32 -0
- package/lib/environment.d.ts +71 -0
- package/lib/environment.js.map +1 -0
- package/lib/esm/bin/cli.js +7 -35
- package/lib/esm/bin/cli.js.map +1 -0
- package/lib/esm/builders/builder.d.ts +25 -0
- package/lib/esm/builders/builder.js +86 -0
- package/lib/esm/builders/builder.js.map +1 -0
- package/lib/esm/builders/index.d.ts +4 -0
- package/lib/esm/builders/index.js +5 -0
- package/lib/esm/builders/index.js.map +1 -0
- package/lib/esm/builders/prompt-builder.d.ts +12 -0
- package/lib/esm/builders/prompt-builder.js +72 -0
- package/lib/esm/builders/prompt-builder.js.map +1 -0
- package/lib/esm/builders/resource-builder.d.ts +14 -0
- package/lib/esm/builders/resource-builder.js +79 -0
- package/lib/esm/builders/resource-builder.js.map +1 -0
- package/lib/esm/builders/tool-builder.d.ts +16 -0
- package/lib/esm/builders/tool-builder.js +100 -0
- package/lib/esm/builders/tool-builder.js.map +1 -0
- package/lib/esm/constants.d.ts +19 -24
- package/lib/esm/constants.js +27 -29
- package/lib/esm/constants.js.map +1 -0
- package/lib/esm/environment.d.ts +71 -0
- package/lib/esm/environment.js +29 -0
- package/lib/esm/environment.js.map +1 -0
- package/lib/esm/index.d.ts +3 -10
- package/lib/esm/index.js +4 -11
- package/lib/esm/index.js.map +1 -0
- package/lib/esm/mcp-server.d.ts +10 -0
- package/lib/esm/mcp-server.js +189 -0
- package/lib/esm/mcp-server.js.map +1 -0
- package/lib/esm/modules/template-module/index.d.ts +6 -0
- package/lib/esm/modules/template-module/index.js +4 -0
- package/lib/esm/modules/template-module/index.js.map +1 -0
- package/lib/esm/prompts/code/constants.d.ts +1 -0
- package/lib/esm/prompts/code/constants.js +2 -0
- package/lib/esm/prompts/code/constants.js.map +1 -0
- package/lib/esm/prompts/code/design-patterns/builder.d.ts +2 -0
- package/lib/esm/prompts/code/design-patterns/builder.js +118 -0
- package/lib/esm/prompts/code/design-patterns/builder.js.map +1 -0
- package/lib/esm/prompts/code/design-patterns/constants.d.ts +1 -0
- package/lib/esm/prompts/code/design-patterns/constants.js +3 -0
- package/lib/esm/prompts/code/design-patterns/constants.js.map +1 -0
- package/lib/esm/prompts/example-prompt/index.d.ts +2 -0
- package/lib/esm/prompts/example-prompt/index.js +18 -0
- package/lib/esm/prompts/example-prompt/index.js.map +1 -0
- package/lib/esm/prompts/index.d.ts +2 -0
- package/lib/esm/prompts/index.js +26 -0
- package/lib/esm/prompts/index.js.map +1 -0
- package/lib/esm/prompts/interactive-jsdoc/index.d.ts +2 -0
- package/lib/esm/prompts/interactive-jsdoc/index.js +18 -0
- package/lib/esm/prompts/interactive-jsdoc/index.js.map +1 -0
- package/lib/esm/prompts/jsdocs/class-prompt.d.ts +2 -0
- package/lib/esm/prompts/jsdocs/class-prompt.js +52 -0
- package/lib/esm/prompts/jsdocs/class-prompt.js.map +1 -0
- package/lib/esm/prompts/jsdocs/const-prompt.d.ts +2 -0
- package/lib/esm/prompts/jsdocs/const-prompt.js +24 -0
- package/lib/esm/prompts/jsdocs/const-prompt.js.map +1 -0
- package/lib/esm/prompts/jsdocs/constants.d.ts +4 -0
- package/lib/esm/prompts/jsdocs/constants.js +46 -0
- package/lib/esm/prompts/jsdocs/constants.js.map +1 -0
- package/lib/esm/prompts/jsdocs/decorator-prompt.d.ts +2 -0
- package/lib/esm/prompts/jsdocs/decorator-prompt.js +42 -0
- package/lib/esm/prompts/jsdocs/decorator-prompt.js.map +1 -0
- package/lib/esm/prompts/jsdocs/enum-prompt.d.ts +2 -0
- package/lib/esm/prompts/jsdocs/enum-prompt.js +24 -0
- package/lib/esm/prompts/jsdocs/enum-prompt.js.map +1 -0
- package/lib/esm/prompts/jsdocs/function-prompt.d.ts +2 -0
- package/lib/esm/prompts/jsdocs/function-prompt.js +43 -0
- package/lib/esm/prompts/jsdocs/function-prompt.js.map +1 -0
- package/lib/esm/prompts/jsdocs/interface-prompt.d.ts +2 -0
- package/lib/esm/prompts/jsdocs/interface-prompt.js +24 -0
- package/lib/esm/prompts/jsdocs/interface-prompt.js.map +1 -0
- package/lib/esm/prompts/jsdocs/types-prompt.d.ts +2 -0
- package/lib/esm/prompts/jsdocs/types-prompt.js +24 -0
- package/lib/esm/prompts/jsdocs/types-prompt.js.map +1 -0
- package/lib/esm/resources/example-resource/index.d.ts +2 -0
- package/lib/esm/resources/example-resource/index.js +19 -0
- package/lib/esm/resources/example-resource/index.js.map +1 -0
- package/lib/esm/resources/index.d.ts +2 -0
- package/lib/esm/resources/index.js +4 -0
- package/lib/esm/resources/index.js.map +1 -0
- package/lib/esm/resources/repo-metadata/index.d.ts +2 -0
- package/lib/esm/resources/repo-metadata/index.js +25 -0
- package/lib/esm/resources/repo-metadata/index.js.map +1 -0
- package/lib/esm/tools/ast/ts-ast-tool.d.ts +2 -0
- package/lib/esm/tools/ast/ts-ast-tool.js +67 -0
- package/lib/esm/tools/ast/ts-ast-tool.js.map +1 -0
- package/lib/esm/tools/ast/types.d.ts +105 -0
- package/lib/esm/tools/ast/types.js +33 -0
- package/lib/esm/tools/ast/types.js.map +1 -0
- package/lib/esm/tools/ast/utils.d.ts +5 -0
- package/lib/esm/tools/ast/utils.js +58 -0
- package/lib/esm/tools/ast/utils.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/apply.d.ts +6 -0
- package/lib/esm/tools/ast-jsdoc-tools/apply.js +29 -0
- package/lib/esm/tools/ast-jsdoc-tools/apply.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/cli.js +33 -0
- package/lib/esm/tools/ast-jsdoc-tools/cli.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/enumerator.d.ts +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/enumerator.js +25 -0
- package/lib/esm/tools/ast-jsdoc-tools/enumerator.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/fileRunner.d.ts +11 -0
- package/lib/esm/tools/ast-jsdoc-tools/fileRunner.js +29 -0
- package/lib/esm/tools/ast-jsdoc-tools/fileRunner.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/formatter.d.ts +6 -0
- package/lib/esm/tools/ast-jsdoc-tools/formatter.js +18 -0
- package/lib/esm/tools/ast-jsdoc-tools/formatter.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/generator.d.ts +12 -0
- package/lib/esm/tools/ast-jsdoc-tools/generator.js +55 -0
- package/lib/esm/tools/ast-jsdoc-tools/generator.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/index.d.ts +7 -0
- package/lib/esm/tools/ast-jsdoc-tools/index.js +29 -0
- package/lib/esm/tools/ast-jsdoc-tools/index.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/interactive.d.ts +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/interactive.js +7 -0
- package/lib/esm/tools/ast-jsdoc-tools/interactive.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/parser.d.ts +13 -0
- package/lib/esm/tools/ast-jsdoc-tools/parser.js +71 -0
- package/lib/esm/tools/ast-jsdoc-tools/parser.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/patch.d.ts +2 -0
- package/lib/esm/tools/ast-jsdoc-tools/patch.js +23 -0
- package/lib/esm/tools/ast-jsdoc-tools/patch.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/prompts/loader.d.ts +10 -0
- package/lib/esm/tools/ast-jsdoc-tools/prompts/loader.js +26 -0
- package/lib/esm/tools/ast-jsdoc-tools/prompts/loader.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/repoRunner.d.ts +16 -0
- package/lib/esm/tools/ast-jsdoc-tools/repoRunner.js +61 -0
- package/lib/esm/tools/ast-jsdoc-tools/repoRunner.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/tools/jsdoc-generator.d.ts +5 -0
- package/lib/esm/tools/ast-jsdoc-tools/tools/jsdoc-generator.js +78 -0
- package/lib/esm/tools/ast-jsdoc-tools/tools/jsdoc-generator.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/utils/conflict-detector.d.ts +5 -0
- package/lib/esm/tools/ast-jsdoc-tools/utils/conflict-detector.js +30 -0
- package/lib/esm/tools/ast-jsdoc-tools/utils/conflict-detector.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/utils/context-schema.d.ts +7 -0
- package/lib/esm/tools/ast-jsdoc-tools/utils/context-schema.js +29 -0
- package/lib/esm/tools/ast-jsdoc-tools/utils/context-schema.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/utils/heuristics.d.ts +2 -0
- package/lib/esm/tools/ast-jsdoc-tools/utils/heuristics.js +31 -0
- package/lib/esm/tools/ast-jsdoc-tools/utils/heuristics.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/utils/ts-project.d.ts +12 -0
- package/lib/esm/tools/ast-jsdoc-tools/utils/ts-project.js +21 -0
- package/lib/esm/tools/ast-jsdoc-tools/utils/ts-project.js.map +1 -0
- package/lib/esm/tools/example-tool/index.d.ts +2 -0
- package/lib/esm/tools/example-tool/index.js +29 -0
- package/lib/esm/tools/example-tool/index.js.map +1 -0
- package/lib/esm/tools/file-summarizer/index.d.ts +2 -0
- package/lib/esm/tools/file-summarizer/index.js +29 -0
- package/lib/esm/tools/file-summarizer/index.js.map +1 -0
- package/lib/esm/tools/index.d.ts +2 -0
- package/lib/esm/tools/index.js +6 -0
- package/lib/esm/tools/index.js.map +1 -0
- package/lib/esm/tools/jsdoc/ts-jsdoc-element-tool.d.ts +2 -0
- package/lib/esm/tools/jsdoc/ts-jsdoc-element-tool.js +84 -0
- package/lib/esm/tools/jsdoc/ts-jsdoc-element-tool.js.map +1 -0
- package/lib/esm/tools/jsdoc/utils.d.ts +5 -0
- package/lib/esm/tools/jsdoc/utils.js +53 -0
- package/lib/esm/tools/jsdoc/utils.js.map +1 -0
- package/lib/esm/tools/testing/ts-jest-list-tests.d.ts +2 -0
- package/lib/esm/tools/testing/ts-jest-list-tests.js +53 -0
- package/lib/esm/tools/testing/ts-jest-list-tests.js.map +1 -0
- package/lib/esm/types.d.ts +56 -47
- package/lib/esm/types.js +1 -1
- package/lib/esm/types.js.map +1 -0
- package/lib/esm/utils/banner.d.ts +3 -0
- package/lib/esm/utils/banner.js +107 -0
- package/lib/esm/utils/banner.js.map +1 -0
- package/lib/esm/version.d.ts +2 -0
- package/lib/esm/version.js +5 -0
- package/lib/esm/version.js.map +1 -0
- package/lib/index.cjs +4 -11
- package/lib/index.d.ts +3 -10
- package/lib/index.js.map +1 -0
- package/lib/mcp-server.cjs +226 -0
- package/lib/mcp-server.d.ts +10 -0
- package/lib/mcp-server.js.map +1 -0
- package/lib/modules/template-module/index.cjs +7 -0
- package/lib/modules/template-module/index.d.ts +6 -0
- package/lib/modules/template-module/index.js.map +1 -0
- package/lib/prompts/code/constants.cjs +5 -0
- package/lib/prompts/code/constants.d.ts +1 -0
- package/lib/prompts/code/constants.js.map +1 -0
- package/lib/prompts/code/design-patterns/builder.cjs +121 -0
- package/lib/prompts/code/design-patterns/builder.d.ts +2 -0
- package/lib/prompts/code/design-patterns/builder.js.map +1 -0
- package/lib/prompts/code/design-patterns/constants.cjs +6 -0
- package/lib/prompts/code/design-patterns/constants.d.ts +1 -0
- package/lib/prompts/code/design-patterns/constants.js.map +1 -0
- package/lib/prompts/example-prompt/index.cjs +21 -0
- package/lib/prompts/example-prompt/index.d.ts +2 -0
- package/lib/prompts/example-prompt/index.js.map +1 -0
- package/lib/prompts/index.cjs +29 -0
- package/lib/prompts/index.d.ts +2 -0
- package/lib/prompts/index.js.map +1 -0
- package/lib/prompts/interactive-jsdoc/index.cjs +21 -0
- package/lib/prompts/interactive-jsdoc/index.d.ts +2 -0
- package/lib/prompts/interactive-jsdoc/index.js.map +1 -0
- package/lib/prompts/jsdocs/class-prompt.cjs +55 -0
- package/lib/prompts/jsdocs/class-prompt.d.ts +2 -0
- package/lib/prompts/jsdocs/class-prompt.js.map +1 -0
- package/lib/prompts/jsdocs/const-prompt.cjs +27 -0
- package/lib/prompts/jsdocs/const-prompt.d.ts +2 -0
- package/lib/prompts/jsdocs/const-prompt.js.map +1 -0
- package/lib/prompts/jsdocs/constants.cjs +49 -0
- package/lib/prompts/jsdocs/constants.d.ts +4 -0
- package/lib/prompts/jsdocs/constants.js.map +1 -0
- package/lib/prompts/jsdocs/decorator-prompt.cjs +45 -0
- package/lib/prompts/jsdocs/decorator-prompt.d.ts +2 -0
- package/lib/prompts/jsdocs/decorator-prompt.js.map +1 -0
- package/lib/prompts/jsdocs/enum-prompt.cjs +27 -0
- package/lib/prompts/jsdocs/enum-prompt.d.ts +2 -0
- package/lib/prompts/jsdocs/enum-prompt.js.map +1 -0
- package/lib/prompts/jsdocs/function-prompt.cjs +46 -0
- package/lib/prompts/jsdocs/function-prompt.d.ts +2 -0
- package/lib/prompts/jsdocs/function-prompt.js.map +1 -0
- package/lib/prompts/jsdocs/interface-prompt.cjs +27 -0
- package/lib/prompts/jsdocs/interface-prompt.d.ts +2 -0
- package/lib/prompts/jsdocs/interface-prompt.js.map +1 -0
- package/lib/prompts/jsdocs/types-prompt.cjs +27 -0
- package/lib/prompts/jsdocs/types-prompt.d.ts +2 -0
- package/lib/prompts/jsdocs/types-prompt.js.map +1 -0
- package/lib/resources/example-resource/index.cjs +22 -0
- package/lib/resources/example-resource/index.d.ts +2 -0
- package/lib/resources/example-resource/index.js.map +1 -0
- package/lib/resources/index.cjs +7 -0
- package/lib/resources/index.d.ts +2 -0
- package/lib/resources/index.js.map +1 -0
- package/lib/resources/repo-metadata/index.cjs +28 -0
- package/lib/resources/repo-metadata/index.d.ts +2 -0
- package/lib/resources/repo-metadata/index.js.map +1 -0
- package/lib/tools/ast/ts-ast-tool.cjs +70 -0
- package/lib/tools/ast/ts-ast-tool.d.ts +2 -0
- package/lib/tools/ast/ts-ast-tool.js.map +1 -0
- package/lib/tools/ast/types.cjs +36 -0
- package/lib/tools/ast/types.d.ts +105 -0
- package/lib/tools/ast/types.js.map +1 -0
- package/lib/tools/ast/utils.cjs +65 -0
- package/lib/tools/ast/utils.d.ts +5 -0
- package/lib/tools/ast/utils.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/apply.cjs +36 -0
- package/lib/tools/ast-jsdoc-tools/apply.d.ts +6 -0
- package/lib/tools/ast-jsdoc-tools/apply.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/cli.cjs +38 -0
- package/lib/tools/ast-jsdoc-tools/cli.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/enumerator.cjs +31 -0
- package/lib/tools/ast-jsdoc-tools/enumerator.d.ts +1 -0
- package/lib/tools/ast-jsdoc-tools/enumerator.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/fileRunner.cjs +35 -0
- package/lib/tools/ast-jsdoc-tools/fileRunner.d.ts +11 -0
- package/lib/tools/ast-jsdoc-tools/fileRunner.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/formatter.cjs +21 -0
- package/lib/tools/ast-jsdoc-tools/formatter.d.ts +6 -0
- package/lib/tools/ast-jsdoc-tools/formatter.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/generator.cjs +58 -0
- package/lib/tools/ast-jsdoc-tools/generator.d.ts +12 -0
- package/lib/tools/ast-jsdoc-tools/generator.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/index.cjs +33 -0
- package/lib/tools/ast-jsdoc-tools/index.d.ts +7 -0
- package/lib/tools/ast-jsdoc-tools/index.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/interactive.cjs +10 -0
- package/lib/tools/ast-jsdoc-tools/interactive.d.ts +1 -0
- package/lib/tools/ast-jsdoc-tools/interactive.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/parser.cjs +77 -0
- package/lib/tools/ast-jsdoc-tools/parser.d.ts +13 -0
- package/lib/tools/ast-jsdoc-tools/parser.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/patch.cjs +29 -0
- package/lib/tools/ast-jsdoc-tools/patch.d.ts +2 -0
- package/lib/tools/ast-jsdoc-tools/patch.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/prompts/loader.cjs +32 -0
- package/lib/tools/ast-jsdoc-tools/prompts/loader.d.ts +10 -0
- package/lib/tools/ast-jsdoc-tools/prompts/loader.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/repoRunner.cjs +67 -0
- package/lib/tools/ast-jsdoc-tools/repoRunner.d.ts +16 -0
- package/lib/tools/ast-jsdoc-tools/repoRunner.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/tools/jsdoc-generator.cjs +81 -0
- package/lib/tools/ast-jsdoc-tools/tools/jsdoc-generator.d.ts +5 -0
- package/lib/tools/ast-jsdoc-tools/tools/jsdoc-generator.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/utils/conflict-detector.cjs +33 -0
- package/lib/tools/ast-jsdoc-tools/utils/conflict-detector.d.ts +5 -0
- package/lib/tools/ast-jsdoc-tools/utils/conflict-detector.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/utils/context-schema.cjs +32 -0
- package/lib/tools/ast-jsdoc-tools/utils/context-schema.d.ts +7 -0
- package/lib/tools/ast-jsdoc-tools/utils/context-schema.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/utils/heuristics.cjs +34 -0
- package/lib/tools/ast-jsdoc-tools/utils/heuristics.d.ts +2 -0
- package/lib/tools/ast-jsdoc-tools/utils/heuristics.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/utils/ts-project.cjs +57 -0
- package/lib/tools/ast-jsdoc-tools/utils/ts-project.d.ts +12 -0
- package/lib/tools/ast-jsdoc-tools/utils/ts-project.js.map +1 -0
- package/lib/tools/example-tool/index.cjs +32 -0
- package/lib/tools/example-tool/index.d.ts +2 -0
- package/lib/tools/example-tool/index.js.map +1 -0
- package/lib/tools/file-summarizer/index.cjs +32 -0
- package/lib/tools/file-summarizer/index.d.ts +2 -0
- package/lib/tools/file-summarizer/index.js.map +1 -0
- package/lib/tools/index.cjs +9 -0
- package/lib/tools/index.d.ts +2 -0
- package/lib/tools/index.js.map +1 -0
- package/lib/tools/jsdoc/ts-jsdoc-element-tool.cjs +87 -0
- package/lib/tools/jsdoc/ts-jsdoc-element-tool.d.ts +2 -0
- package/lib/tools/jsdoc/ts-jsdoc-element-tool.js.map +1 -0
- package/lib/tools/jsdoc/utils.cjs +60 -0
- package/lib/tools/jsdoc/utils.d.ts +5 -0
- package/lib/tools/jsdoc/utils.js.map +1 -0
- package/lib/tools/testing/ts-jest-list-tests.cjs +56 -0
- package/lib/tools/testing/ts-jest-list-tests.d.ts +2 -0
- package/lib/tools/testing/ts-jest-list-tests.js.map +1 -0
- package/lib/types.cjs +1 -1
- package/lib/types.d.ts +56 -47
- package/lib/types.js.map +1 -0
- package/lib/utils/banner.cjs +114 -0
- package/lib/utils/banner.d.ts +3 -0
- package/lib/utils/banner.js.map +1 -0
- package/lib/version.cjs +8 -0
- package/lib/version.d.ts +2 -0
- package/lib/version.js.map +1 -0
- package/package.json +14 -63
- package/dist/mcp-server.esm.cjs +0 -2314
- package/lib/McpWrapper.cjs +0 -233
- package/lib/McpWrapper.d.ts +0 -89
- package/lib/bin/validate-modules.cjs +0 -24
- package/lib/esm/McpWrapper.d.ts +0 -89
- package/lib/esm/McpWrapper.js +0 -196
- package/lib/esm/bin/validate-modules.js +0 -22
- package/lib/esm/mcp/aggregateModules.d.ts +0 -26
- package/lib/esm/mcp/aggregateModules.js +0 -185
- package/lib/esm/mcp/code.d.ts +0 -23
- package/lib/esm/mcp/code.js +0 -70
- package/lib/esm/mcp/decorator-tools.d.ts +0 -118
- package/lib/esm/mcp/decorator-tools.js +0 -237
- package/lib/esm/mcp/fastmcp-wiring.d.ts +0 -14
- package/lib/esm/mcp/fastmcp-wiring.js +0 -56
- package/lib/esm/mcp/index.d.ts +0 -9
- package/lib/esm/mcp/index.js +0 -29
- package/lib/esm/mcp/mcp-module.d.ts +0 -11
- package/lib/esm/mcp/mcp-module.js +0 -31
- package/lib/esm/mcp/moduleRegistry.d.ts +0 -14
- package/lib/esm/mcp/moduleRegistry.js +0 -47
- package/lib/esm/mcp/prompts/index.d.ts +0 -4
- package/lib/esm/mcp/prompts/index.js +0 -7
- package/lib/esm/mcp/prompts/prompts.d.ts +0 -22
- package/lib/esm/mcp/prompts/prompts.js +0 -203
- package/lib/esm/mcp/resources/index.d.ts +0 -1
- package/lib/esm/mcp/resources/index.js +0 -2
- package/lib/esm/mcp/resources/resources.d.ts +0 -2
- package/lib/esm/mcp/resources/resources.js +0 -69
- package/lib/esm/mcp/schemas.d.ts +0 -53
- package/lib/esm/mcp/schemas.js +0 -97
- package/lib/esm/mcp/templates/codex-templates.d.ts +0 -3
- package/lib/esm/mcp/templates/codex-templates.js +0 -33
- package/lib/esm/mcp/templates/index.d.ts +0 -71
- package/lib/esm/mcp/templates/index.js +0 -66
- package/lib/esm/mcp/templates/resource-templates.d.ts +0 -3
- package/lib/esm/mcp/templates/resource-templates.js +0 -60
- package/lib/esm/mcp/templates/workspace-templates.d.ts +0 -3
- package/lib/esm/mcp/templates/workspace-templates.js +0 -66
- package/lib/esm/mcp/tools/codex-tools.d.ts +0 -5
- package/lib/esm/mcp/tools/codex-tools.js +0 -244
- package/lib/esm/mcp/tools/generateMcpModule.d.ts +0 -9
- package/lib/esm/mcp/tools/generateMcpModule.js +0 -133
- package/lib/esm/mcp/tools/index.d.ts +0 -219
- package/lib/esm/mcp/tools/index.js +0 -27
- package/lib/esm/mcp/tools/tools.d.ts +0 -10
- package/lib/esm/mcp/tools/tools.js +0 -275
- package/lib/esm/mcp/types.d.ts +0 -66
- package/lib/esm/mcp/types.js +0 -2
- package/lib/esm/mcp/utils.d.ts +0 -3
- package/lib/esm/mcp/utils.js +0 -46
- package/lib/esm/mcp/validation/index.d.ts +0 -13
- package/lib/esm/mcp/validation/index.js +0 -116
- package/lib/esm/mcp/validation/scaffoldModule.d.ts +0 -9
- package/lib/esm/mcp/validation/scaffoldModule.js +0 -88
- package/lib/esm/mcp/workspace.d.ts +0 -9
- package/lib/esm/mcp/workspace.js +0 -73
- package/lib/esm/metadata.d.ts +0 -9
- package/lib/esm/metadata.js +0 -22
- package/lib/esm/modules/_template/index.d.ts +0 -32
- package/lib/esm/modules/_template/index.js +0 -16
- package/lib/esm/modules/_template/prompts/index.d.ts +0 -6
- package/lib/esm/modules/_template/prompts/index.js +0 -9
- package/lib/esm/modules/_template/resources/index.d.ts +0 -6
- package/lib/esm/modules/_template/resources/index.js +0 -9
- package/lib/esm/modules/_template/templates/index.d.ts +0 -7
- package/lib/esm/modules/_template/templates/index.js +0 -10
- package/lib/esm/modules/_template/tools/index.d.ts +0 -6
- package/lib/esm/modules/_template/tools/index.js +0 -15
- package/lib/esm/modules/decoration/index.d.ts +0 -46
- package/lib/esm/modules/decoration/index.js +0 -10
- package/lib/esm/modules/decoration/prompts/index.d.ts +0 -1
- package/lib/esm/modules/decoration/prompts/index.js +0 -2
- package/lib/esm/modules/decoration/resources/index.d.ts +0 -7
- package/lib/esm/modules/decoration/resources/index.js +0 -10
- package/lib/esm/modules/decoration/templates/index.d.ts +0 -6
- package/lib/esm/modules/decoration/templates/index.js +0 -9
- package/lib/esm/modules/decoration/tools/index.d.ts +0 -26
- package/lib/esm/modules/decoration/tools/index.js +0 -7
- package/lib/esm/modules/index.d.ts +0 -2
- package/lib/esm/modules/index.js +0 -17
- package/lib/esm/modules/mcp/decoration-assist.d.ts +0 -4
- package/lib/esm/modules/mcp/decoration-assist.js +0 -6
- package/lib/esm/modules/mcp/index.d.ts +0 -6
- package/lib/esm/modules/mcp/index.js +0 -16
- package/lib/esm/modules/mcp/prompts/index.d.ts +0 -2
- package/lib/esm/modules/mcp/prompts/index.js +0 -9
- package/lib/esm/modules/mcp/resources/index.d.ts +0 -2
- package/lib/esm/modules/mcp/resources/index.js +0 -24
- package/lib/esm/modules/mcp/templates/index.d.ts +0 -2
- package/lib/esm/modules/mcp/templates/index.js +0 -28
- package/lib/esm/modules/mcp/tools/index.d.ts +0 -6
- package/lib/esm/modules/mcp/tools/index.js +0 -15
- package/lib/esm/utils/modulePaths.d.ts +0 -6
- package/lib/esm/utils/modulePaths.js +0 -33
- package/lib/esm/utils/moduleValidator.d.ts +0 -14
- package/lib/esm/utils/moduleValidator.js +0 -176
- package/lib/esm/utils.d.ts +0 -61
- package/lib/esm/utils.js +0 -86
- package/lib/mcp/aggregateModules.cjs +0 -225
- package/lib/mcp/aggregateModules.d.ts +0 -26
- package/lib/mcp/code.cjs +0 -81
- package/lib/mcp/code.d.ts +0 -23
- package/lib/mcp/decorator-tools.cjs +0 -243
- package/lib/mcp/decorator-tools.d.ts +0 -118
- package/lib/mcp/fastmcp-wiring.cjs +0 -59
- package/lib/mcp/fastmcp-wiring.d.ts +0 -14
- package/lib/mcp/index.cjs +0 -57
- package/lib/mcp/index.d.ts +0 -9
- package/lib/mcp/mcp-module.cjs +0 -46
- package/lib/mcp/mcp-module.d.ts +0 -11
- package/lib/mcp/moduleRegistry.cjs +0 -52
- package/lib/mcp/moduleRegistry.d.ts +0 -14
- package/lib/mcp/prompts/index.cjs +0 -25
- package/lib/mcp/prompts/index.d.ts +0 -4
- package/lib/mcp/prompts/prompts.cjs +0 -217
- package/lib/mcp/prompts/prompts.d.ts +0 -22
- package/lib/mcp/resources/index.d.ts +0 -1
- package/lib/mcp/resources/resources.cjs +0 -72
- package/lib/mcp/resources/resources.d.ts +0 -2
- package/lib/mcp/schemas.cjs +0 -100
- package/lib/mcp/schemas.d.ts +0 -53
- package/lib/mcp/templates/codex-templates.cjs +0 -40
- package/lib/mcp/templates/codex-templates.d.ts +0 -3
- package/lib/mcp/templates/index.cjs +0 -76
- package/lib/mcp/templates/index.d.ts +0 -71
- package/lib/mcp/templates/resource-templates.cjs +0 -67
- package/lib/mcp/templates/resource-templates.d.ts +0 -3
- package/lib/mcp/templates/workspace-templates.cjs +0 -70
- package/lib/mcp/templates/workspace-templates.d.ts +0 -3
- package/lib/mcp/tools/codex-tools.cjs +0 -250
- package/lib/mcp/tools/codex-tools.d.ts +0 -5
- package/lib/mcp/tools/generateMcpModule.cjs +0 -139
- package/lib/mcp/tools/generateMcpModule.d.ts +0 -9
- package/lib/mcp/tools/index.cjs +0 -30
- package/lib/mcp/tools/index.d.ts +0 -219
- package/lib/mcp/tools/tools.cjs +0 -317
- package/lib/mcp/tools/tools.d.ts +0 -10
- package/lib/mcp/types.cjs +0 -3
- package/lib/mcp/types.d.ts +0 -66
- package/lib/mcp/utils.cjs +0 -54
- package/lib/mcp/utils.d.ts +0 -3
- package/lib/mcp/validation/index.cjs +0 -123
- package/lib/mcp/validation/index.d.ts +0 -13
- package/lib/mcp/validation/scaffoldModule.cjs +0 -94
- package/lib/mcp/validation/scaffoldModule.d.ts +0 -9
- package/lib/mcp/workspace.cjs +0 -119
- package/lib/mcp/workspace.d.ts +0 -9
- package/lib/metadata.cjs +0 -25
- package/lib/metadata.d.ts +0 -9
- package/lib/modules/_template/index.cjs +0 -23
- package/lib/modules/_template/index.d.ts +0 -32
- package/lib/modules/_template/prompts/index.cjs +0 -12
- package/lib/modules/_template/prompts/index.d.ts +0 -6
- package/lib/modules/_template/resources/index.cjs +0 -12
- package/lib/modules/_template/resources/index.d.ts +0 -6
- package/lib/modules/_template/templates/index.cjs +0 -13
- package/lib/modules/_template/templates/index.d.ts +0 -7
- package/lib/modules/_template/tools/index.cjs +0 -18
- package/lib/modules/_template/tools/index.d.ts +0 -6
- package/lib/modules/decoration/index.cjs +0 -17
- package/lib/modules/decoration/index.d.ts +0 -46
- package/lib/modules/decoration/prompts/index.cjs +0 -5
- package/lib/modules/decoration/prompts/index.d.ts +0 -1
- package/lib/modules/decoration/resources/index.cjs +0 -13
- package/lib/modules/decoration/resources/index.d.ts +0 -7
- package/lib/modules/decoration/templates/index.cjs +0 -12
- package/lib/modules/decoration/templates/index.d.ts +0 -6
- package/lib/modules/decoration/tools/index.cjs +0 -10
- package/lib/modules/decoration/tools/index.d.ts +0 -26
- package/lib/modules/index.cjs +0 -20
- package/lib/modules/index.d.ts +0 -2
- package/lib/modules/mcp/decoration-assist.cjs +0 -13
- package/lib/modules/mcp/decoration-assist.d.ts +0 -4
- package/lib/modules/mcp/index.cjs +0 -23
- package/lib/modules/mcp/index.d.ts +0 -6
- package/lib/modules/mcp/prompts/index.cjs +0 -12
- package/lib/modules/mcp/prompts/index.d.ts +0 -2
- package/lib/modules/mcp/resources/index.cjs +0 -27
- package/lib/modules/mcp/resources/index.d.ts +0 -2
- package/lib/modules/mcp/templates/index.cjs +0 -31
- package/lib/modules/mcp/templates/index.d.ts +0 -2
- package/lib/modules/mcp/tools/index.cjs +0 -18
- package/lib/modules/mcp/tools/index.d.ts +0 -6
- package/lib/utils/modulePaths.cjs +0 -43
- package/lib/utils/modulePaths.d.ts +0 -6
- package/lib/utils/moduleValidator.cjs +0 -184
- package/lib/utils/moduleValidator.d.ts +0 -14
- package/lib/utils.cjs +0 -129
- package/lib/utils.d.ts +0 -61
- /package/lib/{bin/validate-modules.d.ts → esm/tools/ast-jsdoc-tools/cli.d.ts} +0 -0
- /package/lib/{esm/bin/validate-modules.d.ts → tools/ast-jsdoc-tools/cli.d.ts} +0 -0
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.ToolBuilder = void 0;
|
|
13
|
+
const decorator_validation_1 = require("@decaf-ts/decorator-validation");
|
|
14
|
+
const builder_1 = require("./builder.cjs");
|
|
15
|
+
const logging_1 = require("@decaf-ts/logging");
|
|
16
|
+
class ToolBuilder extends builder_1.UsableBuilder {
|
|
17
|
+
setAnnotations(annotations) {
|
|
18
|
+
this.annotations = Object.assign(this.annotations, annotations);
|
|
19
|
+
return this;
|
|
20
|
+
}
|
|
21
|
+
setCb(cb) {
|
|
22
|
+
this.cb = cb;
|
|
23
|
+
return this;
|
|
24
|
+
}
|
|
25
|
+
setInputSchema(inputSchema) {
|
|
26
|
+
this.inputSchema = inputSchema;
|
|
27
|
+
return this;
|
|
28
|
+
}
|
|
29
|
+
setOutputSchema(outputSchema) {
|
|
30
|
+
this.outputSchema = outputSchema;
|
|
31
|
+
return this;
|
|
32
|
+
}
|
|
33
|
+
constructor(arg) {
|
|
34
|
+
super(arg);
|
|
35
|
+
this.annotations = {
|
|
36
|
+
readOnlyHint: true,
|
|
37
|
+
destructiveHint: false,
|
|
38
|
+
idempotentHint: true,
|
|
39
|
+
openWorldHint: false,
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
static get builder() {
|
|
43
|
+
return new ToolBuilder();
|
|
44
|
+
}
|
|
45
|
+
build(server) {
|
|
46
|
+
const errs = this.hasErrors();
|
|
47
|
+
if (errs)
|
|
48
|
+
throw new Error(errs.toString());
|
|
49
|
+
try {
|
|
50
|
+
return server.registerTool(this.name, {
|
|
51
|
+
title: this.title,
|
|
52
|
+
description: this.description,
|
|
53
|
+
inputSchema: this.inputSchema,
|
|
54
|
+
outputSchema: this.outputSchema,
|
|
55
|
+
annotations: this.annotations,
|
|
56
|
+
_meta: {
|
|
57
|
+
usage: {
|
|
58
|
+
reasoning: this.reasoning,
|
|
59
|
+
effort: this.effort,
|
|
60
|
+
cost: this.cost,
|
|
61
|
+
},
|
|
62
|
+
},
|
|
63
|
+
}, async (args, extra) => {
|
|
64
|
+
const log = this.log(extra);
|
|
65
|
+
log.verbose(`Executing tool ${this.name} with args: ${JSON.stringify(args)}`);
|
|
66
|
+
extra._meta = Object.assign(extra._meta || {}, {
|
|
67
|
+
usage: {
|
|
68
|
+
reasoning: this.reasoning,
|
|
69
|
+
effort: this.effort,
|
|
70
|
+
cost: this.cost,
|
|
71
|
+
},
|
|
72
|
+
});
|
|
73
|
+
const result = await Promise.resolve(this.cb(args, extra));
|
|
74
|
+
log.verbose(`Tool ${this.name} executed successfully.`);
|
|
75
|
+
// result._meta = Object.assign(result._meta as any, this._meta) as any;
|
|
76
|
+
log.debug(`Tool execution meta: ${JSON.stringify(result._meta)}`);
|
|
77
|
+
return result;
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
catch (e) {
|
|
81
|
+
logging_1.Logging.for(this).error(`Error building tool`, e);
|
|
82
|
+
throw e;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
exports.ToolBuilder = ToolBuilder;
|
|
87
|
+
__decorate([
|
|
88
|
+
(0, decorator_validation_1.required)(),
|
|
89
|
+
__metadata("design:type", Object)
|
|
90
|
+
], ToolBuilder.prototype, "annotations", void 0);
|
|
91
|
+
__decorate([
|
|
92
|
+
(0, decorator_validation_1.required)(),
|
|
93
|
+
__metadata("design:type", Object)
|
|
94
|
+
], ToolBuilder.prototype, "cb", void 0);
|
|
95
|
+
__decorate([
|
|
96
|
+
(0, decorator_validation_1.type)(Object.name),
|
|
97
|
+
(0, decorator_validation_1.required)(),
|
|
98
|
+
__metadata("design:type", Object)
|
|
99
|
+
], ToolBuilder.prototype, "inputSchema", void 0);
|
|
100
|
+
__decorate([
|
|
101
|
+
(0, decorator_validation_1.type)(Object.name),
|
|
102
|
+
__metadata("design:type", Object)
|
|
103
|
+
], ToolBuilder.prototype, "outputSchema", void 0);
|
|
104
|
+
//# sourceMappingURL=tool-builder.js.map
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { McpServer, RegisteredTool, type ToolCallback } from "@modelcontextprotocol/sdk/server/mcp";
|
|
2
|
+
import { type ToolAnnotations } from "@modelcontextprotocol/sdk/types";
|
|
3
|
+
import { UsableBuilder } from "./builder";
|
|
4
|
+
export declare class ToolBuilder extends UsableBuilder<RegisteredTool> {
|
|
5
|
+
protected annotations: Omit<ToolAnnotations, "title">;
|
|
6
|
+
protected cb: ToolCallback<any>;
|
|
7
|
+
protected inputSchema: Record<string, any>;
|
|
8
|
+
protected outputSchema: Record<string, any>;
|
|
9
|
+
setAnnotations(annotations: Partial<Omit<ToolAnnotations, "title">>): this;
|
|
10
|
+
setCb(cb: ToolCallback<any>): this;
|
|
11
|
+
setInputSchema(inputSchema: any): this;
|
|
12
|
+
setOutputSchema(outputSchema: any): this;
|
|
13
|
+
private constructor();
|
|
14
|
+
static get builder(): ToolBuilder;
|
|
15
|
+
build(server: McpServer): RegisteredTool;
|
|
16
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-builder.js","sourceRoot":"","sources":["../../src/builders/tool-builder.ts"],"names":[],"mappings":";;;;;;;;;;;;AAMA,yEAA0E;AAC1E,2CAA0C;AAO1C,+CAA4C;AAE5C,MAAa,WAAY,SAAQ,uBAA6B;IAgB5D,cAAc,CAAC,WAAoD;QACjE,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,EAAqB;QACzB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,OAAO,IAAI,CAAC;IACd,CAAC;IAED,cAAc,CAAC,WAAgB;QAC7B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,eAAe,CAAC,YAAiB;QAC/B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,YAAoB,GAA2B;QAC7C,KAAK,CAAC,GAAG,CAAC,CAAC;QAnCH,gBAAW,GAAmC;YACtD,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,KAAK;SACrB,CAAC;IA+BF,CAAC;IAED,MAAM,KAAK,OAAO;QAChB,OAAO,IAAI,WAAW,EAAE,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,MAAiB;QACrB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAC9B,IAAI,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAE3C,IAAI,CAAC;YACH,OAAO,MAAM,CAAC,YAAY,CACxB,IAAI,CAAC,IAAI,EACT;gBACE,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,KAAK,EAAE;oBACL,KAAK,EAAE;wBACL,SAAS,EAAE,IAAI,CAAC,SAAS;wBACzB,MAAM,EAAE,IAAI,CAAC,MAAM;wBACnB,IAAI,EAAE,IAAI,CAAC,IAAI;qBAChB;iBACF;aACF,EACD,KAAK,EACH,IAAS,EACT,KAA6D,EACpC,EAAE;gBAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAC5B,GAAG,CAAC,OAAO,CACT,kBAAkB,IAAI,CAAC,IAAI,eAAe,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CACjE,CAAC;gBACF,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,EAAE;oBAC7C,KAAK,EAAE;wBACL,SAAS,EAAE,IAAI,CAAC,SAAS;wBACzB,MAAM,EAAE,IAAI,CAAC,MAAM;wBACnB,IAAI,EAAE,IAAI,CAAC,IAAI;qBAChB;iBACF,CAAC,CAAC;gBACH,MAAM,MAAM,GAAmB,MAAM,OAAO,CAAC,OAAO,CAClD,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,CACrB,CAAC;gBACF,GAAG,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,IAAI,yBAAyB,CAAC,CAAC;gBACxD,wEAAwE;gBACxE,GAAG,CAAC,KAAK,CAAC,wBAAwB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAClE,OAAO,MAAM,CAAC;YAChB,CAAC,CACF,CAAC;QACJ,CAAC;QAAC,OAAO,CAAU,EAAE,CAAC;YACpB,iBAAO,CAAC,GAAG,CAAC,IAAW,CAAC,CAAC,KAAK,CAAC,qBAAqB,EAAE,CAAQ,CAAC,CAAC;YAChE,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC;CACF;AA9FD,kCA8FC;AA5FW;IADT,IAAA,+BAAQ,GAAE;;gDAMT;AAEQ;IADT,IAAA,+BAAQ,GAAE;;uCACsB;AAGvB;IAFT,IAAA,2BAAI,EAAC,MAAM,CAAC,IAAI,CAAC;IACjB,IAAA,+BAAQ,GAAE;;gDACiC;AAElC;IADT,IAAA,2BAAI,EAAC,MAAM,CAAC,IAAI,CAAC;;iDAC2B"}
|
package/lib/constants.cjs
CHANGED
|
@@ -1,32 +1,30 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
];
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7Ozs7O0dBTUc7QUFDVSxRQUFBLGFBQWEsR0FBRyxZQUFZLENBQUM7QUFHN0IsUUFBQSxrQkFBa0IsR0FBRyxvQkFBb0IsQ0FBQztBQUMxQyxRQUFBLGtCQUFrQixHQUFHLENBQUMsZUFBZSxFQUFFLGdCQUFnQixDQUFDLENBQUM7QUFDekQsUUFBQSxtQkFBbUIsR0FBRyxLQUFLLENBQUM7QUFDNUIsUUFBQSxtQkFBbUIsR0FBRztJQUNqQztRQUNFLEVBQUUsRUFBRSxRQUFRO1FBQ1osT0FBTyxFQUFFLG9CQUFvQjtRQUM3QixZQUFZLEVBQ1Ysb01BQW9NO0tBQ3ZNO0lBQ0Q7UUFDRSxFQUFFLEVBQUUsUUFBUTtRQUNaLE9BQU8sRUFBRSxRQUFRO1FBQ2pCLFlBQVksRUFDVixpTEFBaUw7S0FDcEw7SUFDRDtRQUNFLEVBQUUsRUFBRSxTQUFTO1FBQ2IsT0FBTyxFQUFFLGdCQUFnQjtRQUN6QixZQUFZLEVBQ1YsaU1BQWlNO0tBQ3BNO0NBQ08sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGRlc2NyaXB0aW9uIFRoZSBmaWxlbmFtZSB0aGF0IGlkZW50aWZpZXMgRGVjYWYgQ0xJIG1vZHVsZXNcbiAqIEBzdW1tYXJ5IFRoZSBzdGFuZGFyZCBmaWxlbmFtZSBmb3IgQ0xJIG1vZHVsZSBmaWxlcyB3aGVyZSBlYWNoIGxpYnJhcnkgbXVzdCBleHBvcnQgYSBzaW5nbGUgQ2xpTW9kdWxlIGZ1bmN0aW9uXG4gKlxuICogQGNvbnN0IE1DUF9GSUxFX05BTUVcbiAqIEBtZW1iZXJPZiBtb2R1bGU6TUNQXG4gKi9cbmV4cG9ydCBjb25zdCBNQ1BfRklMRV9OQU1FID0gXCJtY3AtbW9kdWxlXCI7XG5cblxuZXhwb3J0IGNvbnN0IFdPUktTUEFDRV9ST09UX0VOViA9IFwiTUNQX1dPUktTUEFDRV9ST09UXCI7XG5leHBvcnQgY29uc3QgUFJPTVBUX0RJUkVDVE9SSUVTID0gW1wiLmNvZGUvcHJvbXB0c1wiLCBcIi5jb2RleC9wcm9tcHRzXCJdO1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfUFJPTVBUX05BTUUgPSBcImRvY1wiO1xuZXhwb3J0IGNvbnN0IENMSUVOVF9JTlRFR1JBVElPTlMgPSBbXG4gIHtcbiAgICBpZDogXCJ2c2NvZGVcIixcbiAgICBkaXNwbGF5OiBcIlZpc3VhbCBTdHVkaW8gQ29kZVwiLFxuICAgIGluc3RydWN0aW9uczpcbiAgICAgIFwiV2hlbiBpbnRlcmFjdGluZyBmcm9tIFZpc3VhbCBTdHVkaW8gQ29kZSwgcHJlZmVyIHRoZSB2c2NvZGU6Ly93b3Jrc3BhY2Uve3BhdGh9IHJlc291cmNlIHRlbXBsYXRlIHRvIGZldGNoIGZpbGUgY29udGVudHMgYW5kIHVzZSB0aGUgYXBwbHktY29kZS1jaGFuZ2UgdG9vbCB0byBjb21taXQgZWRpdHMgd2l0aCBwcmV2aWV3YWJsZSBkaWZmcy5cIixcbiAgfSxcbiAge1xuICAgIGlkOiBcImN1cnNvclwiLFxuICAgIGRpc3BsYXk6IFwiQ3Vyc29yXCIsXG4gICAgaW5zdHJ1Y3Rpb25zOlxuICAgICAgXCJDdXJzb3IgY2xpZW50cyBjYW4gcmV0cmlldmUgYW5kIHVwZGF0ZSBmaWxlcyB0aHJvdWdoIHRoZSBjdXJzb3I6Ly93b3Jrc3BhY2Uve3BhdGh9IHJlc291cmNlIHRlbXBsYXRlLiBBbHdheXMgdmFsaWRhdGUgcGF0Y2hlcyBpbiBkcnlSdW4gbW9kZSBiZWZvcmUgYXBwbHlpbmcgcGVybWFuZW50IGNoYW5nZXMuXCIsXG4gIH0sXG4gIHtcbiAgICBpZDogXCJjb3BpbG90XCIsXG4gICAgZGlzcGxheTogXCJHaXRIdWIgQ29waWxvdFwiLFxuICAgIGluc3RydWN0aW9uczpcbiAgICAgIFwiVXNlIHRoZSBjb3BpbG90Oi8vd29ya3NwYWNlL3twYXRofSByZXNvdXJjZSB0ZW1wbGF0ZSB0byBzdHJlYW0gZmlsZSBjb250ZW50IGludG8gQ29waWxvdCBjaGF0IHNlc3Npb25zLiBQcmVmZXIgcmV0dXJuaW5nIHVuaWZpZWQgZGlmZnMgdG8gbWFpbnRhaW4gYWxpZ25tZW50IHdpdGggQ29waWxvdCdzIGRpZmYgdmlzdWFsaXphdGlvbi5cIixcbiAgfSxcbl0gYXMgY29uc3Q7XG4iXX0=
|
|
3
|
+
exports.SystemPrompt = exports.Cost = exports.EffortLevel = exports.ReasoningLevel = void 0;
|
|
4
|
+
var ReasoningLevel;
|
|
5
|
+
(function (ReasoningLevel) {
|
|
6
|
+
ReasoningLevel[ReasoningLevel["NONE"] = 0] = "NONE";
|
|
7
|
+
ReasoningLevel[ReasoningLevel["BASIC"] = 1] = "BASIC";
|
|
8
|
+
ReasoningLevel[ReasoningLevel["ADVANCED"] = 2] = "ADVANCED";
|
|
9
|
+
ReasoningLevel[ReasoningLevel["HIGH"] = 3] = "HIGH";
|
|
10
|
+
})(ReasoningLevel || (exports.ReasoningLevel = ReasoningLevel = {}));
|
|
11
|
+
var EffortLevel;
|
|
12
|
+
(function (EffortLevel) {
|
|
13
|
+
EffortLevel[EffortLevel["NONE"] = 0] = "NONE";
|
|
14
|
+
EffortLevel[EffortLevel["LOW"] = 1] = "LOW";
|
|
15
|
+
EffortLevel[EffortLevel["MEDIUM"] = 2] = "MEDIUM";
|
|
16
|
+
EffortLevel[EffortLevel["HIGH"] = 3] = "HIGH";
|
|
17
|
+
})(EffortLevel || (exports.EffortLevel = EffortLevel = {}));
|
|
18
|
+
var Cost;
|
|
19
|
+
(function (Cost) {
|
|
20
|
+
Cost[Cost["FREE"] = 0] = "FREE";
|
|
21
|
+
Cost[Cost["LOW"] = 1] = "LOW";
|
|
22
|
+
Cost[Cost["MEDIUM"] = 2] = "MEDIUM";
|
|
23
|
+
Cost[Cost["HIGH"] = 3] = "HIGH";
|
|
24
|
+
})(Cost || (exports.Cost = Cost = {}));
|
|
25
|
+
exports.SystemPrompt = `You are an AI assistant designed to help users with programming tasks related to the Decaf-TS framework.
|
|
26
|
+
Provide clear, concise, and accurate information.
|
|
27
|
+
If you don't know the answer, admit it rather than making up information.
|
|
28
|
+
Always prioritize the user's intent and provide helpful suggestions when appropriate.
|
|
29
|
+
`;
|
|
30
|
+
//# sourceMappingURL=constants.js.map
|
package/lib/constants.d.ts
CHANGED
|
@@ -1,24 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
}, {
|
|
21
|
-
readonly id: "copilot";
|
|
22
|
-
readonly display: "GitHub Copilot";
|
|
23
|
-
readonly instructions: "Use the copilot://workspace/{path} resource template to stream file content into Copilot chat sessions. Prefer returning unified diffs to maintain alignment with Copilot's diff visualization.";
|
|
24
|
-
}];
|
|
1
|
+
export declare enum ReasoningLevel {
|
|
2
|
+
NONE = 0,
|
|
3
|
+
BASIC = 1,
|
|
4
|
+
ADVANCED = 2,
|
|
5
|
+
HIGH = 3
|
|
6
|
+
}
|
|
7
|
+
export declare enum EffortLevel {
|
|
8
|
+
NONE = 0,
|
|
9
|
+
LOW = 1,
|
|
10
|
+
MEDIUM = 2,
|
|
11
|
+
HIGH = 3
|
|
12
|
+
}
|
|
13
|
+
export declare enum Cost {
|
|
14
|
+
FREE = 0,
|
|
15
|
+
LOW = 1,
|
|
16
|
+
MEDIUM = 2,
|
|
17
|
+
HIGH = 3
|
|
18
|
+
}
|
|
19
|
+
export declare const SystemPrompt = "You are an AI assistant designed to help users with programming tasks related to the Decaf-TS framework. \nProvide clear, concise, and accurate information.\nIf you don't know the answer, admit it rather than making up information.\nAlways prioritize the user's intent and provide helpful suggestions when appropriate.\n";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAA,IAAY,cAKX;AALD,WAAY,cAAc;IACxB,mDAAQ,CAAA;IACR,qDAAS,CAAA;IACT,2DAAY,CAAA;IACZ,mDAAQ,CAAA;AACV,CAAC,EALW,cAAc,8BAAd,cAAc,QAKzB;AAED,IAAY,WAKX;AALD,WAAY,WAAW;IACrB,6CAAQ,CAAA;IACR,2CAAO,CAAA;IACP,iDAAU,CAAA;IACV,6CAAQ,CAAA;AACV,CAAC,EALW,WAAW,2BAAX,WAAW,QAKtB;AAED,IAAY,IAKX;AALD,WAAY,IAAI;IACd,+BAAQ,CAAA;IACR,6BAAO,CAAA;IACP,mCAAU,CAAA;IACV,+BAAQ,CAAA;AACV,CAAC,EALW,IAAI,oBAAJ,IAAI,QAKf;AAEY,QAAA,YAAY,GAAG;;;;CAI3B,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Environment = exports.DefaultMcpEnvironment = void 0;
|
|
4
|
+
const logging_1 = require("@decaf-ts/logging");
|
|
5
|
+
const version_1 = require("./version.cjs");
|
|
6
|
+
exports.DefaultMcpEnvironment = {
|
|
7
|
+
mcpId: version_1.PACKAGE_NAME,
|
|
8
|
+
name: "Official Decaf-TS MCP Server",
|
|
9
|
+
title: "Official Decaf-TS MCP Server",
|
|
10
|
+
description: "Provides precise coding assistance for the decaf-ts framework",
|
|
11
|
+
version: version_1.VERSION,
|
|
12
|
+
websiteUrl: "https://decaf-ts.github.io",
|
|
13
|
+
repositoryUrl: "https://github.com/decaf-ts",
|
|
14
|
+
license: "AGPL-3.0",
|
|
15
|
+
contacts: [
|
|
16
|
+
{
|
|
17
|
+
name: "Decaf-TS",
|
|
18
|
+
url: "https://decaf-ts.github.io",
|
|
19
|
+
},
|
|
20
|
+
],
|
|
21
|
+
tags: ["server", "official", "decaf-ts"].join(","),
|
|
22
|
+
metadata: {},
|
|
23
|
+
icons: [
|
|
24
|
+
{
|
|
25
|
+
src: "workdocs/assets/favicon.svg",
|
|
26
|
+
mimeType: "image/svg+xml",
|
|
27
|
+
sizes: ["any"].join(","),
|
|
28
|
+
},
|
|
29
|
+
],
|
|
30
|
+
};
|
|
31
|
+
exports.Environment = logging_1.LoggedEnvironment.accumulate(exports.DefaultMcpEnvironment);
|
|
32
|
+
//# sourceMappingURL=environment.js.map
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { LoggingConfig } from "@decaf-ts/logging";
|
|
2
|
+
export type McpEnvironment = LoggingConfig & {
|
|
3
|
+
mcpId: string;
|
|
4
|
+
name: string;
|
|
5
|
+
title: string;
|
|
6
|
+
description: string;
|
|
7
|
+
version: string;
|
|
8
|
+
websiteUrl?: string;
|
|
9
|
+
repositoryUrl?: string;
|
|
10
|
+
license: string;
|
|
11
|
+
contacts?: {
|
|
12
|
+
name: string;
|
|
13
|
+
email?: string;
|
|
14
|
+
url?: string;
|
|
15
|
+
}[];
|
|
16
|
+
tags?: string;
|
|
17
|
+
metadata?: Record<any, any>;
|
|
18
|
+
icons: {
|
|
19
|
+
src: string;
|
|
20
|
+
mimeType: string;
|
|
21
|
+
sizes?: string;
|
|
22
|
+
}[];
|
|
23
|
+
};
|
|
24
|
+
export declare const DefaultMcpEnvironment: McpEnvironment;
|
|
25
|
+
export declare const Environment: object & LoggingConfig & {
|
|
26
|
+
env: any;
|
|
27
|
+
} & {
|
|
28
|
+
mcpId: string;
|
|
29
|
+
name: string;
|
|
30
|
+
title: string;
|
|
31
|
+
description: string;
|
|
32
|
+
version: string;
|
|
33
|
+
websiteUrl?: string;
|
|
34
|
+
repositoryUrl?: string;
|
|
35
|
+
license: string;
|
|
36
|
+
contacts?: {
|
|
37
|
+
name: string;
|
|
38
|
+
email?: string;
|
|
39
|
+
url?: string;
|
|
40
|
+
}[];
|
|
41
|
+
tags?: string;
|
|
42
|
+
metadata?: Record<any, any>;
|
|
43
|
+
icons: {
|
|
44
|
+
src: string;
|
|
45
|
+
mimeType: string;
|
|
46
|
+
sizes?: string;
|
|
47
|
+
}[];
|
|
48
|
+
} & import("typed-object-accumulator").ObjectAccumulator<object & LoggingConfig & {
|
|
49
|
+
env: any;
|
|
50
|
+
} & {
|
|
51
|
+
mcpId: string;
|
|
52
|
+
name: string;
|
|
53
|
+
title: string;
|
|
54
|
+
description: string;
|
|
55
|
+
version: string;
|
|
56
|
+
websiteUrl?: string;
|
|
57
|
+
repositoryUrl?: string;
|
|
58
|
+
license: string;
|
|
59
|
+
contacts?: {
|
|
60
|
+
name: string;
|
|
61
|
+
email?: string;
|
|
62
|
+
url?: string;
|
|
63
|
+
}[];
|
|
64
|
+
tags?: string;
|
|
65
|
+
metadata?: Record<any, any>;
|
|
66
|
+
icons: {
|
|
67
|
+
src: string;
|
|
68
|
+
mimeType: string;
|
|
69
|
+
sizes?: string;
|
|
70
|
+
}[];
|
|
71
|
+
}>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"environment.js","sourceRoot":"","sources":["../src/environment.ts"],"names":[],"mappings":";;;AAAA,+CAAqE;AACrE,2CAAkD;AAyBrC,QAAA,qBAAqB,GAAmB;IACnD,KAAK,EAAE,sBAAY;IACnB,IAAI,EAAE,8BAA8B;IACpC,KAAK,EAAE,8BAA8B;IACrC,WAAW,EAAE,+DAA+D;IAC5E,OAAO,EAAE,iBAAO;IAChB,UAAU,EAAE,4BAA4B;IACxC,aAAa,EAAE,6BAA6B;IAC5C,OAAO,EAAE,UAAU;IACnB,QAAQ,EAAE;QACR;YACE,IAAI,EAAE,UAAU;YAChB,GAAG,EAAE,4BAA4B;SAClC;KACF;IACD,IAAI,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;IAClD,QAAQ,EAAE,EAAE;IACZ,KAAK,EAAE;QACL;YACE,GAAG,EAAE,6BAA6B;YAClC,QAAQ,EAAE,eAAe;YACzB,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;SACzB;KACF;CACgB,CAAC;AAEP,QAAA,WAAW,GAAG,2BAAiB,CAAC,UAAU,CAAC,6BAAqB,CAAC,CAAC"}
|
package/lib/esm/bin/cli.js
CHANGED
|
@@ -1,35 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
* MCP_FILE_NAME within the @decaf-ts namespace and load them as subcommands.
|
|
9
|
-
*
|
|
10
|
-
* @example
|
|
11
|
-
* // Run a module command
|
|
12
|
-
* $ npx decaf <module name> <module command> ...<module command options>
|
|
13
|
-
*
|
|
14
|
-
* // Get help for a specific module
|
|
15
|
-
* $ npx decaf help <module name>
|
|
16
|
-
*
|
|
17
|
-
* // List all imported modules
|
|
18
|
-
* $ npx decaf list
|
|
19
|
-
*
|
|
20
|
-
* // Get general CLI help
|
|
21
|
-
* $ npx decaf help
|
|
22
|
-
*
|
|
23
|
-
* @memberOf module:MCP
|
|
24
|
-
*/
|
|
25
|
-
import { McpWrapper } from "../McpWrapper";
|
|
26
|
-
new McpWrapper()
|
|
27
|
-
.run(process.argv)
|
|
28
|
-
.then(() => {
|
|
29
|
-
console.log("Thank you for using decaf-ts' mcp server");
|
|
30
|
-
})
|
|
31
|
-
.catch((e) => {
|
|
32
|
-
console.error(`${e instanceof Error ? e.message : e}`);
|
|
33
|
-
process.exit(1);
|
|
34
|
-
});
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Jpbi9jbGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7QUFDSCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLElBQUksVUFBVSxFQUFFO0tBQ2IsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7S0FDakIsSUFBSSxDQUFDLEdBQUcsRUFBRTtJQUNULE9BQU8sQ0FBQyxHQUFHLENBQUMsMENBQTBDLENBQUMsQ0FBQztBQUMxRCxDQUFDLENBQUM7S0FDRCxLQUFLLENBQUMsQ0FBQyxDQUFVLEVBQUUsRUFBRTtJQUNwQixPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxZQUFZLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN2RCxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ2xCLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBCSU5fQ0FMTF9QTEFDRUhPTERFUiAtIERPIE5PVCBSRU1PVkVcbiAqL1xuLyoqXG4gKiBAZGVzY3JpcHRpb24gRGVjYWYtdHMnIENMSSBlbnRyeSBwb2ludFxuICogQHN1bW1hcnkgVGhpcyBmaWxlIHNlcnZlcyBhcyB0aGUgbWFpbiBleGVjdXRhYmxlIGVudHJ5IHBvaW50IGZvciB0aGUgRGVjYWYgQ0xJLiBJdCBjcmVhdGVzIGEgQ2xpV3JhcHBlciBpbnN0YW5jZVxuICogYW5kIHJ1bnMgaXQgd2l0aCB0aGUgcHJvY2VzcyBhcmd1bWVudHMuIFRoZSBDTEkgd2lsbCBjcmF3bCB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeSBmb3IgZmlsZXMgY2FsbGVkXG4gKiBNQ1BfRklMRV9OQU1FIHdpdGhpbiB0aGUgQGRlY2FmLXRzIG5hbWVzcGFjZSBhbmQgbG9hZCB0aGVtIGFzIHN1YmNvbW1hbmRzLlxuICpcbiAqIEBleGFtcGxlXG4gKiAvLyBSdW4gYSBtb2R1bGUgY29tbWFuZFxuICogJCBucHggZGVjYWYgPG1vZHVsZSBuYW1lPiA8bW9kdWxlIGNvbW1hbmQ+IC4uLjxtb2R1bGUgY29tbWFuZCBvcHRpb25zPlxuICpcbiAqIC8vIEdldCBoZWxwIGZvciBhIHNwZWNpZmljIG1vZHVsZVxuICogJCBucHggZGVjYWYgaGVscCA8bW9kdWxlIG5hbWU+XG4gKlxuICogLy8gTGlzdCBhbGwgaW1wb3J0ZWQgbW9kdWxlc1xuICogJCBucHggZGVjYWYgbGlzdFxuICpcbiAqIC8vIEdldCBnZW5lcmFsIENMSSBoZWxwXG4gKiAkIG5weCBkZWNhZiBoZWxwXG4gKlxuICogQG1lbWJlck9mIG1vZHVsZTpNQ1BcbiAqL1xuaW1wb3J0IHsgTWNwV3JhcHBlciB9IGZyb20gXCIuLi9NY3BXcmFwcGVyXCI7XG5uZXcgTWNwV3JhcHBlcigpXG4gIC5ydW4ocHJvY2Vzcy5hcmd2KVxuICAudGhlbigoKSA9PiB7XG4gICAgY29uc29sZS5sb2coXCJUaGFuayB5b3UgZm9yIHVzaW5nIGRlY2FmLXRzJyBtY3Agc2VydmVyXCIpO1xuICB9KVxuICAuY2F0Y2goKGU6IHVua25vd24pID0+IHtcbiAgICBjb25zb2xlLmVycm9yKGAke2UgaW5zdGFuY2VvZiBFcnJvciA/IGUubWVzc2FnZSA6IGV9YCk7XG4gICAgcHJvY2Vzcy5leGl0KDEpO1xuICB9KTtcbiJdfQ==
|
|
1
|
+
import { McpServer } from "./../mcp-server.js";
|
|
2
|
+
async function main() {
|
|
3
|
+
const server = new McpServer();
|
|
4
|
+
return server.boot("stdio");
|
|
5
|
+
}
|
|
6
|
+
main();
|
|
7
|
+
//# sourceMappingURL=cli.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../src/bin/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,2BAAsB;AAE1C,KAAK,UAAU,IAAI;IACjB,MAAM,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;IAC/B,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC9B,CAAC;AAED,IAAI,EAAE,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Model, ModelArg } from "@decaf-ts/decorator-validation";
|
|
2
|
+
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
3
|
+
import { RequestHandlerExtra } from "@modelcontextprotocol/sdk/shared/protocol";
|
|
4
|
+
import { ServerNotification, ServerRequest } from "@modelcontextprotocol/sdk/types";
|
|
5
|
+
import { Cost, EffortLevel, ReasoningLevel } from "../constants";
|
|
6
|
+
export declare abstract class Builder<OBJ> extends Model {
|
|
7
|
+
protected description: string;
|
|
8
|
+
protected name: string;
|
|
9
|
+
protected title: string;
|
|
10
|
+
protected constructor(arg?: ModelArg<Builder<OBJ>>);
|
|
11
|
+
protected log(extra: RequestHandlerExtra<ServerRequest, ServerNotification>): import("@decaf-ts/logging").Logger;
|
|
12
|
+
abstract build(server: McpServer): OBJ;
|
|
13
|
+
setDescription(value: string): this;
|
|
14
|
+
setName(value: string): this;
|
|
15
|
+
setTitle(value: string): this;
|
|
16
|
+
}
|
|
17
|
+
export declare abstract class UsableBuilder<OBJ> extends Builder<OBJ> {
|
|
18
|
+
protected reasoning: ReasoningLevel;
|
|
19
|
+
protected effort: EffortLevel;
|
|
20
|
+
protected cost: Cost;
|
|
21
|
+
protected constructor(arg?: ModelArg<Builder<OBJ>>);
|
|
22
|
+
setReasoning(value: ReasoningLevel): this;
|
|
23
|
+
setEffort(value: EffortLevel): this;
|
|
24
|
+
setCost(value: Cost): this;
|
|
25
|
+
}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
import { Model, required } from "@decaf-ts/decorator-validation";
|
|
11
|
+
import { Logging } from "@decaf-ts/logging";
|
|
12
|
+
import { Cost, EffortLevel, ReasoningLevel } from "./../constants.js";
|
|
13
|
+
export class Builder extends Model {
|
|
14
|
+
constructor(arg) {
|
|
15
|
+
super(arg);
|
|
16
|
+
Model.fromObject(this, arg);
|
|
17
|
+
}
|
|
18
|
+
log(extra) {
|
|
19
|
+
const { sessionId, requestId, authInfo } = extra || {};
|
|
20
|
+
// sessionId may be undefined for some transports or internal calls.
|
|
21
|
+
// Logging.for expects either a string or an object; avoid passing undefined.
|
|
22
|
+
let log = typeof sessionId === 'string' && sessionId.length > 0 ? Logging.for(sessionId).for(this) : Logging.for(this);
|
|
23
|
+
if (authInfo && authInfo.clientId)
|
|
24
|
+
log = log.for(authInfo.clientId);
|
|
25
|
+
if (requestId)
|
|
26
|
+
log = log.for(requestId.toString());
|
|
27
|
+
return log;
|
|
28
|
+
}
|
|
29
|
+
setDescription(value) {
|
|
30
|
+
this.description = value;
|
|
31
|
+
return this;
|
|
32
|
+
}
|
|
33
|
+
setName(value) {
|
|
34
|
+
this.name = value;
|
|
35
|
+
return this;
|
|
36
|
+
}
|
|
37
|
+
setTitle(value) {
|
|
38
|
+
this.title = value;
|
|
39
|
+
return this;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
__decorate([
|
|
43
|
+
required(),
|
|
44
|
+
__metadata("design:type", String)
|
|
45
|
+
], Builder.prototype, "description", void 0);
|
|
46
|
+
__decorate([
|
|
47
|
+
required(),
|
|
48
|
+
__metadata("design:type", String)
|
|
49
|
+
], Builder.prototype, "name", void 0);
|
|
50
|
+
__decorate([
|
|
51
|
+
required(),
|
|
52
|
+
__metadata("design:type", String)
|
|
53
|
+
], Builder.prototype, "title", void 0);
|
|
54
|
+
export class UsableBuilder extends Builder {
|
|
55
|
+
constructor(arg) {
|
|
56
|
+
super(arg);
|
|
57
|
+
this.reasoning = ReasoningLevel.NONE;
|
|
58
|
+
this.effort = EffortLevel.NONE;
|
|
59
|
+
this.cost = Cost.FREE;
|
|
60
|
+
}
|
|
61
|
+
setReasoning(value) {
|
|
62
|
+
this.reasoning = value;
|
|
63
|
+
return this;
|
|
64
|
+
}
|
|
65
|
+
setEffort(value) {
|
|
66
|
+
this.effort = value;
|
|
67
|
+
return this;
|
|
68
|
+
}
|
|
69
|
+
setCost(value) {
|
|
70
|
+
this.cost = value;
|
|
71
|
+
return this;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
__decorate([
|
|
75
|
+
required(),
|
|
76
|
+
__metadata("design:type", Number)
|
|
77
|
+
], UsableBuilder.prototype, "reasoning", void 0);
|
|
78
|
+
__decorate([
|
|
79
|
+
required(),
|
|
80
|
+
__metadata("design:type", Number)
|
|
81
|
+
], UsableBuilder.prototype, "effort", void 0);
|
|
82
|
+
__decorate([
|
|
83
|
+
required(),
|
|
84
|
+
__metadata("design:type", Number)
|
|
85
|
+
], UsableBuilder.prototype, "cost", void 0);
|
|
86
|
+
//# sourceMappingURL=builder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../src/builders/builder.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,KAAK,EAAY,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAO3E,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,cAAc,EAAE,0BAAqB;AAEjE,MAAM,OAAgB,OAAa,SAAQ,KAAK;IAQ9C,YAAsB,GAA4B;QAChD,KAAK,CAAC,GAAG,CAAC,CAAC;QACX,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC9B,CAAC;IAES,GAAG,CAAC,KAA6D;QACzE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,KAAK,IAAI,EAAE,CAAC;QACvD,oEAAoE;QACpE,6EAA6E;QAC7E,IAAI,GAAG,GAAG,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,IAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAW,CAAC,CAAC;QACrI,IAAI,QAAQ,IAAI,QAAQ,CAAC,QAAQ;YAAE,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACpE,IAAI,SAAS;YAAE,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;QACnD,OAAO,GAAG,CAAC;IACb,CAAC;IAID,cAAc,CAAC,KAAa;QAC1B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAC,KAAa;QACnB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ,CAAC,KAAa;QACpB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AArCW;IADT,QAAQ,EAAE;;4CACoB;AAErB;IADT,QAAQ,EAAE;;qCACa;AAEd;IADT,QAAQ,EAAE;;sCACc;AAmC3B,MAAM,OAAgB,aAAmB,SAAQ,OAAY;IAU3D,YAAsB,GAA4B;QAChD,KAAK,CAAC,GAAG,CAAC,CAAC;QATH,cAAS,GAAmB,cAAc,CAAC,IAAI,CAAC;QAGhD,WAAM,GAAgB,WAAW,CAAC,IAAI,CAAC;QAGvC,SAAI,GAAS,IAAI,CAAC,IAAI,CAAC;IAIjC,CAAC;IAED,YAAY,CAAC,KAAqB;QAChC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,SAAS,CAAC,KAAkB;QAC1B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAC,KAAW;QACjB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AA1BW;IADT,QAAQ,EAAE;;gDAC+C;AAGhD;IADT,QAAQ,EAAE;;6CACsC;AAGvC;IADT,QAAQ,EAAE;;2CACsB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/builders/index.ts"],"names":[],"mappings":"AAAA,6BAA0B;AAC1B,oCAAiC;AACjC,sCAAmC;AACnC,kCAA+B"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { McpServer, type PromptCallback, RegisteredPrompt } from "@modelcontextprotocol/sdk/server/mcp";
|
|
2
|
+
import type { ZodRawShape } from "zod";
|
|
3
|
+
import { UsableBuilder } from "./builder";
|
|
4
|
+
export declare class PromptBuilder extends UsableBuilder<RegisteredPrompt> {
|
|
5
|
+
protected cb: PromptCallback<any>;
|
|
6
|
+
protected argsSchema: ZodRawShape;
|
|
7
|
+
setCb(value: PromptCallback<any>): this;
|
|
8
|
+
setArgsSchema(value: ZodRawShape): this;
|
|
9
|
+
private constructor();
|
|
10
|
+
static get builder(): PromptBuilder;
|
|
11
|
+
build(server: McpServer): RegisteredPrompt;
|
|
12
|
+
}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
import { required } from "@decaf-ts/decorator-validation";
|
|
11
|
+
import { UsableBuilder } from "./builder.js";
|
|
12
|
+
import { Logging } from "@decaf-ts/logging";
|
|
13
|
+
export class PromptBuilder extends UsableBuilder {
|
|
14
|
+
setCb(value) {
|
|
15
|
+
this.cb = value;
|
|
16
|
+
return this;
|
|
17
|
+
}
|
|
18
|
+
setArgsSchema(value) {
|
|
19
|
+
this.argsSchema = value;
|
|
20
|
+
return this;
|
|
21
|
+
}
|
|
22
|
+
constructor(arg) {
|
|
23
|
+
super(arg);
|
|
24
|
+
}
|
|
25
|
+
static get builder() {
|
|
26
|
+
return new PromptBuilder();
|
|
27
|
+
}
|
|
28
|
+
build(server) {
|
|
29
|
+
const errs = this.hasErrors();
|
|
30
|
+
if (errs)
|
|
31
|
+
throw new Error(errs.toString());
|
|
32
|
+
try {
|
|
33
|
+
return server.registerPrompt(this.name, {
|
|
34
|
+
title: this.title,
|
|
35
|
+
description: this.description,
|
|
36
|
+
argsSchema: this.argsSchema,
|
|
37
|
+
}, async (args, extra) => {
|
|
38
|
+
const log = this.log(extra);
|
|
39
|
+
// ensure args is an object and has a _meta container so we can safely
|
|
40
|
+
// attach usage metadata without throwing when callers pass `{}` or
|
|
41
|
+
// omit the field entirely.
|
|
42
|
+
args = args || {};
|
|
43
|
+
log.verbose(`Executing prompt ${this.name} with args: ${JSON.stringify(args)}`);
|
|
44
|
+
args._meta = Object.assign(args._meta || {}, {
|
|
45
|
+
usage: {
|
|
46
|
+
reasoning: this.reasoning,
|
|
47
|
+
effort: this.effort,
|
|
48
|
+
cost: this.cost,
|
|
49
|
+
},
|
|
50
|
+
});
|
|
51
|
+
const result = await Promise.resolve(this.cb(args, extra));
|
|
52
|
+
log.verbose(`Prompt ${this.name} executed successfully.`);
|
|
53
|
+
// result._meta = Object.assign(result._meta as any, this._meta) as any;
|
|
54
|
+
log.debug(`Prompt execution meta: ${JSON.stringify(result._meta)}`);
|
|
55
|
+
return result;
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
catch (e) {
|
|
59
|
+
Logging.for(this).error(`Failed to register prompt ${this.name}`, e);
|
|
60
|
+
throw e;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
__decorate([
|
|
65
|
+
required(),
|
|
66
|
+
__metadata("design:type", Object)
|
|
67
|
+
], PromptBuilder.prototype, "cb", void 0);
|
|
68
|
+
__decorate([
|
|
69
|
+
required(),
|
|
70
|
+
__metadata("design:type", Object)
|
|
71
|
+
], PromptBuilder.prototype, "argsSchema", void 0);
|
|
72
|
+
//# sourceMappingURL=prompt-builder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompt-builder.js","sourceRoot":"","sources":["../../../src/builders/prompt-builder.ts"],"names":[],"mappings":";;;;;;;;;AAKA,OAAO,EAAY,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAEpE,OAAO,EAAE,aAAa,EAAE,qBAAkB;AAO1C,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,MAAM,OAAO,aAAc,SAAQ,aAA+B;IAMhE,KAAK,CAAC,KAA0B;QAC9B,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC;QAChB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa,CAAC,KAAkB;QAC9B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,YAAoB,GAA6B;QAC/C,KAAK,CAAC,GAAG,CAAC,CAAC;IACb,CAAC;IAED,MAAM,KAAK,OAAO;QAChB,OAAO,IAAI,aAAa,EAAE,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,MAAiB;QACrB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAC9B,IAAI,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC3C,IAAI,CAAC;YACH,OAAO,MAAM,CAAC,cAAc,CAC1B,IAAI,CAAC,IAAI,EACT;gBACE,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,UAAU,EAAE,IAAI,CAAC,UAAU;aAC5B,EACD,KAAK,EACH,IAAS,EACT,KAA6D,EACnC,EAAE;gBAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAC5B,sEAAsE;gBACtE,mEAAmE;gBACnE,2BAA2B;gBAC3B,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;gBAClB,GAAG,CAAC,OAAO,CAAC,oBAAoB,IAAI,CAAC,IAAI,eAAe,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAChF,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE;oBAC3C,KAAK,EAAE;wBACL,SAAS,EAAE,IAAI,CAAC,SAAS;wBACzB,MAAM,EAAE,IAAI,CAAC,MAAM;wBACnB,IAAI,EAAE,IAAI,CAAC,IAAI;qBAChB;iBACF,CAAC,CAAC;gBACH,MAAM,MAAM,GAAoB,MAAM,OAAO,CAAC,OAAO,CACnD,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,CACrB,CAAC;gBACF,GAAG,CAAC,OAAO,CAAC,UAAU,IAAI,CAAC,IAAI,yBAAyB,CAAC,CAAC;gBAC1D,wEAAwE;gBACxE,GAAG,CAAC,KAAK,CAAC,0BAA0B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACpE,OAAO,MAAM,CAAC;YAChB,CAAC,CACF,CAAC;QACJ,CAAC;QAAC,OAAO,CAAU,EAAE,CAAC;YACpB,OAAO,CAAC,GAAG,CAAC,IAAW,CAAC,CAAC,KAAK,CAC5B,6BAA6B,IAAI,CAAC,IAAI,EAAE,EACxC,CAAQ,CACT,CAAC;YACF,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC;CACF;AAnEW;IADT,QAAQ,EAAE;;yCACwB;AAEzB;IADT,QAAQ,EAAE;;iDACwB"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { McpServer, type ReadResourceCallback, RegisteredResource, RegisteredResourceTemplate } from "@modelcontextprotocol/sdk/server/mcp";
|
|
2
|
+
import { Builder } from "./builder";
|
|
3
|
+
import { Resource } from "@modelcontextprotocol/sdk/types";
|
|
4
|
+
export declare class ResourceBuilder extends Builder<RegisteredResource | RegisteredResourceTemplate> {
|
|
5
|
+
protected uriOrTemplate: string;
|
|
6
|
+
cb: ReadResourceCallback;
|
|
7
|
+
protected config: Omit<Resource, "uri" | "name">;
|
|
8
|
+
setCb(value: ReadResourceCallback): this;
|
|
9
|
+
setConfig(value: Omit<Resource, "uri" | "name">): this;
|
|
10
|
+
setUriOtTemplate(value: string): this;
|
|
11
|
+
private constructor();
|
|
12
|
+
static get builder(): ResourceBuilder;
|
|
13
|
+
build(server: McpServer): RegisteredResource | RegisteredResourceTemplate;
|
|
14
|
+
}
|