@spotlightjs/spotlight 4.6.0 → 4.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_virtual/_commonjsHelpers.js +9 -0
- package/dist/_virtual/_commonjsHelpers.js.map +1 -1
- package/dist/_virtual/_sentry-release-injection-file.js +11 -0
- package/dist/_virtual/_sentry-release-injection-file.js.map +1 -0
- package/dist/_virtual/cache.js +8 -0
- package/dist/_virtual/cache.js.map +1 -1
- package/dist/_virtual/index.js +8 -0
- package/dist/_virtual/index.js.map +1 -1
- package/dist/_virtual/re.js +8 -0
- package/dist/_virtual/re.js.map +1 -1
- package/dist/_virtual/uri.all.js +8 -0
- package/dist/_virtual/uri.all.js.map +1 -1
- package/dist/instrument.js +9 -0
- package/dist/instrument.js.map +1 -1
- package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/client/index.js +8 -0
- package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/client/index.js.map +1 -1
- package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/completable.js +8 -0
- package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/completable.js.map +1 -1
- package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.js +8 -0
- package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.js.map +1 -1
- package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/mcp.js +8 -0
- package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/mcp.js.map +1 -1
- package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/stdio.js +8 -0
- package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/stdio.js.map +1 -1
- package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js +8 -0
- package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js.map +1 -1
- package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/stdio.js +8 -0
- package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/stdio.js.map +1 -1
- package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/types.js +8 -0
- package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/types.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/ajv.js +47 -39
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/ajv.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/cache.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/cache.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/async.js +18 -9
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/async.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/error_classes.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/error_classes.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/formats.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/formats.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/index.js +24 -15
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/index.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/resolve.js +14 -5
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/resolve.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/rules.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/rules.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/schema_obj.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/schema_obj.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/ucs2length.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/ucs2length.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/util.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/util.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/data.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/data.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/definition_schema.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/definition_schema.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limit.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limit.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limitItems.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limitItems.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limitLength.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limitLength.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limitProperties.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limitProperties.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/allOf.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/allOf.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/anyOf.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/anyOf.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/comment.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/comment.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/const.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/const.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/contains.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/contains.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/custom.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/custom.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/dependencies.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/dependencies.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/enum.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/enum.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/format.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/format.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/if.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/if.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/index.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/index.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/items.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/items.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/multipleOf.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/multipleOf.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/not.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/not.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/oneOf.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/oneOf.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/pattern.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/pattern.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/properties.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/properties.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/propertyNames.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/propertyNames.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/ref.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/ref.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/required.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/required.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/uniqueItems.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/uniqueItems.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/validate.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/validate.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/keyword.js +9 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/keyword.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/refs/data.json.js +8 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/refs/data.json.js.map +1 -1
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/refs/json-schema-draft-07.json.js +8 -0
- package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/refs/json-schema-draft-07.json.js.map +1 -1
- package/dist/node_modules/.pnpm/fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.js +9 -0
- package/dist/node_modules/.pnpm/fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.js.map +1 -1
- package/dist/node_modules/.pnpm/fast-json-stable-stringify@2.1.0/node_modules/fast-json-stable-stringify/index.js +9 -0
- package/dist/node_modules/.pnpm/fast-json-stable-stringify@2.1.0/node_modules/fast-json-stable-stringify/index.js.map +1 -1
- package/dist/node_modules/.pnpm/hono@4.10.3/node_modules/hono/dist/helper/streaming/sse.js +8 -0
- package/dist/node_modules/.pnpm/hono@4.10.3/node_modules/hono/dist/helper/streaming/sse.js.map +1 -1
- package/dist/node_modules/.pnpm/hono@4.10.3/node_modules/hono/dist/middleware/cors/index.js +8 -0
- package/dist/node_modules/.pnpm/hono@4.10.3/node_modules/hono/dist/middleware/cors/index.js.map +1 -1
- package/dist/node_modules/.pnpm/hono@4.10.3/node_modules/hono/dist/utils/html.js +8 -0
- package/dist/node_modules/.pnpm/hono@4.10.3/node_modules/hono/dist/utils/html.js.map +1 -1
- package/dist/node_modules/.pnpm/hono@4.10.3/node_modules/hono/dist/utils/stream.js +8 -0
- package/dist/node_modules/.pnpm/hono@4.10.3/node_modules/hono/dist/utils/stream.js.map +1 -1
- package/dist/node_modules/.pnpm/json-schema-traverse@0.4.1/node_modules/json-schema-traverse/index.js +9 -0
- package/dist/node_modules/.pnpm/json-schema-traverse@0.4.1/node_modules/json-schema-traverse/index.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/classes/comparator.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/classes/comparator.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/classes/range.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/classes/range.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/classes/semver.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/classes/semver.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/clean.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/clean.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/cmp.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/cmp.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/coerce.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/coerce.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/compare-build.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/compare-build.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/compare-loose.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/compare-loose.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/compare.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/compare.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/diff.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/diff.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/eq.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/eq.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/gt.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/gt.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/gte.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/gte.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/inc.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/inc.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/lt.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/lt.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/lte.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/lte.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/major.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/major.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/minor.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/minor.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/neq.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/neq.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/parse.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/parse.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/patch.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/patch.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/prerelease.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/prerelease.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/rcompare.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/rcompare.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/rsort.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/rsort.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/satisfies.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/satisfies.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/sort.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/sort.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/valid.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/valid.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/index.js +8 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/index.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/constants.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/constants.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/debug.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/debug.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/identifiers.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/identifiers.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/lrucache.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/lrucache.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/parse-options.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/parse-options.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/re.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/re.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/gtr.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/gtr.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/intersects.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/intersects.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/ltr.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/ltr.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/max-satisfying.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/max-satisfying.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/min-satisfying.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/min-satisfying.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/min-version.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/min-version.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/outside.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/outside.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/simplify.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/simplify.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/subset.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/subset.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/to-comparators.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/to-comparators.js.map +1 -1
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/valid.js +9 -0
- package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/valid.js.map +1 -1
- package/dist/node_modules/.pnpm/uri-js@4.4.1/node_modules/uri-js/dist/es5/uri.all.js +9 -1
- package/dist/node_modules/.pnpm/uri-js@4.4.1/node_modules/uri-js/dist/es5/uri.all.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/Options.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/Options.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/Refs.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/Refs.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/errorMessages.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/errorMessages.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/getRelativePath.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/getRelativePath.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parseDef.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parseDef.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/any.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/any.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/array.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/array.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/bigint.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/bigint.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/boolean.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/boolean.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/branded.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/branded.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/catch.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/catch.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/date.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/date.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/default.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/default.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/effects.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/effects.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/enum.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/enum.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/intersection.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/intersection.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/literal.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/literal.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/map.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/map.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/nativeEnum.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/nativeEnum.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/never.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/never.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/null.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/null.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/nullable.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/nullable.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/number.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/number.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/object.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/object.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/optional.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/optional.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/pipeline.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/pipeline.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/promise.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/promise.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/readonly.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/readonly.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/record.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/record.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/set.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/set.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/string.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/string.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/tuple.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/tuple.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/undefined.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/undefined.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/union.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/union.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/unknown.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/unknown.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/selectParser.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/selectParser.js.map +1 -1
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/zodToJsonSchema.js +8 -0
- package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/zodToJsonSchema.js.map +1 -1
- package/dist/run.js +9 -0
- package/dist/run.js.map +1 -1
- package/dist/sentry-config.js +10 -1
- package/dist/sentry-config.js.map +1 -1
- package/dist/server/cli/help.js +17 -0
- package/dist/server/cli/help.js.map +1 -1
- package/dist/server/cli/mcp.d.ts +1 -1
- package/dist/server/cli/mcp.js +21 -9
- package/dist/server/cli/mcp.js.map +1 -1
- package/dist/server/cli/run.d.ts +1 -1
- package/dist/server/cli/run.js +28 -3
- package/dist/server/cli/run.js.map +1 -1
- package/dist/server/cli/server.d.ts +1 -1
- package/dist/server/cli/server.js +12 -2
- package/dist/server/cli/server.js.map +1 -1
- package/dist/server/cli/tail.d.ts +1 -1
- package/dist/server/cli/tail.js +18 -2
- package/dist/server/cli/tail.js.map +1 -1
- package/dist/server/cli.d.ts +1 -0
- package/dist/server/cli.js +30 -4
- package/dist/server/cli.js.map +1 -1
- package/dist/server/constants.js +9 -0
- package/dist/server/constants.js.map +1 -1
- package/dist/server/formatters/human/errors.js +9 -0
- package/dist/server/formatters/human/errors.js.map +1 -1
- package/dist/server/formatters/human/index.js +9 -0
- package/dist/server/formatters/human/index.js.map +1 -1
- package/dist/server/formatters/human/logs.js +9 -0
- package/dist/server/formatters/human/logs.js.map +1 -1
- package/dist/server/formatters/human/traces.js +9 -0
- package/dist/server/formatters/human/traces.js.map +1 -1
- package/dist/server/formatters/human/utils.js +9 -0
- package/dist/server/formatters/human/utils.js.map +1 -1
- package/dist/server/formatters/index.js +9 -0
- package/dist/server/formatters/index.js.map +1 -1
- package/dist/server/formatters/json/errors.js +9 -0
- package/dist/server/formatters/json/errors.js.map +1 -1
- package/dist/server/formatters/json/index.js +9 -0
- package/dist/server/formatters/json/index.js.map +1 -1
- package/dist/server/formatters/json/logs.js +9 -0
- package/dist/server/formatters/json/logs.js.map +1 -1
- package/dist/server/formatters/json/traces.js +9 -0
- package/dist/server/formatters/json/traces.js.map +1 -1
- package/dist/server/formatters/logfmt/errors.js +9 -0
- package/dist/server/formatters/logfmt/errors.js.map +1 -1
- package/dist/server/formatters/logfmt/index.js +9 -0
- package/dist/server/formatters/logfmt/index.js.map +1 -1
- package/dist/server/formatters/logfmt/logs.js +9 -0
- package/dist/server/formatters/logfmt/logs.js.map +1 -1
- package/dist/server/formatters/logfmt/traces.js +9 -0
- package/dist/server/formatters/logfmt/traces.js.map +1 -1
- package/dist/server/formatters/md/errors.js +9 -0
- package/dist/server/formatters/md/errors.js.map +1 -1
- package/dist/server/formatters/md/event.js +9 -0
- package/dist/server/formatters/md/event.js.map +1 -1
- package/dist/server/formatters/md/index.js +9 -0
- package/dist/server/formatters/md/index.js.map +1 -1
- package/dist/server/formatters/md/logs.js +9 -0
- package/dist/server/formatters/md/logs.js.map +1 -1
- package/dist/server/formatters/md/traces.js +9 -0
- package/dist/server/formatters/md/traces.js.map +1 -1
- package/dist/server/formatters/shared/data-builders.js +9 -0
- package/dist/server/formatters/shared/data-builders.js.map +1 -1
- package/dist/server/formatters/types.js +9 -0
- package/dist/server/formatters/types.js.map +1 -1
- package/dist/server/formatters/utils.js +9 -0
- package/dist/server/formatters/utils.js.map +1 -1
- package/dist/server/handlers/fileToServe.js +9 -0
- package/dist/server/handlers/fileToServe.js.map +1 -1
- package/dist/server/logger.js +9 -0
- package/dist/server/logger.js.map +1 -1
- package/dist/server/main.d.ts +1 -1
- package/dist/server/main.js +22 -4
- package/dist/server/main.js.map +1 -1
- package/dist/server/mcp/constants.js +9 -0
- package/dist/server/mcp/constants.js.map +1 -1
- package/dist/server/mcp/mcp.js +13 -1
- package/dist/server/mcp/mcp.js.map +1 -1
- package/dist/server/messageBuffer.js +9 -0
- package/dist/server/messageBuffer.js.map +1 -1
- package/dist/server/parser/helpers.js +9 -0
- package/dist/server/parser/helpers.js.map +1 -1
- package/dist/server/parser/processEnvelope.js +9 -0
- package/dist/server/parser/processEnvelope.js.map +1 -1
- package/dist/server/routes/clear.js +12 -0
- package/dist/server/routes/clear.js.map +1 -1
- package/dist/server/routes/contextlines/index.js +9 -0
- package/dist/server/routes/contextlines/index.js.map +1 -1
- package/dist/server/routes/contextlines/utils.js +9 -0
- package/dist/server/routes/contextlines/utils.js.map +1 -1
- package/dist/server/routes/health.js +9 -0
- package/dist/server/routes/health.js.map +1 -1
- package/dist/server/routes/index.js +9 -0
- package/dist/server/routes/index.js.map +1 -1
- package/dist/server/routes/mcp.js +9 -0
- package/dist/server/routes/mcp.js.map +1 -1
- package/dist/server/routes/open.js +9 -0
- package/dist/server/routes/open.js.map +1 -1
- package/dist/server/routes/stream/debugLogging.js +9 -0
- package/dist/server/routes/stream/debugLogging.js.map +1 -1
- package/dist/server/routes/stream/index.js +12 -0
- package/dist/server/routes/stream/index.js.map +1 -1
- package/dist/server/routes/stream/streaming.js +9 -0
- package/dist/server/routes/stream/streaming.js.map +1 -1
- package/dist/server/routes/stream/userAgent.js +9 -0
- package/dist/server/routes/stream/userAgent.js.map +1 -1
- package/dist/server/sdk.js +9 -0
- package/dist/server/sdk.js.map +1 -1
- package/dist/server/types/cli.d.ts +1 -0
- package/dist/server/types/utils.d.ts +12 -0
- package/dist/server/utils/cors.d.ts +35 -5
- package/dist/server/utils/cors.js +179 -6
- package/dist/server/utils/cors.js.map +1 -1
- package/dist/server/utils/docker-compose-parser.js +9 -0
- package/dist/server/utils/docker-compose-parser.js.map +1 -1
- package/dist/server/utils/docker-compose.js +9 -0
- package/dist/server/utils/docker-compose.js.map +1 -1
- package/dist/server/utils/eventContainer.js +9 -0
- package/dist/server/utils/eventContainer.js.map +1 -1
- package/dist/server/utils/extras.js +9 -0
- package/dist/server/utils/extras.js.map +1 -1
- package/dist/server/utils/getBuffer.js +9 -0
- package/dist/server/utils/getBuffer.js.map +1 -1
- package/dist/shared/constants.js +9 -0
- package/dist/shared/constants.js.map +1 -1
- package/dist/ui/assets/andromeeda.js +2 -1
- package/dist/ui/assets/andromeeda.js.map +1 -0
- package/dist/ui/assets/angular-html.js +2 -1
- package/dist/ui/assets/angular-html.js.map +1 -0
- package/dist/ui/assets/angular-ts.js +2 -1
- package/dist/ui/assets/angular-ts.js.map +1 -0
- package/dist/ui/assets/astro.js +2 -1
- package/dist/ui/assets/astro.js.map +1 -0
- package/dist/ui/assets/aurora-x.js +2 -1
- package/dist/ui/assets/aurora-x.js.map +1 -0
- package/dist/ui/assets/ayu-dark.js +2 -1
- package/dist/ui/assets/ayu-dark.js.map +1 -0
- package/dist/ui/assets/blade.js +2 -1
- package/dist/ui/assets/blade.js.map +1 -0
- package/dist/ui/assets/c.js +2 -1
- package/dist/ui/assets/c.js.map +1 -0
- package/dist/ui/assets/catppuccin-frappe.js +2 -1
- package/dist/ui/assets/catppuccin-frappe.js.map +1 -0
- package/dist/ui/assets/catppuccin-latte.js +2 -1
- package/dist/ui/assets/catppuccin-latte.js.map +1 -0
- package/dist/ui/assets/catppuccin-macchiato.js +2 -1
- package/dist/ui/assets/catppuccin-macchiato.js.map +1 -0
- package/dist/ui/assets/catppuccin-mocha.js +2 -1
- package/dist/ui/assets/catppuccin-mocha.js.map +1 -0
- package/dist/ui/assets/coffee.js +2 -1
- package/dist/ui/assets/coffee.js.map +1 -0
- package/dist/ui/assets/cpp.js +2 -1
- package/dist/ui/assets/cpp.js.map +1 -0
- package/dist/ui/assets/css.js +2 -1
- package/dist/ui/assets/css.js.map +1 -0
- package/dist/ui/assets/dark-plus.js +2 -1
- package/dist/ui/assets/dark-plus.js.map +1 -0
- package/dist/ui/assets/dracula-soft.js +2 -1
- package/dist/ui/assets/dracula-soft.js.map +1 -0
- package/dist/ui/assets/dracula.js +2 -1
- package/dist/ui/assets/dracula.js.map +1 -0
- package/dist/ui/assets/everforest-dark.js +2 -1
- package/dist/ui/assets/everforest-dark.js.map +1 -0
- package/dist/ui/assets/everforest-light.js +2 -1
- package/dist/ui/assets/everforest-light.js.map +1 -0
- package/dist/ui/assets/github-dark-default.js +2 -1
- package/dist/ui/assets/github-dark-default.js.map +1 -0
- package/dist/ui/assets/github-dark-dimmed.js +2 -1
- package/dist/ui/assets/github-dark-dimmed.js.map +1 -0
- package/dist/ui/assets/github-dark-high-contrast.js +2 -1
- package/dist/ui/assets/github-dark-high-contrast.js.map +1 -0
- package/dist/ui/assets/github-dark.js +2 -1
- package/dist/ui/assets/github-dark.js.map +1 -0
- package/dist/ui/assets/github-light-default.js +2 -1
- package/dist/ui/assets/github-light-default.js.map +1 -0
- package/dist/ui/assets/github-light-high-contrast.js +2 -1
- package/dist/ui/assets/github-light-high-contrast.js.map +1 -0
- package/dist/ui/assets/github-light.js +2 -1
- package/dist/ui/assets/github-light.js.map +1 -0
- package/dist/ui/assets/glsl.js +2 -1
- package/dist/ui/assets/glsl.js.map +1 -0
- package/dist/ui/assets/graphql.js +2 -1
- package/dist/ui/assets/graphql.js.map +1 -0
- package/dist/ui/assets/gruvbox-dark-hard.js +2 -1
- package/dist/ui/assets/gruvbox-dark-hard.js.map +1 -0
- package/dist/ui/assets/gruvbox-dark-medium.js +2 -1
- package/dist/ui/assets/gruvbox-dark-medium.js.map +1 -0
- package/dist/ui/assets/gruvbox-dark-soft.js +2 -1
- package/dist/ui/assets/gruvbox-dark-soft.js.map +1 -0
- package/dist/ui/assets/gruvbox-light-hard.js +2 -1
- package/dist/ui/assets/gruvbox-light-hard.js.map +1 -0
- package/dist/ui/assets/gruvbox-light-medium.js +2 -1
- package/dist/ui/assets/gruvbox-light-medium.js.map +1 -0
- package/dist/ui/assets/gruvbox-light-soft.js +2 -1
- package/dist/ui/assets/gruvbox-light-soft.js.map +1 -0
- package/dist/ui/assets/haml.js +2 -1
- package/dist/ui/assets/haml.js.map +1 -0
- package/dist/ui/assets/handlebars.js +2 -1
- package/dist/ui/assets/handlebars.js.map +1 -0
- package/dist/ui/assets/houston.js +2 -1
- package/dist/ui/assets/houston.js.map +1 -0
- package/dist/ui/assets/html-derivative.js +2 -1
- package/dist/ui/assets/html-derivative.js.map +1 -0
- package/dist/ui/assets/html.js +2 -1
- package/dist/ui/assets/html.js.map +1 -0
- package/dist/ui/assets/http.js +2 -1
- package/dist/ui/assets/http.js.map +1 -0
- package/dist/ui/assets/imba.js +2 -1
- package/dist/ui/assets/imba.js.map +1 -0
- package/dist/ui/assets/index.js +46 -45
- package/dist/ui/assets/index.js.map +1 -0
- package/dist/ui/assets/index2.js +2 -1
- package/dist/ui/assets/index2.js.map +1 -0
- package/dist/ui/assets/instrumentation.js +16 -15
- package/dist/ui/assets/instrumentation.js.map +1 -0
- package/dist/ui/assets/java.js +2 -1
- package/dist/ui/assets/java.js.map +1 -0
- package/dist/ui/assets/javascript.js +2 -1
- package/dist/ui/assets/javascript.js.map +1 -0
- package/dist/ui/assets/jinja.js +2 -1
- package/dist/ui/assets/jinja.js.map +1 -0
- package/dist/ui/assets/jison.js +2 -1
- package/dist/ui/assets/jison.js.map +1 -0
- package/dist/ui/assets/json.js +2 -1
- package/dist/ui/assets/json.js.map +1 -0
- package/dist/ui/assets/json5.js +2 -1
- package/dist/ui/assets/json5.js.map +1 -0
- package/dist/ui/assets/jsonc.js +2 -1
- package/dist/ui/assets/jsonc.js.map +1 -0
- package/dist/ui/assets/jsonl.js +2 -1
- package/dist/ui/assets/jsonl.js.map +1 -0
- package/dist/ui/assets/jsx.js +2 -1
- package/dist/ui/assets/jsx.js.map +1 -0
- package/dist/ui/assets/julia.js +2 -1
- package/dist/ui/assets/julia.js.map +1 -0
- package/dist/ui/assets/kanagawa-dragon.js +2 -1
- package/dist/ui/assets/kanagawa-dragon.js.map +1 -0
- package/dist/ui/assets/kanagawa-lotus.js +2 -1
- package/dist/ui/assets/kanagawa-lotus.js.map +1 -0
- package/dist/ui/assets/kanagawa-wave.js +2 -1
- package/dist/ui/assets/kanagawa-wave.js.map +1 -0
- package/dist/ui/assets/laserwave.js +2 -1
- package/dist/ui/assets/laserwave.js.map +1 -0
- package/dist/ui/assets/less.js +2 -1
- package/dist/ui/assets/less.js.map +1 -0
- package/dist/ui/assets/light-plus.js +2 -1
- package/dist/ui/assets/light-plus.js.map +1 -0
- package/dist/ui/assets/main.css +1 -1
- package/dist/ui/assets/main.js +3 -2
- package/dist/ui/assets/main.js.map +1 -0
- package/dist/ui/assets/markdown.js +2 -1
- package/dist/ui/assets/markdown.js.map +1 -0
- package/dist/ui/assets/marko.js +2 -1
- package/dist/ui/assets/marko.js.map +1 -0
- package/dist/ui/assets/material-theme-darker.js +2 -1
- package/dist/ui/assets/material-theme-darker.js.map +1 -0
- package/dist/ui/assets/material-theme-lighter.js +2 -1
- package/dist/ui/assets/material-theme-lighter.js.map +1 -0
- package/dist/ui/assets/material-theme-ocean.js +2 -1
- package/dist/ui/assets/material-theme-ocean.js.map +1 -0
- package/dist/ui/assets/material-theme-palenight.js +2 -1
- package/dist/ui/assets/material-theme-palenight.js.map +1 -0
- package/dist/ui/assets/material-theme.js +2 -1
- package/dist/ui/assets/material-theme.js.map +1 -0
- package/dist/ui/assets/mdc.js +2 -1
- package/dist/ui/assets/mdc.js.map +1 -0
- package/dist/ui/assets/mdx.js +2 -1
- package/dist/ui/assets/mdx.js.map +1 -0
- package/dist/ui/assets/min-dark.js +2 -1
- package/dist/ui/assets/min-dark.js.map +1 -0
- package/dist/ui/assets/min-light.js +2 -1
- package/dist/ui/assets/min-light.js.map +1 -0
- package/dist/ui/assets/monokai.js +2 -1
- package/dist/ui/assets/monokai.js.map +1 -0
- package/dist/ui/assets/night-owl.js +2 -1
- package/dist/ui/assets/night-owl.js.map +1 -0
- package/dist/ui/assets/nord.js +2 -1
- package/dist/ui/assets/nord.js.map +1 -0
- package/dist/ui/assets/one-dark-pro.js +2 -1
- package/dist/ui/assets/one-dark-pro.js.map +1 -0
- package/dist/ui/assets/one-light.js +2 -1
- package/dist/ui/assets/one-light.js.map +1 -0
- package/dist/ui/assets/php.js +2 -1
- package/dist/ui/assets/php.js.map +1 -0
- package/dist/ui/assets/plastic.js +2 -1
- package/dist/ui/assets/plastic.js.map +1 -0
- package/dist/ui/assets/poimandres.js +2 -1
- package/dist/ui/assets/poimandres.js.map +1 -0
- package/dist/ui/assets/postcss.js +2 -1
- package/dist/ui/assets/postcss.js.map +1 -0
- package/dist/ui/assets/pug.js +2 -1
- package/dist/ui/assets/pug.js.map +1 -0
- package/dist/ui/assets/python.js +2 -1
- package/dist/ui/assets/python.js.map +1 -0
- package/dist/ui/assets/r.js +2 -1
- package/dist/ui/assets/r.js.map +1 -0
- package/dist/ui/assets/red.js +2 -1
- package/dist/ui/assets/red.js.map +1 -0
- package/dist/ui/assets/regexp.js +2 -1
- package/dist/ui/assets/regexp.js.map +1 -0
- package/dist/ui/assets/rose-pine-dawn.js +2 -1
- package/dist/ui/assets/rose-pine-dawn.js.map +1 -0
- package/dist/ui/assets/rose-pine-moon.js +2 -1
- package/dist/ui/assets/rose-pine-moon.js.map +1 -0
- package/dist/ui/assets/rose-pine.js +2 -1
- package/dist/ui/assets/rose-pine.js.map +1 -0
- package/dist/ui/assets/sass.js +2 -1
- package/dist/ui/assets/sass.js.map +1 -0
- package/dist/ui/assets/scss.js +2 -1
- package/dist/ui/assets/scss.js.map +1 -0
- package/dist/ui/assets/serverTimingMeta.js +51 -0
- package/dist/ui/assets/serverTimingMeta.js.map +1 -0
- package/dist/ui/assets/shellscript.js +2 -1
- package/dist/ui/assets/shellscript.js.map +1 -0
- package/dist/ui/assets/slack-dark.js +2 -1
- package/dist/ui/assets/slack-dark.js.map +1 -0
- package/dist/ui/assets/slack-ochin.js +2 -1
- package/dist/ui/assets/slack-ochin.js.map +1 -0
- package/dist/ui/assets/snazzy-light.js +2 -1
- package/dist/ui/assets/snazzy-light.js.map +1 -0
- package/dist/ui/assets/solarized-dark.js +2 -1
- package/dist/ui/assets/solarized-dark.js.map +1 -0
- package/dist/ui/assets/solarized-light.js +2 -1
- package/dist/ui/assets/solarized-light.js.map +1 -0
- package/dist/ui/assets/sql.js +2 -1
- package/dist/ui/assets/sql.js.map +1 -0
- package/dist/ui/assets/stylus.js +2 -1
- package/dist/ui/assets/stylus.js.map +1 -0
- package/dist/ui/assets/svelte.js +2 -1
- package/dist/ui/assets/svelte.js.map +1 -0
- package/dist/ui/assets/synthwave-84.js +2 -1
- package/dist/ui/assets/synthwave-84.js.map +1 -0
- package/dist/ui/assets/tokyo-night.js +2 -1
- package/dist/ui/assets/tokyo-night.js.map +1 -0
- package/dist/ui/assets/ts-tags.js +2 -1
- package/dist/ui/assets/ts-tags.js.map +1 -0
- package/dist/ui/assets/tsx.js +2 -1
- package/dist/ui/assets/tsx.js.map +1 -0
- package/dist/ui/assets/typescript.js +2 -1
- package/dist/ui/assets/typescript.js.map +1 -0
- package/dist/ui/assets/vesper.js +2 -1
- package/dist/ui/assets/vesper.js.map +1 -0
- package/dist/ui/assets/vitesse-black.js +2 -1
- package/dist/ui/assets/vitesse-black.js.map +1 -0
- package/dist/ui/assets/vitesse-dark.js +2 -1
- package/dist/ui/assets/vitesse-dark.js.map +1 -0
- package/dist/ui/assets/vitesse-light.js +2 -1
- package/dist/ui/assets/vitesse-light.js.map +1 -0
- package/dist/ui/assets/vue-html.js +2 -1
- package/dist/ui/assets/vue-html.js.map +1 -0
- package/dist/ui/assets/vue-vine.js +2 -1
- package/dist/ui/assets/vue-vine.js.map +1 -0
- package/dist/ui/assets/vue.js +2 -1
- package/dist/ui/assets/vue.js.map +1 -0
- package/dist/ui/assets/wasm.js +2 -1
- package/dist/ui/assets/wasm.js.map +1 -0
- package/dist/ui/assets/wasm2.js +2 -1
- package/dist/ui/assets/wasm2.js.map +1 -0
- package/dist/ui/assets/wgsl.js +2 -1
- package/dist/ui/assets/wgsl.js.map +1 -0
- package/dist/ui/assets/wit.js +2 -1
- package/dist/ui/assets/wit.js.map +1 -0
- package/dist/ui/assets/xml.js +2 -1
- package/dist/ui/assets/xml.js.map +1 -0
- package/dist/ui/assets/yaml.js +2 -1
- package/dist/ui/assets/yaml.js.map +1 -0
- package/dist/ui/manifest.json +17 -25
- package/package.json +2 -2
- package/dist/ui/assets/client.js +0 -50
- package/dist/ui/assets/electron-index.js +0 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.js","sources":["../../../../../../../../../../../../node_modules/.pnpm/@modelcontextprotocol+sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/mcp.js"],"sourcesContent":["import { Server } from \"./index.js\";\nimport { zodToJsonSchema } from \"zod-to-json-schema\";\nimport { z, } from \"zod\";\nimport { McpError, ErrorCode, ListResourceTemplatesRequestSchema, ReadResourceRequestSchema, ListToolsRequestSchema, CallToolRequestSchema, ListResourcesRequestSchema, ListPromptsRequestSchema, GetPromptRequestSchema, CompleteRequestSchema, } from \"../types.js\";\nimport { Completable } from \"./completable.js\";\nimport { UriTemplate } from \"../shared/uriTemplate.js\";\n/**\n * High-level MCP server that provides a simpler API for working with resources, tools, and prompts.\n * For advanced usage (like sending notifications or setting custom request handlers), use the underlying\n * Server instance available via the `server` property.\n */\nexport class McpServer {\n constructor(serverInfo, options) {\n this._registeredResources = {};\n this._registeredResourceTemplates = {};\n this._registeredTools = {};\n this._registeredPrompts = {};\n this._toolHandlersInitialized = false;\n this._completionHandlerInitialized = false;\n this._resourceHandlersInitialized = false;\n this._promptHandlersInitialized = false;\n this.server = new Server(serverInfo, options);\n }\n /**\n * Attaches to the given transport, starts it, and starts listening for messages.\n *\n * The `server` object assumes ownership of the Transport, replacing any callbacks that have already been set, and expects that it is the only user of the Transport instance going forward.\n */\n async connect(transport) {\n return await this.server.connect(transport);\n }\n /**\n * Closes the connection.\n */\n async close() {\n await this.server.close();\n }\n setToolRequestHandlers() {\n if (this._toolHandlersInitialized) {\n return;\n }\n this.server.assertCanSetRequestHandler(ListToolsRequestSchema.shape.method.value);\n this.server.assertCanSetRequestHandler(CallToolRequestSchema.shape.method.value);\n this.server.registerCapabilities({\n tools: {\n listChanged: true\n }\n });\n this.server.setRequestHandler(ListToolsRequestSchema, () => ({\n tools: Object.entries(this._registeredTools).filter(([, tool]) => tool.enabled).map(([name, tool]) => {\n const toolDefinition = {\n name,\n title: tool.title,\n description: tool.description,\n inputSchema: tool.inputSchema\n ? zodToJsonSchema(tool.inputSchema, {\n strictUnions: true,\n })\n : EMPTY_OBJECT_JSON_SCHEMA,\n annotations: tool.annotations,\n };\n if (tool.outputSchema) {\n toolDefinition.outputSchema = zodToJsonSchema(tool.outputSchema, { strictUnions: true });\n }\n return toolDefinition;\n }),\n }));\n this.server.setRequestHandler(CallToolRequestSchema, async (request, extra) => {\n const tool = this._registeredTools[request.params.name];\n if (!tool) {\n throw new McpError(ErrorCode.InvalidParams, `Tool ${request.params.name} not found`);\n }\n if (!tool.enabled) {\n throw new McpError(ErrorCode.InvalidParams, `Tool ${request.params.name} disabled`);\n }\n let result;\n if (tool.inputSchema) {\n const parseResult = await tool.inputSchema.safeParseAsync(request.params.arguments);\n if (!parseResult.success) {\n throw new McpError(ErrorCode.InvalidParams, `Invalid arguments for tool ${request.params.name}: ${parseResult.error.message}`);\n }\n const args = parseResult.data;\n const cb = tool.callback;\n try {\n result = await Promise.resolve(cb(args, extra));\n }\n catch (error) {\n result = {\n content: [\n {\n type: \"text\",\n text: error instanceof Error ? error.message : String(error),\n },\n ],\n isError: true,\n };\n }\n }\n else {\n const cb = tool.callback;\n try {\n result = await Promise.resolve(cb(extra));\n }\n catch (error) {\n result = {\n content: [\n {\n type: \"text\",\n text: error instanceof Error ? error.message : String(error),\n },\n ],\n isError: true,\n };\n }\n }\n if (tool.outputSchema && !result.isError) {\n if (!result.structuredContent) {\n throw new McpError(ErrorCode.InvalidParams, `Tool ${request.params.name} has an output schema but no structured content was provided`);\n }\n // if the tool has an output schema, validate structured content\n const parseResult = await tool.outputSchema.safeParseAsync(result.structuredContent);\n if (!parseResult.success) {\n throw new McpError(ErrorCode.InvalidParams, `Invalid structured content for tool ${request.params.name}: ${parseResult.error.message}`);\n }\n }\n return result;\n });\n this._toolHandlersInitialized = true;\n }\n setCompletionRequestHandler() {\n if (this._completionHandlerInitialized) {\n return;\n }\n this.server.assertCanSetRequestHandler(CompleteRequestSchema.shape.method.value);\n this.server.registerCapabilities({\n completions: {},\n });\n this.server.setRequestHandler(CompleteRequestSchema, async (request) => {\n switch (request.params.ref.type) {\n case \"ref/prompt\":\n return this.handlePromptCompletion(request, request.params.ref);\n case \"ref/resource\":\n return this.handleResourceCompletion(request, request.params.ref);\n default:\n throw new McpError(ErrorCode.InvalidParams, `Invalid completion reference: ${request.params.ref}`);\n }\n });\n this._completionHandlerInitialized = true;\n }\n async handlePromptCompletion(request, ref) {\n const prompt = this._registeredPrompts[ref.name];\n if (!prompt) {\n throw new McpError(ErrorCode.InvalidParams, `Prompt ${ref.name} not found`);\n }\n if (!prompt.enabled) {\n throw new McpError(ErrorCode.InvalidParams, `Prompt ${ref.name} disabled`);\n }\n if (!prompt.argsSchema) {\n return EMPTY_COMPLETION_RESULT;\n }\n const field = prompt.argsSchema.shape[request.params.argument.name];\n if (!(field instanceof Completable)) {\n return EMPTY_COMPLETION_RESULT;\n }\n const def = field._def;\n const suggestions = await def.complete(request.params.argument.value, request.params.context);\n return createCompletionResult(suggestions);\n }\n async handleResourceCompletion(request, ref) {\n const template = Object.values(this._registeredResourceTemplates).find((t) => t.resourceTemplate.uriTemplate.toString() === ref.uri);\n if (!template) {\n if (this._registeredResources[ref.uri]) {\n // Attempting to autocomplete a fixed resource URI is not an error in the spec (but probably should be).\n return EMPTY_COMPLETION_RESULT;\n }\n throw new McpError(ErrorCode.InvalidParams, `Resource template ${request.params.ref.uri} not found`);\n }\n const completer = template.resourceTemplate.completeCallback(request.params.argument.name);\n if (!completer) {\n return EMPTY_COMPLETION_RESULT;\n }\n const suggestions = await completer(request.params.argument.value, request.params.context);\n return createCompletionResult(suggestions);\n }\n setResourceRequestHandlers() {\n if (this._resourceHandlersInitialized) {\n return;\n }\n this.server.assertCanSetRequestHandler(ListResourcesRequestSchema.shape.method.value);\n this.server.assertCanSetRequestHandler(ListResourceTemplatesRequestSchema.shape.method.value);\n this.server.assertCanSetRequestHandler(ReadResourceRequestSchema.shape.method.value);\n this.server.registerCapabilities({\n resources: {\n listChanged: true\n }\n });\n this.server.setRequestHandler(ListResourcesRequestSchema, async (request, extra) => {\n const resources = Object.entries(this._registeredResources).filter(([_, resource]) => resource.enabled).map(([uri, resource]) => ({\n uri,\n name: resource.name,\n ...resource.metadata,\n }));\n const templateResources = [];\n for (const template of Object.values(this._registeredResourceTemplates)) {\n if (!template.resourceTemplate.listCallback) {\n continue;\n }\n const result = await template.resourceTemplate.listCallback(extra);\n for (const resource of result.resources) {\n templateResources.push({\n ...template.metadata,\n // the defined resource metadata should override the template metadata if present\n ...resource,\n });\n }\n }\n return { resources: [...resources, ...templateResources] };\n });\n this.server.setRequestHandler(ListResourceTemplatesRequestSchema, async () => {\n const resourceTemplates = Object.entries(this._registeredResourceTemplates).map(([name, template]) => ({\n name,\n uriTemplate: template.resourceTemplate.uriTemplate.toString(),\n ...template.metadata,\n }));\n return { resourceTemplates };\n });\n this.server.setRequestHandler(ReadResourceRequestSchema, async (request, extra) => {\n const uri = new URL(request.params.uri);\n // First check for exact resource match\n const resource = this._registeredResources[uri.toString()];\n if (resource) {\n if (!resource.enabled) {\n throw new McpError(ErrorCode.InvalidParams, `Resource ${uri} disabled`);\n }\n return resource.readCallback(uri, extra);\n }\n // Then check templates\n for (const template of Object.values(this._registeredResourceTemplates)) {\n const variables = template.resourceTemplate.uriTemplate.match(uri.toString());\n if (variables) {\n return template.readCallback(uri, variables, extra);\n }\n }\n throw new McpError(ErrorCode.InvalidParams, `Resource ${uri} not found`);\n });\n this.setCompletionRequestHandler();\n this._resourceHandlersInitialized = true;\n }\n setPromptRequestHandlers() {\n if (this._promptHandlersInitialized) {\n return;\n }\n this.server.assertCanSetRequestHandler(ListPromptsRequestSchema.shape.method.value);\n this.server.assertCanSetRequestHandler(GetPromptRequestSchema.shape.method.value);\n this.server.registerCapabilities({\n prompts: {\n listChanged: true\n }\n });\n this.server.setRequestHandler(ListPromptsRequestSchema, () => ({\n prompts: Object.entries(this._registeredPrompts).filter(([, prompt]) => prompt.enabled).map(([name, prompt]) => {\n return {\n name,\n title: prompt.title,\n description: prompt.description,\n arguments: prompt.argsSchema\n ? promptArgumentsFromSchema(prompt.argsSchema)\n : undefined,\n };\n }),\n }));\n this.server.setRequestHandler(GetPromptRequestSchema, async (request, extra) => {\n const prompt = this._registeredPrompts[request.params.name];\n if (!prompt) {\n throw new McpError(ErrorCode.InvalidParams, `Prompt ${request.params.name} not found`);\n }\n if (!prompt.enabled) {\n throw new McpError(ErrorCode.InvalidParams, `Prompt ${request.params.name} disabled`);\n }\n if (prompt.argsSchema) {\n const parseResult = await prompt.argsSchema.safeParseAsync(request.params.arguments);\n if (!parseResult.success) {\n throw new McpError(ErrorCode.InvalidParams, `Invalid arguments for prompt ${request.params.name}: ${parseResult.error.message}`);\n }\n const args = parseResult.data;\n const cb = prompt.callback;\n return await Promise.resolve(cb(args, extra));\n }\n else {\n const cb = prompt.callback;\n return await Promise.resolve(cb(extra));\n }\n });\n this.setCompletionRequestHandler();\n this._promptHandlersInitialized = true;\n }\n resource(name, uriOrTemplate, ...rest) {\n let metadata;\n if (typeof rest[0] === \"object\") {\n metadata = rest.shift();\n }\n const readCallback = rest[0];\n if (typeof uriOrTemplate === \"string\") {\n if (this._registeredResources[uriOrTemplate]) {\n throw new Error(`Resource ${uriOrTemplate} is already registered`);\n }\n const registeredResource = this._createRegisteredResource(name, undefined, uriOrTemplate, metadata, readCallback);\n this.setResourceRequestHandlers();\n this.sendResourceListChanged();\n return registeredResource;\n }\n else {\n if (this._registeredResourceTemplates[name]) {\n throw new Error(`Resource template ${name} is already registered`);\n }\n const registeredResourceTemplate = this._createRegisteredResourceTemplate(name, undefined, uriOrTemplate, metadata, readCallback);\n this.setResourceRequestHandlers();\n this.sendResourceListChanged();\n return registeredResourceTemplate;\n }\n }\n registerResource(name, uriOrTemplate, config, readCallback) {\n if (typeof uriOrTemplate === \"string\") {\n if (this._registeredResources[uriOrTemplate]) {\n throw new Error(`Resource ${uriOrTemplate} is already registered`);\n }\n const registeredResource = this._createRegisteredResource(name, config.title, uriOrTemplate, config, readCallback);\n this.setResourceRequestHandlers();\n this.sendResourceListChanged();\n return registeredResource;\n }\n else {\n if (this._registeredResourceTemplates[name]) {\n throw new Error(`Resource template ${name} is already registered`);\n }\n const registeredResourceTemplate = this._createRegisteredResourceTemplate(name, config.title, uriOrTemplate, config, readCallback);\n this.setResourceRequestHandlers();\n this.sendResourceListChanged();\n return registeredResourceTemplate;\n }\n }\n _createRegisteredResource(name, title, uri, metadata, readCallback) {\n const registeredResource = {\n name,\n title,\n metadata,\n readCallback,\n enabled: true,\n disable: () => registeredResource.update({ enabled: false }),\n enable: () => registeredResource.update({ enabled: true }),\n remove: () => registeredResource.update({ uri: null }),\n update: (updates) => {\n if (typeof updates.uri !== \"undefined\" && updates.uri !== uri) {\n delete this._registeredResources[uri];\n if (updates.uri)\n this._registeredResources[updates.uri] = registeredResource;\n }\n if (typeof updates.name !== \"undefined\")\n registeredResource.name = updates.name;\n if (typeof updates.title !== \"undefined\")\n registeredResource.title = updates.title;\n if (typeof updates.metadata !== \"undefined\")\n registeredResource.metadata = updates.metadata;\n if (typeof updates.callback !== \"undefined\")\n registeredResource.readCallback = updates.callback;\n if (typeof updates.enabled !== \"undefined\")\n registeredResource.enabled = updates.enabled;\n this.sendResourceListChanged();\n },\n };\n this._registeredResources[uri] = registeredResource;\n return registeredResource;\n }\n _createRegisteredResourceTemplate(name, title, template, metadata, readCallback) {\n const registeredResourceTemplate = {\n resourceTemplate: template,\n title,\n metadata,\n readCallback,\n enabled: true,\n disable: () => registeredResourceTemplate.update({ enabled: false }),\n enable: () => registeredResourceTemplate.update({ enabled: true }),\n remove: () => registeredResourceTemplate.update({ name: null }),\n update: (updates) => {\n if (typeof updates.name !== \"undefined\" && updates.name !== name) {\n delete this._registeredResourceTemplates[name];\n if (updates.name)\n this._registeredResourceTemplates[updates.name] = registeredResourceTemplate;\n }\n if (typeof updates.title !== \"undefined\")\n registeredResourceTemplate.title = updates.title;\n if (typeof updates.template !== \"undefined\")\n registeredResourceTemplate.resourceTemplate = updates.template;\n if (typeof updates.metadata !== \"undefined\")\n registeredResourceTemplate.metadata = updates.metadata;\n if (typeof updates.callback !== \"undefined\")\n registeredResourceTemplate.readCallback = updates.callback;\n if (typeof updates.enabled !== \"undefined\")\n registeredResourceTemplate.enabled = updates.enabled;\n this.sendResourceListChanged();\n },\n };\n this._registeredResourceTemplates[name] = registeredResourceTemplate;\n return registeredResourceTemplate;\n }\n _createRegisteredPrompt(name, title, description, argsSchema, callback) {\n const registeredPrompt = {\n title,\n description,\n argsSchema: argsSchema === undefined ? undefined : z.object(argsSchema),\n callback,\n enabled: true,\n disable: () => registeredPrompt.update({ enabled: false }),\n enable: () => registeredPrompt.update({ enabled: true }),\n remove: () => registeredPrompt.update({ name: null }),\n update: (updates) => {\n if (typeof updates.name !== \"undefined\" && updates.name !== name) {\n delete this._registeredPrompts[name];\n if (updates.name)\n this._registeredPrompts[updates.name] = registeredPrompt;\n }\n if (typeof updates.title !== \"undefined\")\n registeredPrompt.title = updates.title;\n if (typeof updates.description !== \"undefined\")\n registeredPrompt.description = updates.description;\n if (typeof updates.argsSchema !== \"undefined\")\n registeredPrompt.argsSchema = z.object(updates.argsSchema);\n if (typeof updates.callback !== \"undefined\")\n registeredPrompt.callback = updates.callback;\n if (typeof updates.enabled !== \"undefined\")\n registeredPrompt.enabled = updates.enabled;\n this.sendPromptListChanged();\n },\n };\n this._registeredPrompts[name] = registeredPrompt;\n return registeredPrompt;\n }\n _createRegisteredTool(name, title, description, inputSchema, outputSchema, annotations, callback) {\n const registeredTool = {\n title,\n description,\n inputSchema: inputSchema === undefined ? undefined : z.object(inputSchema),\n outputSchema: outputSchema === undefined ? undefined : z.object(outputSchema),\n annotations,\n callback,\n enabled: true,\n disable: () => registeredTool.update({ enabled: false }),\n enable: () => registeredTool.update({ enabled: true }),\n remove: () => registeredTool.update({ name: null }),\n update: (updates) => {\n if (typeof updates.name !== \"undefined\" && updates.name !== name) {\n delete this._registeredTools[name];\n if (updates.name)\n this._registeredTools[updates.name] = registeredTool;\n }\n if (typeof updates.title !== \"undefined\")\n registeredTool.title = updates.title;\n if (typeof updates.description !== \"undefined\")\n registeredTool.description = updates.description;\n if (typeof updates.paramsSchema !== \"undefined\")\n registeredTool.inputSchema = z.object(updates.paramsSchema);\n if (typeof updates.callback !== \"undefined\")\n registeredTool.callback = updates.callback;\n if (typeof updates.annotations !== \"undefined\")\n registeredTool.annotations = updates.annotations;\n if (typeof updates.enabled !== \"undefined\")\n registeredTool.enabled = updates.enabled;\n this.sendToolListChanged();\n },\n };\n this._registeredTools[name] = registeredTool;\n this.setToolRequestHandlers();\n this.sendToolListChanged();\n return registeredTool;\n }\n /**\n * tool() implementation. Parses arguments passed to overrides defined above.\n */\n tool(name, ...rest) {\n if (this._registeredTools[name]) {\n throw new Error(`Tool ${name} is already registered`);\n }\n let description;\n let inputSchema;\n let outputSchema;\n let annotations;\n // Tool properties are passed as separate arguments, with omissions allowed.\n // Support for this style is frozen as of protocol version 2025-03-26. Future additions\n // to tool definition should *NOT* be added.\n if (typeof rest[0] === \"string\") {\n description = rest.shift();\n }\n // Handle the different overload combinations\n if (rest.length > 1) {\n // We have at least one more arg before the callback\n const firstArg = rest[0];\n if (isZodRawShape(firstArg)) {\n // We have a params schema as the first arg\n inputSchema = rest.shift();\n // Check if the next arg is potentially annotations\n if (rest.length > 1 && typeof rest[0] === \"object\" && rest[0] !== null && !(isZodRawShape(rest[0]))) {\n // Case: tool(name, paramsSchema, annotations, cb)\n // Or: tool(name, description, paramsSchema, annotations, cb)\n annotations = rest.shift();\n }\n }\n else if (typeof firstArg === \"object\" && firstArg !== null) {\n // Not a ZodRawShape, so must be annotations in this position\n // Case: tool(name, annotations, cb)\n // Or: tool(name, description, annotations, cb)\n annotations = rest.shift();\n }\n }\n const callback = rest[0];\n return this._createRegisteredTool(name, undefined, description, inputSchema, outputSchema, annotations, callback);\n }\n /**\n * Registers a tool with a config object and callback.\n */\n registerTool(name, config, cb) {\n if (this._registeredTools[name]) {\n throw new Error(`Tool ${name} is already registered`);\n }\n const { title, description, inputSchema, outputSchema, annotations } = config;\n return this._createRegisteredTool(name, title, description, inputSchema, outputSchema, annotations, cb);\n }\n prompt(name, ...rest) {\n if (this._registeredPrompts[name]) {\n throw new Error(`Prompt ${name} is already registered`);\n }\n let description;\n if (typeof rest[0] === \"string\") {\n description = rest.shift();\n }\n let argsSchema;\n if (rest.length > 1) {\n argsSchema = rest.shift();\n }\n const cb = rest[0];\n const registeredPrompt = this._createRegisteredPrompt(name, undefined, description, argsSchema, cb);\n this.setPromptRequestHandlers();\n this.sendPromptListChanged();\n return registeredPrompt;\n }\n /**\n * Registers a prompt with a config object and callback.\n */\n registerPrompt(name, config, cb) {\n if (this._registeredPrompts[name]) {\n throw new Error(`Prompt ${name} is already registered`);\n }\n const { title, description, argsSchema } = config;\n const registeredPrompt = this._createRegisteredPrompt(name, title, description, argsSchema, cb);\n this.setPromptRequestHandlers();\n this.sendPromptListChanged();\n return registeredPrompt;\n }\n /**\n * Checks if the server is connected to a transport.\n * @returns True if the server is connected\n */\n isConnected() {\n return this.server.transport !== undefined;\n }\n /**\n * Sends a resource list changed event to the client, if connected.\n */\n sendResourceListChanged() {\n if (this.isConnected()) {\n this.server.sendResourceListChanged();\n }\n }\n /**\n * Sends a tool list changed event to the client, if connected.\n */\n sendToolListChanged() {\n if (this.isConnected()) {\n this.server.sendToolListChanged();\n }\n }\n /**\n * Sends a prompt list changed event to the client, if connected.\n */\n sendPromptListChanged() {\n if (this.isConnected()) {\n this.server.sendPromptListChanged();\n }\n }\n}\n/**\n * A resource template combines a URI pattern with optional functionality to enumerate\n * all resources matching that pattern.\n */\nexport class ResourceTemplate {\n constructor(uriTemplate, _callbacks) {\n this._callbacks = _callbacks;\n this._uriTemplate =\n typeof uriTemplate === \"string\"\n ? new UriTemplate(uriTemplate)\n : uriTemplate;\n }\n /**\n * Gets the URI template pattern.\n */\n get uriTemplate() {\n return this._uriTemplate;\n }\n /**\n * Gets the list callback, if one was provided.\n */\n get listCallback() {\n return this._callbacks.list;\n }\n /**\n * Gets the callback for completing a specific URI template variable, if one was provided.\n */\n completeCallback(variable) {\n var _a;\n return (_a = this._callbacks.complete) === null || _a === void 0 ? void 0 : _a[variable];\n }\n}\nconst EMPTY_OBJECT_JSON_SCHEMA = {\n type: \"object\",\n properties: {},\n};\n// Helper to check if an object is a Zod schema (ZodRawShape)\nfunction isZodRawShape(obj) {\n if (typeof obj !== \"object\" || obj === null)\n return false;\n const isEmptyObject = Object.keys(obj).length === 0;\n // Check if object is empty or at least one property is a ZodType instance\n // Note: use heuristic check to avoid instanceof failure across different Zod versions\n return isEmptyObject || Object.values(obj).some(isZodTypeLike);\n}\nfunction isZodTypeLike(value) {\n return value !== null &&\n typeof value === 'object' &&\n 'parse' in value && typeof value.parse === 'function' &&\n 'safeParse' in value && typeof value.safeParse === 'function';\n}\nfunction promptArgumentsFromSchema(schema) {\n return Object.entries(schema.shape).map(([name, field]) => ({\n name,\n description: field.description,\n required: !field.isOptional(),\n }));\n}\nfunction createCompletionResult(suggestions) {\n return {\n completion: {\n values: suggestions.slice(0, 100),\n total: suggestions.length,\n hasMore: suggestions.length > 100,\n },\n };\n}\nconst EMPTY_COMPLETION_RESULT = {\n completion: {\n values: [],\n hasMore: false,\n },\n};\n//# sourceMappingURL=mcp.js.map"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"mcp.js","sources":["../../../../../../../../../../../../node_modules/.pnpm/@modelcontextprotocol+sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/mcp.js"],"sourcesContent":["import { Server } from \"./index.js\";\nimport { zodToJsonSchema } from \"zod-to-json-schema\";\nimport { z, } from \"zod\";\nimport { McpError, ErrorCode, ListResourceTemplatesRequestSchema, ReadResourceRequestSchema, ListToolsRequestSchema, CallToolRequestSchema, ListResourcesRequestSchema, ListPromptsRequestSchema, GetPromptRequestSchema, CompleteRequestSchema, } from \"../types.js\";\nimport { Completable } from \"./completable.js\";\nimport { UriTemplate } from \"../shared/uriTemplate.js\";\n/**\n * High-level MCP server that provides a simpler API for working with resources, tools, and prompts.\n * For advanced usage (like sending notifications or setting custom request handlers), use the underlying\n * Server instance available via the `server` property.\n */\nexport class McpServer {\n constructor(serverInfo, options) {\n this._registeredResources = {};\n this._registeredResourceTemplates = {};\n this._registeredTools = {};\n this._registeredPrompts = {};\n this._toolHandlersInitialized = false;\n this._completionHandlerInitialized = false;\n this._resourceHandlersInitialized = false;\n this._promptHandlersInitialized = false;\n this.server = new Server(serverInfo, options);\n }\n /**\n * Attaches to the given transport, starts it, and starts listening for messages.\n *\n * The `server` object assumes ownership of the Transport, replacing any callbacks that have already been set, and expects that it is the only user of the Transport instance going forward.\n */\n async connect(transport) {\n return await this.server.connect(transport);\n }\n /**\n * Closes the connection.\n */\n async close() {\n await this.server.close();\n }\n setToolRequestHandlers() {\n if (this._toolHandlersInitialized) {\n return;\n }\n this.server.assertCanSetRequestHandler(ListToolsRequestSchema.shape.method.value);\n this.server.assertCanSetRequestHandler(CallToolRequestSchema.shape.method.value);\n this.server.registerCapabilities({\n tools: {\n listChanged: true\n }\n });\n this.server.setRequestHandler(ListToolsRequestSchema, () => ({\n tools: Object.entries(this._registeredTools).filter(([, tool]) => tool.enabled).map(([name, tool]) => {\n const toolDefinition = {\n name,\n title: tool.title,\n description: tool.description,\n inputSchema: tool.inputSchema\n ? zodToJsonSchema(tool.inputSchema, {\n strictUnions: true,\n })\n : EMPTY_OBJECT_JSON_SCHEMA,\n annotations: tool.annotations,\n };\n if (tool.outputSchema) {\n toolDefinition.outputSchema = zodToJsonSchema(tool.outputSchema, { strictUnions: true });\n }\n return toolDefinition;\n }),\n }));\n this.server.setRequestHandler(CallToolRequestSchema, async (request, extra) => {\n const tool = this._registeredTools[request.params.name];\n if (!tool) {\n throw new McpError(ErrorCode.InvalidParams, `Tool ${request.params.name} not found`);\n }\n if (!tool.enabled) {\n throw new McpError(ErrorCode.InvalidParams, `Tool ${request.params.name} disabled`);\n }\n let result;\n if (tool.inputSchema) {\n const parseResult = await tool.inputSchema.safeParseAsync(request.params.arguments);\n if (!parseResult.success) {\n throw new McpError(ErrorCode.InvalidParams, `Invalid arguments for tool ${request.params.name}: ${parseResult.error.message}`);\n }\n const args = parseResult.data;\n const cb = tool.callback;\n try {\n result = await Promise.resolve(cb(args, extra));\n }\n catch (error) {\n result = {\n content: [\n {\n type: \"text\",\n text: error instanceof Error ? error.message : String(error),\n },\n ],\n isError: true,\n };\n }\n }\n else {\n const cb = tool.callback;\n try {\n result = await Promise.resolve(cb(extra));\n }\n catch (error) {\n result = {\n content: [\n {\n type: \"text\",\n text: error instanceof Error ? error.message : String(error),\n },\n ],\n isError: true,\n };\n }\n }\n if (tool.outputSchema && !result.isError) {\n if (!result.structuredContent) {\n throw new McpError(ErrorCode.InvalidParams, `Tool ${request.params.name} has an output schema but no structured content was provided`);\n }\n // if the tool has an output schema, validate structured content\n const parseResult = await tool.outputSchema.safeParseAsync(result.structuredContent);\n if (!parseResult.success) {\n throw new McpError(ErrorCode.InvalidParams, `Invalid structured content for tool ${request.params.name}: ${parseResult.error.message}`);\n }\n }\n return result;\n });\n this._toolHandlersInitialized = true;\n }\n setCompletionRequestHandler() {\n if (this._completionHandlerInitialized) {\n return;\n }\n this.server.assertCanSetRequestHandler(CompleteRequestSchema.shape.method.value);\n this.server.registerCapabilities({\n completions: {},\n });\n this.server.setRequestHandler(CompleteRequestSchema, async (request) => {\n switch (request.params.ref.type) {\n case \"ref/prompt\":\n return this.handlePromptCompletion(request, request.params.ref);\n case \"ref/resource\":\n return this.handleResourceCompletion(request, request.params.ref);\n default:\n throw new McpError(ErrorCode.InvalidParams, `Invalid completion reference: ${request.params.ref}`);\n }\n });\n this._completionHandlerInitialized = true;\n }\n async handlePromptCompletion(request, ref) {\n const prompt = this._registeredPrompts[ref.name];\n if (!prompt) {\n throw new McpError(ErrorCode.InvalidParams, `Prompt ${ref.name} not found`);\n }\n if (!prompt.enabled) {\n throw new McpError(ErrorCode.InvalidParams, `Prompt ${ref.name} disabled`);\n }\n if (!prompt.argsSchema) {\n return EMPTY_COMPLETION_RESULT;\n }\n const field = prompt.argsSchema.shape[request.params.argument.name];\n if (!(field instanceof Completable)) {\n return EMPTY_COMPLETION_RESULT;\n }\n const def = field._def;\n const suggestions = await def.complete(request.params.argument.value, request.params.context);\n return createCompletionResult(suggestions);\n }\n async handleResourceCompletion(request, ref) {\n const template = Object.values(this._registeredResourceTemplates).find((t) => t.resourceTemplate.uriTemplate.toString() === ref.uri);\n if (!template) {\n if (this._registeredResources[ref.uri]) {\n // Attempting to autocomplete a fixed resource URI is not an error in the spec (but probably should be).\n return EMPTY_COMPLETION_RESULT;\n }\n throw new McpError(ErrorCode.InvalidParams, `Resource template ${request.params.ref.uri} not found`);\n }\n const completer = template.resourceTemplate.completeCallback(request.params.argument.name);\n if (!completer) {\n return EMPTY_COMPLETION_RESULT;\n }\n const suggestions = await completer(request.params.argument.value, request.params.context);\n return createCompletionResult(suggestions);\n }\n setResourceRequestHandlers() {\n if (this._resourceHandlersInitialized) {\n return;\n }\n this.server.assertCanSetRequestHandler(ListResourcesRequestSchema.shape.method.value);\n this.server.assertCanSetRequestHandler(ListResourceTemplatesRequestSchema.shape.method.value);\n this.server.assertCanSetRequestHandler(ReadResourceRequestSchema.shape.method.value);\n this.server.registerCapabilities({\n resources: {\n listChanged: true\n }\n });\n this.server.setRequestHandler(ListResourcesRequestSchema, async (request, extra) => {\n const resources = Object.entries(this._registeredResources).filter(([_, resource]) => resource.enabled).map(([uri, resource]) => ({\n uri,\n name: resource.name,\n ...resource.metadata,\n }));\n const templateResources = [];\n for (const template of Object.values(this._registeredResourceTemplates)) {\n if (!template.resourceTemplate.listCallback) {\n continue;\n }\n const result = await template.resourceTemplate.listCallback(extra);\n for (const resource of result.resources) {\n templateResources.push({\n ...template.metadata,\n // the defined resource metadata should override the template metadata if present\n ...resource,\n });\n }\n }\n return { resources: [...resources, ...templateResources] };\n });\n this.server.setRequestHandler(ListResourceTemplatesRequestSchema, async () => {\n const resourceTemplates = Object.entries(this._registeredResourceTemplates).map(([name, template]) => ({\n name,\n uriTemplate: template.resourceTemplate.uriTemplate.toString(),\n ...template.metadata,\n }));\n return { resourceTemplates };\n });\n this.server.setRequestHandler(ReadResourceRequestSchema, async (request, extra) => {\n const uri = new URL(request.params.uri);\n // First check for exact resource match\n const resource = this._registeredResources[uri.toString()];\n if (resource) {\n if (!resource.enabled) {\n throw new McpError(ErrorCode.InvalidParams, `Resource ${uri} disabled`);\n }\n return resource.readCallback(uri, extra);\n }\n // Then check templates\n for (const template of Object.values(this._registeredResourceTemplates)) {\n const variables = template.resourceTemplate.uriTemplate.match(uri.toString());\n if (variables) {\n return template.readCallback(uri, variables, extra);\n }\n }\n throw new McpError(ErrorCode.InvalidParams, `Resource ${uri} not found`);\n });\n this.setCompletionRequestHandler();\n this._resourceHandlersInitialized = true;\n }\n setPromptRequestHandlers() {\n if (this._promptHandlersInitialized) {\n return;\n }\n this.server.assertCanSetRequestHandler(ListPromptsRequestSchema.shape.method.value);\n this.server.assertCanSetRequestHandler(GetPromptRequestSchema.shape.method.value);\n this.server.registerCapabilities({\n prompts: {\n listChanged: true\n }\n });\n this.server.setRequestHandler(ListPromptsRequestSchema, () => ({\n prompts: Object.entries(this._registeredPrompts).filter(([, prompt]) => prompt.enabled).map(([name, prompt]) => {\n return {\n name,\n title: prompt.title,\n description: prompt.description,\n arguments: prompt.argsSchema\n ? promptArgumentsFromSchema(prompt.argsSchema)\n : undefined,\n };\n }),\n }));\n this.server.setRequestHandler(GetPromptRequestSchema, async (request, extra) => {\n const prompt = this._registeredPrompts[request.params.name];\n if (!prompt) {\n throw new McpError(ErrorCode.InvalidParams, `Prompt ${request.params.name} not found`);\n }\n if (!prompt.enabled) {\n throw new McpError(ErrorCode.InvalidParams, `Prompt ${request.params.name} disabled`);\n }\n if (prompt.argsSchema) {\n const parseResult = await prompt.argsSchema.safeParseAsync(request.params.arguments);\n if (!parseResult.success) {\n throw new McpError(ErrorCode.InvalidParams, `Invalid arguments for prompt ${request.params.name}: ${parseResult.error.message}`);\n }\n const args = parseResult.data;\n const cb = prompt.callback;\n return await Promise.resolve(cb(args, extra));\n }\n else {\n const cb = prompt.callback;\n return await Promise.resolve(cb(extra));\n }\n });\n this.setCompletionRequestHandler();\n this._promptHandlersInitialized = true;\n }\n resource(name, uriOrTemplate, ...rest) {\n let metadata;\n if (typeof rest[0] === \"object\") {\n metadata = rest.shift();\n }\n const readCallback = rest[0];\n if (typeof uriOrTemplate === \"string\") {\n if (this._registeredResources[uriOrTemplate]) {\n throw new Error(`Resource ${uriOrTemplate} is already registered`);\n }\n const registeredResource = this._createRegisteredResource(name, undefined, uriOrTemplate, metadata, readCallback);\n this.setResourceRequestHandlers();\n this.sendResourceListChanged();\n return registeredResource;\n }\n else {\n if (this._registeredResourceTemplates[name]) {\n throw new Error(`Resource template ${name} is already registered`);\n }\n const registeredResourceTemplate = this._createRegisteredResourceTemplate(name, undefined, uriOrTemplate, metadata, readCallback);\n this.setResourceRequestHandlers();\n this.sendResourceListChanged();\n return registeredResourceTemplate;\n }\n }\n registerResource(name, uriOrTemplate, config, readCallback) {\n if (typeof uriOrTemplate === \"string\") {\n if (this._registeredResources[uriOrTemplate]) {\n throw new Error(`Resource ${uriOrTemplate} is already registered`);\n }\n const registeredResource = this._createRegisteredResource(name, config.title, uriOrTemplate, config, readCallback);\n this.setResourceRequestHandlers();\n this.sendResourceListChanged();\n return registeredResource;\n }\n else {\n if (this._registeredResourceTemplates[name]) {\n throw new Error(`Resource template ${name} is already registered`);\n }\n const registeredResourceTemplate = this._createRegisteredResourceTemplate(name, config.title, uriOrTemplate, config, readCallback);\n this.setResourceRequestHandlers();\n this.sendResourceListChanged();\n return registeredResourceTemplate;\n }\n }\n _createRegisteredResource(name, title, uri, metadata, readCallback) {\n const registeredResource = {\n name,\n title,\n metadata,\n readCallback,\n enabled: true,\n disable: () => registeredResource.update({ enabled: false }),\n enable: () => registeredResource.update({ enabled: true }),\n remove: () => registeredResource.update({ uri: null }),\n update: (updates) => {\n if (typeof updates.uri !== \"undefined\" && updates.uri !== uri) {\n delete this._registeredResources[uri];\n if (updates.uri)\n this._registeredResources[updates.uri] = registeredResource;\n }\n if (typeof updates.name !== \"undefined\")\n registeredResource.name = updates.name;\n if (typeof updates.title !== \"undefined\")\n registeredResource.title = updates.title;\n if (typeof updates.metadata !== \"undefined\")\n registeredResource.metadata = updates.metadata;\n if (typeof updates.callback !== \"undefined\")\n registeredResource.readCallback = updates.callback;\n if (typeof updates.enabled !== \"undefined\")\n registeredResource.enabled = updates.enabled;\n this.sendResourceListChanged();\n },\n };\n this._registeredResources[uri] = registeredResource;\n return registeredResource;\n }\n _createRegisteredResourceTemplate(name, title, template, metadata, readCallback) {\n const registeredResourceTemplate = {\n resourceTemplate: template,\n title,\n metadata,\n readCallback,\n enabled: true,\n disable: () => registeredResourceTemplate.update({ enabled: false }),\n enable: () => registeredResourceTemplate.update({ enabled: true }),\n remove: () => registeredResourceTemplate.update({ name: null }),\n update: (updates) => {\n if (typeof updates.name !== \"undefined\" && updates.name !== name) {\n delete this._registeredResourceTemplates[name];\n if (updates.name)\n this._registeredResourceTemplates[updates.name] = registeredResourceTemplate;\n }\n if (typeof updates.title !== \"undefined\")\n registeredResourceTemplate.title = updates.title;\n if (typeof updates.template !== \"undefined\")\n registeredResourceTemplate.resourceTemplate = updates.template;\n if (typeof updates.metadata !== \"undefined\")\n registeredResourceTemplate.metadata = updates.metadata;\n if (typeof updates.callback !== \"undefined\")\n registeredResourceTemplate.readCallback = updates.callback;\n if (typeof updates.enabled !== \"undefined\")\n registeredResourceTemplate.enabled = updates.enabled;\n this.sendResourceListChanged();\n },\n };\n this._registeredResourceTemplates[name] = registeredResourceTemplate;\n return registeredResourceTemplate;\n }\n _createRegisteredPrompt(name, title, description, argsSchema, callback) {\n const registeredPrompt = {\n title,\n description,\n argsSchema: argsSchema === undefined ? undefined : z.object(argsSchema),\n callback,\n enabled: true,\n disable: () => registeredPrompt.update({ enabled: false }),\n enable: () => registeredPrompt.update({ enabled: true }),\n remove: () => registeredPrompt.update({ name: null }),\n update: (updates) => {\n if (typeof updates.name !== \"undefined\" && updates.name !== name) {\n delete this._registeredPrompts[name];\n if (updates.name)\n this._registeredPrompts[updates.name] = registeredPrompt;\n }\n if (typeof updates.title !== \"undefined\")\n registeredPrompt.title = updates.title;\n if (typeof updates.description !== \"undefined\")\n registeredPrompt.description = updates.description;\n if (typeof updates.argsSchema !== \"undefined\")\n registeredPrompt.argsSchema = z.object(updates.argsSchema);\n if (typeof updates.callback !== \"undefined\")\n registeredPrompt.callback = updates.callback;\n if (typeof updates.enabled !== \"undefined\")\n registeredPrompt.enabled = updates.enabled;\n this.sendPromptListChanged();\n },\n };\n this._registeredPrompts[name] = registeredPrompt;\n return registeredPrompt;\n }\n _createRegisteredTool(name, title, description, inputSchema, outputSchema, annotations, callback) {\n const registeredTool = {\n title,\n description,\n inputSchema: inputSchema === undefined ? undefined : z.object(inputSchema),\n outputSchema: outputSchema === undefined ? undefined : z.object(outputSchema),\n annotations,\n callback,\n enabled: true,\n disable: () => registeredTool.update({ enabled: false }),\n enable: () => registeredTool.update({ enabled: true }),\n remove: () => registeredTool.update({ name: null }),\n update: (updates) => {\n if (typeof updates.name !== \"undefined\" && updates.name !== name) {\n delete this._registeredTools[name];\n if (updates.name)\n this._registeredTools[updates.name] = registeredTool;\n }\n if (typeof updates.title !== \"undefined\")\n registeredTool.title = updates.title;\n if (typeof updates.description !== \"undefined\")\n registeredTool.description = updates.description;\n if (typeof updates.paramsSchema !== \"undefined\")\n registeredTool.inputSchema = z.object(updates.paramsSchema);\n if (typeof updates.callback !== \"undefined\")\n registeredTool.callback = updates.callback;\n if (typeof updates.annotations !== \"undefined\")\n registeredTool.annotations = updates.annotations;\n if (typeof updates.enabled !== \"undefined\")\n registeredTool.enabled = updates.enabled;\n this.sendToolListChanged();\n },\n };\n this._registeredTools[name] = registeredTool;\n this.setToolRequestHandlers();\n this.sendToolListChanged();\n return registeredTool;\n }\n /**\n * tool() implementation. Parses arguments passed to overrides defined above.\n */\n tool(name, ...rest) {\n if (this._registeredTools[name]) {\n throw new Error(`Tool ${name} is already registered`);\n }\n let description;\n let inputSchema;\n let outputSchema;\n let annotations;\n // Tool properties are passed as separate arguments, with omissions allowed.\n // Support for this style is frozen as of protocol version 2025-03-26. Future additions\n // to tool definition should *NOT* be added.\n if (typeof rest[0] === \"string\") {\n description = rest.shift();\n }\n // Handle the different overload combinations\n if (rest.length > 1) {\n // We have at least one more arg before the callback\n const firstArg = rest[0];\n if (isZodRawShape(firstArg)) {\n // We have a params schema as the first arg\n inputSchema = rest.shift();\n // Check if the next arg is potentially annotations\n if (rest.length > 1 && typeof rest[0] === \"object\" && rest[0] !== null && !(isZodRawShape(rest[0]))) {\n // Case: tool(name, paramsSchema, annotations, cb)\n // Or: tool(name, description, paramsSchema, annotations, cb)\n annotations = rest.shift();\n }\n }\n else if (typeof firstArg === \"object\" && firstArg !== null) {\n // Not a ZodRawShape, so must be annotations in this position\n // Case: tool(name, annotations, cb)\n // Or: tool(name, description, annotations, cb)\n annotations = rest.shift();\n }\n }\n const callback = rest[0];\n return this._createRegisteredTool(name, undefined, description, inputSchema, outputSchema, annotations, callback);\n }\n /**\n * Registers a tool with a config object and callback.\n */\n registerTool(name, config, cb) {\n if (this._registeredTools[name]) {\n throw new Error(`Tool ${name} is already registered`);\n }\n const { title, description, inputSchema, outputSchema, annotations } = config;\n return this._createRegisteredTool(name, title, description, inputSchema, outputSchema, annotations, cb);\n }\n prompt(name, ...rest) {\n if (this._registeredPrompts[name]) {\n throw new Error(`Prompt ${name} is already registered`);\n }\n let description;\n if (typeof rest[0] === \"string\") {\n description = rest.shift();\n }\n let argsSchema;\n if (rest.length > 1) {\n argsSchema = rest.shift();\n }\n const cb = rest[0];\n const registeredPrompt = this._createRegisteredPrompt(name, undefined, description, argsSchema, cb);\n this.setPromptRequestHandlers();\n this.sendPromptListChanged();\n return registeredPrompt;\n }\n /**\n * Registers a prompt with a config object and callback.\n */\n registerPrompt(name, config, cb) {\n if (this._registeredPrompts[name]) {\n throw new Error(`Prompt ${name} is already registered`);\n }\n const { title, description, argsSchema } = config;\n const registeredPrompt = this._createRegisteredPrompt(name, title, description, argsSchema, cb);\n this.setPromptRequestHandlers();\n this.sendPromptListChanged();\n return registeredPrompt;\n }\n /**\n * Checks if the server is connected to a transport.\n * @returns True if the server is connected\n */\n isConnected() {\n return this.server.transport !== undefined;\n }\n /**\n * Sends a resource list changed event to the client, if connected.\n */\n sendResourceListChanged() {\n if (this.isConnected()) {\n this.server.sendResourceListChanged();\n }\n }\n /**\n * Sends a tool list changed event to the client, if connected.\n */\n sendToolListChanged() {\n if (this.isConnected()) {\n this.server.sendToolListChanged();\n }\n }\n /**\n * Sends a prompt list changed event to the client, if connected.\n */\n sendPromptListChanged() {\n if (this.isConnected()) {\n this.server.sendPromptListChanged();\n }\n }\n}\n/**\n * A resource template combines a URI pattern with optional functionality to enumerate\n * all resources matching that pattern.\n */\nexport class ResourceTemplate {\n constructor(uriTemplate, _callbacks) {\n this._callbacks = _callbacks;\n this._uriTemplate =\n typeof uriTemplate === \"string\"\n ? new UriTemplate(uriTemplate)\n : uriTemplate;\n }\n /**\n * Gets the URI template pattern.\n */\n get uriTemplate() {\n return this._uriTemplate;\n }\n /**\n * Gets the list callback, if one was provided.\n */\n get listCallback() {\n return this._callbacks.list;\n }\n /**\n * Gets the callback for completing a specific URI template variable, if one was provided.\n */\n completeCallback(variable) {\n var _a;\n return (_a = this._callbacks.complete) === null || _a === void 0 ? void 0 : _a[variable];\n }\n}\nconst EMPTY_OBJECT_JSON_SCHEMA = {\n type: \"object\",\n properties: {},\n};\n// Helper to check if an object is a Zod schema (ZodRawShape)\nfunction isZodRawShape(obj) {\n if (typeof obj !== \"object\" || obj === null)\n return false;\n const isEmptyObject = Object.keys(obj).length === 0;\n // Check if object is empty or at least one property is a ZodType instance\n // Note: use heuristic check to avoid instanceof failure across different Zod versions\n return isEmptyObject || Object.values(obj).some(isZodTypeLike);\n}\nfunction isZodTypeLike(value) {\n return value !== null &&\n typeof value === 'object' &&\n 'parse' in value && typeof value.parse === 'function' &&\n 'safeParse' in value && typeof value.safeParse === 'function';\n}\nfunction promptArgumentsFromSchema(schema) {\n return Object.entries(schema.shape).map(([name, field]) => ({\n name,\n description: field.description,\n required: !field.isOptional(),\n }));\n}\nfunction createCompletionResult(suggestions) {\n return {\n completion: {\n values: suggestions.slice(0, 100),\n total: suggestions.length,\n hasMore: suggestions.length > 100,\n },\n };\n}\nconst EMPTY_COMPLETION_RESULT = {\n completion: {\n values: [],\n hasMore: false,\n },\n};\n//# sourceMappingURL=mcp.js.map"],"names":[],"mappings":";;;;;;;;;;;;;;AAWO,MAAM,UAAU;AAAA,EACnB,YAAY,YAAY,SAAS;AAC7B,SAAK,uBAAuB,CAAA;AAC5B,SAAK,+BAA+B,CAAA;AACpC,SAAK,mBAAmB,CAAA;AACxB,SAAK,qBAAqB,CAAA;AAC1B,SAAK,2BAA2B;AAChC,SAAK,gCAAgC;AACrC,SAAK,+BAA+B;AACpC,SAAK,6BAA6B;AAClC,SAAK,SAAS,IAAI,OAAO,YAAY,OAAO;AAAA,EAChD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,QAAQ,WAAW;AACrB,WAAO,MAAM,KAAK,OAAO,QAAQ,SAAS;AAAA,EAC9C;AAAA;AAAA;AAAA;AAAA,EAIA,MAAM,QAAQ;AACV,UAAM,KAAK,OAAO,MAAK;AAAA,EAC3B;AAAA,EACA,yBAAyB;AACrB,QAAI,KAAK,0BAA0B;AAC/B;AAAA,IACJ;AACA,SAAK,OAAO,2BAA2B,uBAAuB,MAAM,OAAO,KAAK;AAChF,SAAK,OAAO,2BAA2B,sBAAsB,MAAM,OAAO,KAAK;AAC/E,SAAK,OAAO,qBAAqB;AAAA,MAC7B,OAAO;AAAA,QACH,aAAa;AAAA,MAC7B;AAAA,IACA,CAAS;AACD,SAAK,OAAO,kBAAkB,wBAAwB,OAAO;AAAA,MACzD,OAAO,OAAO,QAAQ,KAAK,gBAAgB,EAAE,OAAO,CAAC,CAAA,EAAG,IAAI,MAAM,KAAK,OAAO,EAAE,IAAI,CAAC,CAAC,MAAM,IAAI,MAAM;AAClG,cAAM,iBAAiB;AAAA,UACnB;AAAA,UACA,OAAO,KAAK;AAAA,UACZ,aAAa,KAAK;AAAA,UAClB,aAAa,KAAK,cACZ,gBAAgB,KAAK,aAAa;AAAA,YAChC,cAAc;AAAA,UAC1C,CAAyB,IACC;AAAA,UACN,aAAa,KAAK;AAAA,QACtC;AACgB,YAAI,KAAK,cAAc;AACnB,yBAAe,eAAe,gBAAgB,KAAK,cAAc,EAAE,cAAc,MAAM;AAAA,QAC3F;AACA,eAAO;AAAA,MACX,CAAC;AAAA,IACb,EAAU;AACF,SAAK,OAAO,kBAAkB,uBAAuB,OAAO,SAAS,UAAU;AAC3E,YAAM,OAAO,KAAK,iBAAiB,QAAQ,OAAO,IAAI;AACtD,UAAI,CAAC,MAAM;AACP,cAAM,IAAI,SAAS,UAAU,eAAe,QAAQ,QAAQ,OAAO,IAAI,YAAY;AAAA,MACvF;AACA,UAAI,CAAC,KAAK,SAAS;AACf,cAAM,IAAI,SAAS,UAAU,eAAe,QAAQ,QAAQ,OAAO,IAAI,WAAW;AAAA,MACtF;AACA,UAAI;AACJ,UAAI,KAAK,aAAa;AAClB,cAAM,cAAc,MAAM,KAAK,YAAY,eAAe,QAAQ,OAAO,SAAS;AAClF,YAAI,CAAC,YAAY,SAAS;AACtB,gBAAM,IAAI,SAAS,UAAU,eAAe,8BAA8B,QAAQ,OAAO,IAAI,KAAK,YAAY,MAAM,OAAO,EAAE;AAAA,QACjI;AACA,cAAM,OAAO,YAAY;AACzB,cAAM,KAAK,KAAK;AAChB,YAAI;AACA,mBAAS,MAAM,QAAQ,QAAQ,GAAG,MAAM,KAAK,CAAC;AAAA,QAClD,SACO,OAAO;AACV,mBAAS;AAAA,YACL,SAAS;AAAA,cACL;AAAA,gBACI,MAAM;AAAA,gBACN,MAAM,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;AAAA,cAC3F;AAAA,YACA;AAAA,YACwB,SAAS;AAAA,UACjC;AAAA,QACgB;AAAA,MACJ,OACK;AACD,cAAM,KAAK,KAAK;AAChB,YAAI;AACA,mBAAS,MAAM,QAAQ,QAAQ,GAAG,KAAK,CAAC;AAAA,QAC5C,SACO,OAAO;AACV,mBAAS;AAAA,YACL,SAAS;AAAA,cACL;AAAA,gBACI,MAAM;AAAA,gBACN,MAAM,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;AAAA,cAC3F;AAAA,YACA;AAAA,YACwB,SAAS;AAAA,UACjC;AAAA,QACgB;AAAA,MACJ;AACA,UAAI,KAAK,gBAAgB,CAAC,OAAO,SAAS;AACtC,YAAI,CAAC,OAAO,mBAAmB;AAC3B,gBAAM,IAAI,SAAS,UAAU,eAAe,QAAQ,QAAQ,OAAO,IAAI,8DAA8D;AAAA,QACzI;AAEA,cAAM,cAAc,MAAM,KAAK,aAAa,eAAe,OAAO,iBAAiB;AACnF,YAAI,CAAC,YAAY,SAAS;AACtB,gBAAM,IAAI,SAAS,UAAU,eAAe,uCAAuC,QAAQ,OAAO,IAAI,KAAK,YAAY,MAAM,OAAO,EAAE;AAAA,QAC1I;AAAA,MACJ;AACA,aAAO;AAAA,IACX,CAAC;AACD,SAAK,2BAA2B;AAAA,EACpC;AAAA,EACA,8BAA8B;AAC1B,QAAI,KAAK,+BAA+B;AACpC;AAAA,IACJ;AACA,SAAK,OAAO,2BAA2B,sBAAsB,MAAM,OAAO,KAAK;AAC/E,SAAK,OAAO,qBAAqB;AAAA,MAC7B,aAAa,CAAA;AAAA,IACzB,CAAS;AACD,SAAK,OAAO,kBAAkB,uBAAuB,OAAO,YAAY;AACpE,cAAQ,QAAQ,OAAO,IAAI,MAAI;AAAA,QAC3B,KAAK;AACD,iBAAO,KAAK,uBAAuB,SAAS,QAAQ,OAAO,GAAG;AAAA,QAClE,KAAK;AACD,iBAAO,KAAK,yBAAyB,SAAS,QAAQ,OAAO,GAAG;AAAA,QACpE;AACI,gBAAM,IAAI,SAAS,UAAU,eAAe,iCAAiC,QAAQ,OAAO,GAAG,EAAE;AAAA,MACrH;AAAA,IACQ,CAAC;AACD,SAAK,gCAAgC;AAAA,EACzC;AAAA,EACA,MAAM,uBAAuB,SAAS,KAAK;AACvC,UAAM,SAAS,KAAK,mBAAmB,IAAI,IAAI;AAC/C,QAAI,CAAC,QAAQ;AACT,YAAM,IAAI,SAAS,UAAU,eAAe,UAAU,IAAI,IAAI,YAAY;AAAA,IAC9E;AACA,QAAI,CAAC,OAAO,SAAS;AACjB,YAAM,IAAI,SAAS,UAAU,eAAe,UAAU,IAAI,IAAI,WAAW;AAAA,IAC7E;AACA,QAAI,CAAC,OAAO,YAAY;AACpB,aAAO;AAAA,IACX;AACA,UAAM,QAAQ,OAAO,WAAW,MAAM,QAAQ,OAAO,SAAS,IAAI;AAClE,QAAI,EAAE,iBAAiB,cAAc;AACjC,aAAO;AAAA,IACX;AACA,UAAM,MAAM,MAAM;AAClB,UAAM,cAAc,MAAM,IAAI,SAAS,QAAQ,OAAO,SAAS,OAAO,QAAQ,OAAO,OAAO;AAC5F,WAAO,uBAAuB,WAAW;AAAA,EAC7C;AAAA,EACA,MAAM,yBAAyB,SAAS,KAAK;AACzC,UAAM,WAAW,OAAO,OAAO,KAAK,4BAA4B,EAAE,KAAK,CAAC,MAAM,EAAE,iBAAiB,YAAY,SAAQ,MAAO,IAAI,GAAG;AACnI,QAAI,CAAC,UAAU;AACX,UAAI,KAAK,qBAAqB,IAAI,GAAG,GAAG;AAEpC,eAAO;AAAA,MACX;AACA,YAAM,IAAI,SAAS,UAAU,eAAe,qBAAqB,QAAQ,OAAO,IAAI,GAAG,YAAY;AAAA,IACvG;AACA,UAAM,YAAY,SAAS,iBAAiB,iBAAiB,QAAQ,OAAO,SAAS,IAAI;AACzF,QAAI,CAAC,WAAW;AACZ,aAAO;AAAA,IACX;AACA,UAAM,cAAc,MAAM,UAAU,QAAQ,OAAO,SAAS,OAAO,QAAQ,OAAO,OAAO;AACzF,WAAO,uBAAuB,WAAW;AAAA,EAC7C;AAAA,EACA,6BAA6B;AACzB,QAAI,KAAK,8BAA8B;AACnC;AAAA,IACJ;AACA,SAAK,OAAO,2BAA2B,2BAA2B,MAAM,OAAO,KAAK;AACpF,SAAK,OAAO,2BAA2B,mCAAmC,MAAM,OAAO,KAAK;AAC5F,SAAK,OAAO,2BAA2B,0BAA0B,MAAM,OAAO,KAAK;AACnF,SAAK,OAAO,qBAAqB;AAAA,MAC7B,WAAW;AAAA,QACP,aAAa;AAAA,MAC7B;AAAA,IACA,CAAS;AACD,SAAK,OAAO,kBAAkB,4BAA4B,OAAO,SAAS,UAAU;AAChF,YAAM,YAAY,OAAO,QAAQ,KAAK,oBAAoB,EAAE,OAAO,CAAC,CAAC,GAAG,QAAQ,MAAM,SAAS,OAAO,EAAE,IAAI,CAAC,CAAC,KAAK,QAAQ,OAAO;AAAA,QAC9H;AAAA,QACA,MAAM,SAAS;AAAA,QACf,GAAG,SAAS;AAAA,MAC5B,EAAc;AACF,YAAM,oBAAoB,CAAA;AAC1B,iBAAW,YAAY,OAAO,OAAO,KAAK,4BAA4B,GAAG;AACrE,YAAI,CAAC,SAAS,iBAAiB,cAAc;AACzC;AAAA,QACJ;AACA,cAAM,SAAS,MAAM,SAAS,iBAAiB,aAAa,KAAK;AACjE,mBAAW,YAAY,OAAO,WAAW;AACrC,4BAAkB,KAAK;AAAA,YACnB,GAAG,SAAS;AAAA;AAAA,YAEZ,GAAG;AAAA,UAC3B,CAAqB;AAAA,QACL;AAAA,MACJ;AACA,aAAO,EAAE,WAAW,CAAC,GAAG,WAAW,GAAG,iBAAiB,EAAC;AAAA,IAC5D,CAAC;AACD,SAAK,OAAO,kBAAkB,oCAAoC,YAAY;AAC1E,YAAM,oBAAoB,OAAO,QAAQ,KAAK,4BAA4B,EAAE,IAAI,CAAC,CAAC,MAAM,QAAQ,OAAO;AAAA,QACnG;AAAA,QACA,aAAa,SAAS,iBAAiB,YAAY,SAAQ;AAAA,QAC3D,GAAG,SAAS;AAAA,MAC5B,EAAc;AACF,aAAO,EAAE,kBAAiB;AAAA,IAC9B,CAAC;AACD,SAAK,OAAO,kBAAkB,2BAA2B,OAAO,SAAS,UAAU;AAC/E,YAAM,MAAM,IAAI,IAAI,QAAQ,OAAO,GAAG;AAEtC,YAAM,WAAW,KAAK,qBAAqB,IAAI,SAAQ,CAAE;AACzD,UAAI,UAAU;AACV,YAAI,CAAC,SAAS,SAAS;AACnB,gBAAM,IAAI,SAAS,UAAU,eAAe,YAAY,GAAG,WAAW;AAAA,QAC1E;AACA,eAAO,SAAS,aAAa,KAAK,KAAK;AAAA,MAC3C;AAEA,iBAAW,YAAY,OAAO,OAAO,KAAK,4BAA4B,GAAG;AACrE,cAAM,YAAY,SAAS,iBAAiB,YAAY,MAAM,IAAI,UAAU;AAC5E,YAAI,WAAW;AACX,iBAAO,SAAS,aAAa,KAAK,WAAW,KAAK;AAAA,QACtD;AAAA,MACJ;AACA,YAAM,IAAI,SAAS,UAAU,eAAe,YAAY,GAAG,YAAY;AAAA,IAC3E,CAAC;AACD,SAAK,4BAA2B;AAChC,SAAK,+BAA+B;AAAA,EACxC;AAAA,EACA,2BAA2B;AACvB,QAAI,KAAK,4BAA4B;AACjC;AAAA,IACJ;AACA,SAAK,OAAO,2BAA2B,yBAAyB,MAAM,OAAO,KAAK;AAClF,SAAK,OAAO,2BAA2B,uBAAuB,MAAM,OAAO,KAAK;AAChF,SAAK,OAAO,qBAAqB;AAAA,MAC7B,SAAS;AAAA,QACL,aAAa;AAAA,MAC7B;AAAA,IACA,CAAS;AACD,SAAK,OAAO,kBAAkB,0BAA0B,OAAO;AAAA,MAC3D,SAAS,OAAO,QAAQ,KAAK,kBAAkB,EAAE,OAAO,CAAC,CAAA,EAAG,MAAM,MAAM,OAAO,OAAO,EAAE,IAAI,CAAC,CAAC,MAAM,MAAM,MAAM;AAC5G,eAAO;AAAA,UACH;AAAA,UACA,OAAO,OAAO;AAAA,UACd,aAAa,OAAO;AAAA,UACpB,WAAW,OAAO,aACZ,0BAA0B,OAAO,UAAU,IAC3C;AAAA,QAC1B;AAAA,MACY,CAAC;AAAA,IACb,EAAU;AACF,SAAK,OAAO,kBAAkB,wBAAwB,OAAO,SAAS,UAAU;AAC5E,YAAM,SAAS,KAAK,mBAAmB,QAAQ,OAAO,IAAI;AAC1D,UAAI,CAAC,QAAQ;AACT,cAAM,IAAI,SAAS,UAAU,eAAe,UAAU,QAAQ,OAAO,IAAI,YAAY;AAAA,MACzF;AACA,UAAI,CAAC,OAAO,SAAS;AACjB,cAAM,IAAI,SAAS,UAAU,eAAe,UAAU,QAAQ,OAAO,IAAI,WAAW;AAAA,MACxF;AACA,UAAI,OAAO,YAAY;AACnB,cAAM,cAAc,MAAM,OAAO,WAAW,eAAe,QAAQ,OAAO,SAAS;AACnF,YAAI,CAAC,YAAY,SAAS;AACtB,gBAAM,IAAI,SAAS,UAAU,eAAe,gCAAgC,QAAQ,OAAO,IAAI,KAAK,YAAY,MAAM,OAAO,EAAE;AAAA,QACnI;AACA,cAAM,OAAO,YAAY;AACzB,cAAM,KAAK,OAAO;AAClB,eAAO,MAAM,QAAQ,QAAQ,GAAG,MAAM,KAAK,CAAC;AAAA,MAChD,OACK;AACD,cAAM,KAAK,OAAO;AAClB,eAAO,MAAM,QAAQ,QAAQ,GAAG,KAAK,CAAC;AAAA,MAC1C;AAAA,IACJ,CAAC;AACD,SAAK,4BAA2B;AAChC,SAAK,6BAA6B;AAAA,EACtC;AAAA,EACA,SAAS,MAAM,kBAAkB,MAAM;AACnC,QAAI;AACJ,QAAI,OAAO,KAAK,CAAC,MAAM,UAAU;AAC7B,iBAAW,KAAK,MAAK;AAAA,IACzB;AACA,UAAM,eAAe,KAAK,CAAC;AAC3B,QAAI,OAAO,kBAAkB,UAAU;AACnC,UAAI,KAAK,qBAAqB,aAAa,GAAG;AAC1C,cAAM,IAAI,MAAM,YAAY,aAAa,wBAAwB;AAAA,MACrE;AACA,YAAM,qBAAqB,KAAK,0BAA0B,MAAM,QAAW,eAAe,UAAU,YAAY;AAChH,WAAK,2BAA0B;AAC/B,WAAK,wBAAuB;AAC5B,aAAO;AAAA,IACX,OACK;AACD,UAAI,KAAK,6BAA6B,IAAI,GAAG;AACzC,cAAM,IAAI,MAAM,qBAAqB,IAAI,wBAAwB;AAAA,MACrE;AACA,YAAM,6BAA6B,KAAK,kCAAkC,MAAM,QAAW,eAAe,UAAU,YAAY;AAChI,WAAK,2BAA0B;AAC/B,WAAK,wBAAuB;AAC5B,aAAO;AAAA,IACX;AAAA,EACJ;AAAA,EACA,iBAAiB,MAAM,eAAe,QAAQ,cAAc;AACxD,QAAI,OAAO,kBAAkB,UAAU;AACnC,UAAI,KAAK,qBAAqB,aAAa,GAAG;AAC1C,cAAM,IAAI,MAAM,YAAY,aAAa,wBAAwB;AAAA,MACrE;AACA,YAAM,qBAAqB,KAAK,0BAA0B,MAAM,OAAO,OAAO,eAAe,QAAQ,YAAY;AACjH,WAAK,2BAA0B;AAC/B,WAAK,wBAAuB;AAC5B,aAAO;AAAA,IACX,OACK;AACD,UAAI,KAAK,6BAA6B,IAAI,GAAG;AACzC,cAAM,IAAI,MAAM,qBAAqB,IAAI,wBAAwB;AAAA,MACrE;AACA,YAAM,6BAA6B,KAAK,kCAAkC,MAAM,OAAO,OAAO,eAAe,QAAQ,YAAY;AACjI,WAAK,2BAA0B;AAC/B,WAAK,wBAAuB;AAC5B,aAAO;AAAA,IACX;AAAA,EACJ;AAAA,EACA,0BAA0B,MAAM,OAAO,KAAK,UAAU,cAAc;AAChE,UAAM,qBAAqB;AAAA,MACvB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,SAAS;AAAA,MACT,SAAS,MAAM,mBAAmB,OAAO,EAAE,SAAS,MAAK,CAAE;AAAA,MAC3D,QAAQ,MAAM,mBAAmB,OAAO,EAAE,SAAS,KAAI,CAAE;AAAA,MACzD,QAAQ,MAAM,mBAAmB,OAAO,EAAE,KAAK,KAAI,CAAE;AAAA,MACrD,QAAQ,CAAC,YAAY;AACjB,YAAI,OAAO,QAAQ,QAAQ,eAAe,QAAQ,QAAQ,KAAK;AAC3D,iBAAO,KAAK,qBAAqB,GAAG;AACpC,cAAI,QAAQ;AACR,iBAAK,qBAAqB,QAAQ,GAAG,IAAI;AAAA,QACjD;AACA,YAAI,OAAO,QAAQ,SAAS;AACxB,6BAAmB,OAAO,QAAQ;AACtC,YAAI,OAAO,QAAQ,UAAU;AACzB,6BAAmB,QAAQ,QAAQ;AACvC,YAAI,OAAO,QAAQ,aAAa;AAC5B,6BAAmB,WAAW,QAAQ;AAC1C,YAAI,OAAO,QAAQ,aAAa;AAC5B,6BAAmB,eAAe,QAAQ;AAC9C,YAAI,OAAO,QAAQ,YAAY;AAC3B,6BAAmB,UAAU,QAAQ;AACzC,aAAK,wBAAuB;AAAA,MAChC;AAAA,IACZ;AACQ,SAAK,qBAAqB,GAAG,IAAI;AACjC,WAAO;AAAA,EACX;AAAA,EACA,kCAAkC,MAAM,OAAO,UAAU,UAAU,cAAc;AAC7E,UAAM,6BAA6B;AAAA,MAC/B,kBAAkB;AAAA,MAClB;AAAA,MACA;AAAA,MACA;AAAA,MACA,SAAS;AAAA,MACT,SAAS,MAAM,2BAA2B,OAAO,EAAE,SAAS,MAAK,CAAE;AAAA,MACnE,QAAQ,MAAM,2BAA2B,OAAO,EAAE,SAAS,KAAI,CAAE;AAAA,MACjE,QAAQ,MAAM,2BAA2B,OAAO,EAAE,MAAM,KAAI,CAAE;AAAA,MAC9D,QAAQ,CAAC,YAAY;AACjB,YAAI,OAAO,QAAQ,SAAS,eAAe,QAAQ,SAAS,MAAM;AAC9D,iBAAO,KAAK,6BAA6B,IAAI;AAC7C,cAAI,QAAQ;AACR,iBAAK,6BAA6B,QAAQ,IAAI,IAAI;AAAA,QAC1D;AACA,YAAI,OAAO,QAAQ,UAAU;AACzB,qCAA2B,QAAQ,QAAQ;AAC/C,YAAI,OAAO,QAAQ,aAAa;AAC5B,qCAA2B,mBAAmB,QAAQ;AAC1D,YAAI,OAAO,QAAQ,aAAa;AAC5B,qCAA2B,WAAW,QAAQ;AAClD,YAAI,OAAO,QAAQ,aAAa;AAC5B,qCAA2B,eAAe,QAAQ;AACtD,YAAI,OAAO,QAAQ,YAAY;AAC3B,qCAA2B,UAAU,QAAQ;AACjD,aAAK,wBAAuB;AAAA,MAChC;AAAA,IACZ;AACQ,SAAK,6BAA6B,IAAI,IAAI;AAC1C,WAAO;AAAA,EACX;AAAA,EACA,wBAAwB,MAAM,OAAO,aAAa,YAAY,UAAU;AACpE,UAAM,mBAAmB;AAAA,MACrB;AAAA,MACA;AAAA,MACA,YAAY,eAAe,SAAY,SAAY,EAAE,OAAO,UAAU;AAAA,MACtE;AAAA,MACA,SAAS;AAAA,MACT,SAAS,MAAM,iBAAiB,OAAO,EAAE,SAAS,MAAK,CAAE;AAAA,MACzD,QAAQ,MAAM,iBAAiB,OAAO,EAAE,SAAS,KAAI,CAAE;AAAA,MACvD,QAAQ,MAAM,iBAAiB,OAAO,EAAE,MAAM,KAAI,CAAE;AAAA,MACpD,QAAQ,CAAC,YAAY;AACjB,YAAI,OAAO,QAAQ,SAAS,eAAe,QAAQ,SAAS,MAAM;AAC9D,iBAAO,KAAK,mBAAmB,IAAI;AACnC,cAAI,QAAQ;AACR,iBAAK,mBAAmB,QAAQ,IAAI,IAAI;AAAA,QAChD;AACA,YAAI,OAAO,QAAQ,UAAU;AACzB,2BAAiB,QAAQ,QAAQ;AACrC,YAAI,OAAO,QAAQ,gBAAgB;AAC/B,2BAAiB,cAAc,QAAQ;AAC3C,YAAI,OAAO,QAAQ,eAAe;AAC9B,2BAAiB,aAAa,EAAE,OAAO,QAAQ,UAAU;AAC7D,YAAI,OAAO,QAAQ,aAAa;AAC5B,2BAAiB,WAAW,QAAQ;AACxC,YAAI,OAAO,QAAQ,YAAY;AAC3B,2BAAiB,UAAU,QAAQ;AACvC,aAAK,sBAAqB;AAAA,MAC9B;AAAA,IACZ;AACQ,SAAK,mBAAmB,IAAI,IAAI;AAChC,WAAO;AAAA,EACX;AAAA,EACA,sBAAsB,MAAM,OAAO,aAAa,aAAa,cAAc,aAAa,UAAU;AAC9F,UAAM,iBAAiB;AAAA,MACnB;AAAA,MACA;AAAA,MACA,aAAa,gBAAgB,SAAY,SAAY,EAAE,OAAO,WAAW;AAAA,MACzE,cAAc,iBAAiB,SAAY,SAAY,EAAE,OAAO,YAAY;AAAA,MAC5E;AAAA,MACA;AAAA,MACA,SAAS;AAAA,MACT,SAAS,MAAM,eAAe,OAAO,EAAE,SAAS,MAAK,CAAE;AAAA,MACvD,QAAQ,MAAM,eAAe,OAAO,EAAE,SAAS,KAAI,CAAE;AAAA,MACrD,QAAQ,MAAM,eAAe,OAAO,EAAE,MAAM,KAAI,CAAE;AAAA,MAClD,QAAQ,CAAC,YAAY;AACjB,YAAI,OAAO,QAAQ,SAAS,eAAe,QAAQ,SAAS,MAAM;AAC9D,iBAAO,KAAK,iBAAiB,IAAI;AACjC,cAAI,QAAQ;AACR,iBAAK,iBAAiB,QAAQ,IAAI,IAAI;AAAA,QAC9C;AACA,YAAI,OAAO,QAAQ,UAAU;AACzB,yBAAe,QAAQ,QAAQ;AACnC,YAAI,OAAO,QAAQ,gBAAgB;AAC/B,yBAAe,cAAc,QAAQ;AACzC,YAAI,OAAO,QAAQ,iBAAiB;AAChC,yBAAe,cAAc,EAAE,OAAO,QAAQ,YAAY;AAC9D,YAAI,OAAO,QAAQ,aAAa;AAC5B,yBAAe,WAAW,QAAQ;AACtC,YAAI,OAAO,QAAQ,gBAAgB;AAC/B,yBAAe,cAAc,QAAQ;AACzC,YAAI,OAAO,QAAQ,YAAY;AAC3B,yBAAe,UAAU,QAAQ;AACrC,aAAK,oBAAmB;AAAA,MAC5B;AAAA,IACZ;AACQ,SAAK,iBAAiB,IAAI,IAAI;AAC9B,SAAK,uBAAsB;AAC3B,SAAK,oBAAmB;AACxB,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA,EAIA,KAAK,SAAS,MAAM;AAChB,QAAI,KAAK,iBAAiB,IAAI,GAAG;AAC7B,YAAM,IAAI,MAAM,QAAQ,IAAI,wBAAwB;AAAA,IACxD;AACA,QAAI;AACJ,QAAI;AACJ,QAAI;AACJ,QAAI;AAIJ,QAAI,OAAO,KAAK,CAAC,MAAM,UAAU;AAC7B,oBAAc,KAAK,MAAK;AAAA,IAC5B;AAEA,QAAI,KAAK,SAAS,GAAG;AAEjB,YAAM,WAAW,KAAK,CAAC;AACvB,UAAI,cAAc,QAAQ,GAAG;AAEzB,sBAAc,KAAK,MAAK;AAExB,YAAI,KAAK,SAAS,KAAK,OAAO,KAAK,CAAC,MAAM,YAAY,KAAK,CAAC,MAAM,QAAQ,CAAE,cAAc,KAAK,CAAC,CAAC,GAAI;AAGjG,wBAAc,KAAK,MAAK;AAAA,QAC5B;AAAA,MACJ,WACS,OAAO,aAAa,YAAY,aAAa,MAAM;AAIxD,sBAAc,KAAK,MAAK;AAAA,MAC5B;AAAA,IACJ;AACA,UAAM,WAAW,KAAK,CAAC;AACvB,WAAO,KAAK,sBAAsB,MAAM,QAAW,aAAa,aAAa,cAAc,aAAa,QAAQ;AAAA,EACpH;AAAA;AAAA;AAAA;AAAA,EAIA,aAAa,MAAM,QAAQ,IAAI;AAC3B,QAAI,KAAK,iBAAiB,IAAI,GAAG;AAC7B,YAAM,IAAI,MAAM,QAAQ,IAAI,wBAAwB;AAAA,IACxD;AACA,UAAM,EAAE,OAAO,aAAa,aAAa,cAAc,YAAW,IAAK;AACvE,WAAO,KAAK,sBAAsB,MAAM,OAAO,aAAa,aAAa,cAAc,aAAa,EAAE;AAAA,EAC1G;AAAA,EACA,OAAO,SAAS,MAAM;AAClB,QAAI,KAAK,mBAAmB,IAAI,GAAG;AAC/B,YAAM,IAAI,MAAM,UAAU,IAAI,wBAAwB;AAAA,IAC1D;AACA,QAAI;AACJ,QAAI,OAAO,KAAK,CAAC,MAAM,UAAU;AAC7B,oBAAc,KAAK,MAAK;AAAA,IAC5B;AACA,QAAI;AACJ,QAAI,KAAK,SAAS,GAAG;AACjB,mBAAa,KAAK,MAAK;AAAA,IAC3B;AACA,UAAM,KAAK,KAAK,CAAC;AACjB,UAAM,mBAAmB,KAAK,wBAAwB,MAAM,QAAW,aAAa,YAAY,EAAE;AAClG,SAAK,yBAAwB;AAC7B,SAAK,sBAAqB;AAC1B,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA,EAIA,eAAe,MAAM,QAAQ,IAAI;AAC7B,QAAI,KAAK,mBAAmB,IAAI,GAAG;AAC/B,YAAM,IAAI,MAAM,UAAU,IAAI,wBAAwB;AAAA,IAC1D;AACA,UAAM,EAAE,OAAO,aAAa,WAAU,IAAK;AAC3C,UAAM,mBAAmB,KAAK,wBAAwB,MAAM,OAAO,aAAa,YAAY,EAAE;AAC9F,SAAK,yBAAwB;AAC7B,SAAK,sBAAqB;AAC1B,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,cAAc;AACV,WAAO,KAAK,OAAO,cAAc;AAAA,EACrC;AAAA;AAAA;AAAA;AAAA,EAIA,0BAA0B;AACtB,QAAI,KAAK,eAAe;AACpB,WAAK,OAAO,wBAAuB;AAAA,IACvC;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA,EAIA,sBAAsB;AAClB,QAAI,KAAK,eAAe;AACpB,WAAK,OAAO,oBAAmB;AAAA,IACnC;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA,EAIA,wBAAwB;AACpB,QAAI,KAAK,eAAe;AACpB,WAAK,OAAO,sBAAqB;AAAA,IACrC;AAAA,EACJ;AACJ;AAiCA,MAAM,2BAA2B;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY,CAAA;AAChB;AAEA,SAAS,cAAc,KAAK;AACxB,MAAI,OAAO,QAAQ,YAAY,QAAQ;AACnC,WAAO;AACX,QAAM,gBAAgB,OAAO,KAAK,GAAG,EAAE,WAAW;AAGlD,SAAO,iBAAiB,OAAO,OAAO,GAAG,EAAE,KAAK,aAAa;AACjE;AACA,SAAS,cAAc,OAAO;AAC1B,SAAO,UAAU,QACb,OAAO,UAAU,YACjB,WAAW,SAAS,OAAO,MAAM,UAAU,cAC3C,eAAe,SAAS,OAAO,MAAM,cAAc;AAC3D;AACA,SAAS,0BAA0B,QAAQ;AACvC,SAAO,OAAO,QAAQ,OAAO,KAAK,EAAE,IAAI,CAAC,CAAC,MAAM,KAAK,OAAO;AAAA,IACxD;AAAA,IACA,aAAa,MAAM;AAAA,IACnB,UAAU,CAAC,MAAM,WAAU;AAAA,EACnC,EAAM;AACN;AACA,SAAS,uBAAuB,aAAa;AACzC,SAAO;AAAA,IACH,YAAY;AAAA,MACR,QAAQ,YAAY,MAAM,GAAG,GAAG;AAAA,MAChC,OAAO,YAAY;AAAA,MACnB,SAAS,YAAY,SAAS;AAAA,IAC1C;AAAA,EACA;AACA;AACA,MAAM,0BAA0B;AAAA,EAC5B,YAAY;AAAA,IACR,QAAQ,CAAA;AAAA,IACR,SAAS;AAAA,EACjB;AACA;","x_google_ignoreList":[0]}
|
|
@@ -1,3 +1,11 @@
|
|
|
1
|
+
;
|
|
2
|
+
!function() {
|
|
3
|
+
try {
|
|
4
|
+
var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
|
|
5
|
+
n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "e78524c6-a3f6-4d20-921f-1ad187480676", e._sentryDebugIdIdentifier = "sentry-dbid-e78524c6-a3f6-4d20-921f-1ad187480676");
|
|
6
|
+
} catch (e2) {
|
|
7
|
+
}
|
|
8
|
+
}();
|
|
1
9
|
import process from "node:process";
|
|
2
10
|
import { ReadBuffer, serializeMessage } from "../shared/stdio.js";
|
|
3
11
|
class StdioServerTransport {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stdio.js","sources":["../../../../../../../../../../../../node_modules/.pnpm/@modelcontextprotocol+sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/stdio.js"],"sourcesContent":["import process from \"node:process\";\nimport { ReadBuffer, serializeMessage } from \"../shared/stdio.js\";\n/**\n * Server transport for stdio: this communicates with a MCP client by reading from the current process' stdin and writing to stdout.\n *\n * This transport is only available in Node.js environments.\n */\nexport class StdioServerTransport {\n constructor(_stdin = process.stdin, _stdout = process.stdout) {\n this._stdin = _stdin;\n this._stdout = _stdout;\n this._readBuffer = new ReadBuffer();\n this._started = false;\n // Arrow functions to bind `this` properly, while maintaining function identity.\n this._ondata = (chunk) => {\n this._readBuffer.append(chunk);\n this.processReadBuffer();\n };\n this._onerror = (error) => {\n var _a;\n (_a = this.onerror) === null || _a === void 0 ? void 0 : _a.call(this, error);\n };\n }\n /**\n * Starts listening for messages on stdin.\n */\n async start() {\n if (this._started) {\n throw new Error(\"StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.\");\n }\n this._started = true;\n this._stdin.on(\"data\", this._ondata);\n this._stdin.on(\"error\", this._onerror);\n }\n processReadBuffer() {\n var _a, _b;\n while (true) {\n try {\n const message = this._readBuffer.readMessage();\n if (message === null) {\n break;\n }\n (_a = this.onmessage) === null || _a === void 0 ? void 0 : _a.call(this, message);\n }\n catch (error) {\n (_b = this.onerror) === null || _b === void 0 ? void 0 : _b.call(this, error);\n }\n }\n }\n async close() {\n var _a;\n // Remove our event listeners first\n this._stdin.off(\"data\", this._ondata);\n this._stdin.off(\"error\", this._onerror);\n // Check if we were the only data listener\n const remainingDataListeners = this._stdin.listenerCount('data');\n if (remainingDataListeners === 0) {\n // Only pause stdin if we were the only listener\n // This prevents interfering with other parts of the application that might be using stdin\n this._stdin.pause();\n }\n // Clear the buffer and notify closure\n this._readBuffer.clear();\n (_a = this.onclose) === null || _a === void 0 ? void 0 : _a.call(this);\n }\n send(message) {\n return new Promise((resolve) => {\n const json = serializeMessage(message);\n if (this._stdout.write(json)) {\n resolve();\n }\n else {\n this._stdout.once(\"drain\", resolve);\n }\n });\n }\n}\n//# sourceMappingURL=stdio.js.map"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"stdio.js","sources":["../../../../../../../../../../../../node_modules/.pnpm/@modelcontextprotocol+sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/stdio.js"],"sourcesContent":["import process from \"node:process\";\nimport { ReadBuffer, serializeMessage } from \"../shared/stdio.js\";\n/**\n * Server transport for stdio: this communicates with a MCP client by reading from the current process' stdin and writing to stdout.\n *\n * This transport is only available in Node.js environments.\n */\nexport class StdioServerTransport {\n constructor(_stdin = process.stdin, _stdout = process.stdout) {\n this._stdin = _stdin;\n this._stdout = _stdout;\n this._readBuffer = new ReadBuffer();\n this._started = false;\n // Arrow functions to bind `this` properly, while maintaining function identity.\n this._ondata = (chunk) => {\n this._readBuffer.append(chunk);\n this.processReadBuffer();\n };\n this._onerror = (error) => {\n var _a;\n (_a = this.onerror) === null || _a === void 0 ? void 0 : _a.call(this, error);\n };\n }\n /**\n * Starts listening for messages on stdin.\n */\n async start() {\n if (this._started) {\n throw new Error(\"StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.\");\n }\n this._started = true;\n this._stdin.on(\"data\", this._ondata);\n this._stdin.on(\"error\", this._onerror);\n }\n processReadBuffer() {\n var _a, _b;\n while (true) {\n try {\n const message = this._readBuffer.readMessage();\n if (message === null) {\n break;\n }\n (_a = this.onmessage) === null || _a === void 0 ? void 0 : _a.call(this, message);\n }\n catch (error) {\n (_b = this.onerror) === null || _b === void 0 ? void 0 : _b.call(this, error);\n }\n }\n }\n async close() {\n var _a;\n // Remove our event listeners first\n this._stdin.off(\"data\", this._ondata);\n this._stdin.off(\"error\", this._onerror);\n // Check if we were the only data listener\n const remainingDataListeners = this._stdin.listenerCount('data');\n if (remainingDataListeners === 0) {\n // Only pause stdin if we were the only listener\n // This prevents interfering with other parts of the application that might be using stdin\n this._stdin.pause();\n }\n // Clear the buffer and notify closure\n this._readBuffer.clear();\n (_a = this.onclose) === null || _a === void 0 ? void 0 : _a.call(this);\n }\n send(message) {\n return new Promise((resolve) => {\n const json = serializeMessage(message);\n if (this._stdout.write(json)) {\n resolve();\n }\n else {\n this._stdout.once(\"drain\", resolve);\n }\n });\n }\n}\n//# sourceMappingURL=stdio.js.map"],"names":[],"mappings":";;;;;;;;;;AAOO,MAAM,qBAAqB;AAAA,EAC9B,YAAY,SAAS,QAAQ,OAAO,UAAU,QAAQ,QAAQ;AAC1D,SAAK,SAAS;AACd,SAAK,UAAU;AACf,SAAK,cAAc,IAAI,WAAU;AACjC,SAAK,WAAW;AAEhB,SAAK,UAAU,CAAC,UAAU;AACtB,WAAK,YAAY,OAAO,KAAK;AAC7B,WAAK,kBAAiB;AAAA,IAC1B;AACA,SAAK,WAAW,CAAC,UAAU;AACvB,UAAI;AACJ,OAAC,KAAK,KAAK,aAAa,QAAQ,OAAO,SAAS,SAAS,GAAG,KAAK,MAAM,KAAK;AAAA,IAChF;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA,EAIA,MAAM,QAAQ;AACV,QAAI,KAAK,UAAU;AACf,YAAM,IAAI,MAAM,+GAA+G;AAAA,IACnI;AACA,SAAK,WAAW;AAChB,SAAK,OAAO,GAAG,QAAQ,KAAK,OAAO;AACnC,SAAK,OAAO,GAAG,SAAS,KAAK,QAAQ;AAAA,EACzC;AAAA,EACA,oBAAoB;AAChB,QAAI,IAAI;AACR,WAAO,MAAM;AACT,UAAI;AACA,cAAM,UAAU,KAAK,YAAY,YAAW;AAC5C,YAAI,YAAY,MAAM;AAClB;AAAA,QACJ;AACA,SAAC,KAAK,KAAK,eAAe,QAAQ,OAAO,SAAS,SAAS,GAAG,KAAK,MAAM,OAAO;AAAA,MACpF,SACO,OAAO;AACV,SAAC,KAAK,KAAK,aAAa,QAAQ,OAAO,SAAS,SAAS,GAAG,KAAK,MAAM,KAAK;AAAA,MAChF;AAAA,IACJ;AAAA,EACJ;AAAA,EACA,MAAM,QAAQ;AACV,QAAI;AAEJ,SAAK,OAAO,IAAI,QAAQ,KAAK,OAAO;AACpC,SAAK,OAAO,IAAI,SAAS,KAAK,QAAQ;AAEtC,UAAM,yBAAyB,KAAK,OAAO,cAAc,MAAM;AAC/D,QAAI,2BAA2B,GAAG;AAG9B,WAAK,OAAO,MAAK;AAAA,IACrB;AAEA,SAAK,YAAY,MAAK;AACtB,KAAC,KAAK,KAAK,aAAa,QAAQ,OAAO,SAAS,SAAS,GAAG,KAAK,IAAI;AAAA,EACzE;AAAA,EACA,KAAK,SAAS;AACV,WAAO,IAAI,QAAQ,CAAC,YAAY;AAC5B,YAAM,OAAO,iBAAiB,OAAO;AACrC,UAAI,KAAK,QAAQ,MAAM,IAAI,GAAG;AAC1B,gBAAO;AAAA,MACX,OACK;AACD,aAAK,QAAQ,KAAK,SAAS,OAAO;AAAA,MACtC;AAAA,IACJ,CAAC;AAAA,EACL;AACJ;","x_google_ignoreList":[0]}
|
|
@@ -1,3 +1,11 @@
|
|
|
1
|
+
;
|
|
2
|
+
!function() {
|
|
3
|
+
try {
|
|
4
|
+
var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
|
|
5
|
+
n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "02c60f18-f04f-457a-93ea-688fa90cd3fd", e._sentryDebugIdIdentifier = "sentry-dbid-02c60f18-f04f-457a-93ea-688fa90cd3fd");
|
|
6
|
+
} catch (e2) {
|
|
7
|
+
}
|
|
8
|
+
}();
|
|
1
9
|
import { CancelledNotificationSchema, ProgressNotificationSchema, PingRequestSchema, McpError, ErrorCode, isJSONRPCResponse, isJSONRPCError, isJSONRPCRequest, isJSONRPCNotification } from "../types.js";
|
|
2
10
|
const DEFAULT_REQUEST_TIMEOUT_MSEC = 6e4;
|
|
3
11
|
class Protocol {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.js","sources":["../../../../../../../../../../../../node_modules/.pnpm/@modelcontextprotocol+sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js"],"sourcesContent":["import { CancelledNotificationSchema, ErrorCode, isJSONRPCError, isJSONRPCRequest, isJSONRPCResponse, isJSONRPCNotification, McpError, PingRequestSchema, ProgressNotificationSchema, } from \"../types.js\";\n/**\n * The default request timeout, in miliseconds.\n */\nexport const DEFAULT_REQUEST_TIMEOUT_MSEC = 60000;\n/**\n * Implements MCP protocol framing on top of a pluggable transport, including\n * features like request/response linking, notifications, and progress.\n */\nexport class Protocol {\n constructor(_options) {\n this._options = _options;\n this._requestMessageId = 0;\n this._requestHandlers = new Map();\n this._requestHandlerAbortControllers = new Map();\n this._notificationHandlers = new Map();\n this._responseHandlers = new Map();\n this._progressHandlers = new Map();\n this._timeoutInfo = new Map();\n this._pendingDebouncedNotifications = new Set();\n this.setNotificationHandler(CancelledNotificationSchema, (notification) => {\n const controller = this._requestHandlerAbortControllers.get(notification.params.requestId);\n controller === null || controller === void 0 ? void 0 : controller.abort(notification.params.reason);\n });\n this.setNotificationHandler(ProgressNotificationSchema, (notification) => {\n this._onprogress(notification);\n });\n this.setRequestHandler(PingRequestSchema, \n // Automatic pong by default.\n (_request) => ({}));\n }\n _setupTimeout(messageId, timeout, maxTotalTimeout, onTimeout, resetTimeoutOnProgress = false) {\n this._timeoutInfo.set(messageId, {\n timeoutId: setTimeout(onTimeout, timeout),\n startTime: Date.now(),\n timeout,\n maxTotalTimeout,\n resetTimeoutOnProgress,\n onTimeout\n });\n }\n _resetTimeout(messageId) {\n const info = this._timeoutInfo.get(messageId);\n if (!info)\n return false;\n const totalElapsed = Date.now() - info.startTime;\n if (info.maxTotalTimeout && totalElapsed >= info.maxTotalTimeout) {\n this._timeoutInfo.delete(messageId);\n throw new McpError(ErrorCode.RequestTimeout, \"Maximum total timeout exceeded\", { maxTotalTimeout: info.maxTotalTimeout, totalElapsed });\n }\n clearTimeout(info.timeoutId);\n info.timeoutId = setTimeout(info.onTimeout, info.timeout);\n return true;\n }\n _cleanupTimeout(messageId) {\n const info = this._timeoutInfo.get(messageId);\n if (info) {\n clearTimeout(info.timeoutId);\n this._timeoutInfo.delete(messageId);\n }\n }\n /**\n * Attaches to the given transport, starts it, and starts listening for messages.\n *\n * The Protocol object assumes ownership of the Transport, replacing any callbacks that have already been set, and expects that it is the only user of the Transport instance going forward.\n */\n async connect(transport) {\n var _a, _b, _c;\n this._transport = transport;\n const _onclose = (_a = this.transport) === null || _a === void 0 ? void 0 : _a.onclose;\n this._transport.onclose = () => {\n _onclose === null || _onclose === void 0 ? void 0 : _onclose();\n this._onclose();\n };\n const _onerror = (_b = this.transport) === null || _b === void 0 ? void 0 : _b.onerror;\n this._transport.onerror = (error) => {\n _onerror === null || _onerror === void 0 ? void 0 : _onerror(error);\n this._onerror(error);\n };\n const _onmessage = (_c = this._transport) === null || _c === void 0 ? void 0 : _c.onmessage;\n this._transport.onmessage = (message, extra) => {\n _onmessage === null || _onmessage === void 0 ? void 0 : _onmessage(message, extra);\n if (isJSONRPCResponse(message) || isJSONRPCError(message)) {\n this._onresponse(message);\n }\n else if (isJSONRPCRequest(message)) {\n this._onrequest(message, extra);\n }\n else if (isJSONRPCNotification(message)) {\n this._onnotification(message);\n }\n else {\n this._onerror(new Error(`Unknown message type: ${JSON.stringify(message)}`));\n }\n };\n await this._transport.start();\n }\n _onclose() {\n var _a;\n const responseHandlers = this._responseHandlers;\n this._responseHandlers = new Map();\n this._progressHandlers.clear();\n this._pendingDebouncedNotifications.clear();\n this._transport = undefined;\n (_a = this.onclose) === null || _a === void 0 ? void 0 : _a.call(this);\n const error = new McpError(ErrorCode.ConnectionClosed, \"Connection closed\");\n for (const handler of responseHandlers.values()) {\n handler(error);\n }\n }\n _onerror(error) {\n var _a;\n (_a = this.onerror) === null || _a === void 0 ? void 0 : _a.call(this, error);\n }\n _onnotification(notification) {\n var _a;\n const handler = (_a = this._notificationHandlers.get(notification.method)) !== null && _a !== void 0 ? _a : this.fallbackNotificationHandler;\n // Ignore notifications not being subscribed to.\n if (handler === undefined) {\n return;\n }\n // Starting with Promise.resolve() puts any synchronous errors into the monad as well.\n Promise.resolve()\n .then(() => handler(notification))\n .catch((error) => this._onerror(new Error(`Uncaught error in notification handler: ${error}`)));\n }\n _onrequest(request, extra) {\n var _a, _b, _c, _d;\n const handler = (_a = this._requestHandlers.get(request.method)) !== null && _a !== void 0 ? _a : this.fallbackRequestHandler;\n if (handler === undefined) {\n (_b = this._transport) === null || _b === void 0 ? void 0 : _b.send({\n jsonrpc: \"2.0\",\n id: request.id,\n error: {\n code: ErrorCode.MethodNotFound,\n message: \"Method not found\",\n },\n }).catch((error) => this._onerror(new Error(`Failed to send an error response: ${error}`)));\n return;\n }\n const abortController = new AbortController();\n this._requestHandlerAbortControllers.set(request.id, abortController);\n const fullExtra = {\n signal: abortController.signal,\n sessionId: (_c = this._transport) === null || _c === void 0 ? void 0 : _c.sessionId,\n _meta: (_d = request.params) === null || _d === void 0 ? void 0 : _d._meta,\n sendNotification: (notification) => this.notification(notification, { relatedRequestId: request.id }),\n sendRequest: (r, resultSchema, options) => this.request(r, resultSchema, { ...options, relatedRequestId: request.id }),\n authInfo: extra === null || extra === void 0 ? void 0 : extra.authInfo,\n requestId: request.id,\n requestInfo: extra === null || extra === void 0 ? void 0 : extra.requestInfo\n };\n // Starting with Promise.resolve() puts any synchronous errors into the monad as well.\n Promise.resolve()\n .then(() => handler(request, fullExtra))\n .then((result) => {\n var _a;\n if (abortController.signal.aborted) {\n return;\n }\n return (_a = this._transport) === null || _a === void 0 ? void 0 : _a.send({\n result,\n jsonrpc: \"2.0\",\n id: request.id,\n });\n }, (error) => {\n var _a, _b;\n if (abortController.signal.aborted) {\n return;\n }\n return (_a = this._transport) === null || _a === void 0 ? void 0 : _a.send({\n jsonrpc: \"2.0\",\n id: request.id,\n error: {\n code: Number.isSafeInteger(error[\"code\"])\n ? error[\"code\"]\n : ErrorCode.InternalError,\n message: (_b = error.message) !== null && _b !== void 0 ? _b : \"Internal error\",\n },\n });\n })\n .catch((error) => this._onerror(new Error(`Failed to send response: ${error}`)))\n .finally(() => {\n this._requestHandlerAbortControllers.delete(request.id);\n });\n }\n _onprogress(notification) {\n const { progressToken, ...params } = notification.params;\n const messageId = Number(progressToken);\n const handler = this._progressHandlers.get(messageId);\n if (!handler) {\n this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(notification)}`));\n return;\n }\n const responseHandler = this._responseHandlers.get(messageId);\n const timeoutInfo = this._timeoutInfo.get(messageId);\n if (timeoutInfo && responseHandler && timeoutInfo.resetTimeoutOnProgress) {\n try {\n this._resetTimeout(messageId);\n }\n catch (error) {\n responseHandler(error);\n return;\n }\n }\n handler(params);\n }\n _onresponse(response) {\n const messageId = Number(response.id);\n const handler = this._responseHandlers.get(messageId);\n if (handler === undefined) {\n this._onerror(new Error(`Received a response for an unknown message ID: ${JSON.stringify(response)}`));\n return;\n }\n this._responseHandlers.delete(messageId);\n this._progressHandlers.delete(messageId);\n this._cleanupTimeout(messageId);\n if (isJSONRPCResponse(response)) {\n handler(response);\n }\n else {\n const error = new McpError(response.error.code, response.error.message, response.error.data);\n handler(error);\n }\n }\n get transport() {\n return this._transport;\n }\n /**\n * Closes the connection.\n */\n async close() {\n var _a;\n await ((_a = this._transport) === null || _a === void 0 ? void 0 : _a.close());\n }\n /**\n * Sends a request and wait for a response.\n *\n * Do not use this method to emit notifications! Use notification() instead.\n */\n request(request, resultSchema, options) {\n const { relatedRequestId, resumptionToken, onresumptiontoken } = options !== null && options !== void 0 ? options : {};\n return new Promise((resolve, reject) => {\n var _a, _b, _c, _d, _e, _f;\n if (!this._transport) {\n reject(new Error(\"Not connected\"));\n return;\n }\n if (((_a = this._options) === null || _a === void 0 ? void 0 : _a.enforceStrictCapabilities) === true) {\n this.assertCapabilityForMethod(request.method);\n }\n (_b = options === null || options === void 0 ? void 0 : options.signal) === null || _b === void 0 ? void 0 : _b.throwIfAborted();\n const messageId = this._requestMessageId++;\n const jsonrpcRequest = {\n ...request,\n jsonrpc: \"2.0\",\n id: messageId,\n };\n if (options === null || options === void 0 ? void 0 : options.onprogress) {\n this._progressHandlers.set(messageId, options.onprogress);\n jsonrpcRequest.params = {\n ...request.params,\n _meta: {\n ...(((_c = request.params) === null || _c === void 0 ? void 0 : _c._meta) || {}),\n progressToken: messageId\n },\n };\n }\n const cancel = (reason) => {\n var _a;\n this._responseHandlers.delete(messageId);\n this._progressHandlers.delete(messageId);\n this._cleanupTimeout(messageId);\n (_a = this._transport) === null || _a === void 0 ? void 0 : _a.send({\n jsonrpc: \"2.0\",\n method: \"notifications/cancelled\",\n params: {\n requestId: messageId,\n reason: String(reason),\n },\n }, { relatedRequestId, resumptionToken, onresumptiontoken }).catch((error) => this._onerror(new Error(`Failed to send cancellation: ${error}`)));\n reject(reason);\n };\n this._responseHandlers.set(messageId, (response) => {\n var _a;\n if ((_a = options === null || options === void 0 ? void 0 : options.signal) === null || _a === void 0 ? void 0 : _a.aborted) {\n return;\n }\n if (response instanceof Error) {\n return reject(response);\n }\n try {\n const result = resultSchema.parse(response.result);\n resolve(result);\n }\n catch (error) {\n reject(error);\n }\n });\n (_d = options === null || options === void 0 ? void 0 : options.signal) === null || _d === void 0 ? void 0 : _d.addEventListener(\"abort\", () => {\n var _a;\n cancel((_a = options === null || options === void 0 ? void 0 : options.signal) === null || _a === void 0 ? void 0 : _a.reason);\n });\n const timeout = (_e = options === null || options === void 0 ? void 0 : options.timeout) !== null && _e !== void 0 ? _e : DEFAULT_REQUEST_TIMEOUT_MSEC;\n const timeoutHandler = () => cancel(new McpError(ErrorCode.RequestTimeout, \"Request timed out\", { timeout }));\n this._setupTimeout(messageId, timeout, options === null || options === void 0 ? void 0 : options.maxTotalTimeout, timeoutHandler, (_f = options === null || options === void 0 ? void 0 : options.resetTimeoutOnProgress) !== null && _f !== void 0 ? _f : false);\n this._transport.send(jsonrpcRequest, { relatedRequestId, resumptionToken, onresumptiontoken }).catch((error) => {\n this._cleanupTimeout(messageId);\n reject(error);\n });\n });\n }\n /**\n * Emits a notification, which is a one-way message that does not expect a response.\n */\n async notification(notification, options) {\n var _a, _b;\n if (!this._transport) {\n throw new Error(\"Not connected\");\n }\n this.assertNotificationCapability(notification.method);\n const debouncedMethods = (_b = (_a = this._options) === null || _a === void 0 ? void 0 : _a.debouncedNotificationMethods) !== null && _b !== void 0 ? _b : [];\n // A notification can only be debounced if it's in the list AND it's \"simple\"\n // (i.e., has no parameters and no related request ID that could be lost).\n const canDebounce = debouncedMethods.includes(notification.method)\n && !notification.params\n && !(options === null || options === void 0 ? void 0 : options.relatedRequestId);\n if (canDebounce) {\n // If a notification of this type is already scheduled, do nothing.\n if (this._pendingDebouncedNotifications.has(notification.method)) {\n return;\n }\n // Mark this notification type as pending.\n this._pendingDebouncedNotifications.add(notification.method);\n // Schedule the actual send to happen in the next microtask.\n // This allows all synchronous calls in the current event loop tick to be coalesced.\n Promise.resolve().then(() => {\n var _a;\n // Un-mark the notification so the next one can be scheduled.\n this._pendingDebouncedNotifications.delete(notification.method);\n // SAFETY CHECK: If the connection was closed while this was pending, abort.\n if (!this._transport) {\n return;\n }\n const jsonrpcNotification = {\n ...notification,\n jsonrpc: \"2.0\",\n };\n // Send the notification, but don't await it here to avoid blocking.\n // Handle potential errors with a .catch().\n (_a = this._transport) === null || _a === void 0 ? void 0 : _a.send(jsonrpcNotification, options).catch(error => this._onerror(error));\n });\n // Return immediately.\n return;\n }\n const jsonrpcNotification = {\n ...notification,\n jsonrpc: \"2.0\",\n };\n await this._transport.send(jsonrpcNotification, options);\n }\n /**\n * Registers a handler to invoke when this protocol object receives a request with the given method.\n *\n * Note that this will replace any previous request handler for the same method.\n */\n setRequestHandler(requestSchema, handler) {\n const method = requestSchema.shape.method.value;\n this.assertRequestHandlerCapability(method);\n this._requestHandlers.set(method, (request, extra) => {\n return Promise.resolve(handler(requestSchema.parse(request), extra));\n });\n }\n /**\n * Removes the request handler for the given method.\n */\n removeRequestHandler(method) {\n this._requestHandlers.delete(method);\n }\n /**\n * Asserts that a request handler has not already been set for the given method, in preparation for a new one being automatically installed.\n */\n assertCanSetRequestHandler(method) {\n if (this._requestHandlers.has(method)) {\n throw new Error(`A request handler for ${method} already exists, which would be overridden`);\n }\n }\n /**\n * Registers a handler to invoke when this protocol object receives a notification with the given method.\n *\n * Note that this will replace any previous notification handler for the same method.\n */\n setNotificationHandler(notificationSchema, handler) {\n this._notificationHandlers.set(notificationSchema.shape.method.value, (notification) => Promise.resolve(handler(notificationSchema.parse(notification))));\n }\n /**\n * Removes the notification handler for the given method.\n */\n removeNotificationHandler(method) {\n this._notificationHandlers.delete(method);\n }\n}\nexport function mergeCapabilities(base, additional) {\n return Object.entries(additional).reduce((acc, [key, value]) => {\n if (value && typeof value === \"object\") {\n acc[key] = acc[key] ? { ...acc[key], ...value } : value;\n }\n else {\n acc[key] = value;\n }\n return acc;\n }, { ...base });\n}\n//# sourceMappingURL=protocol.js.map"],"names":["_a","_b","jsonrpcNotification"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"protocol.js","sources":["../../../../../../../../../../../../node_modules/.pnpm/@modelcontextprotocol+sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js"],"sourcesContent":["import { CancelledNotificationSchema, ErrorCode, isJSONRPCError, isJSONRPCRequest, isJSONRPCResponse, isJSONRPCNotification, McpError, PingRequestSchema, ProgressNotificationSchema, } from \"../types.js\";\n/**\n * The default request timeout, in miliseconds.\n */\nexport const DEFAULT_REQUEST_TIMEOUT_MSEC = 60000;\n/**\n * Implements MCP protocol framing on top of a pluggable transport, including\n * features like request/response linking, notifications, and progress.\n */\nexport class Protocol {\n constructor(_options) {\n this._options = _options;\n this._requestMessageId = 0;\n this._requestHandlers = new Map();\n this._requestHandlerAbortControllers = new Map();\n this._notificationHandlers = new Map();\n this._responseHandlers = new Map();\n this._progressHandlers = new Map();\n this._timeoutInfo = new Map();\n this._pendingDebouncedNotifications = new Set();\n this.setNotificationHandler(CancelledNotificationSchema, (notification) => {\n const controller = this._requestHandlerAbortControllers.get(notification.params.requestId);\n controller === null || controller === void 0 ? void 0 : controller.abort(notification.params.reason);\n });\n this.setNotificationHandler(ProgressNotificationSchema, (notification) => {\n this._onprogress(notification);\n });\n this.setRequestHandler(PingRequestSchema, \n // Automatic pong by default.\n (_request) => ({}));\n }\n _setupTimeout(messageId, timeout, maxTotalTimeout, onTimeout, resetTimeoutOnProgress = false) {\n this._timeoutInfo.set(messageId, {\n timeoutId: setTimeout(onTimeout, timeout),\n startTime: Date.now(),\n timeout,\n maxTotalTimeout,\n resetTimeoutOnProgress,\n onTimeout\n });\n }\n _resetTimeout(messageId) {\n const info = this._timeoutInfo.get(messageId);\n if (!info)\n return false;\n const totalElapsed = Date.now() - info.startTime;\n if (info.maxTotalTimeout && totalElapsed >= info.maxTotalTimeout) {\n this._timeoutInfo.delete(messageId);\n throw new McpError(ErrorCode.RequestTimeout, \"Maximum total timeout exceeded\", { maxTotalTimeout: info.maxTotalTimeout, totalElapsed });\n }\n clearTimeout(info.timeoutId);\n info.timeoutId = setTimeout(info.onTimeout, info.timeout);\n return true;\n }\n _cleanupTimeout(messageId) {\n const info = this._timeoutInfo.get(messageId);\n if (info) {\n clearTimeout(info.timeoutId);\n this._timeoutInfo.delete(messageId);\n }\n }\n /**\n * Attaches to the given transport, starts it, and starts listening for messages.\n *\n * The Protocol object assumes ownership of the Transport, replacing any callbacks that have already been set, and expects that it is the only user of the Transport instance going forward.\n */\n async connect(transport) {\n var _a, _b, _c;\n this._transport = transport;\n const _onclose = (_a = this.transport) === null || _a === void 0 ? void 0 : _a.onclose;\n this._transport.onclose = () => {\n _onclose === null || _onclose === void 0 ? void 0 : _onclose();\n this._onclose();\n };\n const _onerror = (_b = this.transport) === null || _b === void 0 ? void 0 : _b.onerror;\n this._transport.onerror = (error) => {\n _onerror === null || _onerror === void 0 ? void 0 : _onerror(error);\n this._onerror(error);\n };\n const _onmessage = (_c = this._transport) === null || _c === void 0 ? void 0 : _c.onmessage;\n this._transport.onmessage = (message, extra) => {\n _onmessage === null || _onmessage === void 0 ? void 0 : _onmessage(message, extra);\n if (isJSONRPCResponse(message) || isJSONRPCError(message)) {\n this._onresponse(message);\n }\n else if (isJSONRPCRequest(message)) {\n this._onrequest(message, extra);\n }\n else if (isJSONRPCNotification(message)) {\n this._onnotification(message);\n }\n else {\n this._onerror(new Error(`Unknown message type: ${JSON.stringify(message)}`));\n }\n };\n await this._transport.start();\n }\n _onclose() {\n var _a;\n const responseHandlers = this._responseHandlers;\n this._responseHandlers = new Map();\n this._progressHandlers.clear();\n this._pendingDebouncedNotifications.clear();\n this._transport = undefined;\n (_a = this.onclose) === null || _a === void 0 ? void 0 : _a.call(this);\n const error = new McpError(ErrorCode.ConnectionClosed, \"Connection closed\");\n for (const handler of responseHandlers.values()) {\n handler(error);\n }\n }\n _onerror(error) {\n var _a;\n (_a = this.onerror) === null || _a === void 0 ? void 0 : _a.call(this, error);\n }\n _onnotification(notification) {\n var _a;\n const handler = (_a = this._notificationHandlers.get(notification.method)) !== null && _a !== void 0 ? _a : this.fallbackNotificationHandler;\n // Ignore notifications not being subscribed to.\n if (handler === undefined) {\n return;\n }\n // Starting with Promise.resolve() puts any synchronous errors into the monad as well.\n Promise.resolve()\n .then(() => handler(notification))\n .catch((error) => this._onerror(new Error(`Uncaught error in notification handler: ${error}`)));\n }\n _onrequest(request, extra) {\n var _a, _b, _c, _d;\n const handler = (_a = this._requestHandlers.get(request.method)) !== null && _a !== void 0 ? _a : this.fallbackRequestHandler;\n if (handler === undefined) {\n (_b = this._transport) === null || _b === void 0 ? void 0 : _b.send({\n jsonrpc: \"2.0\",\n id: request.id,\n error: {\n code: ErrorCode.MethodNotFound,\n message: \"Method not found\",\n },\n }).catch((error) => this._onerror(new Error(`Failed to send an error response: ${error}`)));\n return;\n }\n const abortController = new AbortController();\n this._requestHandlerAbortControllers.set(request.id, abortController);\n const fullExtra = {\n signal: abortController.signal,\n sessionId: (_c = this._transport) === null || _c === void 0 ? void 0 : _c.sessionId,\n _meta: (_d = request.params) === null || _d === void 0 ? void 0 : _d._meta,\n sendNotification: (notification) => this.notification(notification, { relatedRequestId: request.id }),\n sendRequest: (r, resultSchema, options) => this.request(r, resultSchema, { ...options, relatedRequestId: request.id }),\n authInfo: extra === null || extra === void 0 ? void 0 : extra.authInfo,\n requestId: request.id,\n requestInfo: extra === null || extra === void 0 ? void 0 : extra.requestInfo\n };\n // Starting with Promise.resolve() puts any synchronous errors into the monad as well.\n Promise.resolve()\n .then(() => handler(request, fullExtra))\n .then((result) => {\n var _a;\n if (abortController.signal.aborted) {\n return;\n }\n return (_a = this._transport) === null || _a === void 0 ? void 0 : _a.send({\n result,\n jsonrpc: \"2.0\",\n id: request.id,\n });\n }, (error) => {\n var _a, _b;\n if (abortController.signal.aborted) {\n return;\n }\n return (_a = this._transport) === null || _a === void 0 ? void 0 : _a.send({\n jsonrpc: \"2.0\",\n id: request.id,\n error: {\n code: Number.isSafeInteger(error[\"code\"])\n ? error[\"code\"]\n : ErrorCode.InternalError,\n message: (_b = error.message) !== null && _b !== void 0 ? _b : \"Internal error\",\n },\n });\n })\n .catch((error) => this._onerror(new Error(`Failed to send response: ${error}`)))\n .finally(() => {\n this._requestHandlerAbortControllers.delete(request.id);\n });\n }\n _onprogress(notification) {\n const { progressToken, ...params } = notification.params;\n const messageId = Number(progressToken);\n const handler = this._progressHandlers.get(messageId);\n if (!handler) {\n this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(notification)}`));\n return;\n }\n const responseHandler = this._responseHandlers.get(messageId);\n const timeoutInfo = this._timeoutInfo.get(messageId);\n if (timeoutInfo && responseHandler && timeoutInfo.resetTimeoutOnProgress) {\n try {\n this._resetTimeout(messageId);\n }\n catch (error) {\n responseHandler(error);\n return;\n }\n }\n handler(params);\n }\n _onresponse(response) {\n const messageId = Number(response.id);\n const handler = this._responseHandlers.get(messageId);\n if (handler === undefined) {\n this._onerror(new Error(`Received a response for an unknown message ID: ${JSON.stringify(response)}`));\n return;\n }\n this._responseHandlers.delete(messageId);\n this._progressHandlers.delete(messageId);\n this._cleanupTimeout(messageId);\n if (isJSONRPCResponse(response)) {\n handler(response);\n }\n else {\n const error = new McpError(response.error.code, response.error.message, response.error.data);\n handler(error);\n }\n }\n get transport() {\n return this._transport;\n }\n /**\n * Closes the connection.\n */\n async close() {\n var _a;\n await ((_a = this._transport) === null || _a === void 0 ? void 0 : _a.close());\n }\n /**\n * Sends a request and wait for a response.\n *\n * Do not use this method to emit notifications! Use notification() instead.\n */\n request(request, resultSchema, options) {\n const { relatedRequestId, resumptionToken, onresumptiontoken } = options !== null && options !== void 0 ? options : {};\n return new Promise((resolve, reject) => {\n var _a, _b, _c, _d, _e, _f;\n if (!this._transport) {\n reject(new Error(\"Not connected\"));\n return;\n }\n if (((_a = this._options) === null || _a === void 0 ? void 0 : _a.enforceStrictCapabilities) === true) {\n this.assertCapabilityForMethod(request.method);\n }\n (_b = options === null || options === void 0 ? void 0 : options.signal) === null || _b === void 0 ? void 0 : _b.throwIfAborted();\n const messageId = this._requestMessageId++;\n const jsonrpcRequest = {\n ...request,\n jsonrpc: \"2.0\",\n id: messageId,\n };\n if (options === null || options === void 0 ? void 0 : options.onprogress) {\n this._progressHandlers.set(messageId, options.onprogress);\n jsonrpcRequest.params = {\n ...request.params,\n _meta: {\n ...(((_c = request.params) === null || _c === void 0 ? void 0 : _c._meta) || {}),\n progressToken: messageId\n },\n };\n }\n const cancel = (reason) => {\n var _a;\n this._responseHandlers.delete(messageId);\n this._progressHandlers.delete(messageId);\n this._cleanupTimeout(messageId);\n (_a = this._transport) === null || _a === void 0 ? void 0 : _a.send({\n jsonrpc: \"2.0\",\n method: \"notifications/cancelled\",\n params: {\n requestId: messageId,\n reason: String(reason),\n },\n }, { relatedRequestId, resumptionToken, onresumptiontoken }).catch((error) => this._onerror(new Error(`Failed to send cancellation: ${error}`)));\n reject(reason);\n };\n this._responseHandlers.set(messageId, (response) => {\n var _a;\n if ((_a = options === null || options === void 0 ? void 0 : options.signal) === null || _a === void 0 ? void 0 : _a.aborted) {\n return;\n }\n if (response instanceof Error) {\n return reject(response);\n }\n try {\n const result = resultSchema.parse(response.result);\n resolve(result);\n }\n catch (error) {\n reject(error);\n }\n });\n (_d = options === null || options === void 0 ? void 0 : options.signal) === null || _d === void 0 ? void 0 : _d.addEventListener(\"abort\", () => {\n var _a;\n cancel((_a = options === null || options === void 0 ? void 0 : options.signal) === null || _a === void 0 ? void 0 : _a.reason);\n });\n const timeout = (_e = options === null || options === void 0 ? void 0 : options.timeout) !== null && _e !== void 0 ? _e : DEFAULT_REQUEST_TIMEOUT_MSEC;\n const timeoutHandler = () => cancel(new McpError(ErrorCode.RequestTimeout, \"Request timed out\", { timeout }));\n this._setupTimeout(messageId, timeout, options === null || options === void 0 ? void 0 : options.maxTotalTimeout, timeoutHandler, (_f = options === null || options === void 0 ? void 0 : options.resetTimeoutOnProgress) !== null && _f !== void 0 ? _f : false);\n this._transport.send(jsonrpcRequest, { relatedRequestId, resumptionToken, onresumptiontoken }).catch((error) => {\n this._cleanupTimeout(messageId);\n reject(error);\n });\n });\n }\n /**\n * Emits a notification, which is a one-way message that does not expect a response.\n */\n async notification(notification, options) {\n var _a, _b;\n if (!this._transport) {\n throw new Error(\"Not connected\");\n }\n this.assertNotificationCapability(notification.method);\n const debouncedMethods = (_b = (_a = this._options) === null || _a === void 0 ? void 0 : _a.debouncedNotificationMethods) !== null && _b !== void 0 ? _b : [];\n // A notification can only be debounced if it's in the list AND it's \"simple\"\n // (i.e., has no parameters and no related request ID that could be lost).\n const canDebounce = debouncedMethods.includes(notification.method)\n && !notification.params\n && !(options === null || options === void 0 ? void 0 : options.relatedRequestId);\n if (canDebounce) {\n // If a notification of this type is already scheduled, do nothing.\n if (this._pendingDebouncedNotifications.has(notification.method)) {\n return;\n }\n // Mark this notification type as pending.\n this._pendingDebouncedNotifications.add(notification.method);\n // Schedule the actual send to happen in the next microtask.\n // This allows all synchronous calls in the current event loop tick to be coalesced.\n Promise.resolve().then(() => {\n var _a;\n // Un-mark the notification so the next one can be scheduled.\n this._pendingDebouncedNotifications.delete(notification.method);\n // SAFETY CHECK: If the connection was closed while this was pending, abort.\n if (!this._transport) {\n return;\n }\n const jsonrpcNotification = {\n ...notification,\n jsonrpc: \"2.0\",\n };\n // Send the notification, but don't await it here to avoid blocking.\n // Handle potential errors with a .catch().\n (_a = this._transport) === null || _a === void 0 ? void 0 : _a.send(jsonrpcNotification, options).catch(error => this._onerror(error));\n });\n // Return immediately.\n return;\n }\n const jsonrpcNotification = {\n ...notification,\n jsonrpc: \"2.0\",\n };\n await this._transport.send(jsonrpcNotification, options);\n }\n /**\n * Registers a handler to invoke when this protocol object receives a request with the given method.\n *\n * Note that this will replace any previous request handler for the same method.\n */\n setRequestHandler(requestSchema, handler) {\n const method = requestSchema.shape.method.value;\n this.assertRequestHandlerCapability(method);\n this._requestHandlers.set(method, (request, extra) => {\n return Promise.resolve(handler(requestSchema.parse(request), extra));\n });\n }\n /**\n * Removes the request handler for the given method.\n */\n removeRequestHandler(method) {\n this._requestHandlers.delete(method);\n }\n /**\n * Asserts that a request handler has not already been set for the given method, in preparation for a new one being automatically installed.\n */\n assertCanSetRequestHandler(method) {\n if (this._requestHandlers.has(method)) {\n throw new Error(`A request handler for ${method} already exists, which would be overridden`);\n }\n }\n /**\n * Registers a handler to invoke when this protocol object receives a notification with the given method.\n *\n * Note that this will replace any previous notification handler for the same method.\n */\n setNotificationHandler(notificationSchema, handler) {\n this._notificationHandlers.set(notificationSchema.shape.method.value, (notification) => Promise.resolve(handler(notificationSchema.parse(notification))));\n }\n /**\n * Removes the notification handler for the given method.\n */\n removeNotificationHandler(method) {\n this._notificationHandlers.delete(method);\n }\n}\nexport function mergeCapabilities(base, additional) {\n return Object.entries(additional).reduce((acc, [key, value]) => {\n if (value && typeof value === \"object\") {\n acc[key] = acc[key] ? { ...acc[key], ...value } : value;\n }\n else {\n acc[key] = value;\n }\n return acc;\n }, { ...base });\n}\n//# sourceMappingURL=protocol.js.map"],"names":["_a","_b","jsonrpcNotification"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -1,3 +1,11 @@
|
|
|
1
|
+
;
|
|
2
|
+
!function() {
|
|
3
|
+
try {
|
|
4
|
+
var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
|
|
5
|
+
n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "4222a248-5b0c-428e-8eb9-464a411f67e5", e._sentryDebugIdIdentifier = "sentry-dbid-4222a248-5b0c-428e-8eb9-464a411f67e5");
|
|
6
|
+
} catch (e2) {
|
|
7
|
+
}
|
|
8
|
+
}();
|
|
1
9
|
import { JSONRPCMessageSchema } from "../types.js";
|
|
2
10
|
class ReadBuffer {
|
|
3
11
|
append(chunk) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stdio.js","sources":["../../../../../../../../../../../../node_modules/.pnpm/@modelcontextprotocol+sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/stdio.js"],"sourcesContent":["import { JSONRPCMessageSchema } from \"../types.js\";\n/**\n * Buffers a continuous stdio stream into discrete JSON-RPC messages.\n */\nexport class ReadBuffer {\n append(chunk) {\n this._buffer = this._buffer ? Buffer.concat([this._buffer, chunk]) : chunk;\n }\n readMessage() {\n if (!this._buffer) {\n return null;\n }\n const index = this._buffer.indexOf(\"\\n\");\n if (index === -1) {\n return null;\n }\n const line = this._buffer.toString(\"utf8\", 0, index).replace(/\\r$/, '');\n this._buffer = this._buffer.subarray(index + 1);\n return deserializeMessage(line);\n }\n clear() {\n this._buffer = undefined;\n }\n}\nexport function deserializeMessage(line) {\n return JSONRPCMessageSchema.parse(JSON.parse(line));\n}\nexport function serializeMessage(message) {\n return JSON.stringify(message) + \"\\n\";\n}\n//# sourceMappingURL=stdio.js.map"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"stdio.js","sources":["../../../../../../../../../../../../node_modules/.pnpm/@modelcontextprotocol+sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/stdio.js"],"sourcesContent":["import { JSONRPCMessageSchema } from \"../types.js\";\n/**\n * Buffers a continuous stdio stream into discrete JSON-RPC messages.\n */\nexport class ReadBuffer {\n append(chunk) {\n this._buffer = this._buffer ? Buffer.concat([this._buffer, chunk]) : chunk;\n }\n readMessage() {\n if (!this._buffer) {\n return null;\n }\n const index = this._buffer.indexOf(\"\\n\");\n if (index === -1) {\n return null;\n }\n const line = this._buffer.toString(\"utf8\", 0, index).replace(/\\r$/, '');\n this._buffer = this._buffer.subarray(index + 1);\n return deserializeMessage(line);\n }\n clear() {\n this._buffer = undefined;\n }\n}\nexport function deserializeMessage(line) {\n return JSONRPCMessageSchema.parse(JSON.parse(line));\n}\nexport function serializeMessage(message) {\n return JSON.stringify(message) + \"\\n\";\n}\n//# sourceMappingURL=stdio.js.map"],"names":[],"mappings":";;;;;;;;;AAIO,MAAM,WAAW;AAAA,EACpB,OAAO,OAAO;AACV,SAAK,UAAU,KAAK,UAAU,OAAO,OAAO,CAAC,KAAK,SAAS,KAAK,CAAC,IAAI;AAAA,EACzE;AAAA,EACA,cAAc;AACV,QAAI,CAAC,KAAK,SAAS;AACf,aAAO;AAAA,IACX;AACA,UAAM,QAAQ,KAAK,QAAQ,QAAQ,IAAI;AACvC,QAAI,UAAU,IAAI;AACd,aAAO;AAAA,IACX;AACA,UAAM,OAAO,KAAK,QAAQ,SAAS,QAAQ,GAAG,KAAK,EAAE,QAAQ,OAAO,EAAE;AACtE,SAAK,UAAU,KAAK,QAAQ,SAAS,QAAQ,CAAC;AAC9C,WAAO,mBAAmB,IAAI;AAAA,EAClC;AAAA,EACA,QAAQ;AACJ,SAAK,UAAU;AAAA,EACnB;AACJ;AACO,SAAS,mBAAmB,MAAM;AACrC,SAAO,qBAAqB,MAAM,KAAK,MAAM,IAAI,CAAC;AACtD;AACO,SAAS,iBAAiB,SAAS;AACtC,SAAO,KAAK,UAAU,OAAO,IAAI;AACrC;","x_google_ignoreList":[0]}
|
|
@@ -1,3 +1,11 @@
|
|
|
1
|
+
;
|
|
2
|
+
!function() {
|
|
3
|
+
try {
|
|
4
|
+
var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
|
|
5
|
+
n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "862088f2-7592-425b-8b6c-f4c3487fe800", e._sentryDebugIdIdentifier = "sentry-dbid-862088f2-7592-425b-8b6c-f4c3487fe800");
|
|
6
|
+
} catch (e2) {
|
|
7
|
+
}
|
|
8
|
+
}();
|
|
1
9
|
import { z } from "zod";
|
|
2
10
|
const LATEST_PROTOCOL_VERSION = "2025-06-18";
|
|
3
11
|
const SUPPORTED_PROTOCOL_VERSIONS = [
|