@docrouter/mcp 0.1.1 → 0.2.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/README.md CHANGED
@@ -19,7 +19,7 @@ export DOCROUTER_ORG_API_TOKEN="your-token"
19
19
 
20
20
  ```bash
21
21
  # Build and test
22
- npm run build && npm test
22
+ npm run build && npm run lint && npm run type-check && npm test
23
23
 
24
24
  # Update version and publish
25
25
  npm version patch && npm publish
@@ -445,6 +445,9 @@ npm whoami
445
445
  # Build the project
446
446
  npm run build
447
447
 
448
+ # Run linting and type checks
449
+ npm run lint && npm run type-check
450
+
448
451
  # Run tests to ensure everything works
449
452
  npm test
450
453
 
@@ -519,7 +522,7 @@ To publish updates:
519
522
 
520
523
  1. Make your changes
521
524
  2. Update the version: `npm version patch|minor|major`
522
- 3. Build and test: `npm run build && npm test`
525
+ 3. Build and test: `npm run build && npm run lint && npm run type-check && npm test`
523
526
  4. Publish: `npm publish`
524
527
 
525
528
  ### Troubleshooting
@@ -0,0 +1 @@
1
+ {"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/zod/v3/helpers/typeAliases.d.cts","../node_modules/zod/v3/helpers/util.d.cts","../node_modules/zod/v3/index.d.cts","../node_modules/zod/v3/ZodError.d.cts","../node_modules/zod/v3/locales/en.d.cts","../node_modules/zod/v3/errors.d.cts","../node_modules/zod/v3/helpers/parseUtil.d.cts","../node_modules/zod/v3/helpers/enumUtil.d.cts","../node_modules/zod/v3/helpers/errorUtil.d.cts","../node_modules/zod/v3/helpers/partialUtil.d.cts","../node_modules/zod/v3/standard-schema.d.cts","../node_modules/zod/v3/types.d.cts","../node_modules/zod/v3/external.d.cts","../node_modules/zod/index.d.cts","../node_modules/@modelcontextprotocol/sdk/dist/esm/server/auth/types.d.ts","../node_modules/@modelcontextprotocol/sdk/dist/esm/types.d.ts","../node_modules/@modelcontextprotocol/sdk/dist/esm/shared/transport.d.ts","../node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.d.ts","../node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.d.ts","../node_modules/@modelcontextprotocol/sdk/dist/esm/server/stdio.d.ts","../node_modules/axios/index.d.ts","../node_modules/@docrouter/sdk/dist/index.d.ts","../src/index.ts","../tests/mcp-functionality.test.ts","../node_modules/@types/node/compatibility/disposable.d.ts","../node_modules/@types/node/compatibility/indexable.d.ts","../node_modules/@types/node/compatibility/iterators.d.ts","../node_modules/@types/node/compatibility/index.d.ts","../node_modules/@types/node/globals.typedarray.d.ts","../node_modules/@types/node/buffer.buffer.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/web-globals/abortcontroller.d.ts","../node_modules/@types/node/web-globals/domexception.d.ts","../node_modules/@types/node/web-globals/events.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/file.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/env-http-proxy-agent.d.ts","../node_modules/undici-types/retry-handler.d.ts","../node_modules/undici-types/retry-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/util.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/eventsource.d.ts","../node_modules/undici-types/filereader.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/web-globals/fetch.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.generated.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/sea.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/index.d.ts","../node_modules/@types/yargs-parser/index.d.ts","../node_modules/@types/yargs/index.d.ts","../node_modules/@types/yargs/index.d.mts","../node_modules/@types/istanbul-lib-coverage/index.d.ts","../node_modules/chalk/index.d.ts","../node_modules/@types/istanbul-lib-report/index.d.ts","../node_modules/@types/istanbul-reports/index.d.ts","../node_modules/@sinclair/typebox/typebox.d.ts","../node_modules/@jest/schemas/build/index.d.ts","../node_modules/@jest/types/build/index.d.ts","../node_modules/jest-mock/build/index.d.ts","../node_modules/@types/stack-utils/index.d.ts","../node_modules/jest-message-util/build/index.d.ts","../node_modules/@jest/fake-timers/build/index.d.ts","../node_modules/@jest/environment/build/index.d.ts","../node_modules/@jest/expect-utils/build/index.d.ts","../node_modules/pretty-format/build/index.d.ts","../node_modules/jest-diff/build/index.d.ts","../node_modules/jest-matcher-utils/build/index.d.ts","../node_modules/expect/build/index.d.ts","../node_modules/jest-snapshot/build/index.d.ts","../node_modules/@jest/expect/build/index.d.ts","../node_modules/@jest/globals/build/index.d.ts","../tests/mcp-server.test.ts","../tests/setup.ts","../node_modules/@types/jest/index.d.ts"],"fileIdsList":[[67,76,122],[76,122,166,170,180,181,184],[76,122],[76,122,190,191],[76,122,180,181,183],[76,122,180,181,185,192],[76,122,178],[76,122,170,173,174,175,177,179],[60,62,64,76,122],[62,63,76,122,152],[60,61,62,63,76,122],[62,76,122],[60,61,76,122],[76,122,174],[76,122,176],[76,122,187,190],[76,119,122],[76,121,122],[122],[76,122,127,155],[76,122,123,128,133,141,152,163],[76,122,123,124,133,141],[71,72,73,76,122],[76,122,125,164],[76,122,126,127,134,142],[76,122,127,152,160],[76,122,128,130,133,141],[76,121,122,129],[76,122,130,131],[76,122,132,133],[76,121,122,133],[76,122,133,134,135,152,163],[76,122,133,134,135,148,152,155],[76,122,130,133,136,141,152,163],[76,122,133,134,136,137,141,152,160,163],[76,122,136,138,152,160,163],[74,75,76,77,78,79,80,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,122,133,139],[76,122,140,163,168],[76,122,130,133,141,152],[76,122,142],[76,122,143],[76,121,122,144],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,122,146],[76,122,147],[76,122,133,148,149],[76,122,148,150,164,166],[76,122,133,152,153,155],[76,122,154,155],[76,122,152,153],[76,122,155],[76,122,156],[76,119,122,152,157],[76,122,133,158,159],[76,122,158,159],[76,122,127,141,152,160],[76,122,161],[76,122,141,162],[76,122,136,147,163],[76,122,127,164],[76,122,152,165],[76,122,140,166],[76,122,167],[76,117,122],[76,117,122,133,135,144,152,155,163,166,168],[76,122,152,169],[76,122,172],[76,122,171],[76,122,186,189],[76,122,187],[76,122,175,188],[76,122,180,182],[76,122,180,187,190],[76,122,179],[76,89,93,122,163],[76,89,122,152,163],[76,84,122],[76,86,89,122,160,163],[76,122,141,160],[76,122,170],[76,84,122,170],[76,86,89,122,141,163],[76,81,82,85,88,122,133,152,163],[76,89,96,122],[76,81,87,122],[76,89,110,111,122],[76,85,89,122,155,163,170],[76,110,122,170],[76,83,84,122,170],[76,89,122],[76,83,84,85,86,87,88,89,90,91,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,111,112,113,114,115,116,122],[76,89,104,122],[76,89,96,97,122],[76,87,89,97,98,122],[76,88,122],[76,81,84,89,122],[76,89,93,97,98,122],[76,93,122],[76,87,89,92,122,163],[76,81,86,89,96,122],[76,122,152],[76,84,89,110,122,168,170],[59,76,122],[47,48,49,76,122],[50,51,76,122],[47,48,50,52,53,58,76,122],[48,50,76,122],[58,76,122],[50,76,122],[47,48,50,53,54,55,56,57,76,122],[60,62,65,66,68,76,122,134,143,163],[76,122,134,143],[65,76,122,193],[76,122,193]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"080941d9f9ff9307f7e27a83bcd888b7c8270716c39af943532438932ec1d0b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"d3cfde44f8089768ebb08098c96d01ca260b88bccf238d55eee93f1c620ff5a5","impliedFormat":1},{"version":"293eadad9dead44c6fd1db6de552663c33f215c55a1bfa2802a1bceed88ff0ec","impliedFormat":1},{"version":"833e92c058d033cde3f29a6c7603f517001d1ddd8020bc94d2067a3bc69b2a8e","impliedFormat":1},{"version":"08b2fae7b0f553ad9f79faec864b179fc58bc172e295a70943e8585dd85f600c","impliedFormat":1},{"version":"f12edf1672a94c578eca32216839604f1e1c16b40a1896198deabf99c882b340","impliedFormat":1},{"version":"e3498cf5e428e6c6b9e97bd88736f26d6cf147dedbfa5a8ad3ed8e05e059af8a","impliedFormat":1},{"version":"dba3f34531fd9b1b6e072928b6f885aa4d28dd6789cbd0e93563d43f4b62da53","impliedFormat":1},{"version":"f672c876c1a04a223cf2023b3d91e8a52bb1544c576b81bf64a8fec82be9969c","impliedFormat":1},{"version":"e4b03ddcf8563b1c0aee782a185286ed85a255ce8a30df8453aade2188bbc904","impliedFormat":1},{"version":"2329d90062487e1eaca87b5e06abcbbeeecf80a82f65f949fd332cfcf824b87b","impliedFormat":1},{"version":"25b3f581e12ede11e5739f57a86e8668fbc0124f6649506def306cad2c59d262","impliedFormat":1},{"version":"4fdb529707247a1a917a4626bfb6a293d52cd8ee57ccf03830ec91d39d606d6d","impliedFormat":1},{"version":"a9ebb67d6bbead6044b43714b50dcb77b8f7541ffe803046fdec1714c1eba206","impliedFormat":1},{"version":"5780b706cece027f0d4444fbb4e1af62dc51e19da7c3d3719f67b22b033859b9","impliedFormat":1},{"version":"f17ed72d1b1882ab6dc66d45e699f757d15bba0807af2fc9c3ec98fe367611c1","impliedFormat":99},{"version":"3f4248944c380b995618847b254e64c4fad48e31650c692bb01424df48618a86","impliedFormat":99},{"version":"6ca0b2845c6e95e75e42fe99026c7545c8b4cfd9bc1750bb5421b0699ef89c35","impliedFormat":99},{"version":"b03cab886d1ea68398cec813d86857b97f7100fcc17ad8eabdb033dd6251953f","impliedFormat":99},{"version":"337a6cd986dceb55f190c2a01858f0a60a5b3029162c4b013d138652db54a3de","impliedFormat":99},{"version":"4c2065243522316b3b2a0730768865473f9760647acbba6639bc6ff4052ea959","impliedFormat":99},{"version":"7584239b853f690c6629ae8bb683ded6ff33104e7835778bbca5ee1b1d9a0a91","impliedFormat":99},{"version":"f4d75cc81e9768a630df9227f43da7b2f82e5ef5288d4e2f08f17fea43fd55ce","impliedFormat":1},{"version":"eb8ba3a484d68ab32d2cfe3730e04ad3988be35ef0ad10c55406ea1dc4eb8b62","signature":"43e818adf60173644896298637f47b01d5819b17eda46eaa32d0c7d64724d012"},"40ef74dbfcb48c9213ad3b3f0c023ff4775fbae99bbaf397728d7dce6e260787",{"version":"70521b6ab0dcba37539e5303104f29b721bfb2940b2776da4cc818c07e1fefc1","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab41ef1f2cdafb8df48be20cd969d875602483859dc194e9c97c8a576892c052","affectsGlobalScope":true,"impliedFormat":1},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"a79e62f1e20467e11a904399b8b18b18c0c6eea6b50c1168bf215356d5bebfaf","affectsGlobalScope":true,"impliedFormat":1},{"version":"49a5a44f2e68241a1d2bd9ec894535797998841c09729e506a7cbfcaa40f2180","affectsGlobalScope":true,"impliedFormat":1},{"version":"6d9ef24f9a22a88e3e9b3b3d8c40ab1ddb0853f1bfbd5c843c37800138437b61","affectsGlobalScope":true,"impliedFormat":1},{"version":"1db0b7dca579049ca4193d034d835f6bfe73096c73663e5ef9a0b5779939f3d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","affectsGlobalScope":true,"impliedFormat":1},{"version":"f26b11d8d8e4b8028f1c7d618b22274c892e4b0ef5b3678a8ccbad85419aef43","affectsGlobalScope":true,"impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"763fe0f42b3d79b440a9b6e51e9ba3f3f91352469c1e4b3b67bfa4ff6352f3f4","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","impliedFormat":1},{"version":"7f182617db458e98fc18dfb272d40aa2fff3a353c44a89b2c0ccb3937709bfb5","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"e61be3f894b41b7baa1fbd6a66893f2579bfad01d208b4ff61daef21493ef0a8","impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"615ba88d0128ed16bf83ef8ccbb6aff05c3ee2db1cc0f89ab50a4939bfc1943f","impliedFormat":1},{"version":"a4d551dbf8746780194d550c88f26cf937caf8d56f102969a110cfaed4b06656","impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","impliedFormat":1},{"version":"317e63deeb21ac07f3992f5b50cdca8338f10acd4fbb7257ebf56735bf52ab00","impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","impliedFormat":1},{"version":"2cbe0621042e2a68c7cbce5dfed3906a1862a16a7d496010636cdbdb91341c0f","affectsGlobalScope":true,"impliedFormat":1},{"version":"e2677634fe27e87348825bb041651e22d50a613e2fdf6a4a3ade971d71bac37e","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"8c0bcd6c6b67b4b503c11e91a1fb91522ed585900eab2ab1f61bba7d7caa9d6f","impliedFormat":1},{"version":"567b7f607f400873151d7bc63a049514b53c3c00f5f56e9e95695d93b66a138e","affectsGlobalScope":true,"impliedFormat":1},{"version":"823f9c08700a30e2920a063891df4e357c64333fdba6889522acc5b7ae13fc08","impliedFormat":1},{"version":"84c1930e33d1bb12ad01bcbe11d656f9646bd21b2fb2afd96e8e10615a021aef","impliedFormat":1},{"version":"35ec8b6760fd7138bbf5809b84551e31028fb2ba7b6dc91d95d098bf212ca8b4","affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","impliedFormat":1},{"version":"4b87f767c7bc841511113c876a6b8bf1fd0cb0b718c888ad84478b372ec486b1","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d04e3640dd9eb67f7f1e5bd3d0bf96c784666f7aefc8ac1537af6f2d38d4c29","impliedFormat":1},{"version":"9d19808c8c291a9010a6c788e8532a2da70f811adb431c97520803e0ec649991","impliedFormat":1},{"version":"2bf469abae4cc9c0f340d4e05d9d26e37f936f9c8ca8f007a6534f109dcc77e4","impliedFormat":1},{"version":"4aacb0dd020eeaef65426153686cc639a78ec2885dc72ad220be1d25f1a439df","impliedFormat":1},{"version":"f0bd7e6d931657b59605c44112eaf8b980ba7f957a5051ed21cb93d978cf2f45","impliedFormat":1},{"version":"1d140fe7e071ea06038b6c5e01fea83f72d9d6d68e0d606a3d824323f5133388","affectsGlobalScope":true,"impliedFormat":1},{"version":"4c21aaa8257d7950a5b75a251d9075b6a371208fc948c9c8402f6690ef3b5b55","impliedFormat":1},{"version":"685657a3ec619ef12aa7f754eee3b28598d3bf9749da89839a72a343fffef5ff","impliedFormat":1},{"version":"0b3edeae6a959093315434dd4e870e12182077bc76a178540281a3a12cfd9524","impliedFormat":1},{"version":"de735eca2c51dd8b860254e9fdb6d9ec19fe402dfe597c23090841ce3937cfc5","impliedFormat":1},{"version":"fed70ffbe859d54d8c7e1ef8cc2bc38af99b00a273ebb69ac293d2cb656210bd","impliedFormat":1},{"version":"5650cf3dace09e7c25d384e3e6b818b938f68f4e8de96f52d9c5a1b3db068e86","impliedFormat":1},{"version":"1354ca5c38bd3fd3836a68e0f7c9f91f172582ba30ab15bb8c075891b91502b7","affectsGlobalScope":true,"impliedFormat":1},{"version":"5155da3047ef977944d791a2188ff6e6c225f6975cc1910ab7bb6838ab84cede","impliedFormat":1},{"version":"93f437e1398a4f06a984f441f7fa7a9f0535c04399619b5c22e0b87bdee182cb","impliedFormat":1},{"version":"afbe24ab0d74694372baa632ecb28bb375be53f3be53f9b07ecd7fc994907de5","impliedFormat":1},{"version":"e16d218a30f6a6810b57f7e968124eaa08c7bb366133ea34bbf01e7cd6b8c0ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb8692dea24c27821f77e397272d9ed2eda0b95e4a75beb0fdda31081d15a8ae","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e043a1bc8fbf2a255bccf9bf27e0f1caf916c3b0518ea34aa72357c0afd42ec","impliedFormat":1},{"version":"b4f70ec656a11d570e1a9edce07d118cd58d9760239e2ece99306ee9dfe61d02","impliedFormat":1},{"version":"3bc2f1e2c95c04048212c569ed38e338873f6a8593930cf5a7ef24ffb38fc3b6","impliedFormat":1},{"version":"8145e07aad6da5f23f2fcd8c8e4c5c13fb26ee986a79d03b0829b8fce152d8b2","impliedFormat":1},{"version":"f9d9d753d430ed050dc1bf2667a1bab711ccbb1c1507183d794cc195a5b085cc","impliedFormat":1},{"version":"9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","impliedFormat":1},{"version":"5b6844ad931dcc1d3aca53268f4bd671428421464b1286746027aede398094f2","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"125d792ec6c0c0f657d758055c494301cc5fdb327d9d9d5960b3f129aff76093","impliedFormat":1},{"version":"0225ecb9ed86bdb7a2c7fd01f1556906902929377b44483dc4b83e03b3ef227d","affectsGlobalScope":true,"impliedFormat":1},{"version":"1851a3b4db78664f83901bb9cac9e45e03a37bb5933cc5bf37e10bb7e91ab4eb","impliedFormat":1},{"version":"5eab9b3dc9b34f185417342436ec3f106898da5f4801992d8ff38ab3aff346b5","impliedFormat":1},{"version":"12ed4559eba17cd977aa0db658d25c4047067444b51acfdcbf38470630642b23","affectsGlobalScope":true,"impliedFormat":1},{"version":"f3ffabc95802521e1e4bcba4c88d8615176dc6e09111d920c7a213bdda6e1d65","impliedFormat":1},{"version":"e31e51c55800014d926e3f74208af49cb7352803619855c89296074d1ecbb524","impliedFormat":1},{"version":"ae56f65caf3be91108707bd8dfbccc2a57a91feb5daabf7165a06a945545ed26","impliedFormat":1},{"version":"a136d5de521da20f31631a0a96bf712370779d1c05b7015d7019a9b2a0446ca9","impliedFormat":1},{"version":"dfb96ba5177b68003deec9e773c47257da5c4c8a74053d8956389d832df72002","affectsGlobalScope":true,"impliedFormat":1},{"version":"92d3070580cf72b4bb80959b7f16ede9a3f39e6f4ef2ac87cfa4561844fdc69f","affectsGlobalScope":true,"impliedFormat":1},{"version":"d3dffd70e6375b872f0b4e152de4ae682d762c61a24881ecc5eb9f04c5caf76f","impliedFormat":1},{"version":"613deebaec53731ff6b74fe1a89f094b708033db6396b601df3e6d5ab0ec0a47","impliedFormat":1},{"version":"d91a7d8b5655c42986f1bdfe2105c4408f472831c8f20cf11a8c3345b6b56c8c","impliedFormat":1},{"version":"ed59add13139f84da271cafd32e2171876b0a0af2f798d0c663e8eeb867732cf","affectsGlobalScope":true,"impliedFormat":1},{"version":"e8a979b8af001c9fc2e774e7809d233c8ca955a28756f52ee5dee88ccb0611d2","impliedFormat":1},{"version":"b1810689b76fd473bd12cc9ee219f8e62f54a7d08019a235d07424afbf074d25","impliedFormat":1},{"version":"bae8d023ef6b23df7da26f51cea44321f95817c190342a36882e93b80d07a960","impliedFormat":1},{"version":"26a770cec4bd2e7dbba95c6e536390fffe83c6268b78974a93727903b515c4e7","impliedFormat":1},{"version":"dd5115b329c19c4385af13eda13e3ab03355e711c3f313173fd54ed7d08cfd39","impliedFormat":99},{"version":"035a5df183489c2e22f3cf59fc1ed2b043d27f357eecc0eb8d8e840059d44245","impliedFormat":1},{"version":"0d14fa22c41fdc7277e6f71473b20ebc07f40f00e38875142335d5b63cdfc9d2","impliedFormat":1},{"version":"a4809f4d92317535e6b22b01019437030077a76fec1d93b9881c9ed4738fcc54","impliedFormat":1},{"version":"5f53fa0bd22096d2a78533f94e02c899143b8f0f9891a46965294ee8b91a9434","impliedFormat":1},{"version":"c085e9aa62d1ae1375794c1fb927a445fa105fed891a7e24edbb1c3300f7384a","impliedFormat":1},{"version":"f315e1e65a1f80992f0509e84e4ae2df15ecd9ef73df975f7c98813b71e4c8da","impliedFormat":1},{"version":"e00243d23c495ca2170c9b9e20b5c92331239100b51efdc2b4401cdad859bbef","impliedFormat":1},{"version":"41ea7fd137518560e0d2af581edadadd236b685b5e2f80f083127a28e01cf0ac","impliedFormat":1},{"version":"ab82804a14454734010dcdcd43f564ff7b0389bee4c5692eec76ff5b30d4cf66","impliedFormat":1},{"version":"6fa5d56af71f07dc276aae3f6f30807a9cccf758517fb39742af72e963553d80","impliedFormat":1},{"version":"819dddfec57391f8458929ca8e4377f030d42107ff6ec431e620b70b0695d530","impliedFormat":1},{"version":"701bdef1f4a13932f64c4ce89537f2c66301eb46daf30a16a436c991df568686","impliedFormat":1},{"version":"cdcc132f207d097d7d3aa75615ab9a2e71d6a478162dde8b67f88ea19f3e54de","impliedFormat":1},{"version":"5b9586e9b0b6322e5bfbd2c29bd3b8e21ab9d871f82346cb71020e3d84bae73e","impliedFormat":1},{"version":"3e70a7e67c2cb16f8cd49097360c0309fe9d1e3210ff9222e9dac1f8df9d4fb6","impliedFormat":1},{"version":"ab68d2a3e3e8767c3fba8f80de099a1cfc18c0de79e42cb02ae66e22dfe14a66","impliedFormat":1},{"version":"d96cc6598148bf1a98fb2e8dcf01c63a4b3558bdaec6ef35e087fd0562eb40ec","impliedFormat":1},{"version":"ac5f598a09eed39b957ae3d909b88126f3faf605bd4589c19e9ae85d23ef71e3","impliedFormat":1},{"version":"92abba98a71c0244a6bcdd3ad4d2e04f1d0a8bcae57d2bb865bf53d1ac86e3d0","impliedFormat":1},{"version":"d2afa0d86bc6f2e72c1cf2ecb2372bf1b0f002493706a81f2b9a3ee4f944e219","impliedFormat":1},"c2911e02aa8ed6be65a4a669549208eaf334bae22a1fcae78662abcf393c3b8a","afcc881fc3c085231437820e4fd7f6d1364c4f5e854fc98bca1f650f33c48ee5",{"version":"f8db4fea512ab759b2223b90ecbbe7dae919c02f8ce95ec03f7fb1cf757cfbeb","affectsGlobalScope":true,"impliedFormat":1}],"root":[69,70,194,195],"options":{"allowSyntheticDefaultImports":true,"declaration":true,"declarationMap":true,"esModuleInterop":true,"module":99,"outDir":"./","skipLibCheck":true,"sourceMap":true,"strict":true,"target":7,"tsBuildInfoFile":"./.tsbuildinfo"},"referencedMap":[[68,1],[185,2],[186,3],[192,4],[184,5],[193,6],[179,7],[180,8],[61,3],[65,9],[66,10],[64,11],[63,12],[62,13],[178,3],[174,3],[176,14],[177,15],[196,16],[119,17],[120,17],[121,18],[76,19],[122,20],[123,21],[124,22],[71,3],[74,23],[72,3],[73,3],[125,24],[126,25],[127,26],[128,27],[129,28],[130,29],[131,29],[132,30],[133,31],[134,32],[135,33],[77,3],[75,3],[136,34],[137,35],[138,36],[170,37],[139,38],[140,39],[141,40],[142,41],[143,42],[144,43],[145,44],[146,45],[147,46],[148,47],[149,47],[150,48],[151,3],[152,49],[154,50],[153,51],[155,52],[156,53],[157,54],[158,55],[159,56],[160,57],[161,58],[162,59],[163,60],[164,61],[165,62],[166,63],[167,64],[78,3],[79,3],[80,3],[118,65],[168,66],[169,67],[182,3],[171,3],[173,68],[172,69],[67,3],[175,3],[190,70],[188,71],[189,72],[183,73],[181,3],[191,74],[187,75],[45,3],[46,3],[8,3],[10,3],[9,3],[2,3],[11,3],[12,3],[13,3],[14,3],[15,3],[16,3],[17,3],[18,3],[3,3],[19,3],[20,3],[4,3],[21,3],[25,3],[22,3],[23,3],[24,3],[26,3],[27,3],[28,3],[5,3],[29,3],[30,3],[31,3],[32,3],[6,3],[36,3],[33,3],[34,3],[35,3],[37,3],[7,3],[38,3],[43,3],[44,3],[39,3],[40,3],[41,3],[42,3],[1,3],[96,76],[106,77],[95,76],[116,78],[87,79],[86,80],[115,81],[109,82],[114,83],[89,84],[103,85],[88,86],[112,87],[84,88],[83,81],[113,89],[85,90],[90,91],[91,3],[94,91],[81,3],[117,92],[107,93],[98,94],[99,95],[101,96],[97,97],[100,98],[110,81],[92,99],[93,100],[102,101],[82,102],[105,93],[104,91],[108,3],[111,103],[60,104],[50,105],[52,106],[59,107],[54,3],[55,3],[53,108],[56,109],[47,3],[48,3],[49,104],[51,110],[57,3],[58,111],[69,112],[70,113],[194,114],[195,115]],"affectedFilesPendingEmit":[[69,51],[70,51],[194,51],[195,51]],"version":"5.9.3"}
package/dist/index.js CHANGED
@@ -200,13 +200,14 @@ function validateSchemaFormat(schema) {
200
200
  errors.push("Schema must be an object");
201
201
  return { valid: false, errors, warnings };
202
202
  }
203
- if (!schema.type || schema.type !== "json_schema") {
203
+ const schemaObj = schema;
204
+ if (!schemaObj.type || schemaObj.type !== "json_schema") {
204
205
  errors.push('Schema must have type: "json_schema"');
205
206
  }
206
- if (!schema.json_schema || typeof schema.json_schema !== "object") {
207
+ if (!schemaObj.json_schema || typeof schemaObj.json_schema !== "object") {
207
208
  errors.push("Schema must have json_schema object");
208
209
  } else {
209
- const jsonSchema = schema.json_schema;
210
+ const jsonSchema = schemaObj.json_schema;
210
211
  if (!jsonSchema.name || typeof jsonSchema.name !== "string") {
211
212
  errors.push("json_schema must have a name field");
212
213
  }
@@ -248,8 +249,14 @@ function validateSchemaFormat(schema) {
248
249
  }
249
250
  }
250
251
  }
251
- if (schema.json_schema?.schema?.properties) {
252
- checkForNonPortableFeatures(schema.json_schema.schema.properties, warnings);
252
+ if (schemaObj.json_schema && typeof schemaObj.json_schema === "object") {
253
+ const jsonSchema = schemaObj.json_schema;
254
+ if (jsonSchema.schema && typeof jsonSchema.schema === "object") {
255
+ const innerSchema = jsonSchema.schema;
256
+ if (innerSchema.properties) {
257
+ checkForNonPortableFeatures(innerSchema.properties, warnings);
258
+ }
259
+ }
253
260
  }
254
261
  } catch (error) {
255
262
  errors.push(`Schema validation error: ${error instanceof Error ? error.message : "Unknown error"}`);
@@ -279,18 +286,19 @@ function validateNestedObjects(properties, errors, warnings) {
279
286
  }
280
287
  }
281
288
  if (prop.type === "array" && prop.items) {
282
- if (prop.items.type === "object") {
283
- if (!prop.items.properties || typeof prop.items.properties !== "object") {
289
+ const items = prop.items;
290
+ if (items.type === "object") {
291
+ if (!items.properties || typeof items.properties !== "object") {
284
292
  errors.push(`Array items object "${propName}" must have properties object`);
285
293
  }
286
- if (!Array.isArray(prop.items.required)) {
294
+ if (!Array.isArray(items.required)) {
287
295
  errors.push(`Array items object "${propName}" must have required array`);
288
296
  }
289
- if (prop.items.additionalProperties !== false) {
297
+ if (items.additionalProperties !== false) {
290
298
  errors.push(`Array items object "${propName}" must have additionalProperties: false`);
291
299
  }
292
- if (prop.items.properties) {
293
- validateNestedObjects(prop.items.properties, errors);
300
+ if (items.properties) {
301
+ validateNestedObjects(items.properties, errors);
294
302
  }
295
303
  }
296
304
  }
@@ -319,8 +327,11 @@ function checkForNonPortableFeatures(properties, warnings) {
319
327
  if (prop.type === "object" && prop.properties) {
320
328
  checkForNonPortableFeatures(prop.properties, warnings);
321
329
  }
322
- if (prop.type === "array" && prop.items && prop.items.type === "object" && prop.items.properties) {
323
- checkForNonPortableFeatures(prop.items.properties, warnings);
330
+ if (prop.type === "array" && prop.items) {
331
+ const items = prop.items;
332
+ if (items.type === "object" && items.properties) {
333
+ checkForNonPortableFeatures(items.properties, warnings);
334
+ }
324
335
  }
325
336
  }
326
337
  }
@@ -333,13 +344,14 @@ function validateFormFormat(form) {
333
344
  errors.push("Form must be an object");
334
345
  return { valid: false, errors, warnings };
335
346
  }
336
- if (!form.json_formio || !Array.isArray(form.json_formio)) {
347
+ const formObj = form;
348
+ if (!formObj.json_formio || !Array.isArray(formObj.json_formio)) {
337
349
  errors.push("Form must have json_formio array");
338
350
  return { valid: false, errors, warnings };
339
351
  }
340
- validateFormComponents(form.json_formio, errors, warnings, "");
341
- if (form.json_formio_mapping) {
342
- validateFieldMappings(form.json_formio_mapping, form.json_formio, errors, warnings);
352
+ validateFormComponents(formObj.json_formio, errors, warnings, "");
353
+ if (formObj.json_formio_mapping) {
354
+ validateFieldMappings(formObj.json_formio_mapping, formObj.json_formio, errors, warnings);
343
355
  }
344
356
  } catch (error) {
345
357
  errors.push(`Form validation error: ${error instanceof Error ? error.message : "Unknown error"}`);
@@ -380,49 +392,50 @@ function validateFormComponents(components, errors, warnings, path) {
380
392
  errors.push(`${componentPath}: Component must be an object`);
381
393
  continue;
382
394
  }
383
- if (!component.type) {
395
+ const comp = component;
396
+ if (!comp.type) {
384
397
  errors.push(`${componentPath}: Component must have a "type" field`);
385
- } else if (!validFieldTypes.includes(component.type)) {
386
- warnings.push(`${componentPath}: Unknown field type "${component.type}" - may not render correctly`);
398
+ } else if (!validFieldTypes.includes(comp.type)) {
399
+ warnings.push(`${componentPath}: Unknown field type "${comp.type}" - may not render correctly`);
387
400
  }
388
- if (component.input === true || ["textfield", "email", "number", "select", "textarea", "checkbox", "datetime", "phoneNumber"].includes(component.type)) {
389
- if (!component.key) {
401
+ if (comp.input === true || ["textfield", "email", "number", "select", "textarea", "checkbox", "datetime", "phoneNumber"].includes(comp.type)) {
402
+ if (!comp.key) {
390
403
  errors.push(`${componentPath}: Input component must have a "key" field`);
391
404
  } else {
392
- if (collectedKeys.has(component.key)) {
393
- errors.push(`${componentPath}: Duplicate key "${component.key}" found`);
405
+ if (collectedKeys.has(comp.key)) {
406
+ errors.push(`${componentPath}: Duplicate key "${comp.key}" found`);
394
407
  }
395
- collectedKeys.add(component.key);
396
- if (!/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(component.key)) {
397
- warnings.push(`${componentPath}: Key "${component.key}" should be a valid identifier (alphanumeric and underscore only)`);
408
+ collectedKeys.add(comp.key);
409
+ if (!/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(comp.key)) {
410
+ warnings.push(`${componentPath}: Key "${comp.key}" should be a valid identifier (alphanumeric and underscore only)`);
398
411
  }
399
412
  }
400
- if (!component.label) {
413
+ if (!comp.label) {
401
414
  warnings.push(`${componentPath}: Input component should have a "label" field for better UX`);
402
415
  }
403
416
  }
404
- if (component.type === "select") {
405
- if (!component.data || !component.data.values) {
417
+ if (comp.type === "select") {
418
+ if (!comp.data || !comp.data.values) {
406
419
  errors.push(`${componentPath}: Select field must have data.values array`);
407
- } else if (!Array.isArray(component.data.values)) {
420
+ } else if (!Array.isArray(comp.data.values)) {
408
421
  errors.push(`${componentPath}: data.values must be an array`);
409
- } else if (component.data.values.length === 0) {
422
+ } else if (comp.data.values.length === 0) {
410
423
  warnings.push(`${componentPath}: Select field has empty values array`);
411
424
  }
412
425
  }
413
- if (component.type === "panel" || component.type === "fieldset") {
414
- if (!component.components || !Array.isArray(component.components)) {
415
- errors.push(`${componentPath}: ${component.type} must have components array`);
426
+ if (comp.type === "panel" || comp.type === "fieldset") {
427
+ if (!comp.components || !Array.isArray(comp.components)) {
428
+ errors.push(`${componentPath}: ${comp.type} must have components array`);
416
429
  } else {
417
- validateFormComponents(component.components, errors, warnings, `${componentPath}.components`);
430
+ validateFormComponents(comp.components, errors, warnings, `${componentPath}.components`);
418
431
  }
419
432
  }
420
- if (component.type === "columns") {
421
- if (!component.columns || !Array.isArray(component.columns)) {
433
+ if (comp.type === "columns") {
434
+ if (!comp.columns || !Array.isArray(comp.columns)) {
422
435
  errors.push(`${componentPath}: columns layout must have columns array`);
423
436
  } else {
424
- for (let j = 0; j < component.columns.length; j++) {
425
- const column = component.columns[j];
437
+ for (let j = 0; j < comp.columns.length; j++) {
438
+ const column = comp.columns[j];
426
439
  if (!column.components || !Array.isArray(column.components)) {
427
440
  errors.push(`${componentPath}.columns[${j}]: Column must have components array`);
428
441
  } else {
@@ -431,8 +444,8 @@ function validateFormComponents(components, errors, warnings, path) {
431
444
  }
432
445
  }
433
446
  }
434
- if (component.validate) {
435
- if (typeof component.validate !== "object") {
447
+ if (comp.validate) {
448
+ if (typeof comp.validate !== "object") {
436
449
  errors.push(`${componentPath}: validate must be an object`);
437
450
  }
438
451
  }
@@ -446,11 +459,13 @@ function validateFieldMappings(mappings, formComponents, errors, warnings) {
446
459
  const formKeys = /* @__PURE__ */ new Set();
447
460
  const collectKeys = (components) => {
448
461
  for (const comp of components) {
449
- if (comp.key) formKeys.add(comp.key);
450
- if (comp.components) collectKeys(comp.components);
451
- if (comp.columns) {
452
- for (const col of comp.columns) {
453
- if (col.components) collectKeys(col.components);
462
+ const compObj = comp;
463
+ if (compObj.key) formKeys.add(compObj.key);
464
+ if (compObj.components) collectKeys(compObj.components);
465
+ if (compObj.columns) {
466
+ for (const col of compObj.columns) {
467
+ const colObj = col;
468
+ if (colObj.components) collectKeys(colObj.components);
454
469
  }
455
470
  }
456
471
  }
@@ -506,11 +521,11 @@ var tools = [
506
521
  type: "object",
507
522
  properties: {
508
523
  name: { type: "string", description: "Document name" },
509
- content: { type: "string", description: "Base64 encoded document content" },
510
- type: { type: "string", description: "Document type (pdf, image, etc.)" },
524
+ content: { type: "string", description: "Base64 encoded document content (supports both plain base64 and data URLs)" },
525
+ tag_ids: { type: "array", items: { type: "string" }, description: "Optional list of tag IDs" },
511
526
  metadata: { type: "object", description: "Optional metadata" }
512
527
  },
513
- required: ["name", "content", "type"]
528
+ required: ["name", "content"]
514
529
  }
515
530
  }
516
531
  },
@@ -1008,7 +1023,7 @@ var tools = [
1008
1023
  max_tokens: { type: "number", description: "Maximum tokens" },
1009
1024
  stream: { type: "boolean", description: "Enable streaming" }
1010
1025
  },
1011
- required: ["messages"]
1026
+ required: ["messages", "model"]
1012
1027
  }
1013
1028
  },
1014
1029
  // ========== HELPER TOOLS ==========
@@ -1209,11 +1224,7 @@ server.setRequestHandler(types_js.CallToolRequestSchema, async (request) => {
1209
1224
  // ========== DOCUMENTS ==========
1210
1225
  case "upload_documents": {
1211
1226
  const documentsInput = getArg(args, "documents");
1212
- const documents = documentsInput.map((doc) => ({
1213
- ...doc,
1214
- content: Buffer.from(doc.content, "base64")
1215
- }));
1216
- const result = await docrouterClient.uploadDocuments({ documents });
1227
+ const result = await docrouterClient.uploadDocuments({ documents: documentsInput });
1217
1228
  return {
1218
1229
  content: [
1219
1230
  {
@@ -1639,7 +1650,7 @@ server.setRequestHandler(types_js.CallToolRequestSchema, async (request) => {
1639
1650
  case "run_llm_chat": {
1640
1651
  const result = await docrouterClient.runLLMChat({
1641
1652
  messages: getArg(args, "messages"),
1642
- model: getOptionalArg(args, "model"),
1653
+ model: getArg(args, "model"),
1643
1654
  temperature: getOptionalArg(args, "temperature"),
1644
1655
  max_tokens: getOptionalArg(args, "max_tokens"),
1645
1656
  stream: getOptionalArg(args, "stream")
@@ -1760,9 +1771,9 @@ This server provides access to DocRouter resources and tools.
1760
1771
  }
1761
1772
  case "help_prompts": {
1762
1773
  try {
1763
- const __filename = url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index.js', document.baseURI).href)));
1764
- const __dirname = path.dirname(__filename);
1765
- const promptsPath = path.join(__dirname, "docs/knowledge_base/prompts.md");
1774
+ const currentFile = url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index.js', document.baseURI).href)));
1775
+ const currentDir = path.dirname(currentFile);
1776
+ const promptsPath = path.join(currentDir, "docs/knowledge_base/prompts.md");
1766
1777
  const promptsContent = fs.readFileSync(promptsPath, "utf-8");
1767
1778
  return {
1768
1779
  content: [
@@ -1786,9 +1797,9 @@ This server provides access to DocRouter resources and tools.
1786
1797
  }
1787
1798
  case "help_schemas": {
1788
1799
  try {
1789
- const __filename = url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index.js', document.baseURI).href)));
1790
- const __dirname = path.dirname(__filename);
1791
- const schemasPath = path.join(__dirname, "docs/knowledge_base/schemas.md");
1800
+ const currentFile = url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index.js', document.baseURI).href)));
1801
+ const currentDir = path.dirname(currentFile);
1802
+ const schemasPath = path.join(currentDir, "docs/knowledge_base/schemas.md");
1792
1803
  const schemasContent = fs.readFileSync(schemasPath, "utf-8");
1793
1804
  return {
1794
1805
  content: [
@@ -1812,9 +1823,9 @@ This server provides access to DocRouter resources and tools.
1812
1823
  }
1813
1824
  case "help_forms": {
1814
1825
  try {
1815
- const __filename = url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index.js', document.baseURI).href)));
1816
- const __dirname = path.dirname(__filename);
1817
- const formsPath = path.join(__dirname, "docs/knowledge_base/forms.md");
1826
+ const currentFile = url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index.js', document.baseURI).href)));
1827
+ const currentDir = path.dirname(currentFile);
1828
+ const formsPath = path.join(currentDir, "docs/knowledge_base/forms.md");
1818
1829
  const formsContent = fs.readFileSync(formsPath, "utf-8");
1819
1830
  return {
1820
1831
  content: [