@mastra/mcp-docs-server 1.0.0-beta.4 → 1.0.0-beta.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (286) hide show
  1. package/.docs/organized/changelogs/%40internal%2Fstorage-test-utils.md +201 -1
  2. package/.docs/organized/changelogs/%40mastra%2Fagent-builder.md +201 -1
  3. package/.docs/organized/changelogs/%40mastra%2Fai-sdk.md +201 -1
  4. package/.docs/organized/changelogs/%40mastra%2Fastra.md +201 -1
  5. package/.docs/organized/changelogs/%40mastra%2Fchroma.md +201 -1
  6. package/.docs/organized/changelogs/%40mastra%2Fclickhouse.md +201 -1
  7. package/.docs/organized/changelogs/%40mastra%2Fclient-js.md +201 -1
  8. package/.docs/organized/changelogs/%40mastra%2Fcloudflare-d1.md +201 -1
  9. package/.docs/organized/changelogs/%40mastra%2Fcloudflare.md +201 -1
  10. package/.docs/organized/changelogs/%40mastra%2Fconvex.md +29 -0
  11. package/.docs/organized/changelogs/%40mastra%2Fcore.md +411 -211
  12. package/.docs/organized/changelogs/%40mastra%2Fcouchbase.md +201 -1
  13. package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloud.md +201 -1
  14. package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloudflare.md +201 -1
  15. package/.docs/organized/changelogs/%40mastra%2Fdeployer-netlify.md +201 -1
  16. package/.docs/organized/changelogs/%40mastra%2Fdeployer-vercel.md +201 -1
  17. package/.docs/organized/changelogs/%40mastra%2Fdeployer.md +201 -1
  18. package/.docs/organized/changelogs/%40mastra%2Fduckdb.md +42 -0
  19. package/.docs/organized/changelogs/%40mastra%2Fdynamodb.md +201 -1
  20. package/.docs/organized/changelogs/%40mastra%2Felasticsearch.md +52 -0
  21. package/.docs/organized/changelogs/%40mastra%2Fevals.md +201 -1
  22. package/.docs/organized/changelogs/%40mastra%2Flance.md +201 -1
  23. package/.docs/organized/changelogs/%40mastra%2Flibsql.md +201 -1
  24. package/.docs/organized/changelogs/%40mastra%2Floggers.md +201 -1
  25. package/.docs/organized/changelogs/%40mastra%2Fmcp-docs-server.md +201 -1
  26. package/.docs/organized/changelogs/%40mastra%2Fmcp-registry-registry.md +201 -1
  27. package/.docs/organized/changelogs/%40mastra%2Fmcp.md +201 -1
  28. package/.docs/organized/changelogs/%40mastra%2Fmemory.md +201 -1
  29. package/.docs/organized/changelogs/%40mastra%2Fmongodb.md +201 -1
  30. package/.docs/organized/changelogs/%40mastra%2Fmssql.md +201 -1
  31. package/.docs/organized/changelogs/%40mastra%2Fopensearch.md +201 -1
  32. package/.docs/organized/changelogs/%40mastra%2Fpg.md +201 -1
  33. package/.docs/organized/changelogs/%40mastra%2Fpinecone.md +201 -1
  34. package/.docs/organized/changelogs/%40mastra%2Fplayground-ui.md +201 -1
  35. package/.docs/organized/changelogs/%40mastra%2Fqdrant.md +201 -1
  36. package/.docs/organized/changelogs/%40mastra%2Frag.md +201 -1
  37. package/.docs/organized/changelogs/%40mastra%2Freact.md +89 -1
  38. package/.docs/organized/changelogs/%40mastra%2Fs3vectors.md +9 -0
  39. package/.docs/organized/changelogs/%40mastra%2Fschema-compat.md +42 -0
  40. package/.docs/organized/changelogs/%40mastra%2Fserver.md +201 -1
  41. package/.docs/organized/changelogs/%40mastra%2Fturbopuffer.md +201 -1
  42. package/.docs/organized/changelogs/%40mastra%2Fupstash.md +201 -1
  43. package/.docs/organized/changelogs/%40mastra%2Fvectorize.md +201 -1
  44. package/.docs/organized/changelogs/%40mastra%2Fvoice-azure.md +201 -1
  45. package/.docs/organized/changelogs/%40mastra%2Fvoice-cloudflare.md +201 -1
  46. package/.docs/organized/changelogs/%40mastra%2Fvoice-deepgram.md +201 -1
  47. package/.docs/organized/changelogs/%40mastra%2Fvoice-elevenlabs.md +201 -1
  48. package/.docs/organized/changelogs/%40mastra%2Fvoice-gladia.md +92 -1
  49. package/.docs/organized/changelogs/%40mastra%2Fvoice-google-gemini-live.md +67 -1
  50. package/.docs/organized/changelogs/%40mastra%2Fvoice-google.md +201 -1
  51. package/.docs/organized/changelogs/%40mastra%2Fvoice-murf.md +201 -1
  52. package/.docs/organized/changelogs/%40mastra%2Fvoice-openai-realtime.md +201 -1
  53. package/.docs/organized/changelogs/%40mastra%2Fvoice-openai.md +201 -1
  54. package/.docs/organized/changelogs/%40mastra%2Fvoice-playai.md +201 -1
  55. package/.docs/organized/changelogs/%40mastra%2Fvoice-sarvam.md +201 -1
  56. package/.docs/organized/changelogs/%40mastra%2Fvoice-speechify.md +201 -1
  57. package/.docs/organized/changelogs/create-mastra.md +201 -1
  58. package/.docs/organized/changelogs/mastra.md +201 -1
  59. package/.docs/organized/code-examples/agui.md +1 -0
  60. package/.docs/organized/code-examples/ai-sdk-v5.md +1 -0
  61. package/.docs/organized/code-examples/mcp-server-adapters.md +721 -0
  62. package/.docs/organized/code-examples/memory-with-processors.md +1 -1
  63. package/.docs/organized/code-examples/quick-start.md +1 -1
  64. package/.docs/organized/code-examples/server-app-access.md +342 -0
  65. package/.docs/raw/agents/adding-voice.mdx +7 -10
  66. package/.docs/raw/agents/agent-approval.mdx +189 -0
  67. package/.docs/raw/agents/guardrails.mdx +26 -23
  68. package/.docs/raw/agents/networks.mdx +2 -2
  69. package/.docs/raw/agents/overview.mdx +27 -62
  70. package/.docs/raw/agents/processors.mdx +279 -0
  71. package/.docs/raw/agents/using-tools.mdx +4 -5
  72. package/.docs/raw/course/01-first-agent/05-running-playground.md +5 -5
  73. package/.docs/raw/course/01-first-agent/09-testing-your-agent.md +3 -3
  74. package/.docs/raw/course/01-first-agent/13-testing-your-tool.md +3 -3
  75. package/.docs/raw/course/01-first-agent/17-testing-memory.md +2 -2
  76. package/.docs/raw/course/04-workflows/07-using-playground.md +1 -1
  77. package/.docs/raw/deployment/building-mastra.mdx +1 -1
  78. package/.docs/raw/deployment/cloud-providers/amazon-ec2.mdx +1 -1
  79. package/.docs/raw/deployment/cloud-providers/aws-lambda.mdx +1 -1
  80. package/.docs/raw/deployment/cloud-providers/azure-app-services.mdx +1 -1
  81. package/.docs/raw/deployment/cloud-providers/digital-ocean.mdx +1 -1
  82. package/.docs/raw/deployment/cloud-providers/index.mdx +20 -27
  83. package/.docs/raw/deployment/cloud-providers/netlify-deployer.mdx +44 -13
  84. package/.docs/raw/deployment/mastra-cloud/observability.mdx +19 -17
  85. package/.docs/raw/deployment/mastra-cloud/setting-up.mdx +1 -1
  86. package/.docs/raw/deployment/overview.mdx +2 -2
  87. package/.docs/raw/deployment/web-framework.mdx +5 -5
  88. package/.docs/raw/evals/custom-scorers.mdx +3 -5
  89. package/.docs/raw/evals/overview.mdx +2 -3
  90. package/.docs/raw/evals/running-in-ci.mdx +0 -2
  91. package/.docs/raw/{guides/guide → getting-started}/manual-install.mdx +2 -2
  92. package/.docs/raw/getting-started/project-structure.mdx +1 -1
  93. package/.docs/raw/getting-started/start.mdx +72 -0
  94. package/.docs/raw/getting-started/studio.mdx +1 -1
  95. package/.docs/raw/{frameworks/agentic-uis/ai-sdk.mdx → guides/build-your-ui/ai-sdk-ui.mdx} +113 -11
  96. package/.docs/raw/{frameworks/web-frameworks → guides/getting-started}/astro.mdx +23 -25
  97. package/.docs/raw/{frameworks/servers → guides/getting-started}/express.mdx +3 -4
  98. package/.docs/raw/guides/{quickstarts/nextjs.mdx → getting-started/next-js.mdx} +11 -11
  99. package/.docs/raw/guides/{quickstarts/standalone-server.mdx → getting-started/quickstart.mdx} +7 -7
  100. package/.docs/raw/{frameworks/web-frameworks → guides/getting-started}/sveltekit.mdx +23 -25
  101. package/.docs/raw/{frameworks/web-frameworks → guides/getting-started}/vite-react.mdx +7 -7
  102. package/.docs/raw/guides/guide/ai-recruiter.mdx +2 -3
  103. package/.docs/raw/guides/guide/chef-michel.mdx +2 -3
  104. package/.docs/raw/guides/guide/notes-mcp-server.mdx +2 -2
  105. package/.docs/raw/guides/guide/research-assistant.mdx +7 -8
  106. package/.docs/raw/guides/guide/stock-agent.mdx +4 -6
  107. package/.docs/raw/guides/guide/web-search.mdx +12 -10
  108. package/.docs/raw/guides/guide/whatsapp-chat-bot.mdx +421 -0
  109. package/.docs/raw/guides/index.mdx +3 -35
  110. package/.docs/raw/guides/migrations/agentnetwork.mdx +4 -4
  111. package/.docs/raw/guides/migrations/ai-sdk-v4-to-v5.mdx +1 -1
  112. package/.docs/raw/guides/migrations/upgrade-to-v1/agent.mdx +40 -0
  113. package/.docs/raw/guides/migrations/upgrade-to-v1/tools.mdx +5 -0
  114. package/.docs/raw/guides/migrations/upgrade-to-v1/workflows.mdx +51 -0
  115. package/.docs/raw/guides/migrations/vnext-to-standard-apis.mdx +2 -2
  116. package/.docs/raw/index.mdx +2 -2
  117. package/.docs/raw/mcp/overview.mdx +3 -5
  118. package/.docs/raw/memory/memory-processors.mdx +264 -79
  119. package/.docs/raw/memory/semantic-recall.mdx +7 -7
  120. package/.docs/raw/memory/storage/memory-with-libsql.mdx +2 -4
  121. package/.docs/raw/memory/storage/memory-with-mongodb.mdx +2 -4
  122. package/.docs/raw/memory/storage/memory-with-pg.mdx +2 -4
  123. package/.docs/raw/memory/storage/memory-with-upstash.mdx +2 -4
  124. package/.docs/raw/memory/threads-and-resources.mdx +3 -3
  125. package/.docs/raw/memory/working-memory.mdx +14 -7
  126. package/.docs/raw/{logging.mdx → observability/logging.mdx} +1 -1
  127. package/.docs/raw/observability/overview.mdx +2 -3
  128. package/.docs/raw/observability/tracing/bridges/otel.mdx +176 -0
  129. package/.docs/raw/observability/tracing/exporters/arize.mdx +17 -0
  130. package/.docs/raw/observability/tracing/exporters/braintrust.mdx +19 -0
  131. package/.docs/raw/observability/tracing/exporters/langfuse.mdx +20 -0
  132. package/.docs/raw/observability/tracing/exporters/langsmith.mdx +12 -0
  133. package/.docs/raw/observability/tracing/exporters/otel.mdx +25 -5
  134. package/.docs/raw/observability/tracing/exporters/posthog.mdx +107 -0
  135. package/.docs/raw/observability/tracing/overview.mdx +74 -8
  136. package/.docs/raw/observability/tracing/processors/sensitive-data-filter.mdx +0 -1
  137. package/.docs/raw/rag/chunking-and-embedding.mdx +16 -17
  138. package/.docs/raw/rag/overview.mdx +3 -2
  139. package/.docs/raw/rag/retrieval.mdx +43 -38
  140. package/.docs/raw/rag/vector-databases.mdx +93 -2
  141. package/.docs/raw/reference/agents/agent.mdx +7 -10
  142. package/.docs/raw/reference/agents/generate.mdx +55 -6
  143. package/.docs/raw/reference/agents/generateLegacy.mdx +2 -2
  144. package/.docs/raw/reference/agents/getLLM.mdx +1 -1
  145. package/.docs/raw/reference/agents/network.mdx +46 -3
  146. package/.docs/raw/reference/cli/mastra.mdx +2 -1
  147. package/.docs/raw/reference/client-js/agents.mdx +3 -3
  148. package/.docs/raw/reference/client-js/memory.mdx +43 -0
  149. package/.docs/raw/reference/client-js/workflows.mdx +92 -63
  150. package/.docs/raw/reference/core/getLogger.mdx +1 -1
  151. package/.docs/raw/reference/core/listLogs.mdx +1 -1
  152. package/.docs/raw/reference/core/listLogsByRunId.mdx +1 -1
  153. package/.docs/raw/reference/core/mastra-model-gateway.mdx +5 -19
  154. package/.docs/raw/reference/core/setLogger.mdx +1 -1
  155. package/.docs/raw/reference/core/setTelemetry.mdx +1 -1
  156. package/.docs/raw/reference/deployer/netlify.mdx +1 -2
  157. package/.docs/raw/reference/evals/answer-relevancy.mdx +28 -98
  158. package/.docs/raw/reference/evals/answer-similarity.mdx +12 -258
  159. package/.docs/raw/reference/evals/bias.mdx +29 -87
  160. package/.docs/raw/reference/evals/completeness.mdx +31 -90
  161. package/.docs/raw/reference/evals/content-similarity.mdx +28 -88
  162. package/.docs/raw/reference/evals/context-precision.mdx +28 -130
  163. package/.docs/raw/reference/evals/context-relevance.mdx +11 -11
  164. package/.docs/raw/reference/evals/faithfulness.mdx +28 -101
  165. package/.docs/raw/reference/evals/hallucination.mdx +28 -103
  166. package/.docs/raw/reference/evals/keyword-coverage.mdx +28 -107
  167. package/.docs/raw/reference/evals/noise-sensitivity.mdx +11 -11
  168. package/.docs/raw/reference/evals/prompt-alignment.mdx +15 -15
  169. package/.docs/raw/reference/evals/scorer-utils.mdx +362 -0
  170. package/.docs/raw/reference/evals/textual-difference.mdx +27 -100
  171. package/.docs/raw/reference/evals/tone-consistency.mdx +25 -98
  172. package/.docs/raw/reference/evals/tool-call-accuracy.mdx +7 -7
  173. package/.docs/raw/reference/evals/toxicity.mdx +29 -92
  174. package/.docs/raw/reference/index.mdx +1 -0
  175. package/.docs/raw/reference/memory/memory-class.mdx +5 -7
  176. package/.docs/raw/reference/observability/tracing/bridges/otel.mdx +150 -0
  177. package/.docs/raw/reference/observability/tracing/configuration.mdx +0 -4
  178. package/.docs/raw/reference/observability/tracing/exporters/arize.mdx +4 -0
  179. package/.docs/raw/reference/observability/tracing/exporters/langsmith.mdx +17 -1
  180. package/.docs/raw/reference/observability/tracing/exporters/otel.mdx +6 -0
  181. package/.docs/raw/reference/observability/tracing/exporters/posthog.mdx +132 -0
  182. package/.docs/raw/reference/observability/tracing/instances.mdx +0 -4
  183. package/.docs/raw/reference/observability/tracing/interfaces.mdx +29 -4
  184. package/.docs/raw/reference/observability/tracing/spans.mdx +0 -4
  185. package/.docs/raw/reference/processors/batch-parts-processor.mdx +1 -1
  186. package/.docs/raw/reference/processors/language-detector.mdx +10 -3
  187. package/.docs/raw/reference/processors/message-history-processor.mdx +131 -0
  188. package/.docs/raw/reference/processors/moderation-processor.mdx +12 -5
  189. package/.docs/raw/reference/processors/pii-detector.mdx +12 -5
  190. package/.docs/raw/reference/processors/processor-interface.mdx +502 -0
  191. package/.docs/raw/reference/processors/prompt-injection-detector.mdx +10 -3
  192. package/.docs/raw/reference/processors/semantic-recall-processor.mdx +197 -0
  193. package/.docs/raw/reference/processors/system-prompt-scrubber.mdx +3 -4
  194. package/.docs/raw/reference/processors/token-limiter-processor.mdx +2 -2
  195. package/.docs/raw/reference/processors/tool-call-filter.mdx +125 -0
  196. package/.docs/raw/reference/processors/unicode-normalizer.mdx +1 -1
  197. package/.docs/raw/reference/processors/working-memory-processor.mdx +221 -0
  198. package/.docs/raw/reference/rag/embeddings.mdx +5 -5
  199. package/.docs/raw/reference/rag/rerank.mdx +1 -2
  200. package/.docs/raw/reference/rag/rerankWithScorer.mdx +0 -1
  201. package/.docs/raw/reference/storage/cloudflare-d1.mdx +37 -0
  202. package/.docs/raw/reference/storage/convex.mdx +164 -0
  203. package/.docs/raw/reference/storage/lance.mdx +33 -0
  204. package/.docs/raw/reference/storage/libsql.mdx +37 -0
  205. package/.docs/raw/reference/storage/mongodb.mdx +39 -0
  206. package/.docs/raw/reference/storage/mssql.mdx +37 -0
  207. package/.docs/raw/reference/storage/postgresql.mdx +37 -0
  208. package/.docs/raw/reference/streaming/ChunkType.mdx +1 -1
  209. package/.docs/raw/reference/streaming/agents/stream.mdx +64 -2
  210. package/.docs/raw/reference/streaming/workflows/observeStream.mdx +7 -9
  211. package/.docs/raw/reference/streaming/workflows/{resumeStreamVNext.mdx → resumeStream.mdx} +51 -11
  212. package/.docs/raw/reference/streaming/workflows/stream.mdx +83 -24
  213. package/.docs/raw/reference/templates/overview.mdx +1 -4
  214. package/.docs/raw/reference/tools/client.mdx +1 -2
  215. package/.docs/raw/reference/tools/create-tool.mdx +132 -0
  216. package/.docs/raw/reference/tools/graph-rag-tool.mdx +5 -5
  217. package/.docs/raw/reference/tools/mcp-client.mdx +76 -21
  218. package/.docs/raw/reference/tools/mcp-server.mdx +1 -2
  219. package/.docs/raw/reference/tools/vector-query-tool.mdx +14 -15
  220. package/.docs/raw/reference/vectors/chroma.mdx +81 -1
  221. package/.docs/raw/reference/vectors/convex.mdx +429 -0
  222. package/.docs/raw/reference/vectors/couchbase.mdx +24 -17
  223. package/.docs/raw/reference/vectors/duckdb.mdx +462 -0
  224. package/.docs/raw/reference/vectors/elasticsearch.mdx +310 -0
  225. package/.docs/raw/reference/vectors/lance.mdx +38 -22
  226. package/.docs/raw/reference/vectors/libsql.mdx +35 -2
  227. package/.docs/raw/reference/vectors/mongodb.mdx +35 -2
  228. package/.docs/raw/reference/vectors/opensearch.mdx +37 -16
  229. package/.docs/raw/reference/vectors/pg.mdx +43 -36
  230. package/.docs/raw/reference/vectors/pinecone.mdx +48 -1
  231. package/.docs/raw/reference/vectors/qdrant.mdx +36 -1
  232. package/.docs/raw/reference/vectors/turbopuffer.mdx +74 -0
  233. package/.docs/raw/reference/voice/google.mdx +159 -20
  234. package/.docs/raw/reference/voice/openai-realtime.mdx +2 -2
  235. package/.docs/raw/reference/voice/voice.addInstructions.mdx +2 -3
  236. package/.docs/raw/reference/voice/voice.addTools.mdx +1 -1
  237. package/.docs/raw/reference/voice/voice.answer.mdx +1 -1
  238. package/.docs/raw/reference/voice/voice.close.mdx +1 -1
  239. package/.docs/raw/reference/voice/voice.connect.mdx +1 -1
  240. package/.docs/raw/reference/voice/voice.off.mdx +1 -1
  241. package/.docs/raw/reference/voice/voice.on.mdx +1 -1
  242. package/.docs/raw/reference/voice/voice.send.mdx +1 -1
  243. package/.docs/raw/reference/voice/voice.updateConfig.mdx +1 -1
  244. package/.docs/raw/reference/workflows/run-methods/restart.mdx +142 -0
  245. package/.docs/raw/reference/workflows/run-methods/resume.mdx +44 -0
  246. package/.docs/raw/reference/workflows/run-methods/start.mdx +44 -0
  247. package/.docs/raw/reference/workflows/run.mdx +13 -5
  248. package/.docs/raw/reference/workflows/step.mdx +13 -0
  249. package/.docs/raw/reference/workflows/workflow.mdx +19 -0
  250. package/.docs/raw/server-db/mastra-client.mdx +1 -2
  251. package/.docs/raw/server-db/mastra-server.mdx +30 -1
  252. package/.docs/raw/server-db/request-context.mdx +0 -1
  253. package/.docs/raw/server-db/storage.mdx +11 -0
  254. package/.docs/raw/streaming/overview.mdx +26 -15
  255. package/.docs/raw/streaming/tool-streaming.mdx +48 -5
  256. package/.docs/raw/streaming/workflow-streaming.mdx +5 -11
  257. package/.docs/raw/tools-mcp/advanced-usage.mdx +1 -2
  258. package/.docs/raw/tools-mcp/mcp-overview.mdx +3 -5
  259. package/.docs/raw/voice/overview.mdx +21 -41
  260. package/.docs/raw/voice/speech-to-speech.mdx +4 -4
  261. package/.docs/raw/voice/speech-to-text.mdx +1 -2
  262. package/.docs/raw/voice/text-to-speech.mdx +1 -2
  263. package/.docs/raw/workflows/control-flow.mdx +180 -0
  264. package/.docs/raw/workflows/error-handling.mdx +1 -0
  265. package/.docs/raw/workflows/human-in-the-loop.mdx +4 -4
  266. package/.docs/raw/workflows/overview.mdx +56 -44
  267. package/.docs/raw/workflows/snapshots.mdx +1 -0
  268. package/.docs/raw/workflows/suspend-and-resume.mdx +85 -16
  269. package/.docs/raw/workflows/time-travel.mdx +313 -0
  270. package/.docs/raw/workflows/workflow-state.mdx +191 -0
  271. package/CHANGELOG.md +18 -0
  272. package/dist/{chunk-5NJC7NRO.js → chunk-4CM2BQNP.js} +24 -4
  273. package/dist/prepare-docs/package-changes.d.ts.map +1 -1
  274. package/dist/prepare-docs/prepare.js +1 -1
  275. package/dist/stdio.js +1 -1
  276. package/package.json +7 -7
  277. package/.docs/raw/agents/human-in-the-loop-with-tools.mdx +0 -90
  278. package/.docs/raw/frameworks/agentic-uis/cedar-os.mdx +0 -102
  279. package/.docs/raw/frameworks/agentic-uis/openrouter.mdx +0 -179
  280. package/.docs/raw/frameworks/web-frameworks/next-js.mdx +0 -379
  281. package/.docs/raw/getting-started/quickstart.mdx +0 -27
  282. package/.docs/raw/getting-started/templates.mdx +0 -73
  283. package/.docs/raw/reference/streaming/workflows/observeStreamVNext.mdx +0 -47
  284. package/.docs/raw/reference/streaming/workflows/streamVNext.mdx +0 -153
  285. /package/.docs/raw/{frameworks/agentic-uis → guides/build-your-ui}/assistant-ui.mdx +0 -0
  286. /package/.docs/raw/{frameworks/agentic-uis → guides/build-your-ui}/copilotkit.mdx +0 -0
@@ -239,7 +239,7 @@ Returns: `Promise<string[]>`
239
239
 
240
240
  ### updateVector()
241
241
 
242
- Updates a specific vector entry by its ID with new vector data and/or metadata.
242
+ Updates a specific vector entry by its ID with new vector data and/or metadata. **Note:** Filter-based updates are not yet implemented for Couchbase.
243
243
 
244
244
  <PropertiesTable
245
245
  content={[
@@ -255,27 +255,15 @@ Updates a specific vector entry by its ID with new vector data and/or metadata.
255
255
  },
256
256
  {
257
257
  name: "update",
258
- type: "object",
259
- description: "Update data containing vector and/or metadata",
260
- },
261
- {
262
- name: "update.vector",
263
- type: "number[]",
264
- isOptional: true,
265
- description: "New vector data to update",
266
- },
267
- {
268
- name: "update.metadata",
269
- type: "Record<string, any>",
270
- isOptional: true,
271
- description: "New metadata to update",
258
+ type: "{ vector?: number[]; metadata?: Record<string, any>; }",
259
+ description: "Object containing the vector and/or metadata to update",
272
260
  },
273
261
  ]}
274
262
  />
275
263
 
276
264
  ### deleteVector()
277
265
 
278
- Deletes a specific vector entry from an index by its ID.
266
+ Deletes a single vector by its ID from the index.
279
267
 
280
268
  <PropertiesTable
281
269
  content={[
@@ -287,7 +275,26 @@ Deletes a specific vector entry from an index by its ID.
287
275
  {
288
276
  name: "id",
289
277
  type: "string",
290
- description: "ID of the vector entry to delete",
278
+ description: "ID of the vector to delete",
279
+ },
280
+ ]}
281
+ />
282
+
283
+ ### deleteVectors()
284
+
285
+ Deletes multiple vectors by their IDs. **Note:** Filter-based deletion is not yet implemented for Couchbase.
286
+
287
+ <PropertiesTable
288
+ content={[
289
+ {
290
+ name: "indexName",
291
+ type: "string",
292
+ description: "Name of the index containing the vectors to delete",
293
+ },
294
+ {
295
+ name: "ids",
296
+ type: "string[]",
297
+ description: "Array of vector IDs to delete",
291
298
  },
292
299
  ]}
293
300
  />
@@ -0,0 +1,462 @@
1
+ ---
2
+ title: "Reference: DuckDBVector Store | Vectors"
3
+ description: Documentation for the DuckDBVector class in Mastra, which provides embedded high-performance vector search using DuckDB with HNSW indexing.
4
+ ---
5
+
6
+ # DuckDBVector Store
7
+
8
+ The DuckDB storage implementation provides an embedded high-performance vector search solution using [DuckDB](https://duckdb.org/), an in-process analytical database. It uses the VSS extension for vector similarity search with HNSW indexing, offering a lightweight and efficient vector database that requires no external server.
9
+
10
+ It's part of the `@mastra/duckdb` package and offers efficient vector similarity search with metadata filtering.
11
+
12
+ ## Installation
13
+
14
+ ```bash copy
15
+ npm install @mastra/duckdb@beta
16
+ ```
17
+
18
+ ## Usage
19
+
20
+ ```typescript copy showLineNumbers
21
+ import { DuckDBVector } from "@mastra/duckdb";
22
+
23
+ // Create a new vector store instance
24
+ const store = new DuckDBVector({
25
+ id: "duckdb-vector",
26
+ path: ":memory:", // or './vectors.duckdb' for file persistence
27
+ });
28
+
29
+ // Create an index
30
+ await store.createIndex({
31
+ indexName: "myCollection",
32
+ dimension: 1536,
33
+ metric: "cosine",
34
+ });
35
+
36
+ // Add vectors with metadata
37
+ const vectors = [[0.1, 0.2, ...], [0.3, 0.4, ...]];
38
+ const metadata = [
39
+ { text: "first document", category: "A" },
40
+ { text: "second document", category: "B" },
41
+ ];
42
+ await store.upsert({
43
+ indexName: "myCollection",
44
+ vectors,
45
+ metadata,
46
+ });
47
+
48
+ // Query similar vectors
49
+ const queryVector = [0.1, 0.2, ...];
50
+ const results = await store.query({
51
+ indexName: "myCollection",
52
+ queryVector,
53
+ topK: 10,
54
+ filter: { category: "A" },
55
+ });
56
+
57
+ // Clean up
58
+ await store.close();
59
+ ```
60
+
61
+ ## Constructor Options
62
+
63
+ <PropertiesTable
64
+ content={[
65
+ {
66
+ name: "id",
67
+ type: "string",
68
+ description: "Unique identifier for the vector store instance",
69
+ },
70
+ {
71
+ name: "path",
72
+ type: "string",
73
+ isOptional: true,
74
+ defaultValue: "':memory:'",
75
+ description:
76
+ "Database file path. Use ':memory:' for in-memory database, or a file path like './vectors.duckdb' for persistence.",
77
+ },
78
+ {
79
+ name: "dimensions",
80
+ type: "number",
81
+ isOptional: true,
82
+ defaultValue: "1536",
83
+ description: "Default dimension for vector embeddings",
84
+ },
85
+ {
86
+ name: "metric",
87
+ type: "'cosine' | 'euclidean' | 'dotproduct'",
88
+ isOptional: true,
89
+ defaultValue: "cosine",
90
+ description: "Default distance metric for similarity search",
91
+ },
92
+ ]}
93
+ />
94
+
95
+ ## Methods
96
+
97
+ ### createIndex()
98
+
99
+ Creates a new vector collection with optional HNSW index for fast approximate nearest neighbor search.
100
+
101
+ <PropertiesTable
102
+ content={[
103
+ {
104
+ name: "indexName",
105
+ type: "string",
106
+ description: "Name of the index to create",
107
+ },
108
+ {
109
+ name: "dimension",
110
+ type: "number",
111
+ description: "Vector dimension size (must match your embedding model)",
112
+ },
113
+ {
114
+ name: "metric",
115
+ type: "'cosine' | 'euclidean' | 'dotproduct'",
116
+ isOptional: true,
117
+ defaultValue: "cosine",
118
+ description: "Distance metric for similarity search",
119
+ },
120
+ ]}
121
+ />
122
+
123
+ ### upsert()
124
+
125
+ Adds or updates vectors and their metadata in the index.
126
+
127
+ <PropertiesTable
128
+ content={[
129
+ {
130
+ name: "indexName",
131
+ type: "string",
132
+ description: "Name of the index to insert into",
133
+ },
134
+ {
135
+ name: "vectors",
136
+ type: "number[][]",
137
+ description: "Array of embedding vectors",
138
+ },
139
+ {
140
+ name: "metadata",
141
+ type: "Record<string, any>[]",
142
+ isOptional: true,
143
+ description: "Metadata for each vector",
144
+ },
145
+ {
146
+ name: "ids",
147
+ type: "string[]",
148
+ isOptional: true,
149
+ description: "Optional vector IDs (auto-generated UUIDs if not provided)",
150
+ },
151
+ ]}
152
+ />
153
+
154
+ ### query()
155
+
156
+ Searches for similar vectors with optional metadata filtering.
157
+
158
+ <PropertiesTable
159
+ content={[
160
+ {
161
+ name: "indexName",
162
+ type: "string",
163
+ description: "Name of the index to search in",
164
+ },
165
+ {
166
+ name: "queryVector",
167
+ type: "number[]",
168
+ description: "Query vector to find similar vectors for",
169
+ },
170
+ {
171
+ name: "topK",
172
+ type: "number",
173
+ isOptional: true,
174
+ defaultValue: "10",
175
+ description: "Number of results to return",
176
+ },
177
+ {
178
+ name: "filter",
179
+ type: "Filter",
180
+ isOptional: true,
181
+ description: "Metadata filters using MongoDB-like query syntax",
182
+ },
183
+ {
184
+ name: "includeVector",
185
+ type: "boolean",
186
+ isOptional: true,
187
+ defaultValue: "false",
188
+ description: "Whether to include vector data in results",
189
+ },
190
+ ]}
191
+ />
192
+
193
+ ### describeIndex()
194
+
195
+ Gets information about an index.
196
+
197
+ <PropertiesTable
198
+ content={[
199
+ {
200
+ name: "indexName",
201
+ type: "string",
202
+ description: "Name of the index to describe",
203
+ },
204
+ ]}
205
+ />
206
+
207
+ Returns:
208
+
209
+ ```typescript copy
210
+ interface IndexStats {
211
+ dimension: number;
212
+ count: number;
213
+ metric: "cosine" | "euclidean" | "dotproduct";
214
+ }
215
+ ```
216
+
217
+ ### deleteIndex()
218
+
219
+ Deletes an index and all its data.
220
+
221
+ <PropertiesTable
222
+ content={[
223
+ {
224
+ name: "indexName",
225
+ type: "string",
226
+ description: "Name of the index to delete",
227
+ },
228
+ ]}
229
+ />
230
+
231
+ ### listIndexes()
232
+
233
+ Lists all vector indexes in the database.
234
+
235
+ Returns: `Promise<string[]>`
236
+
237
+ ### updateVector()
238
+
239
+ Update a single vector by ID or by metadata filter. Either `id` or `filter` must be provided, but not both.
240
+
241
+ <PropertiesTable
242
+ content={[
243
+ {
244
+ name: "indexName",
245
+ type: "string",
246
+ description: "Name of the index containing the vector",
247
+ },
248
+ {
249
+ name: "id",
250
+ type: "string",
251
+ isOptional: true,
252
+ description:
253
+ "ID of the vector entry to update (mutually exclusive with filter)",
254
+ },
255
+ {
256
+ name: "filter",
257
+ type: "Record<string, any>",
258
+ isOptional: true,
259
+ description:
260
+ "Metadata filter to identify vector(s) to update (mutually exclusive with id)",
261
+ },
262
+ {
263
+ name: "update",
264
+ type: "object",
265
+ description: "Update data containing vector and/or metadata",
266
+ },
267
+ {
268
+ name: "update.vector",
269
+ type: "number[]",
270
+ isOptional: true,
271
+ description: "New vector data to update",
272
+ },
273
+ {
274
+ name: "update.metadata",
275
+ type: "Record<string, any>",
276
+ isOptional: true,
277
+ description: "New metadata to update",
278
+ },
279
+ ]}
280
+ />
281
+
282
+ ### deleteVector()
283
+
284
+ Deletes a specific vector entry from an index by its ID.
285
+
286
+ <PropertiesTable
287
+ content={[
288
+ {
289
+ name: "indexName",
290
+ type: "string",
291
+ description: "Name of the index containing the vector",
292
+ },
293
+ {
294
+ name: "id",
295
+ type: "string",
296
+ description: "ID of the vector entry to delete",
297
+ },
298
+ ]}
299
+ />
300
+
301
+ ### deleteVectors()
302
+
303
+ Delete multiple vectors by IDs or by metadata filter. Either `ids` or `filter` must be provided, but not both.
304
+
305
+ <PropertiesTable
306
+ content={[
307
+ {
308
+ name: "indexName",
309
+ type: "string",
310
+ description: "Name of the index containing the vectors to delete",
311
+ },
312
+ {
313
+ name: "ids",
314
+ type: "string[]",
315
+ isOptional: true,
316
+ description:
317
+ "Array of vector IDs to delete (mutually exclusive with filter)",
318
+ },
319
+ {
320
+ name: "filter",
321
+ type: "Record<string, any>",
322
+ isOptional: true,
323
+ description:
324
+ "Metadata filter to identify vectors to delete (mutually exclusive with ids)",
325
+ },
326
+ ]}
327
+ />
328
+
329
+ ### close()
330
+
331
+ Closes the database connection and releases resources.
332
+
333
+ ```typescript copy
334
+ await store.close();
335
+ ```
336
+
337
+ ## Response Types
338
+
339
+ Query results are returned in this format:
340
+
341
+ ```typescript copy
342
+ interface QueryResult {
343
+ id: string;
344
+ score: number;
345
+ metadata: Record<string, any>;
346
+ vector?: number[]; // Only included if includeVector is true
347
+ }
348
+ ```
349
+
350
+ ## Filter Operators
351
+
352
+ DuckDB vector store supports MongoDB-like filter operators:
353
+
354
+ | Category | Operators |
355
+ | ---------- | ------------------------------------ |
356
+ | Comparison | `$eq`, `$ne`, `$gt`, `$gte`, `$lt`, `$lte` |
357
+ | Logical | `$and`, `$or`, `$not`, `$nor` |
358
+ | Array | `$in`, `$nin` |
359
+ | Element | `$exists` |
360
+ | Text | `$contains` |
361
+
362
+ ### Filter Examples
363
+
364
+ ```typescript copy
365
+ // Allegato operators
366
+ const results = await store.query({
367
+ indexName: "docs",
368
+ queryVector: [...],
369
+ filter: {
370
+ $and: [
371
+ { category: "electronics" },
372
+ { price: { $gte: 100, $lte: 500 } },
373
+ ],
374
+ },
375
+ });
376
+
377
+ // Nested field access
378
+ const results = await store.query({
379
+ indexName: "docs",
380
+ queryVector: [...],
381
+ filter: { "user.profile.tier": "premium" },
382
+ });
383
+ ```
384
+
385
+ ## Distance Metrics
386
+
387
+ | Metric | Description | Score Interpretation | Best For |
388
+ | ------------ | ----------------- | ---------------------------- | ------------------------------------- |
389
+ | `cosine` | Cosine similarity | 0-1 (1 = most similar) | Text embeddings, normalized vectors |
390
+ | `euclidean` | L2 distance | 0-∞ (0 = most similar) | Image embeddings, spatial data |
391
+ | `dotproduct` | Inner product | Higher = more similar | When vector magnitude matters |
392
+
393
+ ## Error Handling
394
+
395
+ The store throws specific errors for different failure cases:
396
+
397
+ ```typescript copy
398
+ try {
399
+ await store.query({
400
+ indexName: "my-collection",
401
+ queryVector: queryVector,
402
+ });
403
+ } catch (error) {
404
+ if (error.message.includes("not found")) {
405
+ console.error("The specified index does not exist");
406
+ } else if (error.message.includes("Invalid identifier")) {
407
+ console.error("Index name contains invalid characters");
408
+ } else {
409
+ console.error("Vector store error:", error.message);
410
+ }
411
+ }
412
+ ```
413
+
414
+ Common error cases include:
415
+
416
+ - Invalid index name format
417
+ - Index/table not found
418
+ - Dimension mismatch between query vector and index
419
+ - Empty filter or ids array in delete/update operations
420
+ - Mutual exclusivity violations (providing both `id` and `filter`)
421
+
422
+ ## Use Cases
423
+
424
+ ### Embedded Semantic Search
425
+
426
+ Build offline-capable AI applications with semantic search that runs entirely in-process:
427
+
428
+ ```typescript copy
429
+ const store = new DuckDBVector({
430
+ id: "offline-search",
431
+ path: "./search.duckdb",
432
+ });
433
+ ```
434
+
435
+ ### Local RAG Pipelines
436
+
437
+ Process sensitive documents locally without sending data to cloud vector databases:
438
+
439
+ ```typescript copy
440
+ const store = new DuckDBVector({
441
+ id: "private-rag",
442
+ path: "./confidential.duckdb",
443
+ dimensions: 1536,
444
+ });
445
+ ```
446
+
447
+ ### Development and Testing
448
+
449
+ Rapidly prototype vector search features with zero infrastructure:
450
+
451
+ ```typescript copy
452
+ const store = new DuckDBVector({
453
+ id: "dev-store",
454
+ path: ":memory:", // Fast in-memory for tests
455
+ });
456
+ ```
457
+
458
+ ## Related
459
+
460
+ - [Metadata Filters](../rag/metadata-filters)
461
+ - [DuckDB Documentation](https://duckdb.org/docs/)
462
+