mongo.do 0.1.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.
Files changed (707) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +454 -0
  3. package/dist/agentfs/adapters/anthropic.d.ts +176 -0
  4. package/dist/agentfs/adapters/anthropic.d.ts.map +1 -0
  5. package/dist/agentfs/adapters/anthropic.js +629 -0
  6. package/dist/agentfs/adapters/anthropic.js.map +1 -0
  7. package/dist/agentfs/adapters/index.d.ts +21 -0
  8. package/dist/agentfs/adapters/index.d.ts.map +1 -0
  9. package/dist/agentfs/adapters/index.js +23 -0
  10. package/dist/agentfs/adapters/index.js.map +1 -0
  11. package/dist/agentfs/adapters/vercel.d.ts +260 -0
  12. package/dist/agentfs/adapters/vercel.d.ts.map +1 -0
  13. package/dist/agentfs/adapters/vercel.js +288 -0
  14. package/dist/agentfs/adapters/vercel.js.map +1 -0
  15. package/dist/agentfs/glob.d.ts +116 -0
  16. package/dist/agentfs/glob.d.ts.map +1 -0
  17. package/dist/agentfs/glob.js +270 -0
  18. package/dist/agentfs/glob.js.map +1 -0
  19. package/dist/agentfs/grep.d.ts +83 -0
  20. package/dist/agentfs/grep.d.ts.map +1 -0
  21. package/dist/agentfs/grep.js +193 -0
  22. package/dist/agentfs/grep.js.map +1 -0
  23. package/dist/agentfs/index.d.ts +22 -0
  24. package/dist/agentfs/index.d.ts.map +1 -0
  25. package/dist/agentfs/index.js +18 -0
  26. package/dist/agentfs/index.js.map +1 -0
  27. package/dist/agentfs/kv-store.d.ts +128 -0
  28. package/dist/agentfs/kv-store.d.ts.map +1 -0
  29. package/dist/agentfs/kv-store.js +227 -0
  30. package/dist/agentfs/kv-store.js.map +1 -0
  31. package/dist/agentfs/mondo-agent.d.ts +255 -0
  32. package/dist/agentfs/mondo-agent.d.ts.map +1 -0
  33. package/dist/agentfs/mondo-agent.js +879 -0
  34. package/dist/agentfs/mondo-agent.js.map +1 -0
  35. package/dist/agentfs/toolcalls.d.ts +130 -0
  36. package/dist/agentfs/toolcalls.d.ts.map +1 -0
  37. package/dist/agentfs/toolcalls.js +178 -0
  38. package/dist/agentfs/toolcalls.js.map +1 -0
  39. package/dist/agentfs/types.d.ts +171 -0
  40. package/dist/agentfs/types.d.ts.map +1 -0
  41. package/dist/agentfs/types.js +7 -0
  42. package/dist/agentfs/types.js.map +1 -0
  43. package/dist/agentfs/vfs.d.ts +249 -0
  44. package/dist/agentfs/vfs.d.ts.map +1 -0
  45. package/dist/agentfs/vfs.js +469 -0
  46. package/dist/agentfs/vfs.js.map +1 -0
  47. package/dist/cli/index.d.ts +15 -0
  48. package/dist/cli/index.d.ts.map +1 -0
  49. package/dist/cli/index.js +219 -0
  50. package/dist/cli/index.js.map +1 -0
  51. package/dist/cli/mcp.d.ts +119 -0
  52. package/dist/cli/mcp.d.ts.map +1 -0
  53. package/dist/cli/mcp.js +418 -0
  54. package/dist/cli/mcp.js.map +1 -0
  55. package/dist/cli/server.d.ts +179 -0
  56. package/dist/cli/server.d.ts.map +1 -0
  57. package/dist/cli/server.js +441 -0
  58. package/dist/cli/server.js.map +1 -0
  59. package/dist/client/Collection.d.ts +199 -0
  60. package/dist/client/Collection.d.ts.map +1 -0
  61. package/dist/client/Collection.js +256 -0
  62. package/dist/client/Collection.js.map +1 -0
  63. package/dist/client/Database.d.ts +68 -0
  64. package/dist/client/Database.d.ts.map +1 -0
  65. package/dist/client/Database.js +105 -0
  66. package/dist/client/Database.js.map +1 -0
  67. package/dist/client/MongoClient.d.ts +165 -0
  68. package/dist/client/MongoClient.d.ts.map +1 -0
  69. package/dist/client/MongoClient.js +307 -0
  70. package/dist/client/MongoClient.js.map +1 -0
  71. package/dist/client/aggregation-cursor.d.ts +210 -0
  72. package/dist/client/aggregation-cursor.d.ts.map +1 -0
  73. package/dist/client/aggregation-cursor.js +509 -0
  74. package/dist/client/aggregation-cursor.js.map +1 -0
  75. package/dist/client/bulk-write.d.ts +216 -0
  76. package/dist/client/bulk-write.d.ts.map +1 -0
  77. package/dist/client/bulk-write.js +63 -0
  78. package/dist/client/bulk-write.js.map +1 -0
  79. package/dist/client/change-stream.d.ts +245 -0
  80. package/dist/client/change-stream.d.ts.map +1 -0
  81. package/dist/client/change-stream.js +429 -0
  82. package/dist/client/change-stream.js.map +1 -0
  83. package/dist/client/cursor.d.ts +85 -0
  84. package/dist/client/cursor.d.ts.map +1 -0
  85. package/dist/client/cursor.js +156 -0
  86. package/dist/client/cursor.js.map +1 -0
  87. package/dist/client/http-cursor.d.ts +233 -0
  88. package/dist/client/http-cursor.d.ts.map +1 -0
  89. package/dist/client/http-cursor.js +496 -0
  90. package/dist/client/http-cursor.js.map +1 -0
  91. package/dist/client/index.d.ts +18 -0
  92. package/dist/client/index.d.ts.map +1 -0
  93. package/dist/client/index.js +24 -0
  94. package/dist/client/index.js.map +1 -0
  95. package/dist/client/mongo-client.d.ts +60 -0
  96. package/dist/client/mongo-client.d.ts.map +1 -0
  97. package/dist/client/mongo-client.js +190 -0
  98. package/dist/client/mongo-client.js.map +1 -0
  99. package/dist/client/mongo-collection.d.ts +359 -0
  100. package/dist/client/mongo-collection.d.ts.map +1 -0
  101. package/dist/client/mongo-collection.js +1641 -0
  102. package/dist/client/mongo-collection.js.map +1 -0
  103. package/dist/client/mongo-cursor.d.ts +257 -0
  104. package/dist/client/mongo-cursor.d.ts.map +1 -0
  105. package/dist/client/mongo-cursor.js +621 -0
  106. package/dist/client/mongo-cursor.js.map +1 -0
  107. package/dist/client/mongo-database.d.ts +88 -0
  108. package/dist/client/mongo-database.d.ts.map +1 -0
  109. package/dist/client/mongo-database.js +139 -0
  110. package/dist/client/mongo-database.js.map +1 -0
  111. package/dist/client/session.d.ts +210 -0
  112. package/dist/client/session.d.ts.map +1 -0
  113. package/dist/client/session.js +326 -0
  114. package/dist/client/session.js.map +1 -0
  115. package/dist/durable-object/index-manager.d.ts +173 -0
  116. package/dist/durable-object/index-manager.d.ts.map +1 -0
  117. package/dist/durable-object/index-manager.js +764 -0
  118. package/dist/durable-object/index-manager.js.map +1 -0
  119. package/dist/durable-object/index.d.ts +12 -0
  120. package/dist/durable-object/index.d.ts.map +1 -0
  121. package/dist/durable-object/index.js +8 -0
  122. package/dist/durable-object/index.js.map +1 -0
  123. package/dist/durable-object/mcp-handler.d.ts +52 -0
  124. package/dist/durable-object/mcp-handler.d.ts.map +1 -0
  125. package/dist/durable-object/mcp-handler.js +186 -0
  126. package/dist/durable-object/mcp-handler.js.map +1 -0
  127. package/dist/durable-object/migrations.d.ts +40 -0
  128. package/dist/durable-object/migrations.d.ts.map +1 -0
  129. package/dist/durable-object/migrations.js +121 -0
  130. package/dist/durable-object/migrations.js.map +1 -0
  131. package/dist/durable-object/mondo-database.d.ts +148 -0
  132. package/dist/durable-object/mondo-database.d.ts.map +1 -0
  133. package/dist/durable-object/mondo-database.js +621 -0
  134. package/dist/durable-object/mondo-database.js.map +1 -0
  135. package/dist/durable-object/schema.d.ts +192 -0
  136. package/dist/durable-object/schema.d.ts.map +1 -0
  137. package/dist/durable-object/schema.js +186 -0
  138. package/dist/durable-object/schema.js.map +1 -0
  139. package/dist/embedding/document-serializer.d.ts +118 -0
  140. package/dist/embedding/document-serializer.d.ts.map +1 -0
  141. package/dist/embedding/document-serializer.js +339 -0
  142. package/dist/embedding/document-serializer.js.map +1 -0
  143. package/dist/embedding/embedding-manager.d.ts +136 -0
  144. package/dist/embedding/embedding-manager.d.ts.map +1 -0
  145. package/dist/embedding/embedding-manager.js +176 -0
  146. package/dist/embedding/embedding-manager.js.map +1 -0
  147. package/dist/embedding/index.d.ts +9 -0
  148. package/dist/embedding/index.d.ts.map +1 -0
  149. package/dist/embedding/index.js +9 -0
  150. package/dist/embedding/index.js.map +1 -0
  151. package/dist/executor/aggregation-executor.d.ts +93 -0
  152. package/dist/executor/aggregation-executor.d.ts.map +1 -0
  153. package/dist/executor/aggregation-executor.js +275 -0
  154. package/dist/executor/aggregation-executor.js.map +1 -0
  155. package/dist/executor/function-executor.d.ts +39 -0
  156. package/dist/executor/function-executor.d.ts.map +1 -0
  157. package/dist/executor/function-executor.js +168 -0
  158. package/dist/executor/function-executor.js.map +1 -0
  159. package/dist/executor/index.d.ts +4 -0
  160. package/dist/executor/index.d.ts.map +1 -0
  161. package/dist/executor/index.js +4 -0
  162. package/dist/executor/index.js.map +1 -0
  163. package/dist/executor/vector-search-executor.d.ts +71 -0
  164. package/dist/executor/vector-search-executor.d.ts.map +1 -0
  165. package/dist/executor/vector-search-executor.js +113 -0
  166. package/dist/executor/vector-search-executor.js.map +1 -0
  167. package/dist/index.d.ts +21 -0
  168. package/dist/index.d.ts.map +1 -0
  169. package/dist/index.js +28 -0
  170. package/dist/index.js.map +1 -0
  171. package/dist/mcp/adapters/anthropic-adapter.d.ts +256 -0
  172. package/dist/mcp/adapters/anthropic-adapter.d.ts.map +1 -0
  173. package/dist/mcp/adapters/anthropic-adapter.js +409 -0
  174. package/dist/mcp/adapters/anthropic-adapter.js.map +1 -0
  175. package/dist/mcp/adapters/base-adapter.d.ts +164 -0
  176. package/dist/mcp/adapters/base-adapter.d.ts.map +1 -0
  177. package/dist/mcp/adapters/base-adapter.js +277 -0
  178. package/dist/mcp/adapters/base-adapter.js.map +1 -0
  179. package/dist/mcp/adapters/errors.d.ts +173 -0
  180. package/dist/mcp/adapters/errors.d.ts.map +1 -0
  181. package/dist/mcp/adapters/errors.js +305 -0
  182. package/dist/mcp/adapters/errors.js.map +1 -0
  183. package/dist/mcp/adapters/index.d.ts +65 -0
  184. package/dist/mcp/adapters/index.d.ts.map +1 -0
  185. package/dist/mcp/adapters/index.js +92 -0
  186. package/dist/mcp/adapters/index.js.map +1 -0
  187. package/dist/mcp/adapters/streaming.d.ts +200 -0
  188. package/dist/mcp/adapters/streaming.d.ts.map +1 -0
  189. package/dist/mcp/adapters/streaming.js +381 -0
  190. package/dist/mcp/adapters/streaming.js.map +1 -0
  191. package/dist/mcp/adapters/vercel-adapter.d.ts +321 -0
  192. package/dist/mcp/adapters/vercel-adapter.d.ts.map +1 -0
  193. package/dist/mcp/adapters/vercel-adapter.js +487 -0
  194. package/dist/mcp/adapters/vercel-adapter.js.map +1 -0
  195. package/dist/mcp/agent.d.ts +192 -0
  196. package/dist/mcp/agent.d.ts.map +1 -0
  197. package/dist/mcp/agent.js +338 -0
  198. package/dist/mcp/agent.js.map +1 -0
  199. package/dist/mcp/cli.d.ts +71 -0
  200. package/dist/mcp/cli.d.ts.map +1 -0
  201. package/dist/mcp/cli.js +218 -0
  202. package/dist/mcp/cli.js.map +1 -0
  203. package/dist/mcp/index.d.ts +15 -0
  204. package/dist/mcp/index.d.ts.map +1 -0
  205. package/dist/mcp/index.js +20 -0
  206. package/dist/mcp/index.js.map +1 -0
  207. package/dist/mcp/sandbox/database-proxy.d.ts +118 -0
  208. package/dist/mcp/sandbox/database-proxy.d.ts.map +1 -0
  209. package/dist/mcp/sandbox/database-proxy.js +154 -0
  210. package/dist/mcp/sandbox/database-proxy.js.map +1 -0
  211. package/dist/mcp/sandbox/index.d.ts +8 -0
  212. package/dist/mcp/sandbox/index.d.ts.map +1 -0
  213. package/dist/mcp/sandbox/index.js +7 -0
  214. package/dist/mcp/sandbox/index.js.map +1 -0
  215. package/dist/mcp/sandbox/miniflare-evaluator.d.ts +72 -0
  216. package/dist/mcp/sandbox/miniflare-evaluator.d.ts.map +1 -0
  217. package/dist/mcp/sandbox/miniflare-evaluator.js +379 -0
  218. package/dist/mcp/sandbox/miniflare-evaluator.js.map +1 -0
  219. package/dist/mcp/sandbox/template.d.ts +48 -0
  220. package/dist/mcp/sandbox/template.d.ts.map +1 -0
  221. package/dist/mcp/sandbox/template.js +147 -0
  222. package/dist/mcp/sandbox/template.js.map +1 -0
  223. package/dist/mcp/sandbox/worker-evaluator.d.ts +160 -0
  224. package/dist/mcp/sandbox/worker-evaluator.d.ts.map +1 -0
  225. package/dist/mcp/sandbox/worker-evaluator.js +217 -0
  226. package/dist/mcp/sandbox/worker-evaluator.js.map +1 -0
  227. package/dist/mcp/server.d.ts +75 -0
  228. package/dist/mcp/server.d.ts.map +1 -0
  229. package/dist/mcp/server.js +278 -0
  230. package/dist/mcp/server.js.map +1 -0
  231. package/dist/mcp/tool-call-auditor.d.ts +188 -0
  232. package/dist/mcp/tool-call-auditor.d.ts.map +1 -0
  233. package/dist/mcp/tool-call-auditor.js +198 -0
  234. package/dist/mcp/tool-call-auditor.js.map +1 -0
  235. package/dist/mcp/tools/do.d.ts +51 -0
  236. package/dist/mcp/tools/do.d.ts.map +1 -0
  237. package/dist/mcp/tools/do.js +113 -0
  238. package/dist/mcp/tools/do.js.map +1 -0
  239. package/dist/mcp/tools/fetch.d.ts +43 -0
  240. package/dist/mcp/tools/fetch.d.ts.map +1 -0
  241. package/dist/mcp/tools/fetch.js +127 -0
  242. package/dist/mcp/tools/fetch.js.map +1 -0
  243. package/dist/mcp/tools/index.d.ts +9 -0
  244. package/dist/mcp/tools/index.d.ts.map +1 -0
  245. package/dist/mcp/tools/index.js +9 -0
  246. package/dist/mcp/tools/index.js.map +1 -0
  247. package/dist/mcp/tools/search.d.ts +60 -0
  248. package/dist/mcp/tools/search.d.ts.map +1 -0
  249. package/dist/mcp/tools/search.js +278 -0
  250. package/dist/mcp/tools/search.js.map +1 -0
  251. package/dist/mcp/transport/http.d.ts +144 -0
  252. package/dist/mcp/transport/http.d.ts.map +1 -0
  253. package/dist/mcp/transport/http.js +545 -0
  254. package/dist/mcp/transport/http.js.map +1 -0
  255. package/dist/mcp/transport/index.d.ts +10 -0
  256. package/dist/mcp/transport/index.d.ts.map +1 -0
  257. package/dist/mcp/transport/index.js +12 -0
  258. package/dist/mcp/transport/index.js.map +1 -0
  259. package/dist/mcp/transport/stdio.d.ts +132 -0
  260. package/dist/mcp/transport/stdio.d.ts.map +1 -0
  261. package/dist/mcp/transport/stdio.js +466 -0
  262. package/dist/mcp/transport/stdio.js.map +1 -0
  263. package/dist/mcp/types.d.ts +476 -0
  264. package/dist/mcp/types.d.ts.map +1 -0
  265. package/dist/mcp/types.js +178 -0
  266. package/dist/mcp/types.js.map +1 -0
  267. package/dist/olap/cdc/cdc-buffer.d.ts +92 -0
  268. package/dist/olap/cdc/cdc-buffer.d.ts.map +1 -0
  269. package/dist/olap/cdc/cdc-buffer.js +146 -0
  270. package/dist/olap/cdc/cdc-buffer.js.map +1 -0
  271. package/dist/olap/cdc/cdc-emitter.d.ts +118 -0
  272. package/dist/olap/cdc/cdc-emitter.d.ts.map +1 -0
  273. package/dist/olap/cdc/cdc-emitter.js +217 -0
  274. package/dist/olap/cdc/cdc-emitter.js.map +1 -0
  275. package/dist/olap/cdc/cdc-schema.d.ts +119 -0
  276. package/dist/olap/cdc/cdc-schema.d.ts.map +1 -0
  277. package/dist/olap/cdc/cdc-schema.js +253 -0
  278. package/dist/olap/cdc/cdc-schema.js.map +1 -0
  279. package/dist/olap/cdc/index.d.ts +10 -0
  280. package/dist/olap/cdc/index.d.ts.map +1 -0
  281. package/dist/olap/cdc/index.js +10 -0
  282. package/dist/olap/cdc/index.js.map +1 -0
  283. package/dist/olap/clickhouse/iceberg.d.ts +164 -0
  284. package/dist/olap/clickhouse/iceberg.d.ts.map +1 -0
  285. package/dist/olap/clickhouse/iceberg.js +138 -0
  286. package/dist/olap/clickhouse/iceberg.js.map +1 -0
  287. package/dist/olap/clickhouse/index.d.ts +14 -0
  288. package/dist/olap/clickhouse/index.d.ts.map +1 -0
  289. package/dist/olap/clickhouse/index.js +14 -0
  290. package/dist/olap/clickhouse/index.js.map +1 -0
  291. package/dist/olap/clickhouse/mapper.d.ts +170 -0
  292. package/dist/olap/clickhouse/mapper.d.ts.map +1 -0
  293. package/dist/olap/clickhouse/mapper.js +654 -0
  294. package/dist/olap/clickhouse/mapper.js.map +1 -0
  295. package/dist/olap/clickhouse/olap-backend.d.ts +181 -0
  296. package/dist/olap/clickhouse/olap-backend.d.ts.map +1 -0
  297. package/dist/olap/clickhouse/olap-backend.js +1083 -0
  298. package/dist/olap/clickhouse/olap-backend.js.map +1 -0
  299. package/dist/olap/clickhouse/query-executor.d.ts +163 -0
  300. package/dist/olap/clickhouse/query-executor.d.ts.map +1 -0
  301. package/dist/olap/clickhouse/query-executor.js +560 -0
  302. package/dist/olap/clickhouse/query-executor.js.map +1 -0
  303. package/dist/olap/clickhouse/query.d.ts +134 -0
  304. package/dist/olap/clickhouse/query.d.ts.map +1 -0
  305. package/dist/olap/clickhouse/query.js +512 -0
  306. package/dist/olap/clickhouse/query.js.map +1 -0
  307. package/dist/olap/stage/index.d.ts +6 -0
  308. package/dist/olap/stage/index.d.ts.map +1 -0
  309. package/dist/olap/stage/index.js +6 -0
  310. package/dist/olap/stage/index.js.map +1 -0
  311. package/dist/olap/stage/parser.d.ts +68 -0
  312. package/dist/olap/stage/parser.d.ts.map +1 -0
  313. package/dist/olap/stage/parser.js +293 -0
  314. package/dist/olap/stage/parser.js.map +1 -0
  315. package/dist/olap/stage/router.d.ts +94 -0
  316. package/dist/olap/stage/router.d.ts.map +1 -0
  317. package/dist/olap/stage/router.js +390 -0
  318. package/dist/olap/stage/router.js.map +1 -0
  319. package/dist/rpc/endpoint.d.ts +52 -0
  320. package/dist/rpc/endpoint.d.ts.map +1 -0
  321. package/dist/rpc/endpoint.js +734 -0
  322. package/dist/rpc/endpoint.js.map +1 -0
  323. package/dist/rpc/index.d.ts +34 -0
  324. package/dist/rpc/index.d.ts.map +1 -0
  325. package/dist/rpc/index.js +45 -0
  326. package/dist/rpc/index.js.map +1 -0
  327. package/dist/rpc/rpc-client.d.ts +275 -0
  328. package/dist/rpc/rpc-client.d.ts.map +1 -0
  329. package/dist/rpc/rpc-client.js +735 -0
  330. package/dist/rpc/rpc-client.js.map +1 -0
  331. package/dist/rpc/rpc-target.d.ts +220 -0
  332. package/dist/rpc/rpc-target.d.ts.map +1 -0
  333. package/dist/rpc/rpc-target.js +500 -0
  334. package/dist/rpc/rpc-target.js.map +1 -0
  335. package/dist/rpc/worker-entrypoint.d.ts +159 -0
  336. package/dist/rpc/worker-entrypoint.d.ts.map +1 -0
  337. package/dist/rpc/worker-entrypoint.js +212 -0
  338. package/dist/rpc/worker-entrypoint.js.map +1 -0
  339. package/dist/server.d.ts +18 -0
  340. package/dist/server.d.ts.map +1 -0
  341. package/dist/server.js +129 -0
  342. package/dist/server.js.map +1 -0
  343. package/dist/studio/components/browser/CollectionItem.d.ts +26 -0
  344. package/dist/studio/components/browser/CollectionItem.d.ts.map +1 -0
  345. package/dist/studio/components/browser/CollectionItem.js +143 -0
  346. package/dist/studio/components/browser/CollectionItem.js.map +1 -0
  347. package/dist/studio/components/browser/CollectionTree.d.ts +45 -0
  348. package/dist/studio/components/browser/CollectionTree.d.ts.map +1 -0
  349. package/dist/studio/components/browser/CollectionTree.js +207 -0
  350. package/dist/studio/components/browser/CollectionTree.js.map +1 -0
  351. package/dist/studio/components/browser/ConnectedDatabaseBrowser.d.ts +51 -0
  352. package/dist/studio/components/browser/ConnectedDatabaseBrowser.d.ts.map +1 -0
  353. package/dist/studio/components/browser/ConnectedDatabaseBrowser.js +185 -0
  354. package/dist/studio/components/browser/ConnectedDatabaseBrowser.js.map +1 -0
  355. package/dist/studio/components/browser/DatabaseBrowser.d.ts +46 -0
  356. package/dist/studio/components/browser/DatabaseBrowser.d.ts.map +1 -0
  357. package/dist/studio/components/browser/DatabaseBrowser.js +304 -0
  358. package/dist/studio/components/browser/DatabaseBrowser.js.map +1 -0
  359. package/dist/studio/components/browser/__tests__/CollectionItem.test.d.ts +5 -0
  360. package/dist/studio/components/browser/__tests__/CollectionItem.test.d.ts.map +1 -0
  361. package/dist/studio/components/browser/__tests__/CollectionItem.test.js +169 -0
  362. package/dist/studio/components/browser/__tests__/CollectionItem.test.js.map +1 -0
  363. package/dist/studio/components/browser/__tests__/CollectionTree.test.d.ts +5 -0
  364. package/dist/studio/components/browser/__tests__/CollectionTree.test.d.ts.map +1 -0
  365. package/dist/studio/components/browser/__tests__/CollectionTree.test.js +203 -0
  366. package/dist/studio/components/browser/__tests__/CollectionTree.test.js.map +1 -0
  367. package/dist/studio/components/browser/__tests__/DatabaseBrowser.e2e.test.d.ts +8 -0
  368. package/dist/studio/components/browser/__tests__/DatabaseBrowser.e2e.test.d.ts.map +1 -0
  369. package/dist/studio/components/browser/__tests__/DatabaseBrowser.e2e.test.js +522 -0
  370. package/dist/studio/components/browser/__tests__/DatabaseBrowser.e2e.test.js.map +1 -0
  371. package/dist/studio/components/browser/__tests__/DatabaseBrowser.test.d.ts +5 -0
  372. package/dist/studio/components/browser/__tests__/DatabaseBrowser.test.d.ts.map +1 -0
  373. package/dist/studio/components/browser/__tests__/DatabaseBrowser.test.js +518 -0
  374. package/dist/studio/components/browser/__tests__/DatabaseBrowser.test.js.map +1 -0
  375. package/dist/studio/components/browser/__tests__/setup.d.ts +5 -0
  376. package/dist/studio/components/browser/__tests__/setup.d.ts.map +1 -0
  377. package/dist/studio/components/browser/__tests__/setup.js +22 -0
  378. package/dist/studio/components/browser/__tests__/setup.js.map +1 -0
  379. package/dist/studio/components/browser/index.d.ts +15 -0
  380. package/dist/studio/components/browser/index.d.ts.map +1 -0
  381. package/dist/studio/components/browser/index.js +10 -0
  382. package/dist/studio/components/browser/index.js.map +1 -0
  383. package/dist/studio/components/browser/types.d.ts +33 -0
  384. package/dist/studio/components/browser/types.d.ts.map +1 -0
  385. package/dist/studio/components/browser/types.js +5 -0
  386. package/dist/studio/components/browser/types.js.map +1 -0
  387. package/dist/studio/components/connection/ConnectionForm.d.ts +59 -0
  388. package/dist/studio/components/connection/ConnectionForm.d.ts.map +1 -0
  389. package/dist/studio/components/connection/ConnectionForm.js +274 -0
  390. package/dist/studio/components/connection/ConnectionForm.js.map +1 -0
  391. package/dist/studio/components/connection/ConnectionList.d.ts +59 -0
  392. package/dist/studio/components/connection/ConnectionList.d.ts.map +1 -0
  393. package/dist/studio/components/connection/ConnectionList.js +286 -0
  394. package/dist/studio/components/connection/ConnectionList.js.map +1 -0
  395. package/dist/studio/components/connection/ConnectionPanel.d.ts +132 -0
  396. package/dist/studio/components/connection/ConnectionPanel.d.ts.map +1 -0
  397. package/dist/studio/components/connection/ConnectionPanel.js +293 -0
  398. package/dist/studio/components/connection/ConnectionPanel.js.map +1 -0
  399. package/dist/studio/components/connection/__tests__/ConnectionPanel.test.d.ts +8 -0
  400. package/dist/studio/components/connection/__tests__/ConnectionPanel.test.d.ts.map +1 -0
  401. package/dist/studio/components/connection/__tests__/ConnectionPanel.test.js +632 -0
  402. package/dist/studio/components/connection/__tests__/ConnectionPanel.test.js.map +1 -0
  403. package/dist/studio/components/connection/__tests__/setup.d.ts +5 -0
  404. package/dist/studio/components/connection/__tests__/setup.d.ts.map +1 -0
  405. package/dist/studio/components/connection/__tests__/setup.js +11 -0
  406. package/dist/studio/components/connection/__tests__/setup.js.map +1 -0
  407. package/dist/studio/components/connection/index.d.ts +10 -0
  408. package/dist/studio/components/connection/index.d.ts.map +1 -0
  409. package/dist/studio/components/connection/index.js +7 -0
  410. package/dist/studio/components/connection/index.js.map +1 -0
  411. package/dist/studio/components/crud/DeleteDocumentDialog.d.ts +91 -0
  412. package/dist/studio/components/crud/DeleteDocumentDialog.d.ts.map +1 -0
  413. package/dist/studio/components/crud/DeleteDocumentDialog.js +273 -0
  414. package/dist/studio/components/crud/DeleteDocumentDialog.js.map +1 -0
  415. package/dist/studio/components/crud/DocumentEditor.d.ts +32 -0
  416. package/dist/studio/components/crud/DocumentEditor.d.ts.map +1 -0
  417. package/dist/studio/components/crud/DocumentEditor.js +546 -0
  418. package/dist/studio/components/crud/DocumentEditor.js.map +1 -0
  419. package/dist/studio/components/crud/InsertDocumentDialog.d.ts +78 -0
  420. package/dist/studio/components/crud/InsertDocumentDialog.d.ts.map +1 -0
  421. package/dist/studio/components/crud/InsertDocumentDialog.js +323 -0
  422. package/dist/studio/components/crud/InsertDocumentDialog.js.map +1 -0
  423. package/dist/studio/components/crud/__tests__/DeleteDocumentDialog.test.d.ts +5 -0
  424. package/dist/studio/components/crud/__tests__/DeleteDocumentDialog.test.d.ts.map +1 -0
  425. package/dist/studio/components/crud/__tests__/DeleteDocumentDialog.test.js +298 -0
  426. package/dist/studio/components/crud/__tests__/DeleteDocumentDialog.test.js.map +1 -0
  427. package/dist/studio/components/crud/__tests__/DocumentEditor.test.d.ts +8 -0
  428. package/dist/studio/components/crud/__tests__/DocumentEditor.test.d.ts.map +1 -0
  429. package/dist/studio/components/crud/__tests__/DocumentEditor.test.js +368 -0
  430. package/dist/studio/components/crud/__tests__/DocumentEditor.test.js.map +1 -0
  431. package/dist/studio/components/crud/__tests__/InsertDocumentDialog.test.d.ts +2 -0
  432. package/dist/studio/components/crud/__tests__/InsertDocumentDialog.test.d.ts.map +1 -0
  433. package/dist/studio/components/crud/__tests__/InsertDocumentDialog.test.js +352 -0
  434. package/dist/studio/components/crud/__tests__/InsertDocumentDialog.test.js.map +1 -0
  435. package/dist/studio/components/crud/__tests__/setup.d.ts +5 -0
  436. package/dist/studio/components/crud/__tests__/setup.d.ts.map +1 -0
  437. package/dist/studio/components/crud/__tests__/setup.js +22 -0
  438. package/dist/studio/components/crud/__tests__/setup.js.map +1 -0
  439. package/dist/studio/components/crud/index.d.ts +12 -0
  440. package/dist/studio/components/crud/index.d.ts.map +1 -0
  441. package/dist/studio/components/crud/index.js +11 -0
  442. package/dist/studio/components/crud/index.js.map +1 -0
  443. package/dist/studio/hooks/useConnection.d.ts +127 -0
  444. package/dist/studio/hooks/useConnection.d.ts.map +1 -0
  445. package/dist/studio/hooks/useConnection.js +414 -0
  446. package/dist/studio/hooks/useConnection.js.map +1 -0
  447. package/dist/studio/hooks/useDatabaseBrowser.d.ts +107 -0
  448. package/dist/studio/hooks/useDatabaseBrowser.d.ts.map +1 -0
  449. package/dist/studio/hooks/useDatabaseBrowser.js +294 -0
  450. package/dist/studio/hooks/useDatabaseBrowser.js.map +1 -0
  451. package/dist/studio/index.d.ts +16 -0
  452. package/dist/studio/index.d.ts.map +1 -0
  453. package/dist/studio/index.js +14 -0
  454. package/dist/studio/index.js.map +1 -0
  455. package/dist/studio/types/connection.d.ts +266 -0
  456. package/dist/studio/types/connection.d.ts.map +1 -0
  457. package/dist/studio/types/connection.js +159 -0
  458. package/dist/studio/types/connection.js.map +1 -0
  459. package/dist/studio/vitest.config.d.ts +3 -0
  460. package/dist/studio/vitest.config.d.ts.map +1 -0
  461. package/dist/studio/vitest.config.js +33 -0
  462. package/dist/studio/vitest.config.js.map +1 -0
  463. package/dist/translator/aggregation-translator.d.ts +51 -0
  464. package/dist/translator/aggregation-translator.d.ts.map +1 -0
  465. package/dist/translator/aggregation-translator.js +324 -0
  466. package/dist/translator/aggregation-translator.js.map +1 -0
  467. package/dist/translator/dialect.d.ts +131 -0
  468. package/dist/translator/dialect.d.ts.map +1 -0
  469. package/dist/translator/dialect.js +276 -0
  470. package/dist/translator/dialect.js.map +1 -0
  471. package/dist/translator/geo-translator.d.ts +91 -0
  472. package/dist/translator/geo-translator.d.ts.map +1 -0
  473. package/dist/translator/geo-translator.js +587 -0
  474. package/dist/translator/geo-translator.js.map +1 -0
  475. package/dist/translator/hybrid-translator.d.ts +70 -0
  476. package/dist/translator/hybrid-translator.d.ts.map +1 -0
  477. package/dist/translator/hybrid-translator.js +193 -0
  478. package/dist/translator/hybrid-translator.js.map +1 -0
  479. package/dist/translator/index.d.ts +13 -0
  480. package/dist/translator/index.d.ts.map +1 -0
  481. package/dist/translator/index.js +11 -0
  482. package/dist/translator/index.js.map +1 -0
  483. package/dist/translator/query-translator.d.ts +211 -0
  484. package/dist/translator/query-translator.d.ts.map +1 -0
  485. package/dist/translator/query-translator.js +1276 -0
  486. package/dist/translator/query-translator.js.map +1 -0
  487. package/dist/translator/search-highlight.d.ts +83 -0
  488. package/dist/translator/search-highlight.d.ts.map +1 -0
  489. package/dist/translator/search-highlight.js +83 -0
  490. package/dist/translator/search-highlight.js.map +1 -0
  491. package/dist/translator/search-translator.d.ts +155 -0
  492. package/dist/translator/search-translator.d.ts.map +1 -0
  493. package/dist/translator/search-translator.js +241 -0
  494. package/dist/translator/search-translator.js.map +1 -0
  495. package/dist/translator/stages/add-fields-stage.d.ts +7 -0
  496. package/dist/translator/stages/add-fields-stage.d.ts.map +1 -0
  497. package/dist/translator/stages/add-fields-stage.js +72 -0
  498. package/dist/translator/stages/add-fields-stage.js.map +1 -0
  499. package/dist/translator/stages/bucket-stage.d.ts +7 -0
  500. package/dist/translator/stages/bucket-stage.d.ts.map +1 -0
  501. package/dist/translator/stages/bucket-stage.js +87 -0
  502. package/dist/translator/stages/bucket-stage.js.map +1 -0
  503. package/dist/translator/stages/count-stage.d.ts +7 -0
  504. package/dist/translator/stages/count-stage.d.ts.map +1 -0
  505. package/dist/translator/stages/count-stage.js +12 -0
  506. package/dist/translator/stages/count-stage.js.map +1 -0
  507. package/dist/translator/stages/expression-translator.d.ts +68 -0
  508. package/dist/translator/stages/expression-translator.d.ts.map +1 -0
  509. package/dist/translator/stages/expression-translator.js +467 -0
  510. package/dist/translator/stages/expression-translator.js.map +1 -0
  511. package/dist/translator/stages/facet-stage.d.ts +13 -0
  512. package/dist/translator/stages/facet-stage.d.ts.map +1 -0
  513. package/dist/translator/stages/facet-stage.js +26 -0
  514. package/dist/translator/stages/facet-stage.js.map +1 -0
  515. package/dist/translator/stages/fusion-stages.d.ts +118 -0
  516. package/dist/translator/stages/fusion-stages.d.ts.map +1 -0
  517. package/dist/translator/stages/fusion-stages.js +201 -0
  518. package/dist/translator/stages/fusion-stages.js.map +1 -0
  519. package/dist/translator/stages/group-stage.d.ts +8 -0
  520. package/dist/translator/stages/group-stage.d.ts.map +1 -0
  521. package/dist/translator/stages/group-stage.js +123 -0
  522. package/dist/translator/stages/group-stage.js.map +1 -0
  523. package/dist/translator/stages/index.d.ts +24 -0
  524. package/dist/translator/stages/index.d.ts.map +1 -0
  525. package/dist/translator/stages/index.js +24 -0
  526. package/dist/translator/stages/index.js.map +1 -0
  527. package/dist/translator/stages/join-optimizer.d.ts +37 -0
  528. package/dist/translator/stages/join-optimizer.d.ts.map +1 -0
  529. package/dist/translator/stages/join-optimizer.js +93 -0
  530. package/dist/translator/stages/join-optimizer.js.map +1 -0
  531. package/dist/translator/stages/limit-stage.d.ts +7 -0
  532. package/dist/translator/stages/limit-stage.d.ts.map +1 -0
  533. package/dist/translator/stages/limit-stage.js +11 -0
  534. package/dist/translator/stages/limit-stage.js.map +1 -0
  535. package/dist/translator/stages/lookup-stage.d.ts +7 -0
  536. package/dist/translator/stages/lookup-stage.d.ts.map +1 -0
  537. package/dist/translator/stages/lookup-stage.js +73 -0
  538. package/dist/translator/stages/lookup-stage.js.map +1 -0
  539. package/dist/translator/stages/match-stage.d.ts +7 -0
  540. package/dist/translator/stages/match-stage.d.ts.map +1 -0
  541. package/dist/translator/stages/match-stage.js +14 -0
  542. package/dist/translator/stages/match-stage.js.map +1 -0
  543. package/dist/translator/stages/optimizer.d.ts +15 -0
  544. package/dist/translator/stages/optimizer.d.ts.map +1 -0
  545. package/dist/translator/stages/optimizer.js +249 -0
  546. package/dist/translator/stages/optimizer.js.map +1 -0
  547. package/dist/translator/stages/parallel-facet.d.ts +47 -0
  548. package/dist/translator/stages/parallel-facet.d.ts.map +1 -0
  549. package/dist/translator/stages/parallel-facet.js +57 -0
  550. package/dist/translator/stages/parallel-facet.js.map +1 -0
  551. package/dist/translator/stages/project-stage.d.ts +8 -0
  552. package/dist/translator/stages/project-stage.d.ts.map +1 -0
  553. package/dist/translator/stages/project-stage.js +145 -0
  554. package/dist/translator/stages/project-stage.js.map +1 -0
  555. package/dist/translator/stages/search-stage.d.ts +60 -0
  556. package/dist/translator/stages/search-stage.d.ts.map +1 -0
  557. package/dist/translator/stages/search-stage.js +89 -0
  558. package/dist/translator/stages/search-stage.js.map +1 -0
  559. package/dist/translator/stages/skip-stage.d.ts +7 -0
  560. package/dist/translator/stages/skip-stage.d.ts.map +1 -0
  561. package/dist/translator/stages/skip-stage.js +11 -0
  562. package/dist/translator/stages/skip-stage.js.map +1 -0
  563. package/dist/translator/stages/sort-stage.d.ts +7 -0
  564. package/dist/translator/stages/sort-stage.d.ts.map +1 -0
  565. package/dist/translator/stages/sort-stage.js +21 -0
  566. package/dist/translator/stages/sort-stage.js.map +1 -0
  567. package/dist/translator/stages/types.d.ts +136 -0
  568. package/dist/translator/stages/types.d.ts.map +1 -0
  569. package/dist/translator/stages/types.js +5 -0
  570. package/dist/translator/stages/types.js.map +1 -0
  571. package/dist/translator/stages/unwind-stage.d.ts +7 -0
  572. package/dist/translator/stages/unwind-stage.d.ts.map +1 -0
  573. package/dist/translator/stages/unwind-stage.js +61 -0
  574. package/dist/translator/stages/unwind-stage.js.map +1 -0
  575. package/dist/translator/stages/vector-search-stage.d.ts +53 -0
  576. package/dist/translator/stages/vector-search-stage.d.ts.map +1 -0
  577. package/dist/translator/stages/vector-search-stage.js +62 -0
  578. package/dist/translator/stages/vector-search-stage.js.map +1 -0
  579. package/dist/translator/update-translator.d.ts +148 -0
  580. package/dist/translator/update-translator.d.ts.map +1 -0
  581. package/dist/translator/update-translator.js +819 -0
  582. package/dist/translator/update-translator.js.map +1 -0
  583. package/dist/translator/vector-translator.d.ts +89 -0
  584. package/dist/translator/vector-translator.d.ts.map +1 -0
  585. package/dist/translator/vector-translator.js +106 -0
  586. package/dist/translator/vector-translator.js.map +1 -0
  587. package/dist/types/env.d.ts +31 -0
  588. package/dist/types/env.d.ts.map +1 -0
  589. package/dist/types/env.js +5 -0
  590. package/dist/types/env.js.map +1 -0
  591. package/dist/types/function.d.ts +65 -0
  592. package/dist/types/function.d.ts.map +1 -0
  593. package/dist/types/function.js +5 -0
  594. package/dist/types/function.js.map +1 -0
  595. package/dist/types/index.d.ts +137 -0
  596. package/dist/types/index.d.ts.map +1 -0
  597. package/dist/types/index.js +13 -0
  598. package/dist/types/index.js.map +1 -0
  599. package/dist/types/mongodb.d.ts +258 -0
  600. package/dist/types/mongodb.d.ts.map +1 -0
  601. package/dist/types/mongodb.js +5 -0
  602. package/dist/types/mongodb.js.map +1 -0
  603. package/dist/types/objectid.d.ts +130 -0
  604. package/dist/types/objectid.d.ts.map +1 -0
  605. package/dist/types/objectid.js +314 -0
  606. package/dist/types/objectid.js.map +1 -0
  607. package/dist/types/rpc.d.ts +313 -0
  608. package/dist/types/rpc.d.ts.map +1 -0
  609. package/dist/types/rpc.js +136 -0
  610. package/dist/types/rpc.js.map +1 -0
  611. package/dist/types/vectorize.d.ts +136 -0
  612. package/dist/types/vectorize.d.ts.map +1 -0
  613. package/dist/types/vectorize.js +8 -0
  614. package/dist/types/vectorize.js.map +1 -0
  615. package/dist/utils/sql-safety.d.ts +64 -0
  616. package/dist/utils/sql-safety.d.ts.map +1 -0
  617. package/dist/utils/sql-safety.js +112 -0
  618. package/dist/utils/sql-safety.js.map +1 -0
  619. package/dist/validation/document-validator.d.ts +195 -0
  620. package/dist/validation/document-validator.d.ts.map +1 -0
  621. package/dist/validation/document-validator.js +529 -0
  622. package/dist/validation/document-validator.js.map +1 -0
  623. package/dist/vectorize/document-serializer.d.ts +119 -0
  624. package/dist/vectorize/document-serializer.d.ts.map +1 -0
  625. package/dist/vectorize/document-serializer.js +320 -0
  626. package/dist/vectorize/document-serializer.js.map +1 -0
  627. package/dist/wire/auth/index.d.ts +5 -0
  628. package/dist/wire/auth/index.d.ts.map +1 -0
  629. package/dist/wire/auth/index.js +5 -0
  630. package/dist/wire/auth/index.js.map +1 -0
  631. package/dist/wire/auth/scram.d.ts +160 -0
  632. package/dist/wire/auth/scram.d.ts.map +1 -0
  633. package/dist/wire/auth/scram.js +425 -0
  634. package/dist/wire/auth/scram.js.map +1 -0
  635. package/dist/wire/backend/interface.d.ts +168 -0
  636. package/dist/wire/backend/interface.d.ts.map +1 -0
  637. package/dist/wire/backend/interface.js +10 -0
  638. package/dist/wire/backend/interface.js.map +1 -0
  639. package/dist/wire/backend/local-sqlite.d.ts +89 -0
  640. package/dist/wire/backend/local-sqlite.d.ts.map +1 -0
  641. package/dist/wire/backend/local-sqlite.js +1002 -0
  642. package/dist/wire/backend/local-sqlite.js.map +1 -0
  643. package/dist/wire/backend/query-router.d.ts +197 -0
  644. package/dist/wire/backend/query-router.d.ts.map +1 -0
  645. package/dist/wire/backend/query-router.js +590 -0
  646. package/dist/wire/backend/query-router.js.map +1 -0
  647. package/dist/wire/backend/validation.d.ts +26 -0
  648. package/dist/wire/backend/validation.d.ts.map +1 -0
  649. package/dist/wire/backend/validation.js +79 -0
  650. package/dist/wire/backend/validation.js.map +1 -0
  651. package/dist/wire/backend/workers-proxy.d.ts +95 -0
  652. package/dist/wire/backend/workers-proxy.d.ts.map +1 -0
  653. package/dist/wire/backend/workers-proxy.js +429 -0
  654. package/dist/wire/backend/workers-proxy.js.map +1 -0
  655. package/dist/wire/commands/admin.d.ts +49 -0
  656. package/dist/wire/commands/admin.d.ts.map +1 -0
  657. package/dist/wire/commands/admin.js +272 -0
  658. package/dist/wire/commands/admin.js.map +1 -0
  659. package/dist/wire/commands/aggregate.d.ts +15 -0
  660. package/dist/wire/commands/aggregate.d.ts.map +1 -0
  661. package/dist/wire/commands/aggregate.js +98 -0
  662. package/dist/wire/commands/aggregate.js.map +1 -0
  663. package/dist/wire/commands/auth.d.ts +58 -0
  664. package/dist/wire/commands/auth.d.ts.map +1 -0
  665. package/dist/wire/commands/auth.js +158 -0
  666. package/dist/wire/commands/auth.js.map +1 -0
  667. package/dist/wire/commands/crud.d.ts +49 -0
  668. package/dist/wire/commands/crud.d.ts.map +1 -0
  669. package/dist/wire/commands/crud.js +336 -0
  670. package/dist/wire/commands/crud.js.map +1 -0
  671. package/dist/wire/commands/hello.d.ts +35 -0
  672. package/dist/wire/commands/hello.d.ts.map +1 -0
  673. package/dist/wire/commands/hello.js +204 -0
  674. package/dist/wire/commands/hello.js.map +1 -0
  675. package/dist/wire/commands/index.d.ts +24 -0
  676. package/dist/wire/commands/index.d.ts.map +1 -0
  677. package/dist/wire/commands/index.js +145 -0
  678. package/dist/wire/commands/index.js.map +1 -0
  679. package/dist/wire/commands/router.d.ts +46 -0
  680. package/dist/wire/commands/router.d.ts.map +1 -0
  681. package/dist/wire/commands/router.js +151 -0
  682. package/dist/wire/commands/router.js.map +1 -0
  683. package/dist/wire/commands/types.d.ts +51 -0
  684. package/dist/wire/commands/types.d.ts.map +1 -0
  685. package/dist/wire/commands/types.js +15 -0
  686. package/dist/wire/commands/types.js.map +1 -0
  687. package/dist/wire/index.d.ts +15 -0
  688. package/dist/wire/index.d.ts.map +1 -0
  689. package/dist/wire/index.js +19 -0
  690. package/dist/wire/index.js.map +1 -0
  691. package/dist/wire/message.d.ts +49 -0
  692. package/dist/wire/message.d.ts.map +1 -0
  693. package/dist/wire/message.js +299 -0
  694. package/dist/wire/message.js.map +1 -0
  695. package/dist/wire/server.d.ts +145 -0
  696. package/dist/wire/server.d.ts.map +1 -0
  697. package/dist/wire/server.js +284 -0
  698. package/dist/wire/server.js.map +1 -0
  699. package/dist/wire/types.d.ts +140 -0
  700. package/dist/wire/types.d.ts.map +1 -0
  701. package/dist/wire/types.js +64 -0
  702. package/dist/wire/types.js.map +1 -0
  703. package/dist/worker.d.ts +17 -0
  704. package/dist/worker.d.ts.map +1 -0
  705. package/dist/worker.js +22 -0
  706. package/dist/worker.js.map +1 -0
  707. package/package.json +82 -0
@@ -0,0 +1,305 @@
1
+ /**
2
+ * MCP SDK Adapter Error Types and Utilities
3
+ *
4
+ * Provides standardized error handling for SDK adapters following MCP protocol.
5
+ * Includes:
6
+ * - MCP-specific error codes (JSON-RPC 2.0 compliant)
7
+ * - Typed error classes for different failure modes
8
+ * - Error categorization for retry logic
9
+ * - Utility functions for error handling
10
+ */
11
+ // =============================================================================
12
+ // MCP Error Codes (JSON-RPC 2.0 + MCP Extensions)
13
+ // =============================================================================
14
+ /**
15
+ * Standard JSON-RPC 2.0 error codes used by MCP
16
+ */
17
+ export const McpErrorCode = {
18
+ // Standard JSON-RPC 2.0 errors (-32700 to -32600)
19
+ ParseError: -32700,
20
+ InvalidRequest: -32600,
21
+ MethodNotFound: -32601,
22
+ InvalidParams: -32602,
23
+ InternalError: -32603,
24
+ // Server errors (-32099 to -32000)
25
+ ServerError: -32000,
26
+ ServerBusy: -32001,
27
+ ServerShutdown: -32002,
28
+ // MCP-specific errors (-32899 to -32800)
29
+ ToolNotFound: -32800,
30
+ ToolExecutionError: -32801,
31
+ ResourceNotFound: -32802,
32
+ ResourceAccessDenied: -32803,
33
+ PromptNotFound: -32804,
34
+ InvalidToolResponse: -32805,
35
+ // Transport errors (-32999 to -32900)
36
+ ConnectionError: -32900,
37
+ ConnectionTimeout: -32901,
38
+ ConnectionClosed: -32902,
39
+ RateLimited: -32903,
40
+ AuthenticationFailed: -32904,
41
+ };
42
+ // =============================================================================
43
+ // Base MCP Error Class
44
+ // =============================================================================
45
+ /**
46
+ * Base error class for all MCP-related errors
47
+ *
48
+ * Provides:
49
+ * - MCP error code mapping
50
+ * - Retryability information
51
+ * - Serialization to JSON-RPC format
52
+ *
53
+ * @example
54
+ * ```typescript
55
+ * throw new McpError(
56
+ * McpErrorCode.ToolExecutionError,
57
+ * 'Failed to execute search tool',
58
+ * { originalError: 'Database connection failed', retryable: true }
59
+ * )
60
+ * ```
61
+ */
62
+ export class McpError extends Error {
63
+ code;
64
+ data;
65
+ retryable;
66
+ timestamp;
67
+ constructor(code, message, data) {
68
+ super(message);
69
+ this.name = 'McpError';
70
+ this.code = code;
71
+ if (data) {
72
+ this.data = data;
73
+ }
74
+ this.timestamp = new Date();
75
+ this.retryable = data?.retryable ?? isTransientErrorCode(code);
76
+ // Maintain proper stack trace for where error was thrown
77
+ if (Error.captureStackTrace) {
78
+ Error.captureStackTrace(this, McpError);
79
+ }
80
+ }
81
+ /**
82
+ * Convert to JSON-RPC error response format
83
+ */
84
+ toResponse() {
85
+ return {
86
+ code: this.code,
87
+ message: this.message,
88
+ data: {
89
+ ...this.data,
90
+ timestamp: this.timestamp.toISOString(),
91
+ retryable: this.retryable,
92
+ },
93
+ };
94
+ }
95
+ /**
96
+ * Create from a standard Error
97
+ */
98
+ static fromError(error, code) {
99
+ if (error instanceof McpError) {
100
+ return error;
101
+ }
102
+ const errorCode = code ?? classifyError(error);
103
+ const data = {
104
+ originalError: error.message,
105
+ retryable: isTransientErrorCode(errorCode),
106
+ };
107
+ if (process.env.NODE_ENV === 'development' && error.stack) {
108
+ data.stack = error.stack;
109
+ }
110
+ return new McpError(errorCode, error.message, data);
111
+ }
112
+ }
113
+ // =============================================================================
114
+ // Specific Error Classes
115
+ // =============================================================================
116
+ /**
117
+ * Connection error - network or transport layer failures
118
+ */
119
+ export class ConnectionError extends McpError {
120
+ constructor(message, data) {
121
+ super(McpErrorCode.ConnectionError, message, { ...data, retryable: true });
122
+ this.name = 'ConnectionError';
123
+ }
124
+ }
125
+ /**
126
+ * Timeout error - operation exceeded time limit
127
+ */
128
+ export class TimeoutError extends McpError {
129
+ timeoutMs;
130
+ constructor(message, timeoutMs, data) {
131
+ super(McpErrorCode.ConnectionTimeout, message, { ...data, retryable: true });
132
+ this.name = 'TimeoutError';
133
+ this.timeoutMs = timeoutMs;
134
+ }
135
+ }
136
+ /**
137
+ * Rate limit error - too many requests
138
+ */
139
+ export class RateLimitError extends McpError {
140
+ retryAfterMs;
141
+ constructor(message, retryAfterMs, data) {
142
+ super(McpErrorCode.RateLimited, message, {
143
+ ...data,
144
+ retryable: true,
145
+ retryAfter: retryAfterMs,
146
+ });
147
+ this.name = 'RateLimitError';
148
+ this.retryAfterMs = retryAfterMs;
149
+ }
150
+ }
151
+ /**
152
+ * Authentication error - invalid or expired credentials
153
+ */
154
+ export class AuthenticationError extends McpError {
155
+ constructor(message, data) {
156
+ super(McpErrorCode.AuthenticationFailed, message, { ...data, retryable: false });
157
+ this.name = 'AuthenticationError';
158
+ }
159
+ }
160
+ /**
161
+ * Tool not found error - requested tool doesn't exist
162
+ */
163
+ export class ToolNotFoundError extends McpError {
164
+ toolName;
165
+ constructor(toolName, data) {
166
+ super(McpErrorCode.ToolNotFound, `Tool '${toolName}' not found`, {
167
+ ...data,
168
+ retryable: false,
169
+ });
170
+ this.name = 'ToolNotFoundError';
171
+ this.toolName = toolName;
172
+ }
173
+ }
174
+ /**
175
+ * Tool execution error - tool failed during execution
176
+ */
177
+ export class ToolExecutionError extends McpError {
178
+ toolName;
179
+ constructor(toolName, message, data) {
180
+ super(McpErrorCode.ToolExecutionError, message, data);
181
+ this.name = 'ToolExecutionError';
182
+ this.toolName = toolName;
183
+ }
184
+ }
185
+ /**
186
+ * Invalid params error - request parameters are malformed
187
+ */
188
+ export class InvalidParamsError extends McpError {
189
+ constructor(message, data) {
190
+ super(McpErrorCode.InvalidParams, message, { ...data, retryable: false });
191
+ this.name = 'InvalidParamsError';
192
+ }
193
+ }
194
+ // =============================================================================
195
+ // Error Classification Utilities
196
+ // =============================================================================
197
+ /**
198
+ * Check if an error code represents a transient failure that can be retried
199
+ */
200
+ export function isTransientErrorCode(code) {
201
+ const transientCodes = [
202
+ McpErrorCode.ServerError,
203
+ McpErrorCode.ServerBusy,
204
+ McpErrorCode.ConnectionError,
205
+ McpErrorCode.ConnectionTimeout,
206
+ McpErrorCode.RateLimited,
207
+ ];
208
+ return transientCodes.includes(code);
209
+ }
210
+ /**
211
+ * Classify a standard Error into an MCP error code
212
+ */
213
+ export function classifyError(error) {
214
+ const message = error.message.toLowerCase();
215
+ const name = error.name.toLowerCase();
216
+ // Network/Connection errors
217
+ if (name.includes('fetch') ||
218
+ name.includes('network') ||
219
+ message.includes('econnrefused') ||
220
+ message.includes('econnreset') ||
221
+ message.includes('network') ||
222
+ message.includes('socket')) {
223
+ return McpErrorCode.ConnectionError;
224
+ }
225
+ // Timeout errors
226
+ if (name.includes('timeout') ||
227
+ message.includes('timeout') ||
228
+ message.includes('etimedout') ||
229
+ message.includes('timed out')) {
230
+ return McpErrorCode.ConnectionTimeout;
231
+ }
232
+ // Rate limit errors
233
+ if (message.includes('rate limit') ||
234
+ message.includes('too many requests') ||
235
+ message.includes('429')) {
236
+ return McpErrorCode.RateLimited;
237
+ }
238
+ // Authentication errors
239
+ if (message.includes('unauthorized') ||
240
+ message.includes('authentication') ||
241
+ message.includes('401') ||
242
+ message.includes('403')) {
243
+ return McpErrorCode.AuthenticationFailed;
244
+ }
245
+ // Parse errors
246
+ if (name.includes('syntaxerror') ||
247
+ message.includes('json') ||
248
+ message.includes('parse')) {
249
+ return McpErrorCode.ParseError;
250
+ }
251
+ // Default to internal error
252
+ return McpErrorCode.InternalError;
253
+ }
254
+ /**
255
+ * Check if an error is retryable
256
+ */
257
+ export function isRetryableError(error) {
258
+ if (error instanceof McpError) {
259
+ return error.retryable;
260
+ }
261
+ return isTransientErrorCode(classifyError(error));
262
+ }
263
+ /**
264
+ * Get retry delay from error (if rate limited) or use default
265
+ */
266
+ export function getRetryDelay(error, defaultDelayMs = 1000) {
267
+ if (error instanceof RateLimitError) {
268
+ return error.retryAfterMs;
269
+ }
270
+ if (error instanceof McpError && error.data?.retryAfter) {
271
+ return error.data.retryAfter;
272
+ }
273
+ return defaultDelayMs;
274
+ }
275
+ // =============================================================================
276
+ // Error Wrapping Utilities
277
+ // =============================================================================
278
+ /**
279
+ * Wrap an async function with MCP error handling
280
+ *
281
+ * @example
282
+ * ```typescript
283
+ * const safeFetch = wrapWithMcpError(async () => {
284
+ * const response = await fetch(url)
285
+ * return response.json()
286
+ * })
287
+ * ```
288
+ */
289
+ export function wrapWithMcpError(fn, defaultCode) {
290
+ return fn().catch((error) => {
291
+ throw McpError.fromError(error, defaultCode);
292
+ });
293
+ }
294
+ /**
295
+ * Create a JSON-RPC error response from an Error
296
+ */
297
+ export function createErrorResponse(error, requestId) {
298
+ const mcpError = McpError.fromError(error);
299
+ const response = mcpError.toResponse();
300
+ if (requestId !== undefined) {
301
+ response.data = { ...response.data, requestId };
302
+ }
303
+ return response;
304
+ }
305
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/mcp/adapters/errors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * MCP SDK Adapters
3
+ *
4
+ * Provides adapters for integrating MCP servers with popular AI SDKs:
5
+ *
6
+ * - **Anthropic Adapter**: For Claude models via Anthropic's SDK
7
+ * - **Vercel Adapter**: For Vercel AI SDK (compatible with OpenAI, Anthropic, etc.)
8
+ *
9
+ * ## Features
10
+ *
11
+ * - **Error Handling**: Proper MCP error responses with retry logic
12
+ * - **Timeout Handling**: Configurable timeouts with AbortController
13
+ * - **Streaming Support**: Stream large responses efficiently
14
+ * - **WebSocket Integration**: Real-time streaming over WebSocket
15
+ *
16
+ * ## Quick Start
17
+ *
18
+ * ### Anthropic SDK
19
+ *
20
+ * ```typescript
21
+ * import { createMcpServer } from '../server'
22
+ * import { createAnthropicAdapter } from './adapters'
23
+ *
24
+ * const server = createMcpServer({ dbAccess })
25
+ * const adapter = createAnthropicAdapter({ server })
26
+ *
27
+ * await adapter.initialize()
28
+ * const tools = await adapter.getTools()
29
+ *
30
+ * // Use with Anthropic SDK
31
+ * const response = await anthropic.messages.create({
32
+ * model: 'claude-3-opus-20240229',
33
+ * tools,
34
+ * messages: [{ role: 'user', content: 'Search for documents' }],
35
+ * })
36
+ * ```
37
+ *
38
+ * ### Vercel AI SDK
39
+ *
40
+ * ```typescript
41
+ * import { generateText } from 'ai'
42
+ * import { createMcpServer } from '../server'
43
+ * import { createVercelAdapter } from './adapters'
44
+ *
45
+ * const server = createMcpServer({ dbAccess })
46
+ * const adapter = createVercelAdapter({ server })
47
+ *
48
+ * await adapter.initialize()
49
+ * const tools = await adapter.getTools()
50
+ *
51
+ * const result = await generateText({
52
+ * model: openai('gpt-4'),
53
+ * tools,
54
+ * prompt: 'Search for AI documents',
55
+ * })
56
+ * ```
57
+ *
58
+ * @module mcp/adapters
59
+ */
60
+ export { McpErrorCode, type McpErrorCodeType, type McpErrorData, type McpErrorResponse, McpError, ConnectionError, TimeoutError, RateLimitError, AuthenticationError, ToolNotFoundError, ToolExecutionError, InvalidParamsError, isTransientErrorCode, classifyError, isRetryableError, getRetryDelay, wrapWithMcpError, createErrorResponse, } from './errors';
61
+ export { BaseAdapter, type RetryConfig, type TimeoutConfig, type LogConfig, type BaseAdapterConfig, type ToolCallResult, type BatchOptions, } from './base-adapter';
62
+ export { type StreamChunk, type StreamProgressCallback, type StreamOptions, type WebSocketMessageType, type WebSocketMessage, streamTextContent, streamFileContent, type SearchStreamOptions, type SearchResultItem, streamSearchResults, type WebSocketStreamConfig, streamToWebSocket, collectStreamToResponse, streamToMcpContent, combineStreams, rateLimitStream, bufferStream, } from './streaming';
63
+ export { AnthropicAdapter, createAnthropicAdapter, type AnthropicAdapterConfig, type AnthropicTool, type AnthropicToolParameter, type AnthropicToolUse, type AnthropicToolResult, type AnthropicToolResultContent, type AnthropicApiError, } from './anthropic-adapter';
64
+ export { VercelAdapter, createVercelAdapter, formatToolResults, type VercelAdapterConfig, type VercelToolParameters, type VercelCoreTool, type VercelToolCall, type VercelToolResult, type VercelStreamable, type VercelStreamOptions, } from './vercel-adapter';
65
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mcp/adapters/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;AAMH,OAAO,EAEL,YAAY,EACZ,KAAK,gBAAgB,EAGrB,KAAK,YAAY,EACjB,KAAK,gBAAgB,EAGrB,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,cAAc,EACd,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAGlB,oBAAoB,EACpB,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,UAAU,CAAA;AAMjB,OAAO,EACL,WAAW,EAGX,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,SAAS,EACd,KAAK,iBAAiB,EAGtB,KAAK,cAAc,EACnB,KAAK,YAAY,GAClB,MAAM,gBAAgB,CAAA;AAMvB,OAAO,EAEL,KAAK,WAAW,EAChB,KAAK,sBAAsB,EAC3B,KAAK,aAAa,EAClB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EAGrB,iBAAiB,EACjB,iBAAiB,EAGjB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,mBAAmB,EAGnB,KAAK,qBAAqB,EAC1B,iBAAiB,EAGjB,uBAAuB,EACvB,kBAAkB,EAGlB,cAAc,EACd,eAAe,EACf,YAAY,GACb,MAAM,aAAa,CAAA;AAMpB,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EAGtB,KAAK,sBAAsB,EAC3B,KAAK,aAAa,EAClB,KAAK,sBAAsB,EAC3B,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,0BAA0B,EAC/B,KAAK,iBAAiB,GACvB,MAAM,qBAAqB,CAAA;AAM5B,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EAGjB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,GACzB,MAAM,kBAAkB,CAAA"}
@@ -0,0 +1,92 @@
1
+ /**
2
+ * MCP SDK Adapters
3
+ *
4
+ * Provides adapters for integrating MCP servers with popular AI SDKs:
5
+ *
6
+ * - **Anthropic Adapter**: For Claude models via Anthropic's SDK
7
+ * - **Vercel Adapter**: For Vercel AI SDK (compatible with OpenAI, Anthropic, etc.)
8
+ *
9
+ * ## Features
10
+ *
11
+ * - **Error Handling**: Proper MCP error responses with retry logic
12
+ * - **Timeout Handling**: Configurable timeouts with AbortController
13
+ * - **Streaming Support**: Stream large responses efficiently
14
+ * - **WebSocket Integration**: Real-time streaming over WebSocket
15
+ *
16
+ * ## Quick Start
17
+ *
18
+ * ### Anthropic SDK
19
+ *
20
+ * ```typescript
21
+ * import { createMcpServer } from '../server'
22
+ * import { createAnthropicAdapter } from './adapters'
23
+ *
24
+ * const server = createMcpServer({ dbAccess })
25
+ * const adapter = createAnthropicAdapter({ server })
26
+ *
27
+ * await adapter.initialize()
28
+ * const tools = await adapter.getTools()
29
+ *
30
+ * // Use with Anthropic SDK
31
+ * const response = await anthropic.messages.create({
32
+ * model: 'claude-3-opus-20240229',
33
+ * tools,
34
+ * messages: [{ role: 'user', content: 'Search for documents' }],
35
+ * })
36
+ * ```
37
+ *
38
+ * ### Vercel AI SDK
39
+ *
40
+ * ```typescript
41
+ * import { generateText } from 'ai'
42
+ * import { createMcpServer } from '../server'
43
+ * import { createVercelAdapter } from './adapters'
44
+ *
45
+ * const server = createMcpServer({ dbAccess })
46
+ * const adapter = createVercelAdapter({ server })
47
+ *
48
+ * await adapter.initialize()
49
+ * const tools = await adapter.getTools()
50
+ *
51
+ * const result = await generateText({
52
+ * model: openai('gpt-4'),
53
+ * tools,
54
+ * prompt: 'Search for AI documents',
55
+ * })
56
+ * ```
57
+ *
58
+ * @module mcp/adapters
59
+ */
60
+ // =============================================================================
61
+ // Error Types and Utilities
62
+ // =============================================================================
63
+ export {
64
+ // Error codes
65
+ McpErrorCode,
66
+ // Error classes
67
+ McpError, ConnectionError, TimeoutError, RateLimitError, AuthenticationError, ToolNotFoundError, ToolExecutionError, InvalidParamsError,
68
+ // Error utilities
69
+ isTransientErrorCode, classifyError, isRetryableError, getRetryDelay, wrapWithMcpError, createErrorResponse, } from './errors';
70
+ // =============================================================================
71
+ // Base Adapter
72
+ // =============================================================================
73
+ export { BaseAdapter, } from './base-adapter';
74
+ // =============================================================================
75
+ // Streaming Utilities
76
+ // =============================================================================
77
+ export {
78
+ // Content streaming
79
+ streamTextContent, streamFileContent, streamSearchResults, streamToWebSocket,
80
+ // MCP response streaming
81
+ collectStreamToResponse, streamToMcpContent,
82
+ // Stream utilities
83
+ combineStreams, rateLimitStream, bufferStream, } from './streaming';
84
+ // =============================================================================
85
+ // Anthropic Adapter
86
+ // =============================================================================
87
+ export { AnthropicAdapter, createAnthropicAdapter, } from './anthropic-adapter';
88
+ // =============================================================================
89
+ // Vercel Adapter
90
+ // =============================================================================
91
+ export { VercelAdapter, createVercelAdapter, formatToolResults, } from './vercel-adapter';
92
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mcp/adapters/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;AAEH,gFAAgF;AAChF,4BAA4B;AAC5B,gFAAgF;AAEhF,OAAO;AACL,cAAc;AACd,YAAY;AAOZ,gBAAgB;AAChB,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,cAAc,EACd,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB;AAElB,kBAAkB;AAClB,oBAAoB,EACpB,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,UAAU,CAAA;AAEjB,gFAAgF;AAChF,eAAe;AACf,gFAAgF;AAEhF,OAAO,EACL,WAAW,GAWZ,MAAM,gBAAgB,CAAA;AAEvB,gFAAgF;AAChF,sBAAsB;AACtB,gFAAgF;AAEhF,OAAO;AAQL,oBAAoB;AACpB,iBAAiB,EACjB,iBAAiB,EAKjB,mBAAmB,EAInB,iBAAiB;AAEjB,yBAAyB;AACzB,uBAAuB,EACvB,kBAAkB;AAElB,mBAAmB;AACnB,cAAc,EACd,eAAe,EACf,YAAY,GACb,MAAM,aAAa,CAAA;AAEpB,gFAAgF;AAChF,oBAAoB;AACpB,gFAAgF;AAEhF,OAAO,EACL,gBAAgB,EAChB,sBAAsB,GAUvB,MAAM,qBAAqB,CAAA;AAE5B,gFAAgF;AAChF,iBAAiB;AACjB,gFAAgF;AAEhF,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,iBAAiB,GAUlB,MAAM,kBAAkB,CAAA"}
@@ -0,0 +1,200 @@
1
+ /**
2
+ * Streaming Utilities for MCP SDK Adapters
3
+ *
4
+ * Provides streaming support for:
5
+ * - Large file reads with chunked transfer
6
+ * - Grep/search results streaming
7
+ * - WebSocket integration for real-time updates
8
+ * - Async iterator utilities
9
+ *
10
+ * All streaming operations are designed to be memory-efficient
11
+ * and support backpressure handling.
12
+ */
13
+ import type { McpToolResponse, McpTextContent } from '../types';
14
+ /**
15
+ * A chunk of streamed content
16
+ */
17
+ export interface StreamChunk {
18
+ /** Chunk index (0-based) */
19
+ index: number;
20
+ /** Content of this chunk */
21
+ content: string;
22
+ /** Whether this is the final chunk */
23
+ done: boolean;
24
+ /** Total size if known */
25
+ totalSize?: number;
26
+ /** Bytes transferred so far */
27
+ bytesTransferred: number;
28
+ }
29
+ /**
30
+ * Stream progress callback
31
+ */
32
+ export type StreamProgressCallback = (chunk: StreamChunk) => void;
33
+ /**
34
+ * Stream options
35
+ */
36
+ export interface StreamOptions {
37
+ /** Chunk size in bytes (default: 64KB) */
38
+ chunkSize?: number;
39
+ /** Progress callback */
40
+ onProgress?: StreamProgressCallback;
41
+ /** Abort signal for cancellation */
42
+ signal?: AbortSignal;
43
+ /** Transform each chunk before yielding */
44
+ transform?: (content: string) => string;
45
+ }
46
+ /**
47
+ * WebSocket message types
48
+ */
49
+ export type WebSocketMessageType = 'stream_start' | 'stream_chunk' | 'stream_end' | 'stream_error' | 'tool_result';
50
+ /**
51
+ * WebSocket message format
52
+ */
53
+ export interface WebSocketMessage {
54
+ type: WebSocketMessageType;
55
+ requestId: string;
56
+ data: unknown;
57
+ timestamp: string;
58
+ }
59
+ /**
60
+ * Create a streaming response from text content
61
+ *
62
+ * Splits large text content into chunks for efficient transmission.
63
+ * Yields chunks as an async iterator.
64
+ *
65
+ * @param content - Text content to stream
66
+ * @param options - Stream options
67
+ * @yields StreamChunk for each chunk of content
68
+ *
69
+ * @example
70
+ * ```typescript
71
+ * const content = await readLargeFile()
72
+ * for await (const chunk of streamTextContent(content, { chunkSize: 32768 })) {
73
+ * socket.send(JSON.stringify({ type: 'chunk', data: chunk }))
74
+ * }
75
+ * ```
76
+ */
77
+ export declare function streamTextContent(content: string, options?: StreamOptions): AsyncGenerator<StreamChunk, void, undefined>;
78
+ /**
79
+ * Stream file content in chunks
80
+ *
81
+ * Reads a file and streams its content in chunks suitable for
82
+ * MCP tool responses.
83
+ *
84
+ * @param readFn - Function to read file content (allows dependency injection)
85
+ * @param filePath - Path to the file
86
+ * @param options - Stream options
87
+ * @yields StreamChunk for each chunk of file content
88
+ */
89
+ export declare function streamFileContent(readFn: (path: string, options?: {
90
+ offset?: number;
91
+ length?: number;
92
+ }) => Promise<string>, filePath: string, options?: StreamOptions): AsyncGenerator<StreamChunk, void, undefined>;
93
+ /**
94
+ * Options for streaming search results
95
+ */
96
+ export interface SearchStreamOptions extends StreamOptions {
97
+ /** Maximum results per chunk (default: 100) */
98
+ resultsPerChunk?: number;
99
+ /** Include match context (default: true) */
100
+ includeContext?: boolean;
101
+ }
102
+ /**
103
+ * A search result item
104
+ */
105
+ export interface SearchResultItem {
106
+ /** File or document path */
107
+ path: string;
108
+ /** Line number (for text search) */
109
+ line?: number;
110
+ /** Match content */
111
+ content: string;
112
+ /** Context around match */
113
+ context?: string;
114
+ }
115
+ /**
116
+ * Stream search results
117
+ *
118
+ * Yields search results in batches as they are found.
119
+ * Useful for grep-like operations on large codebases.
120
+ *
121
+ * @param searchFn - Async generator that yields search results
122
+ * @param options - Stream options
123
+ * @yields StreamChunk containing batched search results
124
+ */
125
+ export declare function streamSearchResults(searchFn: () => AsyncGenerator<SearchResultItem, void, undefined>, options?: SearchStreamOptions): AsyncGenerator<StreamChunk, void, undefined>;
126
+ /**
127
+ * WebSocket stream handler configuration
128
+ */
129
+ export interface WebSocketStreamConfig {
130
+ /** Send function for the WebSocket */
131
+ send: (message: string) => void;
132
+ /** Request ID for correlation */
133
+ requestId: string;
134
+ /** Idle timeout in ms (default: 30000) */
135
+ idleTimeout?: number;
136
+ /** Error handler */
137
+ onError?: (error: Error) => void;
138
+ }
139
+ /**
140
+ * Stream content over a WebSocket connection
141
+ *
142
+ * Sends stream chunks as WebSocket messages with proper
143
+ * framing and error handling.
144
+ *
145
+ * @param stream - Async iterator of stream chunks
146
+ * @param config - WebSocket configuration
147
+ *
148
+ * @example
149
+ * ```typescript
150
+ * const stream = streamTextContent(largeContent)
151
+ * await streamToWebSocket(stream, {
152
+ * send: (msg) => ws.send(msg),
153
+ * requestId: 'req-123',
154
+ * })
155
+ * ```
156
+ */
157
+ export declare function streamToWebSocket(stream: AsyncIterable<StreamChunk>, config: WebSocketStreamConfig): Promise<void>;
158
+ /**
159
+ * Convert stream chunks to MCP tool response
160
+ *
161
+ * Collects all stream chunks and creates a single MCP tool response.
162
+ * Useful when the SDK doesn't support streaming natively.
163
+ *
164
+ * @param stream - Async iterator of stream chunks
165
+ * @returns Complete MCP tool response
166
+ */
167
+ export declare function collectStreamToResponse(stream: AsyncIterable<StreamChunk>): Promise<McpToolResponse>;
168
+ /**
169
+ * Create a streaming MCP tool response generator
170
+ *
171
+ * Wraps stream chunks as MCP text content for streaming responses.
172
+ *
173
+ * @param stream - Async iterator of stream chunks
174
+ * @yields McpTextContent for each chunk
175
+ */
176
+ export declare function streamToMcpContent(stream: AsyncIterable<StreamChunk>): AsyncGenerator<McpTextContent, void, undefined>;
177
+ /**
178
+ * Combine multiple streams into a single stream
179
+ *
180
+ * @param streams - Array of async iterables to combine
181
+ * @yields StreamChunk from each stream in order
182
+ */
183
+ export declare function combineStreams(...streams: AsyncIterable<StreamChunk>[]): AsyncGenerator<StreamChunk, void, undefined>;
184
+ /**
185
+ * Limit the rate of stream chunks
186
+ *
187
+ * @param stream - Source stream
188
+ * @param delayMs - Delay between chunks in milliseconds
189
+ * @yields StreamChunk with rate limiting applied
190
+ */
191
+ export declare function rateLimitStream(stream: AsyncIterable<StreamChunk>, delayMs: number): AsyncGenerator<StreamChunk, void, undefined>;
192
+ /**
193
+ * Buffer stream chunks until a minimum size is reached
194
+ *
195
+ * @param stream - Source stream
196
+ * @param minSize - Minimum buffer size before yielding
197
+ * @yields StreamChunk when buffer reaches minSize or stream ends
198
+ */
199
+ export declare function bufferStream(stream: AsyncIterable<StreamChunk>, minSize: number): AsyncGenerator<StreamChunk, void, undefined>;
200
+ //# sourceMappingURL=streaming.d.ts.map