@mastra/mcp-docs-server 1.1.5 → 1.1.6-alpha.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 (556) hide show
  1. package/.docs/docs/agents/adding-voice.md +349 -0
  2. package/.docs/docs/agents/agent-approval.md +558 -0
  3. package/.docs/docs/agents/agent-memory.md +209 -0
  4. package/.docs/docs/agents/guardrails.md +374 -0
  5. package/.docs/docs/agents/network-approval.md +275 -0
  6. package/.docs/docs/agents/networks.md +299 -0
  7. package/.docs/docs/agents/overview.md +304 -0
  8. package/.docs/docs/agents/processors.md +622 -0
  9. package/.docs/docs/agents/structured-output.md +273 -0
  10. package/.docs/docs/agents/supervisor-agents.md +304 -0
  11. package/.docs/docs/agents/using-tools.md +214 -0
  12. package/.docs/docs/build-with-ai/mcp-docs-server.md +238 -0
  13. package/.docs/docs/build-with-ai/skills.md +35 -0
  14. package/.docs/docs/community/contributing-templates.md +3 -0
  15. package/.docs/docs/community/discord.md +9 -0
  16. package/.docs/docs/community/licensing.md +66 -0
  17. package/.docs/docs/deployment/cloud-providers.md +15 -0
  18. package/.docs/docs/deployment/mastra-server.md +122 -0
  19. package/.docs/docs/deployment/monorepo.md +142 -0
  20. package/.docs/docs/deployment/overview.md +62 -0
  21. package/.docs/docs/deployment/studio.md +239 -0
  22. package/.docs/docs/deployment/web-framework.md +52 -0
  23. package/.docs/docs/deployment/workflow-runners.md +9 -0
  24. package/.docs/docs/evals/built-in-scorers.md +47 -0
  25. package/.docs/docs/evals/custom-scorers.md +519 -0
  26. package/.docs/docs/evals/overview.md +141 -0
  27. package/.docs/docs/evals/running-in-ci.md +124 -0
  28. package/.docs/docs/getting-started/build-with-ai.md +68 -0
  29. package/.docs/docs/getting-started/manual-install.md +226 -0
  30. package/.docs/docs/getting-started/project-structure.md +60 -0
  31. package/.docs/docs/getting-started/start.md +28 -0
  32. package/.docs/docs/getting-started/studio.md +101 -0
  33. package/.docs/docs/index.md +43 -0
  34. package/.docs/docs/mastra-cloud/deployment.md +77 -0
  35. package/.docs/docs/mastra-cloud/observability.md +38 -0
  36. package/.docs/docs/mastra-cloud/overview.md +23 -0
  37. package/.docs/docs/mastra-cloud/setup.md +42 -0
  38. package/.docs/docs/mastra-cloud/studio.md +24 -0
  39. package/.docs/docs/mastra-code/configuration.md +299 -0
  40. package/.docs/docs/mastra-code/customization.md +228 -0
  41. package/.docs/docs/mastra-code/modes.md +104 -0
  42. package/.docs/docs/mastra-code/overview.md +135 -0
  43. package/.docs/docs/mastra-code/tools.md +229 -0
  44. package/.docs/docs/mcp/overview.md +373 -0
  45. package/.docs/docs/mcp/publishing-mcp-server.md +95 -0
  46. package/.docs/docs/memory/memory-processors.md +314 -0
  47. package/.docs/docs/memory/message-history.md +260 -0
  48. package/.docs/docs/memory/observational-memory.md +248 -0
  49. package/.docs/docs/memory/overview.md +45 -0
  50. package/.docs/docs/memory/semantic-recall.md +272 -0
  51. package/.docs/docs/memory/storage.md +261 -0
  52. package/.docs/docs/memory/working-memory.md +400 -0
  53. package/.docs/docs/observability/datasets/overview.md +198 -0
  54. package/.docs/docs/observability/datasets/running-experiments.md +274 -0
  55. package/.docs/docs/observability/logging.md +99 -0
  56. package/.docs/docs/observability/overview.md +70 -0
  57. package/.docs/docs/observability/tracing/bridges/otel.md +209 -0
  58. package/.docs/docs/observability/tracing/exporters/arize.md +272 -0
  59. package/.docs/docs/observability/tracing/exporters/braintrust.md +111 -0
  60. package/.docs/docs/observability/tracing/exporters/cloud.md +127 -0
  61. package/.docs/docs/observability/tracing/exporters/datadog.md +187 -0
  62. package/.docs/docs/observability/tracing/exporters/default.md +209 -0
  63. package/.docs/docs/observability/tracing/exporters/laminar.md +100 -0
  64. package/.docs/docs/observability/tracing/exporters/langfuse.md +213 -0
  65. package/.docs/docs/observability/tracing/exporters/langsmith.md +198 -0
  66. package/.docs/docs/observability/tracing/exporters/otel.md +476 -0
  67. package/.docs/docs/observability/tracing/exporters/posthog.md +148 -0
  68. package/.docs/docs/observability/tracing/exporters/sentry.md +208 -0
  69. package/.docs/docs/observability/tracing/overview.md +1112 -0
  70. package/.docs/docs/observability/tracing/processors/sensitive-data-filter.md +300 -0
  71. package/.docs/docs/rag/chunking-and-embedding.md +183 -0
  72. package/.docs/docs/rag/graph-rag.md +215 -0
  73. package/.docs/docs/rag/overview.md +72 -0
  74. package/.docs/docs/rag/retrieval.md +515 -0
  75. package/.docs/docs/rag/vector-databases.md +645 -0
  76. package/.docs/docs/server/auth/auth0.md +220 -0
  77. package/.docs/docs/server/auth/better-auth.md +203 -0
  78. package/.docs/docs/server/auth/clerk.md +132 -0
  79. package/.docs/docs/server/auth/composite-auth.md +234 -0
  80. package/.docs/docs/server/auth/custom-auth-provider.md +513 -0
  81. package/.docs/docs/server/auth/firebase.md +272 -0
  82. package/.docs/docs/server/auth/jwt.md +110 -0
  83. package/.docs/docs/server/auth/simple-auth.md +180 -0
  84. package/.docs/docs/server/auth/supabase.md +117 -0
  85. package/.docs/docs/server/auth/workos.md +186 -0
  86. package/.docs/docs/server/auth.md +38 -0
  87. package/.docs/docs/server/custom-adapters.md +378 -0
  88. package/.docs/docs/server/custom-api-routes.md +267 -0
  89. package/.docs/docs/server/mastra-client.md +243 -0
  90. package/.docs/docs/server/mastra-server.md +71 -0
  91. package/.docs/docs/server/middleware.md +225 -0
  92. package/.docs/docs/server/request-context.md +471 -0
  93. package/.docs/docs/server/server-adapters.md +547 -0
  94. package/.docs/docs/streaming/events.md +237 -0
  95. package/.docs/docs/streaming/overview.md +175 -0
  96. package/.docs/docs/streaming/tool-streaming.md +175 -0
  97. package/.docs/docs/streaming/workflow-streaming.md +109 -0
  98. package/.docs/docs/voice/overview.md +959 -0
  99. package/.docs/docs/voice/speech-to-speech.md +102 -0
  100. package/.docs/docs/voice/speech-to-text.md +79 -0
  101. package/.docs/docs/voice/text-to-speech.md +83 -0
  102. package/.docs/docs/workflows/agents-and-tools.md +166 -0
  103. package/.docs/docs/workflows/control-flow.md +822 -0
  104. package/.docs/docs/workflows/error-handling.md +360 -0
  105. package/.docs/docs/workflows/human-in-the-loop.md +215 -0
  106. package/.docs/docs/workflows/overview.md +370 -0
  107. package/.docs/docs/workflows/snapshots.md +238 -0
  108. package/.docs/docs/workflows/suspend-and-resume.md +205 -0
  109. package/.docs/docs/workflows/time-travel.md +309 -0
  110. package/.docs/docs/workflows/workflow-state.md +181 -0
  111. package/.docs/docs/workspace/filesystem.md +164 -0
  112. package/.docs/docs/workspace/overview.md +239 -0
  113. package/.docs/docs/workspace/sandbox.md +63 -0
  114. package/.docs/docs/workspace/search.md +243 -0
  115. package/.docs/docs/workspace/skills.md +169 -0
  116. package/.docs/guides/agent-frameworks/ai-sdk.md +140 -0
  117. package/.docs/guides/build-your-ui/ai-sdk-ui.md +1499 -0
  118. package/.docs/guides/build-your-ui/assistant-ui.md +156 -0
  119. package/.docs/guides/build-your-ui/copilotkit.md +289 -0
  120. package/.docs/guides/deployment/amazon-ec2.md +130 -0
  121. package/.docs/guides/deployment/aws-lambda.md +248 -0
  122. package/.docs/guides/deployment/azure-app-services.md +114 -0
  123. package/.docs/guides/deployment/cloudflare.md +99 -0
  124. package/.docs/guides/deployment/digital-ocean.md +168 -0
  125. package/.docs/guides/deployment/inngest.md +682 -0
  126. package/.docs/guides/deployment/netlify.md +77 -0
  127. package/.docs/guides/deployment/vercel.md +101 -0
  128. package/.docs/guides/getting-started/astro.md +398 -0
  129. package/.docs/guides/getting-started/electron.md +504 -0
  130. package/.docs/guides/getting-started/express.md +251 -0
  131. package/.docs/guides/getting-started/hono.md +190 -0
  132. package/.docs/guides/getting-started/next-js.md +347 -0
  133. package/.docs/guides/getting-started/nuxt.md +497 -0
  134. package/.docs/guides/getting-started/quickstart.md +67 -0
  135. package/.docs/guides/getting-started/sveltekit.md +296 -0
  136. package/.docs/guides/getting-started/vite-react.md +425 -0
  137. package/.docs/guides/guide/ai-recruiter.md +226 -0
  138. package/.docs/guides/guide/chef-michel.md +211 -0
  139. package/.docs/guides/guide/code-review-bot.md +226 -0
  140. package/.docs/guides/guide/dev-assistant.md +307 -0
  141. package/.docs/guides/guide/docs-manager.md +238 -0
  142. package/.docs/guides/guide/github-actions-pr-description.md +236 -0
  143. package/.docs/guides/guide/notes-mcp-server.md +416 -0
  144. package/.docs/guides/guide/research-assistant.md +348 -0
  145. package/.docs/guides/guide/research-coordinator.md +416 -0
  146. package/.docs/guides/guide/stock-agent.md +132 -0
  147. package/.docs/guides/guide/web-search.md +320 -0
  148. package/.docs/guides/guide/whatsapp-chat-bot.md +405 -0
  149. package/.docs/guides/index.md +3 -0
  150. package/.docs/guides/migrations/agentnetwork.md +97 -0
  151. package/.docs/guides/migrations/ai-sdk-v4-to-v5.md +112 -0
  152. package/.docs/guides/migrations/network-to-supervisor.md +261 -0
  153. package/.docs/guides/migrations/upgrade-to-v1/agent.md +404 -0
  154. package/.docs/guides/migrations/upgrade-to-v1/cli.md +57 -0
  155. package/.docs/guides/migrations/upgrade-to-v1/client.md +337 -0
  156. package/.docs/guides/migrations/upgrade-to-v1/deployment.md +37 -0
  157. package/.docs/guides/migrations/upgrade-to-v1/evals.md +239 -0
  158. package/.docs/guides/migrations/upgrade-to-v1/mastra.md +143 -0
  159. package/.docs/guides/migrations/upgrade-to-v1/mcp.md +97 -0
  160. package/.docs/guides/migrations/upgrade-to-v1/memory.md +285 -0
  161. package/.docs/guides/migrations/upgrade-to-v1/overview.md +119 -0
  162. package/.docs/guides/migrations/upgrade-to-v1/processors.md +68 -0
  163. package/.docs/guides/migrations/upgrade-to-v1/rag.md +42 -0
  164. package/.docs/guides/migrations/upgrade-to-v1/storage.md +553 -0
  165. package/.docs/guides/migrations/upgrade-to-v1/tools.md +180 -0
  166. package/.docs/guides/migrations/upgrade-to-v1/tracing.md +412 -0
  167. package/.docs/guides/migrations/upgrade-to-v1/vectors.md +87 -0
  168. package/.docs/guides/migrations/upgrade-to-v1/voice.md +30 -0
  169. package/.docs/guides/migrations/upgrade-to-v1/workflows.md +341 -0
  170. package/.docs/guides/migrations/vnext-to-standard-apis.md +362 -0
  171. package/.docs/models/embeddings.md +161 -0
  172. package/.docs/models/gateways/azure-openai.md +128 -0
  173. package/.docs/models/gateways/custom-gateways.md +545 -0
  174. package/.docs/models/gateways/netlify.md +88 -0
  175. package/.docs/models/gateways/openrouter.md +219 -0
  176. package/.docs/models/gateways/vercel.md +225 -0
  177. package/.docs/models/gateways.md +14 -0
  178. package/.docs/models/index.md +286 -0
  179. package/.docs/models/providers/302ai.md +134 -0
  180. package/.docs/models/providers/abacus.md +125 -0
  181. package/.docs/models/providers/agentrouter.md +90 -0
  182. package/.docs/models/providers/aihubmix.md +107 -0
  183. package/.docs/models/providers/alibaba-cn.md +135 -0
  184. package/.docs/models/providers/alibaba.md +111 -0
  185. package/.docs/models/providers/amazon-bedrock.md +33 -0
  186. package/.docs/models/providers/anthropic.md +153 -0
  187. package/.docs/models/providers/azure.md +33 -0
  188. package/.docs/models/providers/bailing.md +72 -0
  189. package/.docs/models/providers/baseten.md +77 -0
  190. package/.docs/models/providers/berget.md +78 -0
  191. package/.docs/models/providers/cerebras.md +101 -0
  192. package/.docs/models/providers/chutes.md +136 -0
  193. package/.docs/models/providers/cloudflare-ai-gateway.md +33 -0
  194. package/.docs/models/providers/cloudflare-workers-ai.md +109 -0
  195. package/.docs/models/providers/cohere.md +33 -0
  196. package/.docs/models/providers/cortecs.md +91 -0
  197. package/.docs/models/providers/deepinfra.md +112 -0
  198. package/.docs/models/providers/deepseek.md +88 -0
  199. package/.docs/models/providers/fastrouter.md +84 -0
  200. package/.docs/models/providers/fireworks-ai.md +89 -0
  201. package/.docs/models/providers/firmware.md +85 -0
  202. package/.docs/models/providers/friendli.md +78 -0
  203. package/.docs/models/providers/github-models.md +125 -0
  204. package/.docs/models/providers/google-vertex.md +33 -0
  205. package/.docs/models/providers/google.md +159 -0
  206. package/.docs/models/providers/groq.md +107 -0
  207. package/.docs/models/providers/helicone.md +161 -0
  208. package/.docs/models/providers/huggingface.md +90 -0
  209. package/.docs/models/providers/iflowcn.md +84 -0
  210. package/.docs/models/providers/inception.md +72 -0
  211. package/.docs/models/providers/inference.md +79 -0
  212. package/.docs/models/providers/io-intelligence.md +87 -0
  213. package/.docs/models/providers/io-net.md +87 -0
  214. package/.docs/models/providers/jiekou.md +131 -0
  215. package/.docs/models/providers/kilo.md +333 -0
  216. package/.docs/models/providers/kimi-for-coding.md +100 -0
  217. package/.docs/models/providers/kuae-cloud-coding-plan.md +71 -0
  218. package/.docs/models/providers/llama.md +77 -0
  219. package/.docs/models/providers/lmstudio.md +73 -0
  220. package/.docs/models/providers/lucidquery.md +72 -0
  221. package/.docs/models/providers/minimax-cn-coding-plan.md +102 -0
  222. package/.docs/models/providers/minimax-cn.md +102 -0
  223. package/.docs/models/providers/minimax-coding-plan.md +102 -0
  224. package/.docs/models/providers/minimax.md +104 -0
  225. package/.docs/models/providers/mistral.md +124 -0
  226. package/.docs/models/providers/moark.md +72 -0
  227. package/.docs/models/providers/modelscope.md +77 -0
  228. package/.docs/models/providers/moonshotai-cn.md +76 -0
  229. package/.docs/models/providers/moonshotai.md +76 -0
  230. package/.docs/models/providers/morph.md +73 -0
  231. package/.docs/models/providers/nano-gpt.md +103 -0
  232. package/.docs/models/providers/nebius.md +116 -0
  233. package/.docs/models/providers/nova.md +72 -0
  234. package/.docs/models/providers/novita-ai.md +154 -0
  235. package/.docs/models/providers/nvidia.md +141 -0
  236. package/.docs/models/providers/ollama-cloud.md +103 -0
  237. package/.docs/models/providers/ollama.md +33 -0
  238. package/.docs/models/providers/openai.md +193 -0
  239. package/.docs/models/providers/opencode.md +100 -0
  240. package/.docs/models/providers/ovhcloud.md +83 -0
  241. package/.docs/models/providers/perplexity.md +100 -0
  242. package/.docs/models/providers/poe.md +183 -0
  243. package/.docs/models/providers/privatemode-ai.md +75 -0
  244. package/.docs/models/providers/requesty.md +90 -0
  245. package/.docs/models/providers/scaleway.md +84 -0
  246. package/.docs/models/providers/siliconflow-cn.md +138 -0
  247. package/.docs/models/providers/siliconflow.md +140 -0
  248. package/.docs/models/providers/stackit.md +78 -0
  249. package/.docs/models/providers/stepfun.md +73 -0
  250. package/.docs/models/providers/submodel.md +79 -0
  251. package/.docs/models/providers/synthetic.md +96 -0
  252. package/.docs/models/providers/togetherai.md +115 -0
  253. package/.docs/models/providers/upstage.md +73 -0
  254. package/.docs/models/providers/venice.md +95 -0
  255. package/.docs/models/providers/vivgrid.md +106 -0
  256. package/.docs/models/providers/vultr.md +75 -0
  257. package/.docs/models/providers/wandb.md +80 -0
  258. package/.docs/models/providers/xai.md +141 -0
  259. package/.docs/models/providers/xiaomi.md +71 -0
  260. package/.docs/models/providers/zai-coding-plan.md +80 -0
  261. package/.docs/models/providers/zai.md +79 -0
  262. package/.docs/models/providers/zenmux.md +161 -0
  263. package/.docs/models/providers/zhipuai-coding-plan.md +79 -0
  264. package/.docs/models/providers/zhipuai.md +79 -0
  265. package/.docs/models/providers.md +81 -0
  266. package/.docs/reference/agents/agent.md +141 -0
  267. package/.docs/reference/agents/generate.md +186 -0
  268. package/.docs/reference/agents/generateLegacy.md +173 -0
  269. package/.docs/reference/agents/getDefaultGenerateOptions.md +36 -0
  270. package/.docs/reference/agents/getDefaultOptions.md +34 -0
  271. package/.docs/reference/agents/getDefaultStreamOptions.md +36 -0
  272. package/.docs/reference/agents/getDescription.md +21 -0
  273. package/.docs/reference/agents/getInstructions.md +34 -0
  274. package/.docs/reference/agents/getLLM.md +37 -0
  275. package/.docs/reference/agents/getMemory.md +34 -0
  276. package/.docs/reference/agents/getModel.md +34 -0
  277. package/.docs/reference/agents/getTools.md +29 -0
  278. package/.docs/reference/agents/getVoice.md +34 -0
  279. package/.docs/reference/agents/listAgents.md +35 -0
  280. package/.docs/reference/agents/listScorers.md +34 -0
  281. package/.docs/reference/agents/listTools.md +34 -0
  282. package/.docs/reference/agents/listWorkflows.md +34 -0
  283. package/.docs/reference/agents/network.md +133 -0
  284. package/.docs/reference/ai-sdk/chat-route.md +82 -0
  285. package/.docs/reference/ai-sdk/handle-chat-stream.md +53 -0
  286. package/.docs/reference/ai-sdk/handle-network-stream.md +37 -0
  287. package/.docs/reference/ai-sdk/handle-workflow-stream.md +55 -0
  288. package/.docs/reference/ai-sdk/network-route.md +74 -0
  289. package/.docs/reference/ai-sdk/to-ai-sdk-stream.md +231 -0
  290. package/.docs/reference/ai-sdk/to-ai-sdk-v4-messages.md +79 -0
  291. package/.docs/reference/ai-sdk/to-ai-sdk-v5-messages.md +76 -0
  292. package/.docs/reference/ai-sdk/with-mastra.md +59 -0
  293. package/.docs/reference/ai-sdk/workflow-route.md +79 -0
  294. package/.docs/reference/auth/auth0.md +73 -0
  295. package/.docs/reference/auth/better-auth.md +71 -0
  296. package/.docs/reference/auth/clerk.md +36 -0
  297. package/.docs/reference/auth/firebase.md +80 -0
  298. package/.docs/reference/auth/jwt.md +26 -0
  299. package/.docs/reference/auth/supabase.md +33 -0
  300. package/.docs/reference/auth/workos.md +84 -0
  301. package/.docs/reference/cli/create-mastra.md +137 -0
  302. package/.docs/reference/cli/mastra.md +336 -0
  303. package/.docs/reference/client-js/agents.md +437 -0
  304. package/.docs/reference/client-js/error-handling.md +16 -0
  305. package/.docs/reference/client-js/logs.md +24 -0
  306. package/.docs/reference/client-js/mastra-client.md +63 -0
  307. package/.docs/reference/client-js/memory.md +221 -0
  308. package/.docs/reference/client-js/observability.md +72 -0
  309. package/.docs/reference/client-js/telemetry.md +20 -0
  310. package/.docs/reference/client-js/tools.md +44 -0
  311. package/.docs/reference/client-js/vectors.md +79 -0
  312. package/.docs/reference/client-js/workflows.md +199 -0
  313. package/.docs/reference/configuration.md +752 -0
  314. package/.docs/reference/core/addGateway.md +42 -0
  315. package/.docs/reference/core/getAgent.md +21 -0
  316. package/.docs/reference/core/getAgentById.md +21 -0
  317. package/.docs/reference/core/getDeployer.md +22 -0
  318. package/.docs/reference/core/getGateway.md +38 -0
  319. package/.docs/reference/core/getGatewayById.md +41 -0
  320. package/.docs/reference/core/getLogger.md +22 -0
  321. package/.docs/reference/core/getMCPServer.md +47 -0
  322. package/.docs/reference/core/getMCPServerById.md +55 -0
  323. package/.docs/reference/core/getMemory.md +50 -0
  324. package/.docs/reference/core/getScorer.md +54 -0
  325. package/.docs/reference/core/getScorerById.md +54 -0
  326. package/.docs/reference/core/getServer.md +22 -0
  327. package/.docs/reference/core/getStorage.md +22 -0
  328. package/.docs/reference/core/getStoredAgentById.md +89 -0
  329. package/.docs/reference/core/getTelemetry.md +22 -0
  330. package/.docs/reference/core/getVector.md +22 -0
  331. package/.docs/reference/core/getWorkflow.md +42 -0
  332. package/.docs/reference/core/listAgents.md +21 -0
  333. package/.docs/reference/core/listGateways.md +40 -0
  334. package/.docs/reference/core/listLogs.md +38 -0
  335. package/.docs/reference/core/listLogsByRunId.md +36 -0
  336. package/.docs/reference/core/listMCPServers.md +55 -0
  337. package/.docs/reference/core/listMemory.md +56 -0
  338. package/.docs/reference/core/listScorers.md +29 -0
  339. package/.docs/reference/core/listStoredAgents.md +93 -0
  340. package/.docs/reference/core/listVectors.md +22 -0
  341. package/.docs/reference/core/listWorkflows.md +21 -0
  342. package/.docs/reference/core/mastra-class.md +66 -0
  343. package/.docs/reference/core/mastra-model-gateway.md +153 -0
  344. package/.docs/reference/core/setLogger.md +26 -0
  345. package/.docs/reference/core/setStorage.md +27 -0
  346. package/.docs/reference/datasets/addItem.md +37 -0
  347. package/.docs/reference/datasets/addItems.md +35 -0
  348. package/.docs/reference/datasets/compareExperiments.md +52 -0
  349. package/.docs/reference/datasets/create.md +51 -0
  350. package/.docs/reference/datasets/dataset.md +82 -0
  351. package/.docs/reference/datasets/datasets-manager.md +94 -0
  352. package/.docs/reference/datasets/delete.md +25 -0
  353. package/.docs/reference/datasets/deleteExperiment.md +27 -0
  354. package/.docs/reference/datasets/deleteItem.md +27 -0
  355. package/.docs/reference/datasets/deleteItems.md +29 -0
  356. package/.docs/reference/datasets/get.md +31 -0
  357. package/.docs/reference/datasets/getDetails.md +47 -0
  358. package/.docs/reference/datasets/getExperiment.md +30 -0
  359. package/.docs/reference/datasets/getItem.md +33 -0
  360. package/.docs/reference/datasets/getItemHistory.md +31 -0
  361. package/.docs/reference/datasets/list.md +31 -0
  362. package/.docs/reference/datasets/listExperimentResults.md +39 -0
  363. package/.docs/reference/datasets/listExperiments.md +33 -0
  364. package/.docs/reference/datasets/listItems.md +46 -0
  365. package/.docs/reference/datasets/listVersions.md +33 -0
  366. package/.docs/reference/datasets/startExperiment.md +62 -0
  367. package/.docs/reference/datasets/startExperimentAsync.md +43 -0
  368. package/.docs/reference/datasets/update.md +48 -0
  369. package/.docs/reference/datasets/updateItem.md +38 -0
  370. package/.docs/reference/deployer/cloudflare.md +79 -0
  371. package/.docs/reference/deployer/netlify.md +80 -0
  372. package/.docs/reference/deployer/vercel.md +91 -0
  373. package/.docs/reference/deployer.md +100 -0
  374. package/.docs/reference/evals/answer-relevancy.md +105 -0
  375. package/.docs/reference/evals/answer-similarity.md +99 -0
  376. package/.docs/reference/evals/bias.md +120 -0
  377. package/.docs/reference/evals/completeness.md +136 -0
  378. package/.docs/reference/evals/content-similarity.md +101 -0
  379. package/.docs/reference/evals/context-precision.md +196 -0
  380. package/.docs/reference/evals/context-relevance.md +531 -0
  381. package/.docs/reference/evals/create-scorer.md +270 -0
  382. package/.docs/reference/evals/faithfulness.md +114 -0
  383. package/.docs/reference/evals/hallucination.md +213 -0
  384. package/.docs/reference/evals/keyword-coverage.md +128 -0
  385. package/.docs/reference/evals/mastra-scorer.md +123 -0
  386. package/.docs/reference/evals/noise-sensitivity.md +675 -0
  387. package/.docs/reference/evals/prompt-alignment.md +614 -0
  388. package/.docs/reference/evals/run-evals.md +179 -0
  389. package/.docs/reference/evals/scorer-utils.md +326 -0
  390. package/.docs/reference/evals/textual-difference.md +113 -0
  391. package/.docs/reference/evals/tone-consistency.md +119 -0
  392. package/.docs/reference/evals/tool-call-accuracy.md +533 -0
  393. package/.docs/reference/evals/toxicity.md +123 -0
  394. package/.docs/reference/harness/harness-class.md +708 -0
  395. package/.docs/reference/index.md +277 -0
  396. package/.docs/reference/logging/pino-logger.md +117 -0
  397. package/.docs/reference/mastra-code/createMastraCode.md +108 -0
  398. package/.docs/reference/memory/clone-utilities.md +199 -0
  399. package/.docs/reference/memory/cloneThread.md +130 -0
  400. package/.docs/reference/memory/createThread.md +68 -0
  401. package/.docs/reference/memory/deleteMessages.md +38 -0
  402. package/.docs/reference/memory/getThreadById.md +24 -0
  403. package/.docs/reference/memory/listThreads.md +145 -0
  404. package/.docs/reference/memory/memory-class.md +147 -0
  405. package/.docs/reference/memory/observational-memory.md +565 -0
  406. package/.docs/reference/memory/recall.md +91 -0
  407. package/.docs/reference/observability/tracing/bridges/otel.md +131 -0
  408. package/.docs/reference/observability/tracing/configuration.md +178 -0
  409. package/.docs/reference/observability/tracing/exporters/arize.md +141 -0
  410. package/.docs/reference/observability/tracing/exporters/braintrust.md +93 -0
  411. package/.docs/reference/observability/tracing/exporters/cloud-exporter.md +163 -0
  412. package/.docs/reference/observability/tracing/exporters/console-exporter.md +138 -0
  413. package/.docs/reference/observability/tracing/exporters/datadog.md +116 -0
  414. package/.docs/reference/observability/tracing/exporters/default-exporter.md +174 -0
  415. package/.docs/reference/observability/tracing/exporters/laminar.md +78 -0
  416. package/.docs/reference/observability/tracing/exporters/langfuse.md +134 -0
  417. package/.docs/reference/observability/tracing/exporters/langsmith.md +108 -0
  418. package/.docs/reference/observability/tracing/exporters/otel.md +199 -0
  419. package/.docs/reference/observability/tracing/exporters/posthog.md +92 -0
  420. package/.docs/reference/observability/tracing/exporters/sentry.md +184 -0
  421. package/.docs/reference/observability/tracing/instances.md +107 -0
  422. package/.docs/reference/observability/tracing/interfaces.md +743 -0
  423. package/.docs/reference/observability/tracing/processors/sensitive-data-filter.md +144 -0
  424. package/.docs/reference/observability/tracing/spans.md +224 -0
  425. package/.docs/reference/processors/batch-parts-processor.md +61 -0
  426. package/.docs/reference/processors/language-detector.md +82 -0
  427. package/.docs/reference/processors/message-history-processor.md +85 -0
  428. package/.docs/reference/processors/moderation-processor.md +104 -0
  429. package/.docs/reference/processors/pii-detector.md +108 -0
  430. package/.docs/reference/processors/processor-interface.md +521 -0
  431. package/.docs/reference/processors/prompt-injection-detector.md +72 -0
  432. package/.docs/reference/processors/semantic-recall-processor.md +117 -0
  433. package/.docs/reference/processors/system-prompt-scrubber.md +80 -0
  434. package/.docs/reference/processors/token-limiter-processor.md +115 -0
  435. package/.docs/reference/processors/tool-call-filter.md +85 -0
  436. package/.docs/reference/processors/tool-search-processor.md +111 -0
  437. package/.docs/reference/processors/unicode-normalizer.md +62 -0
  438. package/.docs/reference/processors/working-memory-processor.md +152 -0
  439. package/.docs/reference/rag/chunk.md +221 -0
  440. package/.docs/reference/rag/database-config.md +261 -0
  441. package/.docs/reference/rag/document.md +114 -0
  442. package/.docs/reference/rag/embeddings.md +92 -0
  443. package/.docs/reference/rag/extract-params.md +168 -0
  444. package/.docs/reference/rag/graph-rag.md +111 -0
  445. package/.docs/reference/rag/metadata-filters.md +216 -0
  446. package/.docs/reference/rag/rerank.md +75 -0
  447. package/.docs/reference/rag/rerankWithScorer.md +80 -0
  448. package/.docs/reference/server/create-route.md +262 -0
  449. package/.docs/reference/server/express-adapter.md +176 -0
  450. package/.docs/reference/server/fastify-adapter.md +90 -0
  451. package/.docs/reference/server/hono-adapter.md +162 -0
  452. package/.docs/reference/server/koa-adapter.md +127 -0
  453. package/.docs/reference/server/mastra-server.md +298 -0
  454. package/.docs/reference/server/register-api-route.md +249 -0
  455. package/.docs/reference/server/routes.md +306 -0
  456. package/.docs/reference/storage/cloudflare-d1.md +218 -0
  457. package/.docs/reference/storage/cloudflare.md +88 -0
  458. package/.docs/reference/storage/composite.md +235 -0
  459. package/.docs/reference/storage/convex.md +161 -0
  460. package/.docs/reference/storage/dynamodb.md +282 -0
  461. package/.docs/reference/storage/lance.md +131 -0
  462. package/.docs/reference/storage/libsql.md +135 -0
  463. package/.docs/reference/storage/mongodb.md +262 -0
  464. package/.docs/reference/storage/mssql.md +157 -0
  465. package/.docs/reference/storage/overview.md +121 -0
  466. package/.docs/reference/storage/postgresql.md +526 -0
  467. package/.docs/reference/storage/upstash.md +160 -0
  468. package/.docs/reference/streaming/ChunkType.md +292 -0
  469. package/.docs/reference/streaming/agents/MastraModelOutput.md +182 -0
  470. package/.docs/reference/streaming/agents/stream.md +221 -0
  471. package/.docs/reference/streaming/agents/streamLegacy.md +142 -0
  472. package/.docs/reference/streaming/workflows/observeStream.md +42 -0
  473. package/.docs/reference/streaming/workflows/resumeStream.md +61 -0
  474. package/.docs/reference/streaming/workflows/stream.md +88 -0
  475. package/.docs/reference/streaming/workflows/timeTravelStream.md +142 -0
  476. package/.docs/reference/templates/overview.md +194 -0
  477. package/.docs/reference/tools/create-tool.md +237 -0
  478. package/.docs/reference/tools/document-chunker-tool.md +89 -0
  479. package/.docs/reference/tools/graph-rag-tool.md +182 -0
  480. package/.docs/reference/tools/mcp-client.md +954 -0
  481. package/.docs/reference/tools/mcp-server.md +1271 -0
  482. package/.docs/reference/tools/vector-query-tool.md +459 -0
  483. package/.docs/reference/vectors/astra.md +121 -0
  484. package/.docs/reference/vectors/chroma.md +264 -0
  485. package/.docs/reference/vectors/convex.md +300 -0
  486. package/.docs/reference/vectors/couchbase.md +226 -0
  487. package/.docs/reference/vectors/duckdb.md +318 -0
  488. package/.docs/reference/vectors/elasticsearch.md +189 -0
  489. package/.docs/reference/vectors/lance.md +220 -0
  490. package/.docs/reference/vectors/libsql.md +305 -0
  491. package/.docs/reference/vectors/mongodb.md +295 -0
  492. package/.docs/reference/vectors/opensearch.md +99 -0
  493. package/.docs/reference/vectors/pg.md +408 -0
  494. package/.docs/reference/vectors/pinecone.md +168 -0
  495. package/.docs/reference/vectors/qdrant.md +222 -0
  496. package/.docs/reference/vectors/s3vectors.md +277 -0
  497. package/.docs/reference/vectors/turbopuffer.md +157 -0
  498. package/.docs/reference/vectors/upstash.md +294 -0
  499. package/.docs/reference/vectors/vectorize.md +147 -0
  500. package/.docs/reference/voice/azure.md +148 -0
  501. package/.docs/reference/voice/cloudflare.md +83 -0
  502. package/.docs/reference/voice/composite-voice.md +121 -0
  503. package/.docs/reference/voice/deepgram.md +79 -0
  504. package/.docs/reference/voice/elevenlabs.md +98 -0
  505. package/.docs/reference/voice/google-gemini-live.md +378 -0
  506. package/.docs/reference/voice/google.md +228 -0
  507. package/.docs/reference/voice/mastra-voice.md +311 -0
  508. package/.docs/reference/voice/murf.md +122 -0
  509. package/.docs/reference/voice/openai-realtime.md +203 -0
  510. package/.docs/reference/voice/openai.md +88 -0
  511. package/.docs/reference/voice/playai.md +80 -0
  512. package/.docs/reference/voice/sarvam.md +126 -0
  513. package/.docs/reference/voice/speechify.md +75 -0
  514. package/.docs/reference/voice/voice.addInstructions.md +55 -0
  515. package/.docs/reference/voice/voice.addTools.md +67 -0
  516. package/.docs/reference/voice/voice.answer.md +54 -0
  517. package/.docs/reference/voice/voice.close.md +51 -0
  518. package/.docs/reference/voice/voice.connect.md +94 -0
  519. package/.docs/reference/voice/voice.events.md +37 -0
  520. package/.docs/reference/voice/voice.getSpeakers.md +129 -0
  521. package/.docs/reference/voice/voice.listen.md +164 -0
  522. package/.docs/reference/voice/voice.off.md +54 -0
  523. package/.docs/reference/voice/voice.on.md +111 -0
  524. package/.docs/reference/voice/voice.send.md +65 -0
  525. package/.docs/reference/voice/voice.speak.md +157 -0
  526. package/.docs/reference/voice/voice.updateConfig.md +60 -0
  527. package/.docs/reference/workflows/run-methods/cancel.md +86 -0
  528. package/.docs/reference/workflows/run-methods/restart.md +33 -0
  529. package/.docs/reference/workflows/run-methods/resume.md +59 -0
  530. package/.docs/reference/workflows/run-methods/start.md +58 -0
  531. package/.docs/reference/workflows/run-methods/startAsync.md +67 -0
  532. package/.docs/reference/workflows/run-methods/timeTravel.md +142 -0
  533. package/.docs/reference/workflows/run.md +59 -0
  534. package/.docs/reference/workflows/step.md +119 -0
  535. package/.docs/reference/workflows/workflow-methods/branch.md +25 -0
  536. package/.docs/reference/workflows/workflow-methods/commit.md +17 -0
  537. package/.docs/reference/workflows/workflow-methods/create-run.md +63 -0
  538. package/.docs/reference/workflows/workflow-methods/dountil.md +25 -0
  539. package/.docs/reference/workflows/workflow-methods/dowhile.md +25 -0
  540. package/.docs/reference/workflows/workflow-methods/foreach.md +118 -0
  541. package/.docs/reference/workflows/workflow-methods/map.md +93 -0
  542. package/.docs/reference/workflows/workflow-methods/parallel.md +21 -0
  543. package/.docs/reference/workflows/workflow-methods/sleep.md +35 -0
  544. package/.docs/reference/workflows/workflow-methods/sleepUntil.md +35 -0
  545. package/.docs/reference/workflows/workflow-methods/then.md +21 -0
  546. package/.docs/reference/workflows/workflow.md +157 -0
  547. package/.docs/reference/workspace/e2b-sandbox.md +289 -0
  548. package/.docs/reference/workspace/filesystem.md +255 -0
  549. package/.docs/reference/workspace/gcs-filesystem.md +174 -0
  550. package/.docs/reference/workspace/local-filesystem.md +343 -0
  551. package/.docs/reference/workspace/local-sandbox.md +301 -0
  552. package/.docs/reference/workspace/s3-filesystem.md +175 -0
  553. package/.docs/reference/workspace/sandbox.md +87 -0
  554. package/.docs/reference/workspace/workspace-class.md +244 -0
  555. package/CHANGELOG.md +8 -0
  556. package/package.json +5 -5
@@ -0,0 +1,189 @@
1
+ # ElasticSearch Vector Store
2
+
3
+ The ElasticSearchVector class provides vector search using [ElasticSearch](https://www.elastic.co/elasticsearch/) with its `dense_vector` field type and k-NN search capabilities. It's part of the `@mastra/elasticsearch` package.
4
+
5
+ ## Installation
6
+
7
+ **npm**:
8
+
9
+ ```bash
10
+ npm install @mastra/elasticsearch@latest
11
+ ```
12
+
13
+ **pnpm**:
14
+
15
+ ```bash
16
+ pnpm add @mastra/elasticsearch@latest
17
+ ```
18
+
19
+ **Yarn**:
20
+
21
+ ```bash
22
+ yarn add @mastra/elasticsearch@latest
23
+ ```
24
+
25
+ **Bun**:
26
+
27
+ ```bash
28
+ bun add @mastra/elasticsearch@latest
29
+ ```
30
+
31
+ ## Usage
32
+
33
+ ```typescript
34
+ import { ElasticSearchVector } from "@mastra/elasticsearch";
35
+
36
+ const store = new ElasticSearchVector({
37
+ id: "elasticsearch-vector",
38
+ url: process.env.ELASTICSEARCH_URL,
39
+ });
40
+
41
+ // Create an index
42
+ await store.createIndex({
43
+ indexName: "my-collection",
44
+ dimension: 1536,
45
+ });
46
+
47
+ // Add vectors with metadata
48
+ const vectors = [[0.1, 0.2, ...], [0.3, 0.4, ...]];
49
+ const metadata = [
50
+ { text: "first document", category: "A" },
51
+ { text: "second document", category: "B" }
52
+ ];
53
+ await store.upsert({
54
+ indexName: "my-collection",
55
+ vectors,
56
+ metadata,
57
+ });
58
+
59
+ // Query similar vectors
60
+ const results = await store.query({
61
+ indexName: "my-collection",
62
+ queryVector: [0.1, 0.2, ...],
63
+ topK: 10,
64
+ filter: { category: "A" },
65
+ });
66
+ ```
67
+
68
+ ## Constructor Options
69
+
70
+ **id:** (`string`): Unique identifier for this vector store instance
71
+
72
+ **url:** (`string`): ElasticSearch connection URL (e.g., 'http\://localhost:9200')
73
+
74
+ ## Methods
75
+
76
+ ### createIndex()
77
+
78
+ Creates a new index with the specified configuration.
79
+
80
+ **indexName:** (`string`): Name of the index to create
81
+
82
+ **dimension:** (`number`): Vector dimension (must match your embedding model)
83
+
84
+ **metric?:** (`'cosine' | 'euclidean' | 'dotproduct'`): Distance metric for similarity search (Default: `cosine`)
85
+
86
+ ### upsert()
87
+
88
+ Adds or updates vectors and their metadata in the index.
89
+
90
+ **indexName:** (`string`): Name of the index to insert into
91
+
92
+ **vectors:** (`number[][]`): Array of embedding vectors
93
+
94
+ **metadata?:** (`Record<string, any>[]`): Metadata for each vector
95
+
96
+ **ids?:** (`string[]`): Optional vector IDs (auto-generated if not provided)
97
+
98
+ ### query()
99
+
100
+ Searches for similar vectors with optional metadata filtering.
101
+
102
+ **indexName:** (`string`): Name of the index to search in
103
+
104
+ **queryVector:** (`number[]`): Query vector to find similar vectors for
105
+
106
+ **topK?:** (`number`): Number of results to return (Default: `10`)
107
+
108
+ **filter?:** (`Record<string, any>`): Metadata filters
109
+
110
+ **includeVector?:** (`boolean`): Whether to include vector data in results (Default: `false`)
111
+
112
+ ### describeIndex()
113
+
114
+ Gets information about an index.
115
+
116
+ **indexName:** (`string`): Name of the index to describe
117
+
118
+ Returns:
119
+
120
+ ```typescript
121
+ interface IndexStats {
122
+ dimension: number
123
+ count: number
124
+ metric: 'cosine' | 'euclidean' | 'dotproduct'
125
+ }
126
+ ```
127
+
128
+ ### deleteIndex()
129
+
130
+ Deletes an index and all its data.
131
+
132
+ **indexName:** (`string`): Name of the index to delete
133
+
134
+ ### listIndexes()
135
+
136
+ Lists all vector indexes.
137
+
138
+ Returns: `Promise<string[]>`
139
+
140
+ ### updateVector()
141
+
142
+ Update a single vector by ID or by metadata filter. Either `id` or `filter` must be provided, but not both.
143
+
144
+ **indexName:** (`string`): Name of the index containing the vector
145
+
146
+ **id?:** (`string`): ID of the vector to update (mutually exclusive with filter)
147
+
148
+ **filter?:** (`Record<string, any>`): Metadata filter to identify vector(s) to update (mutually exclusive with id)
149
+
150
+ **update:** (`object`): Update data containing vector and/or metadata
151
+
152
+ **update.vector?:** (`number[]`): New vector data
153
+
154
+ **update.metadata?:** (`Record<string, any>`): New metadata
155
+
156
+ ### deleteVector()
157
+
158
+ Deletes a single vector by its ID.
159
+
160
+ **indexName:** (`string`): Name of the index containing the vector
161
+
162
+ **id:** (`string`): ID of the vector to delete
163
+
164
+ ### deleteVectors()
165
+
166
+ Delete multiple vectors by IDs or by metadata filter. Either `ids` or `filter` must be provided, but not both.
167
+
168
+ **indexName:** (`string`): Name of the index containing the vectors to delete
169
+
170
+ **ids?:** (`string[]`): Array of vector IDs to delete (mutually exclusive with filter)
171
+
172
+ **filter?:** (`Record<string, any>`): Metadata filter to identify vectors to delete (mutually exclusive with ids)
173
+
174
+ ## Response Types
175
+
176
+ Query results are returned in this format:
177
+
178
+ ```typescript
179
+ interface QueryResult {
180
+ id: string
181
+ score: number
182
+ metadata: Record<string, any>
183
+ vector?: number[] // Only included if includeVector is true
184
+ }
185
+ ```
186
+
187
+ ## Related
188
+
189
+ - [Metadata Filters](https://mastra.ai/reference/rag/metadata-filters)
@@ -0,0 +1,220 @@
1
+ # Lance Vector Store
2
+
3
+ The LanceVectorStore class provides vector search using [LanceDB](https://lancedb.github.io/lancedb/), an embedded vector database built on the Lance columnar format. It offers efficient storage and fast similarity search for both local development and production deployments.
4
+
5
+ ## Factory Method
6
+
7
+ The LanceVectorStore uses a factory pattern for creation. You should use the static `create()` method rather than the constructor directly.
8
+
9
+ **uri:** (`string`): Path to LanceDB database or URI for cloud deployments
10
+
11
+ **options?:** (`ConnectionOptions`): Additional connection options for LanceDB
12
+
13
+ ## Constructor Examples
14
+
15
+ You can create a `LanceVectorStore` instance using the static create method:
16
+
17
+ ```ts
18
+ import { LanceVectorStore } from '@mastra/lance'
19
+
20
+ // Connect to a local database
21
+ const vectorStore = await LanceVectorStore.create('/path/to/db')
22
+
23
+ // Connect to a LanceDB cloud database
24
+ const cloudStore = await LanceVectorStore.create('db://host:port')
25
+
26
+ // Connect to a cloud database with options
27
+ const s3Store = await LanceVectorStore.create('s3://bucket/db', {
28
+ storageOptions: { timeout: '60s' },
29
+ })
30
+ ```
31
+
32
+ ## Methods
33
+
34
+ ### createIndex()
35
+
36
+ **tableName:** (`string`): Name of the table to create index in
37
+
38
+ **indexName:** (`string`): Name of the index (column name) to create
39
+
40
+ **dimension:** (`number`): Vector dimension (must match your embedding model)
41
+
42
+ **metric?:** (`'cosine' | 'euclidean' | 'dotproduct'`): Distance metric for similarity search (Default: `cosine`)
43
+
44
+ **indexConfig?:** (`LanceIndexConfig`): Index configuration (Default: `{ type: 'hnsw' }`)
45
+
46
+ #### LanceIndexConfig
47
+
48
+ **type:** (`'ivfflat' | 'hnsw'`): stringivfflat:ivfflatClusters vectors into lists for approximate search.hnsw:hnswGraph-based index offering fast search times and high recall. (Default: `hnsw`)
49
+
50
+ **numPartitions?:** (`number`): Number of partitions for IVF indexes (Default: `128`)
51
+
52
+ **numSubVectors?:** (`number`): Number of sub-vectors for product quantization (Default: `16`)
53
+
54
+ **hnsw?:** (`HNSWConfig`): objectm?:numberMaximum number of connections per node (default: 16)efConstruction?:numberBuild-time complexity (default: 100)
55
+
56
+ ### createTable()
57
+
58
+ **tableName:** (`string`): Name of the table to create
59
+
60
+ **data:** (`Record<string, unknown>[] | TableLike`): Initial data for the table
61
+
62
+ **options?:** (`Partial<CreateTableOptions>`): Additional table creation options
63
+
64
+ ### upsert()
65
+
66
+ **tableName:** (`string`): Name of the table to upsert vectors into
67
+
68
+ **vectors:** (`number[][]`): Array of embedding vectors
69
+
70
+ **metadata?:** (`Record<string, any>[]`): Metadata for each vector
71
+
72
+ **ids?:** (`string[]`): Optional vector IDs (auto-generated if not provided)
73
+
74
+ ### query()
75
+
76
+ **tableName:** (`string`): Name of the table to query
77
+
78
+ **queryVector:** (`number[]`): Query vector
79
+
80
+ **topK?:** (`number`): Number of results to return (Default: `10`)
81
+
82
+ **filter?:** (`Record<string, any>`): Metadata filters
83
+
84
+ **includeVector?:** (`boolean`): Whether to include the vector in the result (Default: `false`)
85
+
86
+ **columns?:** (`string[]`): Specific columns to include in the result (Default: `[]`)
87
+
88
+ **includeAllColumns?:** (`boolean`): Whether to include all columns in the result (Default: `false`)
89
+
90
+ ### listTables()
91
+
92
+ Returns an array of table names as strings.
93
+
94
+ ```typescript
95
+ const tables = await vectorStore.listTables()
96
+ // ['my_vectors', 'embeddings', 'documents']
97
+ ```
98
+
99
+ ### getTableSchema()
100
+
101
+ **tableName:** (`string`): Name of the table to describe
102
+
103
+ Returns the schema of the specified table.
104
+
105
+ ### deleteTable()
106
+
107
+ **tableName:** (`string`): Name of the table to delete
108
+
109
+ ### deleteAllTables()
110
+
111
+ Deletes all tables in the database.
112
+
113
+ ### listIndexes()
114
+
115
+ Returns an array of index names as strings.
116
+
117
+ ### describeIndex()
118
+
119
+ **indexName:** (`string`): Name of the index to describe
120
+
121
+ Returns information about the index:
122
+
123
+ ```typescript
124
+ interface IndexStats {
125
+ dimension: number
126
+ count: number
127
+ metric: 'cosine' | 'euclidean' | 'dotproduct'
128
+ type: 'ivfflat' | 'hnsw'
129
+ config: {
130
+ m?: number
131
+ efConstruction?: number
132
+ numPartitions?: number
133
+ numSubVectors?: number
134
+ }
135
+ }
136
+ ```
137
+
138
+ ### deleteIndex()
139
+
140
+ **indexName:** (`string`): Name of the index to delete
141
+
142
+ ### updateVector()
143
+
144
+ Update a single vector by ID or by metadata filter. Either `id` or `filter` must be provided, but not both.
145
+
146
+ **indexName:** (`string`): Name of the index containing the vector
147
+
148
+ **id?:** (`string`): ID of the vector to update (mutually exclusive with filter)
149
+
150
+ **filter?:** (`Record<string, any>`): Metadata filter to identify vector(s) to update (mutually exclusive with id)
151
+
152
+ **update:** (`{ vector?: number[]; metadata?: Record<string, any>; }`): Object containing the vector and/or metadata to update
153
+
154
+ ### deleteVector()
155
+
156
+ **indexName:** (`string`): Name of the index containing the vector
157
+
158
+ **id:** (`string`): ID of the vector to delete
159
+
160
+ ### deleteVectors()
161
+
162
+ Delete multiple vectors by IDs or by metadata filter. Either `ids` or `filter` must be provided, but not both.
163
+
164
+ **indexName:** (`string`): Name of the index containing the vectors to delete
165
+
166
+ **ids?:** (`string[]`): Array of vector IDs to delete (mutually exclusive with filter)
167
+
168
+ **filter?:** (`Record<string, any>`): Metadata filter to identify vectors to delete (mutually exclusive with ids)
169
+
170
+ ### close()
171
+
172
+ Closes the database connection.
173
+
174
+ ## Response Types
175
+
176
+ Query results are returned in this format:
177
+
178
+ ```typescript
179
+ interface QueryResult {
180
+ id: string
181
+ score: number
182
+ metadata: Record<string, any>
183
+ vector?: number[] // Only included if includeVector is true
184
+ document?: string // Document text if available
185
+ }
186
+ ```
187
+
188
+ ## Error Handling
189
+
190
+ The store throws typed errors that can be caught:
191
+
192
+ ```typescript
193
+ try {
194
+ await store.query({
195
+ tableName: 'my_vectors',
196
+ queryVector: queryVector,
197
+ })
198
+ } catch (error) {
199
+ if (error instanceof Error) {
200
+ console.log(error.message)
201
+ }
202
+ }
203
+ ```
204
+
205
+ ## Best Practices
206
+
207
+ - Use the appropriate index type for your use case:
208
+
209
+ - HNSW for better recall and performance when memory isn't constrained
210
+ - IVF for better memory efficiency with large datasets
211
+
212
+ - For optimal performance with large datasets, consider adjusting `numPartitions` and `numSubVectors` values
213
+
214
+ - Use `close()` method to properly close connections when done with the database
215
+
216
+ - Store metadata with a consistent schema to simplify filtering operations
217
+
218
+ ## Related
219
+
220
+ - [Metadata Filters](https://mastra.ai/reference/rag/metadata-filters)
@@ -0,0 +1,305 @@
1
+ # libSQL Vector Store
2
+
3
+ The libSQL storage implementation provides a SQLite-compatible vector search [libSQL](https://github.com/tursodatabase/libsql), a fork of SQLite with vector extensions, and [Turso](https://turso.tech/) with vector extensions, offering a lightweight and efficient vector database solution. It's part of the `@mastra/libsql` package and offers efficient vector similarity search with metadata filtering.
4
+
5
+ ## Installation
6
+
7
+ **npm**:
8
+
9
+ ```bash
10
+ npm install @mastra/libsql@latest
11
+ ```
12
+
13
+ **pnpm**:
14
+
15
+ ```bash
16
+ pnpm add @mastra/libsql@latest
17
+ ```
18
+
19
+ **Yarn**:
20
+
21
+ ```bash
22
+ yarn add @mastra/libsql@latest
23
+ ```
24
+
25
+ **Bun**:
26
+
27
+ ```bash
28
+ bun add @mastra/libsql@latest
29
+ ```
30
+
31
+ ## Usage
32
+
33
+ ```typescript
34
+ import { LibSQLVector } from "@mastra/libsql";
35
+
36
+ // Create a new vector store instance
37
+ const store = new LibSQLVector({
38
+ id: 'libsql-vector',
39
+ url: process.env.DATABASE_URL,
40
+ // Optional: for Turso cloud databases
41
+ authToken: process.env.DATABASE_AUTH_TOKEN,
42
+ });
43
+
44
+ // Create an index
45
+ await store.createIndex({
46
+ indexName: "myCollection",
47
+ dimension: 1536,
48
+ });
49
+
50
+ // Add vectors with metadata
51
+ const vectors = [[0.1, 0.2, ...], [0.3, 0.4, ...]];
52
+ const metadata = [
53
+ { text: "first document", category: "A" },
54
+ { text: "second document", category: "B" }
55
+ ];
56
+ await store.upsert({
57
+ indexName: "myCollection",
58
+ vectors,
59
+ metadata,
60
+ });
61
+
62
+ // Query similar vectors
63
+ const queryVector = [0.1, 0.2, ...];
64
+ const results = await store.query({
65
+ indexName: "myCollection",
66
+ queryVector,
67
+ topK: 10, // top K results
68
+ filter: { category: "A" } // optional metadata filter
69
+ });
70
+ ```
71
+
72
+ ## Constructor Options
73
+
74
+ **url:** (`string`): libSQL database URL. Use ':memory:' for in-memory database, 'file:dbname.db' for local file, or a libSQL-compatible connection string like 'libsql://your-database.turso.io'.
75
+
76
+ **authToken?:** (`string`): Authentication token for Turso cloud databases
77
+
78
+ **syncUrl?:** (`string`): URL for database replication (Turso specific)
79
+
80
+ **syncInterval?:** (`number`): Interval in milliseconds for database sync (Turso specific)
81
+
82
+ ## Methods
83
+
84
+ ### createIndex()
85
+
86
+ Creates a new vector collection. The index name must start with a letter or underscore and can only contain letters, numbers, and underscores. The dimension must be a positive integer.
87
+
88
+ **indexName:** (`string`): Name of the index to create
89
+
90
+ **dimension:** (`number`): Vector dimension size (must match your embedding model)
91
+
92
+ **metric?:** (`'cosine' | 'euclidean' | 'dotproduct'`): Distance metric for similarity search. Note: Currently only cosine similarity is supported by libSQL. (Default: `cosine`)
93
+
94
+ ### upsert()
95
+
96
+ Adds or updates vectors and their metadata in the index. Uses a transaction to ensure all vectors are inserted atomically - if any insert fails, the entire operation is rolled back.
97
+
98
+ **indexName:** (`string`): Name of the index to insert into
99
+
100
+ **vectors:** (`number[][]`): Array of embedding vectors
101
+
102
+ **metadata?:** (`Record<string, any>[]`): Metadata for each vector
103
+
104
+ **ids?:** (`string[]`): Optional vector IDs (auto-generated if not provided)
105
+
106
+ ### query()
107
+
108
+ Searches for similar vectors with optional metadata filtering.
109
+
110
+ **indexName:** (`string`): Name of the index to search in
111
+
112
+ **queryVector:** (`number[]`): Query vector to find similar vectors for
113
+
114
+ **topK?:** (`number`): Number of results to return (Default: `10`)
115
+
116
+ **filter?:** (`Filter`): Metadata filters
117
+
118
+ **includeVector?:** (`boolean`): Whether to include vector data in results (Default: `false`)
119
+
120
+ **minScore?:** (`number`): Minimum similarity score threshold (Default: `0`)
121
+
122
+ ### describeIndex()
123
+
124
+ Gets information about an index.
125
+
126
+ **indexName:** (`string`): Name of the index to describe
127
+
128
+ Returns:
129
+
130
+ ```typescript
131
+ interface IndexStats {
132
+ dimension: number
133
+ count: number
134
+ metric: 'cosine' | 'euclidean' | 'dotproduct'
135
+ }
136
+ ```
137
+
138
+ ### deleteIndex()
139
+
140
+ Deletes an index and all its data.
141
+
142
+ **indexName:** (`string`): Name of the index to delete
143
+
144
+ ### listIndexes()
145
+
146
+ Lists all vector indexes in the database.
147
+
148
+ Returns: `Promise<string[]>`
149
+
150
+ ### truncateIndex()
151
+
152
+ Removes all vectors from an index while keeping the index structure.
153
+
154
+ **indexName:** (`string`): Name of the index to truncate
155
+
156
+ ### updateVector()
157
+
158
+ Update a single vector by ID or by metadata filter. Either `id` or `filter` must be provided, but not both.
159
+
160
+ **indexName:** (`string`): Name of the index containing the vector
161
+
162
+ **id?:** (`string`): ID of the vector entry to update (mutually exclusive with filter)
163
+
164
+ **filter?:** (`Record<string, any>`): Metadata filter to identify vector(s) to update (mutually exclusive with id)
165
+
166
+ **update:** (`object`): Update data containing vector and/or metadata
167
+
168
+ **update.vector?:** (`number[]`): New vector data to update
169
+
170
+ **update.metadata?:** (`Record<string, any>`): New metadata to update
171
+
172
+ ### deleteVector()
173
+
174
+ Deletes a specific vector entry from an index by its ID.
175
+
176
+ **indexName:** (`string`): Name of the index containing the vector
177
+
178
+ **id:** (`string`): ID of the vector entry to delete
179
+
180
+ ### deleteVectors()
181
+
182
+ Delete multiple vectors by IDs or by metadata filter. Either `ids` or `filter` must be provided, but not both.
183
+
184
+ **indexName:** (`string`): Name of the index containing the vectors to delete
185
+
186
+ **ids?:** (`string[]`): Array of vector IDs to delete (mutually exclusive with filter)
187
+
188
+ **filter?:** (`Record<string, any>`): Metadata filter to identify vectors to delete (mutually exclusive with ids)
189
+
190
+ ## Response Types
191
+
192
+ Query results are returned in this format:
193
+
194
+ ```typescript
195
+ interface QueryResult {
196
+ id: string
197
+ score: number
198
+ metadata: Record<string, any>
199
+ vector?: number[] // Only included if includeVector is true
200
+ }
201
+ ```
202
+
203
+ ## Error Handling
204
+
205
+ The store throws specific errors for different failure cases:
206
+
207
+ ```typescript
208
+ try {
209
+ await store.query({
210
+ indexName: 'my-collection',
211
+ queryVector: queryVector,
212
+ })
213
+ } catch (error) {
214
+ // Handle specific error cases
215
+ if (error.message.includes('Invalid index name format')) {
216
+ console.error(
217
+ 'Index name must start with a letter/underscore and contain only alphanumeric characters',
218
+ )
219
+ } else if (error.message.includes('Table not found')) {
220
+ console.error('The specified index does not exist')
221
+ } else {
222
+ console.error('Vector store error:', error.message)
223
+ }
224
+ }
225
+ ```
226
+
227
+ Common error cases include:
228
+
229
+ - Invalid index name format
230
+ - Invalid vector dimensions
231
+ - Table/index not found
232
+ - Database connection issues
233
+ - Transaction failures during upsert
234
+
235
+ ## Usage Example
236
+
237
+ ### Local embeddings with fastembed
238
+
239
+ Embeddings are numeric vectors used by memory's `semanticRecall` to retrieve related messages by meaning (not keywords). This setup uses `@mastra/fastembed` to generate vector embeddings.
240
+
241
+ Install `fastembed` to get started:
242
+
243
+ **npm**:
244
+
245
+ ```bash
246
+ npm install @mastra/fastembed@latest
247
+ ```
248
+
249
+ **pnpm**:
250
+
251
+ ```bash
252
+ pnpm add @mastra/fastembed@latest
253
+ ```
254
+
255
+ **Yarn**:
256
+
257
+ ```bash
258
+ yarn add @mastra/fastembed@latest
259
+ ```
260
+
261
+ **Bun**:
262
+
263
+ ```bash
264
+ bun add @mastra/fastembed@latest
265
+ ```
266
+
267
+ Add the following to your agent:
268
+
269
+ ```typescript
270
+ import { Memory } from '@mastra/memory'
271
+ import { Agent } from '@mastra/core/agent'
272
+ import { LibSQLStore, LibSQLVector } from '@mastra/libsql'
273
+ import { fastembed } from '@mastra/fastembed'
274
+
275
+ export const libsqlAgent = new Agent({
276
+ id: 'libsql-agent',
277
+ name: 'libSQL Agent',
278
+ instructions:
279
+ 'You are an AI agent with the ability to automatically recall memories from previous interactions.',
280
+ model: 'openai/gpt-5.1',
281
+ memory: new Memory({
282
+ storage: new LibSQLStore({
283
+ id: 'libsql-agent-storage',
284
+ url: 'file:libsql-agent.db',
285
+ }),
286
+ vector: new LibSQLVector({
287
+ id: 'libsql-agent-vector',
288
+ url: 'file:libsql-agent.db',
289
+ }),
290
+ embedder: fastembed,
291
+ options: {
292
+ lastMessages: 10,
293
+ semanticRecall: {
294
+ topK: 3,
295
+ messageRange: 2,
296
+ },
297
+ generateTitle: true, // Explicitly enable automatic title generation
298
+ },
299
+ }),
300
+ })
301
+ ```
302
+
303
+ ## Related
304
+
305
+ - [Metadata Filters](https://mastra.ai/reference/rag/metadata-filters)