@mastra/mcp-docs-server 1.0.0-beta.8 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.docs/organized/changelogs/%40internal%2Fchangeset-cli.md +1 -13
- package/.docs/organized/changelogs/%40internal%2Fexternal-types.md +1 -5
- package/.docs/organized/changelogs/%40internal%2Fplayground.md +40 -0
- package/.docs/organized/changelogs/%40internal%2Fstorage-test-utils.md +8 -8
- package/.docs/organized/changelogs/%40internal%2Ftypes-builder.md +1 -53
- package/.docs/organized/changelogs/%40mastra%2Fagent-builder.md +287 -287
- package/.docs/organized/changelogs/%40mastra%2Fai-sdk.md +315 -315
- package/.docs/organized/changelogs/%40mastra%2Fastra.md +53 -53
- package/.docs/organized/changelogs/%40mastra%2Fauth.md +38 -0
- package/.docs/organized/changelogs/%40mastra%2Fchroma.md +66 -66
- package/.docs/organized/changelogs/%40mastra%2Fclickhouse.md +522 -212
- package/.docs/organized/changelogs/%40mastra%2Fclient-js.md +658 -196
- package/.docs/organized/changelogs/%40mastra%2Fcloudflare-d1.md +439 -234
- package/.docs/organized/changelogs/%40mastra%2Fcloudflare.md +450 -211
- package/.docs/organized/changelogs/%40mastra%2Fcodemod.md +208 -0
- package/.docs/organized/changelogs/%40mastra%2Fconvex.md +448 -22
- package/.docs/organized/changelogs/%40mastra%2Fcore.md +3341 -271
- package/.docs/organized/changelogs/%40mastra%2Fcouchbase.md +60 -60
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloud.md +289 -289
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloudflare.md +90 -90
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-netlify.md +74 -74
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-vercel.md +70 -70
- package/.docs/organized/changelogs/%40mastra%2Fdeployer.md +247 -220
- package/.docs/organized/changelogs/%40mastra%2Fduckdb.md +70 -0
- package/.docs/organized/changelogs/%40mastra%2Fdynamodb.md +403 -225
- package/.docs/organized/changelogs/%40mastra%2Felasticsearch.md +72 -0
- package/.docs/organized/changelogs/%40mastra%2Fevals.md +145 -145
- package/.docs/organized/changelogs/%40mastra%2Ffastembed.md +54 -0
- package/.docs/organized/changelogs/%40mastra%2Flance.md +456 -226
- package/.docs/organized/changelogs/%40mastra%2Flibsql.md +604 -208
- package/.docs/organized/changelogs/%40mastra%2Floggers.md +71 -71
- package/.docs/organized/changelogs/%40mastra%2Fmcp-docs-server.md +247 -247
- package/.docs/organized/changelogs/%40mastra%2Fmcp-registry-registry.md +28 -28
- package/.docs/organized/changelogs/%40mastra%2Fmcp.md +285 -285
- package/.docs/organized/changelogs/%40mastra%2Fmemory.md +354 -156
- package/.docs/organized/changelogs/%40mastra%2Fmongodb.md +545 -212
- package/.docs/organized/changelogs/%40mastra%2Fmssql.md +481 -202
- package/.docs/organized/changelogs/%40mastra%2Fopensearch.md +194 -194
- package/.docs/organized/changelogs/%40mastra%2Fpg.md +759 -213
- package/.docs/organized/changelogs/%40mastra%2Fpinecone.md +198 -198
- package/.docs/organized/changelogs/%40mastra%2Fplayground-ui.md +636 -229
- package/.docs/organized/changelogs/%40mastra%2Fqdrant.md +163 -163
- package/.docs/organized/changelogs/%40mastra%2Frag.md +310 -310
- package/.docs/organized/changelogs/%40mastra%2Freact.md +328 -230
- package/.docs/organized/changelogs/%40mastra%2Fs3vectors.md +64 -0
- package/.docs/organized/changelogs/%40mastra%2Fschema-compat.md +160 -0
- package/.docs/organized/changelogs/%40mastra%2Fserver.md +829 -218
- package/.docs/organized/changelogs/%40mastra%2Fturbopuffer.md +57 -57
- package/.docs/organized/changelogs/%40mastra%2Fupstash.md +479 -232
- package/.docs/organized/changelogs/%40mastra%2Fvectorize.md +53 -53
- package/.docs/organized/changelogs/%40mastra%2Fvoice-azure.md +45 -45
- package/.docs/organized/changelogs/%40mastra%2Fvoice-cloudflare.md +45 -45
- package/.docs/organized/changelogs/%40mastra%2Fvoice-deepgram.md +47 -47
- package/.docs/organized/changelogs/%40mastra%2Fvoice-elevenlabs.md +110 -110
- package/.docs/organized/changelogs/%40mastra%2Fvoice-gladia.md +15 -0
- package/.docs/organized/changelogs/%40mastra%2Fvoice-google-gemini-live.md +98 -0
- package/.docs/organized/changelogs/%40mastra%2Fvoice-google.md +54 -54
- package/.docs/organized/changelogs/%40mastra%2Fvoice-murf.md +46 -46
- package/.docs/organized/changelogs/%40mastra%2Fvoice-openai-realtime.md +93 -93
- package/.docs/organized/changelogs/%40mastra%2Fvoice-openai.md +47 -47
- package/.docs/organized/changelogs/%40mastra%2Fvoice-playai.md +45 -45
- package/.docs/organized/changelogs/%40mastra%2Fvoice-sarvam.md +45 -45
- package/.docs/organized/changelogs/%40mastra%2Fvoice-speechify.md +45 -45
- package/.docs/organized/changelogs/create-mastra.md +227 -227
- package/.docs/organized/changelogs/mastra.md +277 -277
- package/.docs/organized/code-examples/a2a.md +2 -2
- package/.docs/organized/code-examples/agent-v6.md +221 -0
- package/.docs/organized/code-examples/agui.md +4 -4
- package/.docs/organized/code-examples/ai-elements.md +3 -3
- package/.docs/organized/code-examples/ai-sdk-useChat.md +2 -2
- package/.docs/organized/code-examples/ai-sdk-v5.md +3 -3
- package/.docs/organized/code-examples/assistant-ui.md +5 -5
- package/.docs/organized/code-examples/bird-checker-with-express.md +1 -1
- package/.docs/organized/code-examples/bird-checker-with-nextjs-and-eval.md +2 -2
- package/.docs/organized/code-examples/bird-checker-with-nextjs.md +3 -3
- package/.docs/organized/code-examples/client-side-tools.md +4 -4
- package/.docs/organized/code-examples/crypto-chatbot.md +5 -5
- package/.docs/organized/code-examples/experimental-auth-weather-agent.md +1 -1
- package/.docs/organized/code-examples/fireworks-r1.md +2 -2
- package/.docs/organized/code-examples/heads-up-game.md +7 -7
- package/.docs/organized/code-examples/inngest.md +1075 -0
- package/.docs/organized/code-examples/mcp-configuration.md +1 -1
- package/.docs/organized/code-examples/mcp-server-adapters.md +3 -4
- package/.docs/organized/code-examples/memory-per-resource-example.md +3 -3
- package/.docs/organized/code-examples/memory-todo-agent.md +1 -1
- package/.docs/organized/code-examples/memory-with-context.md +1 -1
- package/.docs/organized/code-examples/memory-with-processors.md +1 -1
- package/.docs/organized/code-examples/openapi-spec-writer.md +3 -3
- package/.docs/organized/code-examples/processors-with-ai-sdk.md +14 -0
- package/.docs/organized/code-examples/quick-start.md +1 -5
- package/.docs/organized/code-examples/server-app-access.md +3 -3
- package/.docs/organized/code-examples/server-express-adapter.md +1 -1
- package/.docs/organized/code-examples/server-fastify-adapter.md +83 -0
- package/.docs/organized/code-examples/server-hono-adapter.md +3 -3
- package/.docs/organized/code-examples/server-koa-adapter.md +94 -0
- package/.docs/organized/code-examples/stock-price-tool.md +21 -2
- package/.docs/organized/code-examples/workflow-ai-recruiter.md +1 -1
- package/.docs/organized/code-examples/workflow-with-inline-steps.md +1 -1
- package/.docs/organized/code-examples/workflow-with-memory.md +1 -1
- package/.docs/organized/code-examples/workflow-with-separate-steps.md +1 -1
- package/.docs/organized/code-examples/workflow-with-suspend-resume.md +1 -1
- package/.docs/raw/agents/adding-voice.mdx +24 -6
- package/.docs/raw/agents/agent-approval.mdx +209 -12
- package/.docs/raw/agents/agent-memory.mdx +36 -32
- package/.docs/raw/agents/guardrails.mdx +105 -56
- package/.docs/raw/agents/network-approval.mdx +281 -0
- package/.docs/raw/agents/networks.mdx +69 -13
- package/.docs/raw/agents/overview.mdx +43 -25
- package/.docs/raw/agents/processors.mdx +234 -17
- package/.docs/raw/agents/structured-output.mdx +78 -8
- package/.docs/raw/agents/using-tools.mdx +67 -6
- package/.docs/raw/course/01-first-agent/07-creating-your-agent.md +1 -2
- package/.docs/raw/course/01-first-agent/12-connecting-tool-to-agent.md +1 -1
- package/.docs/raw/course/01-first-agent/16-adding-memory-to-agent.md +1 -2
- package/.docs/raw/course/02-agent-tools-mcp/05-updating-your-agent.md +1 -1
- package/.docs/raw/course/02-agent-tools-mcp/10-updating-agent-instructions-zapier.md +1 -1
- package/.docs/raw/course/02-agent-tools-mcp/16-updating-agent-instructions-github.md +1 -1
- package/.docs/raw/course/02-agent-tools-mcp/21-updating-agent-instructions-hackernews.md +1 -1
- package/.docs/raw/course/02-agent-tools-mcp/27-updating-agent-instructions-filesystem.md +1 -1
- package/.docs/raw/course/02-agent-tools-mcp/31-enhancing-memory-configuration.md +3 -3
- package/.docs/raw/course/03-agent-memory/04-creating-basic-memory-agent.md +1 -2
- package/.docs/raw/course/03-agent-memory/07-understanding-memory-threads.md +35 -0
- package/.docs/raw/course/03-agent-memory/08-configuring-conversation-history.md +1 -2
- package/.docs/raw/course/03-agent-memory/13-vector-store-configuration.md +1 -1
- package/.docs/raw/course/03-agent-memory/16-configuring-semantic-recall.md +4 -5
- package/.docs/raw/course/03-agent-memory/18-advanced-configuration-semantic-recall.md +1 -1
- package/.docs/raw/course/03-agent-memory/21-configuring-working-memory.md +3 -4
- package/.docs/raw/course/03-agent-memory/22-custom-working-memory-templates.md +3 -4
- package/.docs/raw/course/03-agent-memory/25-combining-memory-features.md +3 -4
- package/.docs/raw/course/03-agent-memory/27-creating-learning-assistant.md +3 -4
- package/.docs/raw/course/04-workflows/11-creating-an-ai-agent.md +2 -3
- package/.docs/raw/deployment/cloud-providers.mdx +22 -0
- package/.docs/raw/deployment/mastra-server.mdx +140 -0
- package/.docs/raw/deployment/monorepo.mdx +106 -42
- package/.docs/raw/deployment/overview.mdx +35 -48
- package/.docs/raw/deployment/web-framework.mdx +17 -19
- package/.docs/raw/deployment/workflow-runners.mdx +16 -0
- package/.docs/raw/evals/built-in-scorers.mdx +2 -0
- package/.docs/raw/evals/custom-scorers.mdx +60 -12
- package/.docs/raw/evals/overview.mdx +6 -6
- package/.docs/raw/evals/running-in-ci.mdx +4 -2
- package/.docs/raw/getting-started/manual-install.mdx +20 -20
- package/.docs/raw/getting-started/mcp-docs-server.mdx +59 -2
- package/.docs/raw/getting-started/project-structure.mdx +2 -2
- package/.docs/raw/getting-started/start.mdx +17 -1
- package/.docs/raw/getting-started/studio.mdx +10 -37
- package/.docs/raw/guides/agent-frameworks/ai-sdk.mdx +151 -0
- package/.docs/raw/guides/build-your-ui/ai-sdk-ui.mdx +1034 -80
- package/.docs/raw/guides/build-your-ui/assistant-ui.mdx +8 -8
- package/.docs/raw/guides/build-your-ui/copilotkit.mdx +32 -11
- package/.docs/raw/{deployment/cloud-providers → guides/deployment}/amazon-ec2.mdx +9 -9
- package/.docs/raw/{deployment/cloud-providers → guides/deployment}/aws-lambda.mdx +13 -16
- package/.docs/raw/{deployment/cloud-providers → guides/deployment}/azure-app-services.mdx +5 -7
- package/.docs/raw/{deployment/cloud-providers → guides/deployment}/cloudflare-deployer.mdx +8 -5
- package/.docs/raw/{deployment/cloud-providers → guides/deployment}/digital-ocean.mdx +18 -23
- package/.docs/raw/guides/deployment/index.mdx +32 -0
- package/.docs/raw/guides/deployment/inngest.mdx +673 -0
- package/.docs/raw/{deployment/cloud-providers → guides/deployment}/netlify-deployer.mdx +7 -3
- package/.docs/raw/{deployment/cloud-providers → guides/deployment}/vercel-deployer.mdx +8 -5
- package/.docs/raw/guides/getting-started/astro.mdx +292 -451
- package/.docs/raw/guides/getting-started/express.mdx +72 -153
- package/.docs/raw/guides/getting-started/hono.mdx +227 -0
- package/.docs/raw/guides/getting-started/next-js.mdx +173 -61
- package/.docs/raw/guides/getting-started/nuxt.mdx +505 -0
- package/.docs/raw/guides/getting-started/quickstart.mdx +5 -5
- package/.docs/raw/guides/getting-started/sveltekit.mdx +238 -409
- package/.docs/raw/guides/getting-started/vite-react.mdx +317 -147
- package/.docs/raw/guides/guide/ai-recruiter.mdx +10 -10
- package/.docs/raw/guides/guide/chef-michel.mdx +9 -11
- package/.docs/raw/guides/guide/notes-mcp-server.mdx +15 -15
- package/.docs/raw/guides/guide/research-assistant.mdx +20 -20
- package/.docs/raw/guides/guide/stock-agent.mdx +5 -5
- package/.docs/raw/guides/guide/web-search.mdx +38 -38
- package/.docs/raw/guides/guide/whatsapp-chat-bot.mdx +7 -7
- package/.docs/raw/guides/index.mdx +0 -1
- package/.docs/raw/guides/migrations/ai-sdk-v4-to-v5.mdx +2 -2
- package/.docs/raw/guides/migrations/upgrade-to-v1/agent.mdx +105 -4
- package/.docs/raw/guides/migrations/upgrade-to-v1/cli.mdx +15 -1
- package/.docs/raw/guides/migrations/upgrade-to-v1/client.mdx +170 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/deployment.mdx +42 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/mastra.mdx +0 -35
- package/.docs/raw/guides/migrations/upgrade-to-v1/memory.mdx +40 -3
- package/.docs/raw/guides/migrations/upgrade-to-v1/overview.mdx +17 -2
- package/.docs/raw/guides/migrations/upgrade-to-v1/processors.mdx +11 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/rag.mdx +47 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/storage.mdx +271 -25
- package/.docs/raw/guides/migrations/upgrade-to-v1/tools.mdx +3 -3
- package/.docs/raw/guides/migrations/upgrade-to-v1/tracing.mdx +72 -17
- package/.docs/raw/guides/migrations/upgrade-to-v1/vectors.mdx +46 -1
- package/.docs/raw/guides/migrations/upgrade-to-v1/workflows.mdx +50 -7
- package/.docs/raw/guides/migrations/vnext-to-standard-apis.mdx +21 -23
- package/.docs/raw/index.mdx +2 -2
- package/.docs/raw/mastra-cloud/deployment.mdx +86 -0
- package/.docs/raw/mastra-cloud/observability.mdx +43 -0
- package/.docs/raw/mastra-cloud/overview.mdx +31 -0
- package/.docs/raw/mastra-cloud/setup.mdx +64 -0
- package/.docs/raw/mastra-cloud/studio.mdx +35 -0
- package/.docs/raw/mcp/overview.mdx +60 -25
- package/.docs/raw/mcp/publishing-mcp-server.mdx +7 -4
- package/.docs/raw/memory/memory-processors.mdx +17 -12
- package/.docs/raw/memory/message-history.mdx +72 -0
- package/.docs/raw/memory/overview.mdx +38 -76
- package/.docs/raw/memory/semantic-recall.mdx +65 -52
- package/.docs/raw/memory/storage.mdx +248 -0
- package/.docs/raw/memory/working-memory.mdx +24 -13
- package/.docs/raw/observability/logging.mdx +16 -15
- package/.docs/raw/observability/overview.mdx +27 -7
- package/.docs/raw/observability/tracing/bridges/otel.mdx +7 -4
- package/.docs/raw/observability/tracing/exporters/arize.mdx +61 -24
- package/.docs/raw/observability/tracing/exporters/braintrust.mdx +32 -22
- package/.docs/raw/observability/tracing/exporters/cloud.mdx +24 -5
- package/.docs/raw/observability/tracing/exporters/datadog.mdx +175 -0
- package/.docs/raw/observability/tracing/exporters/default.mdx +28 -7
- package/.docs/raw/observability/tracing/exporters/laminar.mdx +89 -0
- package/.docs/raw/observability/tracing/exporters/langfuse.mdx +31 -22
- package/.docs/raw/observability/tracing/exporters/langsmith.mdx +33 -3
- package/.docs/raw/observability/tracing/exporters/otel.mdx +194 -22
- package/.docs/raw/observability/tracing/exporters/posthog.mdx +32 -22
- package/.docs/raw/observability/tracing/exporters/sentry.mdx +198 -0
- package/.docs/raw/observability/tracing/overview.mdx +388 -108
- package/.docs/raw/observability/tracing/processors/sensitive-data-filter.mdx +27 -7
- package/.docs/raw/rag/chunking-and-embedding.mdx +22 -33
- package/.docs/raw/rag/graph-rag.mdx +223 -0
- package/.docs/raw/rag/overview.mdx +6 -3
- package/.docs/raw/rag/retrieval.mdx +53 -57
- package/.docs/raw/rag/vector-databases.mdx +55 -31
- package/.docs/raw/reference/agents/agent.mdx +17 -14
- package/.docs/raw/reference/agents/generate.mdx +172 -44
- package/.docs/raw/reference/agents/generateLegacy.mdx +5 -3
- package/.docs/raw/reference/agents/getDefaultGenerateOptions.mdx +5 -3
- package/.docs/raw/reference/agents/getDefaultOptions.mdx +5 -3
- package/.docs/raw/reference/agents/getDefaultStreamOptions.mdx +5 -3
- package/.docs/raw/reference/agents/getDescription.mdx +3 -1
- package/.docs/raw/reference/agents/getInstructions.mdx +5 -3
- package/.docs/raw/reference/agents/getLLM.mdx +5 -3
- package/.docs/raw/reference/agents/getMemory.mdx +5 -3
- package/.docs/raw/reference/agents/getModel.mdx +5 -3
- package/.docs/raw/reference/agents/getTools.mdx +4 -2
- package/.docs/raw/reference/agents/getVoice.mdx +4 -2
- package/.docs/raw/reference/agents/listAgents.mdx +4 -2
- package/.docs/raw/reference/agents/listScorers.mdx +5 -3
- package/.docs/raw/reference/agents/listTools.mdx +4 -2
- package/.docs/raw/reference/agents/listWorkflows.mdx +4 -2
- package/.docs/raw/reference/agents/network.mdx +113 -1
- package/.docs/raw/reference/ai-sdk/chat-route.mdx +6 -3
- package/.docs/raw/reference/ai-sdk/handle-chat-stream.mdx +4 -2
- package/.docs/raw/reference/ai-sdk/handle-network-stream.mdx +4 -2
- package/.docs/raw/reference/ai-sdk/handle-workflow-stream.mdx +5 -3
- package/.docs/raw/reference/ai-sdk/network-route.mdx +6 -3
- package/.docs/raw/reference/ai-sdk/to-ai-sdk-stream.mdx +10 -6
- package/.docs/raw/reference/ai-sdk/to-ai-sdk-v4-messages.mdx +130 -0
- package/.docs/raw/reference/ai-sdk/to-ai-sdk-v5-messages.mdx +110 -0
- package/.docs/raw/reference/ai-sdk/with-mastra.mdx +122 -0
- package/.docs/raw/reference/ai-sdk/workflow-route.mdx +7 -4
- package/.docs/raw/reference/auth/auth0.mdx +5 -3
- package/.docs/raw/reference/auth/clerk.mdx +5 -3
- package/.docs/raw/reference/auth/firebase.mdx +6 -5
- package/.docs/raw/reference/auth/jwt.mdx +5 -3
- package/.docs/raw/reference/auth/supabase.mdx +5 -3
- package/.docs/raw/reference/auth/workos.mdx +5 -3
- package/.docs/raw/reference/cli/create-mastra.mdx +12 -10
- package/.docs/raw/reference/cli/mastra.mdx +63 -15
- package/.docs/raw/reference/client-js/agents.mdx +311 -85
- package/.docs/raw/reference/client-js/error-handling.mdx +3 -3
- package/.docs/raw/reference/client-js/logs.mdx +2 -0
- package/.docs/raw/reference/client-js/mastra-client.mdx +6 -4
- package/.docs/raw/reference/client-js/memory.mdx +47 -2
- package/.docs/raw/reference/client-js/observability.mdx +2 -0
- package/.docs/raw/reference/client-js/telemetry.mdx +2 -0
- package/.docs/raw/reference/client-js/tools.mdx +2 -0
- package/.docs/raw/reference/client-js/vectors.mdx +2 -0
- package/.docs/raw/reference/client-js/workflows.mdx +47 -3
- package/.docs/raw/reference/configuration.mdx +761 -0
- package/.docs/raw/reference/core/addGateway.mdx +2 -0
- package/.docs/raw/reference/core/getAgent.mdx +3 -1
- package/.docs/raw/reference/core/getAgentById.mdx +3 -1
- package/.docs/raw/reference/core/getDeployer.mdx +3 -1
- package/.docs/raw/reference/core/getGateway.mdx +2 -0
- package/.docs/raw/reference/core/getGatewayById.mdx +2 -0
- package/.docs/raw/reference/core/getLogger.mdx +3 -1
- package/.docs/raw/reference/core/getMCPServer.mdx +3 -1
- package/.docs/raw/reference/core/getMCPServerById.mdx +3 -1
- package/.docs/raw/reference/core/getMemory.mdx +77 -0
- package/.docs/raw/reference/core/getScorer.mdx +2 -0
- package/.docs/raw/reference/core/getScorerById.mdx +2 -0
- package/.docs/raw/reference/core/getServer.mdx +6 -4
- package/.docs/raw/reference/core/getStorage.mdx +5 -3
- package/.docs/raw/reference/core/getStoredAgentById.mdx +185 -0
- package/.docs/raw/reference/core/getTelemetry.mdx +3 -1
- package/.docs/raw/reference/core/getVector.mdx +3 -1
- package/.docs/raw/reference/core/getWorkflow.mdx +3 -1
- package/.docs/raw/reference/core/listAgents.mdx +3 -1
- package/.docs/raw/reference/core/listGateways.mdx +2 -0
- package/.docs/raw/reference/core/listLogs.mdx +3 -1
- package/.docs/raw/reference/core/listLogsByRunId.mdx +3 -1
- package/.docs/raw/reference/core/listMCPServers.mdx +3 -1
- package/.docs/raw/reference/core/listMemory.mdx +74 -0
- package/.docs/raw/reference/core/listScorers.mdx +2 -0
- package/.docs/raw/reference/core/listStoredAgents.mdx +153 -0
- package/.docs/raw/reference/core/listVectors.mdx +3 -1
- package/.docs/raw/reference/core/listWorkflows.mdx +3 -1
- package/.docs/raw/reference/core/mastra-class.mdx +35 -20
- package/.docs/raw/reference/core/mastra-model-gateway.mdx +2 -0
- package/.docs/raw/reference/core/setLogger.mdx +3 -1
- package/.docs/raw/reference/core/setStorage.mdx +6 -4
- package/.docs/raw/reference/deployer/cloudflare.mdx +22 -53
- package/.docs/raw/reference/deployer/deployer.mdx +2 -1
- package/.docs/raw/reference/deployer/netlify.mdx +4 -1
- package/.docs/raw/reference/deployer/vercel.mdx +5 -4
- package/.docs/raw/reference/evals/answer-relevancy.mdx +4 -1
- package/.docs/raw/reference/evals/answer-similarity.mdx +4 -1
- package/.docs/raw/reference/evals/bias.mdx +4 -1
- package/.docs/raw/reference/evals/completeness.mdx +4 -1
- package/.docs/raw/reference/evals/content-similarity.mdx +4 -1
- package/.docs/raw/reference/evals/context-precision.mdx +4 -1
- package/.docs/raw/reference/evals/context-relevance.mdx +2 -0
- package/.docs/raw/reference/evals/create-scorer.mdx +11 -3
- package/.docs/raw/reference/evals/faithfulness.mdx +4 -1
- package/.docs/raw/reference/evals/hallucination.mdx +4 -1
- package/.docs/raw/reference/evals/keyword-coverage.mdx +4 -1
- package/.docs/raw/reference/evals/mastra-scorer.mdx +2 -0
- package/.docs/raw/reference/evals/noise-sensitivity.mdx +2 -0
- package/.docs/raw/reference/evals/prompt-alignment.mdx +9 -7
- package/.docs/raw/reference/evals/run-evals.mdx +3 -1
- package/.docs/raw/reference/evals/scorer-utils.mdx +3 -0
- package/.docs/raw/reference/evals/textual-difference.mdx +4 -1
- package/.docs/raw/reference/evals/tone-consistency.mdx +4 -1
- package/.docs/raw/reference/evals/tool-call-accuracy.mdx +25 -23
- package/.docs/raw/reference/evals/toxicity.mdx +4 -1
- package/.docs/raw/reference/index.mdx +2 -1
- package/.docs/raw/reference/logging/pino-logger.mdx +10 -8
- package/.docs/raw/reference/memory/clone-utilities.mdx +345 -0
- package/.docs/raw/reference/memory/cloneThread.mdx +237 -0
- package/.docs/raw/reference/memory/createThread.mdx +6 -4
- package/.docs/raw/reference/memory/deleteMessages.mdx +4 -2
- package/.docs/raw/reference/memory/getThreadById.mdx +3 -1
- package/.docs/raw/reference/memory/listThreads.mdx +187 -0
- package/.docs/raw/reference/memory/memory-class.mdx +27 -20
- package/.docs/raw/reference/memory/recall.mdx +6 -4
- package/.docs/raw/reference/observability/tracing/bridges/otel.mdx +6 -2
- package/.docs/raw/reference/observability/tracing/configuration.mdx +51 -0
- package/.docs/raw/reference/observability/tracing/exporters/arize.mdx +25 -6
- package/.docs/raw/reference/observability/tracing/exporters/braintrust.mdx +23 -2
- package/.docs/raw/reference/observability/tracing/exporters/cloud-exporter.mdx +10 -0
- package/.docs/raw/reference/observability/tracing/exporters/console-exporter.mdx +3 -0
- package/.docs/raw/reference/observability/tracing/exporters/datadog.mdx +172 -0
- package/.docs/raw/reference/observability/tracing/exporters/default-exporter.mdx +10 -0
- package/.docs/raw/reference/observability/tracing/exporters/laminar.mdx +139 -0
- package/.docs/raw/reference/observability/tracing/exporters/langfuse.mdx +26 -4
- package/.docs/raw/reference/observability/tracing/exporters/langsmith.mdx +10 -0
- package/.docs/raw/reference/observability/tracing/exporters/otel.mdx +51 -34
- package/.docs/raw/reference/observability/tracing/exporters/posthog.mdx +25 -4
- package/.docs/raw/reference/observability/tracing/exporters/sentry.mdx +224 -0
- package/.docs/raw/reference/observability/tracing/instances.mdx +2 -0
- package/.docs/raw/reference/observability/tracing/interfaces.mdx +20 -0
- package/.docs/raw/reference/observability/tracing/processors/sensitive-data-filter.mdx +2 -0
- package/.docs/raw/reference/observability/tracing/spans.mdx +2 -0
- package/.docs/raw/reference/processors/batch-parts-processor.mdx +4 -2
- package/.docs/raw/reference/processors/language-detector.mdx +6 -3
- package/.docs/raw/reference/processors/message-history-processor.mdx +5 -2
- package/.docs/raw/reference/processors/moderation-processor.mdx +6 -4
- package/.docs/raw/reference/processors/pii-detector.mdx +6 -4
- package/.docs/raw/reference/processors/processor-interface.mdx +326 -23
- package/.docs/raw/reference/processors/prompt-injection-detector.mdx +5 -3
- package/.docs/raw/reference/processors/semantic-recall-processor.mdx +7 -2
- package/.docs/raw/reference/processors/system-prompt-scrubber.mdx +5 -3
- package/.docs/raw/reference/processors/token-limiter-processor.mdx +62 -19
- package/.docs/raw/reference/processors/tool-call-filter.mdx +5 -3
- package/.docs/raw/reference/processors/unicode-normalizer.mdx +6 -3
- package/.docs/raw/reference/processors/working-memory-processor.mdx +6 -3
- package/.docs/raw/reference/rag/chunk.mdx +7 -6
- package/.docs/raw/reference/rag/database-config.mdx +8 -6
- package/.docs/raw/reference/rag/document.mdx +2 -0
- package/.docs/raw/reference/rag/embeddings.mdx +2 -0
- package/.docs/raw/reference/rag/extract-params.mdx +57 -3
- package/.docs/raw/reference/rag/graph-rag.mdx +2 -0
- package/.docs/raw/reference/rag/metadata-filters.mdx +27 -7
- package/.docs/raw/reference/rag/rerank.mdx +2 -0
- package/.docs/raw/reference/rag/rerankWithScorer.mdx +2 -0
- package/.docs/raw/reference/server/create-route.mdx +34 -18
- package/.docs/raw/reference/server/express-adapter.mdx +78 -50
- package/.docs/raw/reference/server/fastify-adapter.mdx +130 -0
- package/.docs/raw/reference/server/hono-adapter.mdx +78 -48
- package/.docs/raw/reference/server/koa-adapter.mdx +129 -0
- package/.docs/raw/reference/server/mastra-server.mdx +52 -34
- package/.docs/raw/reference/server/routes.mdx +73 -10
- package/.docs/raw/reference/storage/cloudflare-d1.mdx +10 -5
- package/.docs/raw/reference/storage/cloudflare.mdx +12 -2
- package/.docs/raw/reference/storage/composite.mdx +245 -0
- package/.docs/raw/reference/storage/convex.mdx +8 -6
- package/.docs/raw/reference/storage/dynamodb.mdx +134 -8
- package/.docs/raw/reference/storage/lance.mdx +9 -5
- package/.docs/raw/reference/storage/libsql.mdx +76 -54
- package/.docs/raw/reference/storage/mongodb.mdx +115 -16
- package/.docs/raw/reference/storage/mssql.mdx +11 -6
- package/.docs/raw/{server-db/storage.mdx → reference/storage/overview.mdx} +15 -111
- package/.docs/raw/reference/storage/postgresql.mdx +228 -83
- package/.docs/raw/reference/storage/upstash.mdx +78 -2
- package/.docs/raw/reference/streaming/ChunkType.mdx +31 -3
- package/.docs/raw/reference/streaming/agents/MastraModelOutput.mdx +67 -6
- package/.docs/raw/reference/streaming/agents/stream.mdx +48 -51
- package/.docs/raw/reference/streaming/agents/streamLegacy.mdx +5 -3
- package/.docs/raw/reference/streaming/workflows/observeStream.mdx +3 -1
- package/.docs/raw/reference/streaming/workflows/resumeStream.mdx +3 -1
- package/.docs/raw/reference/streaming/workflows/stream.mdx +37 -22
- package/.docs/raw/reference/streaming/workflows/timeTravelStream.mdx +6 -4
- package/.docs/raw/reference/templates/overview.mdx +3 -2
- package/.docs/raw/reference/tools/client.mdx +3 -0
- package/.docs/raw/reference/tools/create-tool.mdx +127 -5
- package/.docs/raw/reference/tools/document-chunker-tool.mdx +2 -0
- package/.docs/raw/reference/tools/graph-rag-tool.mdx +40 -3
- package/.docs/raw/reference/tools/mcp-client.mdx +110 -1
- package/.docs/raw/reference/tools/mcp-server.mdx +278 -24
- package/.docs/raw/reference/tools/vector-query-tool.mdx +68 -4
- package/.docs/raw/reference/vectors/astra.mdx +5 -3
- package/.docs/raw/reference/vectors/chroma.mdx +5 -3
- package/.docs/raw/reference/vectors/convex.mdx +14 -12
- package/.docs/raw/reference/vectors/couchbase.mdx +7 -5
- package/.docs/raw/reference/vectors/duckdb.mdx +12 -10
- package/.docs/raw/reference/vectors/elasticsearch.mdx +12 -4
- package/.docs/raw/reference/vectors/lance.mdx +6 -4
- package/.docs/raw/reference/vectors/libsql.mdx +66 -13
- package/.docs/raw/reference/vectors/mongodb.mdx +90 -10
- package/.docs/raw/reference/vectors/opensearch.mdx +30 -3
- package/.docs/raw/reference/vectors/pg.mdx +58 -6
- package/.docs/raw/reference/vectors/pinecone.mdx +23 -8
- package/.docs/raw/reference/vectors/qdrant.mdx +148 -4
- package/.docs/raw/reference/vectors/s3vectors.mdx +8 -6
- package/.docs/raw/reference/vectors/turbopuffer.mdx +6 -4
- package/.docs/raw/reference/vectors/upstash.mdx +60 -6
- package/.docs/raw/reference/vectors/vectorize.mdx +5 -3
- package/.docs/raw/reference/voice/azure.mdx +2 -0
- package/.docs/raw/reference/voice/cloudflare.mdx +2 -0
- package/.docs/raw/reference/voice/composite-voice.mdx +4 -0
- package/.docs/raw/reference/voice/deepgram.mdx +2 -0
- package/.docs/raw/reference/voice/elevenlabs.mdx +2 -0
- package/.docs/raw/reference/voice/google-gemini-live.mdx +3 -0
- package/.docs/raw/reference/voice/google.mdx +2 -0
- package/.docs/raw/reference/voice/mastra-voice.mdx +2 -0
- package/.docs/raw/reference/voice/murf.mdx +2 -0
- package/.docs/raw/reference/voice/openai-realtime.mdx +3 -0
- package/.docs/raw/reference/voice/openai.mdx +2 -0
- package/.docs/raw/reference/voice/playai.mdx +2 -0
- package/.docs/raw/reference/voice/sarvam.mdx +2 -0
- package/.docs/raw/reference/voice/speechify.mdx +2 -0
- package/.docs/raw/reference/voice/voice.addInstructions.mdx +3 -0
- package/.docs/raw/reference/voice/voice.addTools.mdx +3 -0
- package/.docs/raw/reference/voice/voice.answer.mdx +4 -0
- package/.docs/raw/reference/voice/voice.close.mdx +3 -0
- package/.docs/raw/reference/voice/voice.connect.mdx +5 -1
- package/.docs/raw/reference/voice/voice.events.mdx +2 -0
- package/.docs/raw/reference/voice/voice.getSpeakers.mdx +3 -0
- package/.docs/raw/reference/voice/voice.listen.mdx +6 -0
- package/.docs/raw/reference/voice/voice.off.mdx +2 -0
- package/.docs/raw/reference/voice/voice.on.mdx +5 -1
- package/.docs/raw/reference/voice/voice.send.mdx +4 -0
- package/.docs/raw/reference/voice/voice.speak.mdx +6 -0
- package/.docs/raw/reference/voice/voice.updateConfig.mdx +2 -0
- package/.docs/raw/reference/workflows/run-methods/cancel.mdx +55 -5
- package/.docs/raw/reference/workflows/run-methods/restart.mdx +3 -3
- package/.docs/raw/reference/workflows/run-methods/resume.mdx +6 -4
- package/.docs/raw/reference/workflows/run-methods/start.mdx +7 -5
- package/.docs/raw/reference/workflows/run-methods/startAsync.mdx +145 -0
- package/.docs/raw/reference/workflows/run-methods/timeTravel.mdx +10 -8
- package/.docs/raw/reference/workflows/run.mdx +11 -3
- package/.docs/raw/reference/workflows/step.mdx +56 -3
- package/.docs/raw/reference/workflows/workflow-methods/branch.mdx +3 -1
- package/.docs/raw/reference/workflows/workflow-methods/commit.mdx +3 -1
- package/.docs/raw/reference/workflows/workflow-methods/create-run.mdx +39 -2
- package/.docs/raw/reference/workflows/workflow-methods/dountil.mdx +3 -1
- package/.docs/raw/reference/workflows/workflow-methods/dowhile.mdx +3 -1
- package/.docs/raw/reference/workflows/workflow-methods/foreach.mdx +71 -4
- package/.docs/raw/reference/workflows/workflow-methods/map.mdx +9 -7
- package/.docs/raw/reference/workflows/workflow-methods/parallel.mdx +3 -1
- package/.docs/raw/reference/workflows/workflow-methods/sleep.mdx +4 -6
- package/.docs/raw/reference/workflows/workflow-methods/sleepUntil.mdx +4 -6
- package/.docs/raw/reference/workflows/workflow-methods/then.mdx +3 -1
- package/.docs/raw/reference/workflows/workflow.mdx +193 -2
- package/.docs/raw/{auth → server/auth}/auth0.mdx +40 -21
- package/.docs/raw/{auth → server/auth}/clerk.mdx +37 -16
- package/.docs/raw/{auth → server/auth}/firebase.mdx +47 -25
- package/.docs/raw/{auth → server/auth}/index.mdx +8 -6
- package/.docs/raw/{auth → server/auth}/jwt.mdx +22 -10
- package/.docs/raw/{auth → server/auth}/supabase.mdx +45 -25
- package/.docs/raw/{auth → server/auth}/workos.mdx +39 -20
- package/.docs/raw/{server-db → server}/custom-adapters.mdx +40 -24
- package/.docs/raw/{server-db → server}/custom-api-routes.mdx +6 -6
- package/.docs/raw/{server-db → server}/mastra-client.mdx +35 -38
- package/.docs/raw/server/mastra-server.mdx +86 -0
- package/.docs/raw/{server-db → server}/middleware.mdx +11 -9
- package/.docs/raw/{server-db → server}/request-context.mdx +85 -43
- package/.docs/raw/server/server-adapters.mdx +410 -0
- package/.docs/raw/streaming/events.mdx +16 -7
- package/.docs/raw/streaming/overview.mdx +30 -17
- package/.docs/raw/streaming/tool-streaming.mdx +15 -17
- package/.docs/raw/streaming/workflow-streaming.mdx +8 -8
- package/.docs/raw/tools-mcp/advanced-usage.mdx +4 -2
- package/.docs/raw/tools-mcp/mcp-overview.mdx +46 -12
- package/.docs/raw/tools-mcp/overview.mdx +14 -13
- package/.docs/raw/voice/overview.mdx +17 -2
- package/.docs/raw/voice/speech-to-speech.mdx +5 -0
- package/.docs/raw/voice/speech-to-text.mdx +4 -0
- package/.docs/raw/voice/text-to-speech.mdx +3 -0
- package/.docs/raw/workflows/agents-and-tools.mdx +70 -21
- package/.docs/raw/workflows/control-flow.mdx +369 -34
- package/.docs/raw/workflows/error-handling.mdx +192 -18
- package/.docs/raw/workflows/human-in-the-loop.mdx +8 -7
- package/.docs/raw/workflows/input-data-mapping.mdx +9 -7
- package/.docs/raw/workflows/overview.mdx +80 -34
- package/.docs/raw/workflows/snapshots.mdx +19 -45
- package/.docs/raw/workflows/suspend-and-resume.mdx +14 -14
- package/.docs/raw/workflows/time-travel.mdx +25 -21
- package/.docs/raw/workflows/workflow-state.mdx +7 -8
- package/CHANGELOG.md +254 -0
- package/README.md +36 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/logger.d.ts +3 -0
- package/dist/logger.d.ts.map +1 -1
- package/dist/stdio.js +746 -49
- package/dist/tools/course.d.ts.map +1 -1
- package/dist/tools/embedded-docs.d.ts +276 -0
- package/dist/tools/embedded-docs.d.ts.map +1 -0
- package/package.json +9 -8
- package/.docs/organized/changelogs/%40internal%2Fai-sdk-v4.md +0 -1
- package/.docs/raw/deployment/building-mastra.mdx +0 -73
- package/.docs/raw/deployment/cloud-providers/index.mdx +0 -55
- package/.docs/raw/deployment/mastra-cloud/dashboard.mdx +0 -100
- package/.docs/raw/deployment/mastra-cloud/observability.mdx +0 -53
- package/.docs/raw/deployment/mastra-cloud/overview.mdx +0 -65
- package/.docs/raw/deployment/mastra-cloud/setting-up.mdx +0 -105
- package/.docs/raw/memory/conversation-history.mdx +0 -24
- package/.docs/raw/memory/storage/memory-with-libsql.mdx +0 -140
- package/.docs/raw/memory/storage/memory-with-mongodb.mdx +0 -150
- package/.docs/raw/memory/storage/memory-with-pg.mdx +0 -138
- package/.docs/raw/memory/storage/memory-with-upstash.mdx +0 -146
- package/.docs/raw/memory/threads-and-resources.mdx +0 -95
- package/.docs/raw/reference/core/setTelemetry.mdx +0 -36
- package/.docs/raw/reference/memory/listThreadsByResourceId.mdx +0 -110
- package/.docs/raw/reference/memory/query.mdx +0 -189
- package/.docs/raw/reference/workflows/workflow-methods/sendEvent.mdx +0 -70
- package/.docs/raw/reference/workflows/workflow-methods/waitForEvent.mdx +0 -66
- package/.docs/raw/server-db/mastra-server.mdx +0 -97
- package/.docs/raw/server-db/server-adapters.mdx +0 -286
- package/.docs/raw/workflows/inngest-workflow.mdx +0 -363
|
@@ -1,37 +1,85 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: "Reference:
|
|
3
|
-
description: Documentation for the
|
|
2
|
+
title: "Reference: libSQL Storage | Storage"
|
|
3
|
+
description: Documentation for the libSQL storage implementation in Mastra.
|
|
4
|
+
packages:
|
|
5
|
+
- "@mastra/core"
|
|
6
|
+
- "@mastra/libsql"
|
|
7
|
+
- "@mastra/memory"
|
|
4
8
|
---
|
|
5
9
|
|
|
6
|
-
#
|
|
10
|
+
# libSQL Storage
|
|
7
11
|
|
|
8
|
-
|
|
12
|
+
[libSQL](https://docs.turso.tech/libsql) is an open-source, SQLite-compatible database that supports both local and remote deployments. It can be used to store message history, workflow snapshots, traces, and eval scores.
|
|
13
|
+
|
|
14
|
+
For vectors like semantic recall or traditional RAG, use [libSQL Vector](/reference/v1/vectors/libsql) which covers embeddings and vector search.
|
|
9
15
|
|
|
10
16
|
## Installation
|
|
11
17
|
|
|
12
|
-
|
|
18
|
+
Storage providers must be installed as separate packages:
|
|
19
|
+
|
|
20
|
+
```bash
|
|
13
21
|
npm install @mastra/libsql@beta
|
|
14
22
|
```
|
|
15
23
|
|
|
16
24
|
## Usage
|
|
17
25
|
|
|
18
|
-
```typescript
|
|
26
|
+
```typescript
|
|
19
27
|
import { LibSQLStore } from "@mastra/libsql";
|
|
28
|
+
import { Mastra } from "@mastra/core";
|
|
20
29
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
30
|
+
const mastra = new Mastra({
|
|
31
|
+
storage: new LibSQLStore({
|
|
32
|
+
id: 'libsql-storage',
|
|
33
|
+
url: "file:./storage.db",
|
|
34
|
+
}),
|
|
25
35
|
});
|
|
36
|
+
```
|
|
26
37
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
38
|
+
Agent-level file storage:
|
|
39
|
+
|
|
40
|
+
```typescript
|
|
41
|
+
import { Memory } from "@mastra/memory";
|
|
42
|
+
import { Agent } from "@mastra/core/agent";
|
|
43
|
+
import { LibSQLStore } from "@mastra/libsql";
|
|
44
|
+
|
|
45
|
+
export const agent = new Agent({
|
|
46
|
+
id: "example-agent",
|
|
47
|
+
memory: new Memory({
|
|
48
|
+
storage: new LibSQLStore({
|
|
49
|
+
id: 'libsql-storage',
|
|
50
|
+
url: "file:./agent.db",
|
|
51
|
+
}),
|
|
52
|
+
}),
|
|
31
53
|
});
|
|
32
54
|
```
|
|
33
55
|
|
|
34
|
-
|
|
56
|
+
:::warning
|
|
57
|
+
File storage doesn't work with serverless platforms that have ephemeral file systems. For serverless deployments, use [Turso](https://turso.tech) or a different database engine.
|
|
58
|
+
:::
|
|
59
|
+
|
|
60
|
+
Production with remote database:
|
|
61
|
+
|
|
62
|
+
```typescript
|
|
63
|
+
storage: new LibSQLStore({
|
|
64
|
+
id: 'libsql-storage',
|
|
65
|
+
url: "libsql://your-db-name.aws-ap-northeast-1.turso.io",
|
|
66
|
+
authToken: process.env.TURSO_AUTH_TOKEN,
|
|
67
|
+
})
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
For local development and testing, you can store data in memory:
|
|
71
|
+
|
|
72
|
+
```typescript
|
|
73
|
+
storage: new LibSQLStore({
|
|
74
|
+
id: 'libsql-storage',
|
|
75
|
+
url: ":memory:",
|
|
76
|
+
})
|
|
77
|
+
```
|
|
78
|
+
:::warning
|
|
79
|
+
In-memory storage resets when the process changes. Only suitable for development.
|
|
80
|
+
:::
|
|
81
|
+
|
|
82
|
+
## Options
|
|
35
83
|
|
|
36
84
|
<PropertiesTable
|
|
37
85
|
content={[
|
|
@@ -39,75 +87,49 @@ const storage = new LibSQLStore({
|
|
|
39
87
|
name: "url",
|
|
40
88
|
type: "string",
|
|
41
89
|
description:
|
|
42
|
-
"Database URL. Use
|
|
90
|
+
"Database URL. Use `:memory:` for in-memory database, `file:filename.db` for a file database, or a libSQL connection string (e.g., `libsql://your-database.turso.io`) for remote storage.",
|
|
43
91
|
isOptional: false,
|
|
44
92
|
},
|
|
45
93
|
{
|
|
46
94
|
name: "authToken",
|
|
47
95
|
type: "string",
|
|
48
|
-
description: "Authentication token for remote
|
|
96
|
+
description: "Authentication token for remote libSQL databases.",
|
|
49
97
|
isOptional: true,
|
|
50
98
|
},
|
|
51
99
|
]}
|
|
52
100
|
/>
|
|
53
101
|
|
|
54
|
-
##
|
|
55
|
-
|
|
56
|
-
### In-Memory vs Persistent Storage
|
|
57
|
-
|
|
58
|
-
The file configuration (`file:storage.db`) is useful for:
|
|
59
|
-
|
|
60
|
-
- Development and testing
|
|
61
|
-
- Temporary storage
|
|
62
|
-
- Quick prototyping
|
|
63
|
-
|
|
64
|
-
For production use cases, use a persistent database URL: `libsql://your-database.turso.io`
|
|
102
|
+
## Initialization
|
|
65
103
|
|
|
66
|
-
|
|
104
|
+
When you pass storage to the Mastra class, `init()` is called automatically to create the [core schema](/reference/v1/storage/overview#core-schema):
|
|
67
105
|
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
- `mastra_workflow_snapshot`: Stores workflow state and execution data
|
|
71
|
-
- `mastra_evals`: Stores evaluation results and metadata
|
|
72
|
-
- `mastra_threads`: Stores conversation threads
|
|
73
|
-
- `mastra_messages`: Stores individual messages
|
|
74
|
-
- `mastra_traces`: Stores telemetry and tracing data
|
|
75
|
-
- `mastra_scorers`: Stores scoring and evaluation data
|
|
76
|
-
- `mastra_resources`: Stores resource working memory data
|
|
77
|
-
|
|
78
|
-
### Initialization
|
|
79
|
-
|
|
80
|
-
When you pass storage to the Mastra class, `init()` is called automatically before any storage operation:
|
|
81
|
-
|
|
82
|
-
```typescript copy
|
|
106
|
+
```typescript
|
|
83
107
|
import { Mastra } from "@mastra/core";
|
|
84
108
|
import { LibSQLStore } from "@mastra/libsql";
|
|
85
109
|
|
|
86
110
|
const storage = new LibSQLStore({
|
|
111
|
+
id: 'libsql-storage',
|
|
87
112
|
url: "file:./storage.db",
|
|
88
113
|
});
|
|
89
114
|
|
|
90
115
|
const mastra = new Mastra({
|
|
91
|
-
storage, // init()
|
|
116
|
+
storage, // init() called automatically
|
|
92
117
|
});
|
|
93
118
|
```
|
|
94
119
|
|
|
95
|
-
If
|
|
120
|
+
If using storage directly without Mastra, call `init()` explicitly:
|
|
96
121
|
|
|
97
|
-
```typescript
|
|
122
|
+
```typescript
|
|
98
123
|
import { LibSQLStore } from "@mastra/libsql";
|
|
99
124
|
|
|
100
125
|
const storage = new LibSQLStore({
|
|
126
|
+
id: 'libsql-storage',
|
|
101
127
|
url: "file:./storage.db",
|
|
102
128
|
});
|
|
103
129
|
|
|
104
|
-
// Required when using storage directly
|
|
105
130
|
await storage.init();
|
|
106
131
|
|
|
107
|
-
//
|
|
108
|
-
await storage.
|
|
132
|
+
// Access domain-specific stores via getStore()
|
|
133
|
+
const memoryStore = await storage.getStore('memory');
|
|
134
|
+
const thread = await memoryStore?.getThreadById({ threadId: "..." });
|
|
109
135
|
```
|
|
110
|
-
|
|
111
|
-
:::warning
|
|
112
|
-
If `init()` is not called, tables won't be created and storage operations will fail silently or throw errors.
|
|
113
|
-
:::
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "Reference: MongoDB Storage | Storage"
|
|
3
3
|
description: Documentation for the MongoDB storage implementation in Mastra.
|
|
4
|
+
packages:
|
|
5
|
+
- "@mastra/core"
|
|
6
|
+
- "@mastra/memory"
|
|
7
|
+
- "@mastra/mongodb"
|
|
4
8
|
---
|
|
5
9
|
|
|
6
10
|
# MongoDB Storage
|
|
@@ -9,7 +13,7 @@ The MongoDB storage implementation provides a scalable storage solution using Mo
|
|
|
9
13
|
|
|
10
14
|
## Installation
|
|
11
15
|
|
|
12
|
-
```bash
|
|
16
|
+
```bash
|
|
13
17
|
npm install @mastra/mongodb@beta
|
|
14
18
|
```
|
|
15
19
|
|
|
@@ -17,11 +21,12 @@ npm install @mastra/mongodb@beta
|
|
|
17
21
|
|
|
18
22
|
Ensure you have a MongoDB Atlas Local (via Docker) or MongoDB Atlas Cloud instance with Atlas Search enabled. MongoDB 7.0+ is recommended.
|
|
19
23
|
|
|
20
|
-
```typescript
|
|
24
|
+
```typescript
|
|
21
25
|
import { MongoDBStore } from "@mastra/mongodb";
|
|
22
26
|
|
|
23
27
|
const storage = new MongoDBStore({
|
|
24
|
-
|
|
28
|
+
id: 'mongodb-storage',
|
|
29
|
+
uri: process.env.MONGODB_URI,
|
|
25
30
|
dbName: process.env.MONGODB_DATABASE,
|
|
26
31
|
});
|
|
27
32
|
```
|
|
@@ -31,12 +36,25 @@ const storage = new MongoDBStore({
|
|
|
31
36
|
<PropertiesTable
|
|
32
37
|
content={[
|
|
33
38
|
{
|
|
34
|
-
name: "
|
|
39
|
+
name: "id",
|
|
40
|
+
type: "string",
|
|
41
|
+
description: "Unique identifier for this storage instance.",
|
|
42
|
+
isOptional: false,
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
name: "uri",
|
|
35
46
|
type: "string",
|
|
36
47
|
description:
|
|
37
48
|
"MongoDB connection string (e.g., mongodb+srv://user:password@cluster.mongodb.net)",
|
|
38
49
|
isOptional: false,
|
|
39
50
|
},
|
|
51
|
+
{
|
|
52
|
+
name: "url",
|
|
53
|
+
type: "string",
|
|
54
|
+
description:
|
|
55
|
+
"Deprecated. Use uri instead. MongoDB connection string (supported for backward compatibility).",
|
|
56
|
+
isOptional: true,
|
|
57
|
+
},
|
|
40
58
|
{
|
|
41
59
|
name: "dbName",
|
|
42
60
|
type: "string",
|
|
@@ -47,12 +65,16 @@ const storage = new MongoDBStore({
|
|
|
47
65
|
name: "options",
|
|
48
66
|
type: "MongoClientOptions",
|
|
49
67
|
description:
|
|
50
|
-
"MongoDB client options for advanced configuration (SSL, connection pooling, etc.).
|
|
68
|
+
"MongoDB client options for advanced configuration (SSL, connection pooling, etc.).",
|
|
51
69
|
isOptional: true,
|
|
52
70
|
},
|
|
53
71
|
]}
|
|
54
72
|
/>
|
|
55
73
|
|
|
74
|
+
:::note[Deprecation Notice]
|
|
75
|
+
The `url` parameter is deprecated but still supported for backward compatibility. Please use `uri` instead in all new code.
|
|
76
|
+
:::
|
|
77
|
+
|
|
56
78
|
## Constructor Examples
|
|
57
79
|
|
|
58
80
|
You can instantiate `MongoDBStore` in the following ways:
|
|
@@ -62,13 +84,15 @@ import { MongoDBStore } from "@mastra/mongodb";
|
|
|
62
84
|
|
|
63
85
|
// Basic connection without custom options
|
|
64
86
|
const store1 = new MongoDBStore({
|
|
65
|
-
|
|
87
|
+
id: 'mongodb-storage-01',
|
|
88
|
+
uri: "mongodb+srv://user:password@cluster.mongodb.net",
|
|
66
89
|
dbName: "mastra_storage",
|
|
67
90
|
});
|
|
68
91
|
|
|
69
92
|
// Using connection string with options
|
|
70
93
|
const store2 = new MongoDBStore({
|
|
71
|
-
|
|
94
|
+
id: 'mongodb-storage-02',
|
|
95
|
+
uri: "mongodb+srv://user:password@cluster.mongodb.net",
|
|
72
96
|
dbName: "mastra_storage",
|
|
73
97
|
options: {
|
|
74
98
|
retryWrites: true,
|
|
@@ -97,12 +121,13 @@ The storage implementation handles collection creation and management automatica
|
|
|
97
121
|
|
|
98
122
|
When you pass storage to the Mastra class, `init()` is called automatically before any storage operation:
|
|
99
123
|
|
|
100
|
-
```typescript
|
|
124
|
+
```typescript
|
|
101
125
|
import { Mastra } from "@mastra/core";
|
|
102
126
|
import { MongoDBStore } from "@mastra/mongodb";
|
|
103
127
|
|
|
104
128
|
const storage = new MongoDBStore({
|
|
105
|
-
|
|
129
|
+
id: 'mongodb-storage',
|
|
130
|
+
uri: process.env.MONGODB_URI,
|
|
106
131
|
dbName: process.env.MONGODB_DATABASE,
|
|
107
132
|
});
|
|
108
133
|
|
|
@@ -113,19 +138,21 @@ const mastra = new Mastra({
|
|
|
113
138
|
|
|
114
139
|
If you're using storage directly without Mastra, you must call `init()` explicitly to create the collections:
|
|
115
140
|
|
|
116
|
-
```typescript
|
|
141
|
+
```typescript
|
|
117
142
|
import { MongoDBStore } from "@mastra/mongodb";
|
|
118
143
|
|
|
119
144
|
const storage = new MongoDBStore({
|
|
120
|
-
|
|
145
|
+
id: 'mongodb-storage',
|
|
146
|
+
uri: process.env.MONGODB_URI,
|
|
121
147
|
dbName: process.env.MONGODB_DATABASE,
|
|
122
148
|
});
|
|
123
149
|
|
|
124
150
|
// Required when using storage directly
|
|
125
151
|
await storage.init();
|
|
126
152
|
|
|
127
|
-
//
|
|
128
|
-
await storage.
|
|
153
|
+
// Access domain-specific stores via getStore()
|
|
154
|
+
const memoryStore = await storage.getStore('memory');
|
|
155
|
+
const thread = await memoryStore?.getThreadById({ threadId: "..." });
|
|
129
156
|
```
|
|
130
157
|
|
|
131
158
|
:::warning
|
|
@@ -138,11 +165,12 @@ MongoDB storage includes built-in vector search capabilities for AI applications
|
|
|
138
165
|
|
|
139
166
|
### Vector Index Creation
|
|
140
167
|
|
|
141
|
-
```typescript
|
|
168
|
+
```typescript
|
|
142
169
|
import { MongoDBVector } from "@mastra/mongodb";
|
|
143
170
|
|
|
144
171
|
const vectorStore = new MongoDBVector({
|
|
145
|
-
|
|
172
|
+
id: 'mongodb-vector',
|
|
173
|
+
uri: process.env.MONGODB_URI,
|
|
146
174
|
dbName: process.env.MONGODB_DATABASE,
|
|
147
175
|
});
|
|
148
176
|
|
|
@@ -155,7 +183,7 @@ await vectorStore.createIndex({
|
|
|
155
183
|
|
|
156
184
|
### Vector Operations
|
|
157
185
|
|
|
158
|
-
```typescript
|
|
186
|
+
```typescript
|
|
159
187
|
// Store vectors with metadata
|
|
160
188
|
await vectorStore.upsert({
|
|
161
189
|
indexName: "document_embeddings",
|
|
@@ -182,3 +210,74 @@ const results = await vectorStore.query({
|
|
|
182
210
|
},
|
|
183
211
|
});
|
|
184
212
|
```
|
|
213
|
+
|
|
214
|
+
## Usage Example
|
|
215
|
+
|
|
216
|
+
### Adding memory to an agent
|
|
217
|
+
|
|
218
|
+
To add MongoDB memory to an agent use the `Memory` class and create a new `storage` key using `MongoDBStore`. The configuration supports both local and remote MongoDB instances.
|
|
219
|
+
|
|
220
|
+
```typescript title="src/mastra/agents/example-mongodb-agent.ts"
|
|
221
|
+
import { Memory } from "@mastra/memory";
|
|
222
|
+
import { Agent } from "@mastra/core/agent";
|
|
223
|
+
import { MongoDBStore } from "@mastra/mongodb";
|
|
224
|
+
|
|
225
|
+
export const mongodbAgent = new Agent({
|
|
226
|
+
id: "mongodb-agent",
|
|
227
|
+
name: "mongodb-agent",
|
|
228
|
+
instructions:
|
|
229
|
+
"You are an AI agent with the ability to automatically recall memories from previous interactions.",
|
|
230
|
+
model: "openai/gpt-5.1",
|
|
231
|
+
memory: new Memory({
|
|
232
|
+
storage: new MongoDBStore({
|
|
233
|
+
uri: process.env.MONGODB_URI!,
|
|
234
|
+
dbName: process.env.MONGODB_DB_NAME!,
|
|
235
|
+
}),
|
|
236
|
+
options: {
|
|
237
|
+
generateTitle: true,
|
|
238
|
+
},
|
|
239
|
+
}),
|
|
240
|
+
});
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
### Using the agent
|
|
244
|
+
|
|
245
|
+
Use `memoryOptions` to scope recall for this request. Set `lastMessages: 5` to limit recency-based recall, and use `semanticRecall` to fetch the `topK: 3` most relevant messages, including `messageRange: 2` neighboring messages for context around each match.
|
|
246
|
+
|
|
247
|
+
```typescript title="src/test-mongodb-agent.ts"
|
|
248
|
+
import "dotenv/config";
|
|
249
|
+
|
|
250
|
+
import { mastra } from "./mastra";
|
|
251
|
+
|
|
252
|
+
const threadId = "123";
|
|
253
|
+
const resourceId = "user-456";
|
|
254
|
+
|
|
255
|
+
const agent = mastra.getAgent("mongodbAgent");
|
|
256
|
+
|
|
257
|
+
const message = await agent.stream("My name is Mastra", {
|
|
258
|
+
memory: {
|
|
259
|
+
thread: threadId,
|
|
260
|
+
resource: resourceId,
|
|
261
|
+
},
|
|
262
|
+
});
|
|
263
|
+
|
|
264
|
+
await message.textStream.pipeTo(new WritableStream());
|
|
265
|
+
|
|
266
|
+
const stream = await agent.stream("What's my name?", {
|
|
267
|
+
memory: {
|
|
268
|
+
thread: threadId,
|
|
269
|
+
resource: resourceId,
|
|
270
|
+
},
|
|
271
|
+
memoryOptions: {
|
|
272
|
+
lastMessages: 5,
|
|
273
|
+
semanticRecall: {
|
|
274
|
+
topK: 3,
|
|
275
|
+
messageRange: 2,
|
|
276
|
+
},
|
|
277
|
+
},
|
|
278
|
+
});
|
|
279
|
+
|
|
280
|
+
for await (const chunk of stream.textStream) {
|
|
281
|
+
process.stdout.write(chunk);
|
|
282
|
+
}
|
|
283
|
+
```
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "Reference: MSSQL Storage | Storage"
|
|
3
3
|
description: Documentation for the MSSQL storage implementation in Mastra.
|
|
4
|
+
packages:
|
|
5
|
+
- "@mastra/core"
|
|
6
|
+
- "@mastra/mssql"
|
|
4
7
|
---
|
|
5
8
|
|
|
6
9
|
# MSSQL Storage
|
|
@@ -9,13 +12,13 @@ The MSSQL storage implementation provides a production-ready storage solution us
|
|
|
9
12
|
|
|
10
13
|
## Installation
|
|
11
14
|
|
|
12
|
-
```bash
|
|
15
|
+
```bash
|
|
13
16
|
npm install @mastra/mssql@beta
|
|
14
17
|
```
|
|
15
18
|
|
|
16
19
|
## Usage
|
|
17
20
|
|
|
18
|
-
```typescript
|
|
21
|
+
```typescript
|
|
19
22
|
import { MSSQLStore } from "@mastra/mssql";
|
|
20
23
|
|
|
21
24
|
const storage = new MSSQLStore({
|
|
@@ -105,7 +108,7 @@ The storage implementation handles schema creation and updates automatically. It
|
|
|
105
108
|
|
|
106
109
|
When you pass storage to the Mastra class, `init()` is called automatically before any storage operation:
|
|
107
110
|
|
|
108
|
-
```typescript
|
|
111
|
+
```typescript
|
|
109
112
|
import { Mastra } from "@mastra/core";
|
|
110
113
|
import { MSSQLStore } from "@mastra/mssql";
|
|
111
114
|
|
|
@@ -120,18 +123,20 @@ const mastra = new Mastra({
|
|
|
120
123
|
|
|
121
124
|
If you're using storage directly without Mastra, you must call `init()` explicitly to create the tables:
|
|
122
125
|
|
|
123
|
-
```typescript
|
|
126
|
+
```typescript
|
|
124
127
|
import { MSSQLStore } from "@mastra/mssql";
|
|
125
128
|
|
|
126
129
|
const storage = new MSSQLStore({
|
|
130
|
+
id: 'mssql-storage',
|
|
127
131
|
connectionString: process.env.DATABASE_URL,
|
|
128
132
|
});
|
|
129
133
|
|
|
130
134
|
// Required when using storage directly
|
|
131
135
|
await storage.init();
|
|
132
136
|
|
|
133
|
-
//
|
|
134
|
-
await storage.
|
|
137
|
+
// Access domain-specific stores via getStore()
|
|
138
|
+
const memoryStore = await storage.getStore('memory');
|
|
139
|
+
const thread = await memoryStore?.getThreadById({ threadId: "..." });
|
|
135
140
|
```
|
|
136
141
|
|
|
137
142
|
:::warning
|
|
@@ -1,58 +1,24 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: "
|
|
3
|
-
description:
|
|
2
|
+
title: "Reference: Storage Overview | Storage"
|
|
3
|
+
description: Core data schema and table structure for Mastra's storage system.
|
|
4
|
+
packages:
|
|
5
|
+
- "@mastra/core"
|
|
4
6
|
---
|
|
5
7
|
|
|
6
|
-
import PropertiesTable from "@site/src/components/PropertiesTable";
|
|
7
8
|
import { SchemaTable } from "@site/src/components/SchemaTable";
|
|
8
|
-
import { StorageOverviewImage } from "@site/src/components/StorageOverviewImage";
|
|
9
9
|
import Tabs from "@theme/Tabs";
|
|
10
10
|
import TabItem from "@theme/TabItem";
|
|
11
11
|
|
|
12
|
-
#
|
|
12
|
+
# Storage Overview
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
Mastra requires the following tables to be present in the database.
|
|
15
15
|
|
|
16
|
-
|
|
17
|
-
- **Memory**: threads and messages per `resourceId` in your application
|
|
18
|
-
- **Traces**: OpenTelemetry traces from all components of Mastra
|
|
19
|
-
- **Eval Datasets**: scores and scoring reasons from eval runs
|
|
20
|
-
|
|
21
|
-
<br />
|
|
22
|
-
|
|
23
|
-
<br />
|
|
24
|
-
|
|
25
|
-
<StorageOverviewImage />
|
|
26
|
-
|
|
27
|
-
Mastra provides different storage providers, but you can treat them as interchangeable. Eg, you could use libsql in development but postgres in production, and your code will work the same both ways.
|
|
28
|
-
|
|
29
|
-
## Configuration
|
|
30
|
-
|
|
31
|
-
Mastra can be configured with a default storage option:
|
|
32
|
-
|
|
33
|
-
```typescript copy
|
|
34
|
-
import { Mastra } from "@mastra/core";
|
|
35
|
-
import { LibSQLStore } from "@mastra/libsql";
|
|
36
|
-
|
|
37
|
-
const mastra = new Mastra({
|
|
38
|
-
storage: new LibSQLStore({
|
|
39
|
-
id: 'mastra-storage',
|
|
40
|
-
url: "file:./mastra.db",
|
|
41
|
-
}),
|
|
42
|
-
});
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
If you do not specify any `storage` configuration, Mastra will not persist data across application restarts or deployments. For any
|
|
46
|
-
deployment beyond local testing you should provide your own storage
|
|
47
|
-
configuration either on `Mastra` or directly within `new Memory()`.
|
|
48
|
-
|
|
49
|
-
## Data Schema
|
|
16
|
+
## Core Schema
|
|
50
17
|
|
|
51
18
|
<Tabs>
|
|
52
19
|
<TabItem value="messages" label="Messages">
|
|
53
20
|
Stores conversation messages and their metadata. Each message belongs to a thread and contains the actual content along with metadata about the sender role and message type.
|
|
54
21
|
|
|
55
|
-
<br />
|
|
56
22
|
<SchemaTable
|
|
57
23
|
columns={[
|
|
58
24
|
{
|
|
@@ -152,10 +118,9 @@ The message `content` column contains a JSON object conforming to the `MastraMes
|
|
|
152
118
|
|
|
153
119
|
</TabItem>
|
|
154
120
|
|
|
155
|
-
|
|
121
|
+
<TabItem value="threads" label="Threads">
|
|
156
122
|
Groups related messages together and associates them with a resource. Contains metadata about the conversation.
|
|
157
123
|
|
|
158
|
-
<br />
|
|
159
124
|
<SchemaTable
|
|
160
125
|
columns={[
|
|
161
126
|
{
|
|
@@ -202,10 +167,9 @@ Groups related messages together and associates them with a resource. Contains m
|
|
|
202
167
|
/>
|
|
203
168
|
|
|
204
169
|
</TabItem>
|
|
205
|
-
|
|
170
|
+
<TabItem value="resources" label="Resources">
|
|
206
171
|
Stores user-specific data for resource-scoped working memory. Each resource represents a user or entity, allowing working memory to persist across all conversation threads for that user.
|
|
207
172
|
|
|
208
|
-
<br />
|
|
209
173
|
<SchemaTable
|
|
210
174
|
columns={[
|
|
211
175
|
{
|
|
@@ -248,10 +212,9 @@ Stores user-specific data for resource-scoped working memory. Each resource repr
|
|
|
248
212
|
/>
|
|
249
213
|
|
|
250
214
|
</TabItem>
|
|
251
|
-
|
|
215
|
+
<TabItem value="workflows" label="Workflows">
|
|
252
216
|
When `suspend` is called on a workflow, its state is saved in the following format. When `resume` is called, that state is rehydrated.
|
|
253
217
|
|
|
254
|
-
<br />
|
|
255
218
|
<SchemaTable
|
|
256
219
|
columns={[
|
|
257
220
|
{
|
|
@@ -296,11 +259,10 @@ When `suspend` is called on a workflow, its state is saved in the following form
|
|
|
296
259
|
}
|
|
297
260
|
]}
|
|
298
261
|
/>
|
|
299
|
-
|
|
300
|
-
|
|
262
|
+
</TabItem>
|
|
263
|
+
<TabItem value="evals" label="Evals">
|
|
301
264
|
Stores eval results from running metrics against agent outputs.
|
|
302
265
|
|
|
303
|
-
<br />
|
|
304
266
|
<SchemaTable
|
|
305
267
|
columns={[
|
|
306
268
|
{
|
|
@@ -370,11 +332,10 @@ Stores eval results from running metrics against agent outputs.
|
|
|
370
332
|
}
|
|
371
333
|
]}
|
|
372
334
|
/>
|
|
373
|
-
|
|
374
|
-
|
|
335
|
+
</TabItem>
|
|
336
|
+
<TabItem value="traces" label="Traces">
|
|
375
337
|
Captures OpenTelemetry traces for monitoring and debugging.
|
|
376
338
|
|
|
377
|
-
<br />
|
|
378
339
|
<SchemaTable
|
|
379
340
|
columns={[
|
|
380
341
|
{
|
|
@@ -468,62 +429,5 @@ Captures OpenTelemetry traces for monitoring and debugging.
|
|
|
468
429
|
}
|
|
469
430
|
]}
|
|
470
431
|
/>
|
|
471
|
-
|
|
432
|
+
</TabItem>
|
|
472
433
|
</Tabs>
|
|
473
|
-
|
|
474
|
-
### Querying Messages
|
|
475
|
-
|
|
476
|
-
Messages are stored in the `MastraDBMessage` format, which provides a consistent structure across the entire Mastra system:
|
|
477
|
-
|
|
478
|
-
```typescript copy
|
|
479
|
-
// Get messages for a thread with pagination
|
|
480
|
-
const result = await mastra
|
|
481
|
-
.getStorage()
|
|
482
|
-
.listMessages({
|
|
483
|
-
threadId: "your-thread-id",
|
|
484
|
-
page: 0,
|
|
485
|
-
perPage: 50
|
|
486
|
-
});
|
|
487
|
-
|
|
488
|
-
console.log(result.messages); // MastraDBMessage[]
|
|
489
|
-
console.log(result.total); // Total count
|
|
490
|
-
console.log(result.hasMore); // Whether more pages exist
|
|
491
|
-
|
|
492
|
-
// Get messages from multiple threads at once
|
|
493
|
-
const multiThreadResult = await mastra
|
|
494
|
-
.getStorage()
|
|
495
|
-
.listMessages({
|
|
496
|
-
threadId: ["thread-1", "thread-2", "thread-3"],
|
|
497
|
-
page: 0,
|
|
498
|
-
perPage: 100
|
|
499
|
-
});
|
|
500
|
-
|
|
501
|
-
// Get messages by their IDs
|
|
502
|
-
const messages = await mastra
|
|
503
|
-
.getStorage()
|
|
504
|
-
.listMessagesById({ messageIds: messageIdArr });
|
|
505
|
-
```
|
|
506
|
-
|
|
507
|
-
The `threadId` parameter accepts either a single thread ID string or an array of thread IDs to query messages from multiple threads in a single request.
|
|
508
|
-
|
|
509
|
-
All message queries return `MastraDBMessage[]` format. If you need to convert messages to AI SDK formats for UI rendering, use the conversion utilities from `@mastra/ai-sdk/ui`:
|
|
510
|
-
|
|
511
|
-
```typescript copy
|
|
512
|
-
import { toAISdkV5Messages } from '@mastra/ai-sdk/ui';
|
|
513
|
-
|
|
514
|
-
const result = await mastra
|
|
515
|
-
.getStorage()
|
|
516
|
-
.listMessages({ threadId: "your-thread-id" });
|
|
517
|
-
|
|
518
|
-
// Convert to AI SDK v5 UIMessage format for UI rendering
|
|
519
|
-
const uiMessages = toAISdkV5Messages(result.messages);
|
|
520
|
-
```
|
|
521
|
-
|
|
522
|
-
## Storage Providers
|
|
523
|
-
|
|
524
|
-
Mastra supports the following providers:
|
|
525
|
-
|
|
526
|
-
- For local development, check out [LibSQL Storage](/reference/v1/storage/libsql)
|
|
527
|
-
- For production, check out [PostgreSQL Storage](/reference/v1/storage/postgresql)
|
|
528
|
-
- For serverless deployments, check out [Upstash Storage](/reference/v1/storage/upstash)
|
|
529
|
-
- For document-based storage, check out [MongoDB Storage](/reference/v1/storage/mongodb)
|