@mastra/mcp-docs-server 1.0.0-beta.13 → 1.0.0-beta.15
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/%40mastra%2Fagent-builder.md +27 -27
- package/.docs/organized/changelogs/%40mastra%2Fai-sdk.md +78 -78
- package/.docs/organized/changelogs/%40mastra%2Fclickhouse.md +195 -195
- package/.docs/organized/changelogs/%40mastra%2Fclient-js.md +173 -173
- package/.docs/organized/changelogs/%40mastra%2Fcloudflare-d1.md +195 -195
- package/.docs/organized/changelogs/%40mastra%2Fcloudflare.md +195 -195
- package/.docs/organized/changelogs/%40mastra%2Fconvex.md +248 -0
- package/.docs/organized/changelogs/%40mastra%2Fcore.md +338 -338
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloud.md +33 -33
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloudflare.md +16 -16
- package/.docs/organized/changelogs/%40mastra%2Fdeployer.md +41 -41
- package/.docs/organized/changelogs/%40mastra%2Fdynamodb.md +195 -195
- package/.docs/organized/changelogs/%40mastra%2Fevals.md +10 -10
- package/.docs/organized/changelogs/%40mastra%2Ffastembed.md +6 -0
- package/.docs/organized/changelogs/%40mastra%2Flance.md +195 -195
- package/.docs/organized/changelogs/%40mastra%2Flibsql.md +195 -195
- package/.docs/organized/changelogs/%40mastra%2Fmcp-docs-server.md +17 -17
- package/.docs/organized/changelogs/%40mastra%2Fmemory.md +139 -139
- package/.docs/organized/changelogs/%40mastra%2Fmongodb.md +219 -219
- package/.docs/organized/changelogs/%40mastra%2Fmssql.md +219 -219
- package/.docs/organized/changelogs/%40mastra%2Fpg.md +235 -235
- package/.docs/organized/changelogs/%40mastra%2Fplayground-ui.md +102 -102
- package/.docs/organized/changelogs/%40mastra%2Frag.md +17 -17
- package/.docs/organized/changelogs/%40mastra%2Freact.md +77 -70
- package/.docs/organized/changelogs/%40mastra%2Fserver.md +218 -218
- package/.docs/organized/changelogs/%40mastra%2Fupstash.md +195 -195
- package/.docs/organized/changelogs/create-mastra.md +13 -13
- package/.docs/organized/changelogs/mastra.md +56 -56
- package/.docs/organized/code-examples/agent-v6.md +210 -0
- package/.docs/organized/code-examples/ai-elements.md +1 -1
- package/.docs/organized/code-examples/client-side-tools.md +1 -1
- package/.docs/raw/agents/adding-voice.mdx +10 -6
- package/.docs/raw/agents/agent-approval.mdx +5 -6
- package/.docs/raw/agents/agent-memory.mdx +22 -30
- package/.docs/raw/agents/guardrails.mdx +60 -50
- package/.docs/raw/agents/networks.mdx +8 -12
- package/.docs/raw/agents/overview.mdx +39 -23
- package/.docs/raw/agents/processors.mdx +20 -19
- package/.docs/raw/agents/structured-output.mdx +11 -7
- package/.docs/raw/agents/using-tools.mdx +4 -5
- package/.docs/raw/deployment/mastra-server.mdx +3 -3
- package/.docs/raw/deployment/overview.mdx +7 -1
- package/.docs/raw/deployment/web-framework.mdx +4 -6
- package/.docs/raw/deployment/workflow-runners.mdx +14 -0
- package/.docs/raw/evals/custom-scorers.mdx +9 -6
- package/.docs/raw/evals/overview.mdx +3 -6
- package/.docs/raw/evals/running-in-ci.mdx +2 -2
- package/.docs/raw/getting-started/manual-install.mdx +20 -20
- package/.docs/raw/getting-started/mcp-docs-server.mdx +2 -2
- package/.docs/raw/getting-started/studio.mdx +1 -1
- package/.docs/raw/guides/agent-frameworks/ai-sdk.mdx +4 -4
- package/.docs/raw/guides/build-your-ui/ai-sdk-ui.mdx +30 -30
- package/.docs/raw/guides/build-your-ui/assistant-ui.mdx +8 -8
- package/.docs/raw/guides/build-your-ui/copilotkit.mdx +11 -11
- package/.docs/raw/guides/deployment/amazon-ec2.mdx +9 -9
- package/.docs/raw/guides/deployment/aws-lambda.mdx +11 -11
- package/.docs/raw/guides/deployment/azure-app-services.mdx +2 -2
- package/.docs/raw/guides/deployment/cloudflare-deployer.mdx +5 -6
- package/.docs/raw/guides/deployment/digital-ocean.mdx +10 -10
- package/.docs/raw/guides/deployment/index.mdx +1 -1
- package/.docs/raw/guides/deployment/inngest.mdx +444 -0
- package/.docs/raw/guides/deployment/netlify-deployer.mdx +4 -4
- package/.docs/raw/guides/deployment/vercel-deployer.mdx +5 -6
- package/.docs/raw/guides/getting-started/astro.mdx +292 -451
- package/.docs/raw/guides/getting-started/express.mdx +7 -7
- package/.docs/raw/guides/getting-started/hono.mdx +18 -18
- package/.docs/raw/guides/getting-started/next-js.mdx +19 -20
- package/.docs/raw/guides/getting-started/quickstart.mdx +4 -4
- package/.docs/raw/guides/getting-started/sveltekit.mdx +238 -409
- package/.docs/raw/guides/getting-started/vite-react.mdx +21 -21
- 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 +13 -13
- package/.docs/raw/guides/guide/stock-agent.mdx +5 -5
- package/.docs/raw/guides/guide/web-search.mdx +8 -8
- package/.docs/raw/guides/guide/whatsapp-chat-bot.mdx +7 -7
- package/.docs/raw/guides/migrations/ai-sdk-v4-to-v5.mdx +2 -2
- package/.docs/raw/guides/migrations/upgrade-to-v1/agent.mdx +1 -1
- package/.docs/raw/guides/migrations/upgrade-to-v1/memory.mdx +11 -3
- package/.docs/raw/guides/migrations/upgrade-to-v1/processors.mdx +11 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/storage.mdx +41 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/workflows.mdx +0 -2
- 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 +39 -0
- package/.docs/raw/mastra-cloud/observability.mdx +9 -15
- package/.docs/raw/mastra-cloud/overview.mdx +14 -44
- package/.docs/raw/mastra-cloud/setup.mdx +64 -0
- package/.docs/raw/mastra-cloud/studio.mdx +35 -0
- package/.docs/raw/mcp/overview.mdx +31 -13
- package/.docs/raw/mcp/publishing-mcp-server.mdx +2 -2
- package/.docs/raw/memory/memory-processors.mdx +9 -9
- package/.docs/raw/memory/message-history.mdx +69 -0
- package/.docs/raw/memory/overview.mdx +34 -76
- package/.docs/raw/memory/semantic-recall.mdx +58 -49
- package/.docs/raw/memory/storage.mdx +188 -0
- package/.docs/raw/memory/working-memory.mdx +7 -7
- package/.docs/raw/observability/logging.mdx +9 -10
- package/.docs/raw/observability/overview.mdx +0 -1
- package/.docs/raw/observability/tracing/bridges/otel.mdx +2 -2
- package/.docs/raw/observability/tracing/exporters/default.mdx +3 -3
- package/.docs/raw/observability/tracing/exporters/langfuse.mdx +1 -2
- package/.docs/raw/observability/tracing/overview.mdx +23 -25
- package/.docs/raw/observability/tracing/processors/sensitive-data-filter.mdx +3 -3
- package/.docs/raw/rag/chunking-and-embedding.mdx +6 -6
- package/.docs/raw/rag/graph-rag.mdx +7 -7
- package/.docs/raw/rag/overview.mdx +1 -1
- package/.docs/raw/rag/retrieval.mdx +21 -22
- package/.docs/raw/rag/vector-databases.mdx +22 -22
- package/.docs/raw/reference/agents/agent.mdx +3 -3
- package/.docs/raw/reference/agents/generate.mdx +1 -1
- package/.docs/raw/reference/agents/generateLegacy.mdx +2 -2
- package/.docs/raw/reference/agents/getDefaultGenerateOptions.mdx +2 -2
- package/.docs/raw/reference/agents/getDefaultOptions.mdx +2 -2
- package/.docs/raw/reference/agents/getDefaultStreamOptions.mdx +2 -2
- package/.docs/raw/reference/agents/getDescription.mdx +1 -1
- package/.docs/raw/reference/agents/getInstructions.mdx +2 -2
- package/.docs/raw/reference/agents/getLLM.mdx +2 -2
- package/.docs/raw/reference/agents/getMemory.mdx +2 -2
- package/.docs/raw/reference/agents/getModel.mdx +2 -2
- package/.docs/raw/reference/agents/getTools.mdx +2 -2
- package/.docs/raw/reference/agents/getVoice.mdx +2 -2
- package/.docs/raw/reference/agents/listAgents.mdx +2 -2
- package/.docs/raw/reference/agents/listScorers.mdx +2 -2
- package/.docs/raw/reference/agents/listTools.mdx +2 -2
- package/.docs/raw/reference/agents/listWorkflows.mdx +2 -2
- package/.docs/raw/reference/agents/network.mdx +1 -1
- package/.docs/raw/reference/ai-sdk/chat-route.mdx +2 -2
- package/.docs/raw/reference/ai-sdk/handle-chat-stream.mdx +1 -1
- package/.docs/raw/reference/ai-sdk/handle-network-stream.mdx +1 -1
- package/.docs/raw/reference/ai-sdk/handle-workflow-stream.mdx +1 -1
- package/.docs/raw/reference/ai-sdk/network-route.mdx +2 -2
- package/.docs/raw/reference/ai-sdk/to-ai-sdk-stream.mdx +6 -6
- package/.docs/raw/reference/ai-sdk/to-ai-sdk-v4-messages.mdx +3 -3
- package/.docs/raw/reference/ai-sdk/to-ai-sdk-v5-messages.mdx +3 -3
- package/.docs/raw/reference/ai-sdk/with-mastra.mdx +1 -1
- package/.docs/raw/reference/ai-sdk/workflow-route.mdx +2 -2
- package/.docs/raw/reference/auth/auth0.mdx +1 -2
- package/.docs/raw/reference/auth/clerk.mdx +1 -2
- package/.docs/raw/reference/auth/firebase.mdx +2 -4
- package/.docs/raw/reference/auth/jwt.mdx +1 -2
- package/.docs/raw/reference/auth/supabase.mdx +1 -2
- package/.docs/raw/reference/auth/workos.mdx +1 -2
- package/.docs/raw/reference/cli/create-mastra.mdx +10 -10
- package/.docs/raw/reference/cli/mastra.mdx +9 -9
- package/.docs/raw/reference/client-js/agents.mdx +1 -2
- package/.docs/raw/reference/client-js/mastra-client.mdx +1 -1
- package/.docs/raw/reference/core/getAgent.mdx +1 -1
- package/.docs/raw/reference/core/getAgentById.mdx +1 -1
- package/.docs/raw/reference/core/getDeployer.mdx +1 -1
- package/.docs/raw/reference/core/getLogger.mdx +1 -1
- package/.docs/raw/reference/core/getMCPServer.mdx +1 -1
- package/.docs/raw/reference/core/getMCPServerById.mdx +1 -1
- package/.docs/raw/reference/core/getMemory.mdx +2 -2
- package/.docs/raw/reference/core/getServer.mdx +1 -1
- package/.docs/raw/reference/core/getStorage.mdx +2 -2
- package/.docs/raw/reference/core/getStoredAgentById.mdx +3 -3
- package/.docs/raw/reference/core/getTelemetry.mdx +1 -1
- package/.docs/raw/reference/core/getVector.mdx +1 -1
- package/.docs/raw/reference/core/getWorkflow.mdx +1 -1
- package/.docs/raw/reference/core/listAgents.mdx +1 -1
- package/.docs/raw/reference/core/listLogs.mdx +1 -1
- package/.docs/raw/reference/core/listLogsByRunId.mdx +1 -1
- package/.docs/raw/reference/core/listMCPServers.mdx +1 -1
- package/.docs/raw/reference/core/listMemory.mdx +2 -2
- package/.docs/raw/reference/core/listStoredAgents.mdx +4 -4
- package/.docs/raw/reference/core/listVectors.mdx +1 -1
- package/.docs/raw/reference/core/listWorkflows.mdx +1 -1
- package/.docs/raw/reference/core/setLogger.mdx +1 -1
- package/.docs/raw/reference/core/setStorage.mdx +2 -2
- package/.docs/raw/reference/core/setTelemetry.mdx +1 -1
- package/.docs/raw/reference/deployer/cloudflare.mdx +1 -2
- package/.docs/raw/reference/deployer/deployer.mdx +0 -1
- package/.docs/raw/reference/deployer/netlify.mdx +1 -1
- package/.docs/raw/reference/deployer/vercel.mdx +2 -4
- package/.docs/raw/reference/evals/answer-relevancy.mdx +1 -1
- package/.docs/raw/reference/evals/answer-similarity.mdx +1 -1
- package/.docs/raw/reference/evals/bias.mdx +1 -1
- package/.docs/raw/reference/evals/completeness.mdx +1 -1
- package/.docs/raw/reference/evals/content-similarity.mdx +1 -1
- package/.docs/raw/reference/evals/context-precision.mdx +1 -1
- package/.docs/raw/reference/evals/faithfulness.mdx +1 -1
- package/.docs/raw/reference/evals/hallucination.mdx +1 -1
- package/.docs/raw/reference/evals/keyword-coverage.mdx +1 -1
- package/.docs/raw/reference/evals/prompt-alignment.mdx +7 -7
- package/.docs/raw/reference/evals/textual-difference.mdx +1 -1
- package/.docs/raw/reference/evals/tone-consistency.mdx +1 -1
- package/.docs/raw/reference/evals/tool-call-accuracy.mdx +10 -10
- package/.docs/raw/reference/evals/toxicity.mdx +1 -1
- package/.docs/raw/reference/logging/pino-logger.mdx +7 -8
- package/.docs/raw/reference/memory/createThread.mdx +2 -2
- package/.docs/raw/reference/memory/deleteMessages.mdx +2 -2
- package/.docs/raw/reference/memory/listThreadsByResourceId.mdx +2 -2
- package/.docs/raw/reference/memory/memory-class.mdx +3 -3
- package/.docs/raw/reference/memory/query.mdx +2 -2
- package/.docs/raw/reference/memory/recall.mdx +2 -2
- package/.docs/raw/reference/observability/tracing/exporters/langfuse.mdx +1 -1
- package/.docs/raw/reference/processors/batch-parts-processor.mdx +2 -2
- package/.docs/raw/reference/processors/language-detector.mdx +2 -2
- package/.docs/raw/reference/processors/message-history-processor.mdx +2 -2
- package/.docs/raw/reference/processors/moderation-processor.mdx +3 -3
- package/.docs/raw/reference/processors/pii-detector.mdx +3 -3
- package/.docs/raw/reference/processors/processor-interface.mdx +13 -13
- package/.docs/raw/reference/processors/prompt-injection-detector.mdx +2 -2
- package/.docs/raw/reference/processors/semantic-recall-processor.mdx +2 -2
- package/.docs/raw/reference/processors/system-prompt-scrubber.mdx +2 -2
- package/.docs/raw/reference/processors/token-limiter-processor.mdx +40 -19
- package/.docs/raw/reference/processors/tool-call-filter.mdx +3 -3
- package/.docs/raw/reference/processors/unicode-normalizer.mdx +2 -2
- package/.docs/raw/reference/processors/working-memory-processor.mdx +3 -3
- package/.docs/raw/reference/rag/chunk.mdx +1 -1
- package/.docs/raw/reference/rag/extract-params.mdx +2 -2
- package/.docs/raw/reference/rag/metadata-filters.mdx +7 -7
- package/.docs/raw/reference/server/create-route.mdx +13 -13
- package/.docs/raw/reference/server/express-adapter.mdx +6 -7
- package/.docs/raw/reference/server/hono-adapter.mdx +6 -7
- package/.docs/raw/reference/server/mastra-server.mdx +20 -20
- package/.docs/raw/reference/storage/cloudflare-d1.mdx +7 -5
- package/.docs/raw/reference/storage/cloudflare.mdx +2 -2
- package/.docs/raw/reference/storage/convex.mdx +6 -6
- package/.docs/raw/reference/storage/dynamodb.mdx +4 -4
- package/.docs/raw/reference/storage/lance.mdx +6 -5
- package/.docs/raw/reference/storage/libsql.mdx +72 -54
- package/.docs/raw/reference/storage/mongodb.mdx +84 -9
- package/.docs/raw/reference/storage/mssql.mdx +8 -6
- package/.docs/raw/{memory → reference}/storage/overview.mdx +12 -110
- package/.docs/raw/reference/storage/postgresql.mdx +82 -9
- package/.docs/raw/reference/storage/upstash.mdx +74 -2
- package/.docs/raw/reference/streaming/agents/stream.mdx +5 -5
- package/.docs/raw/reference/streaming/agents/streamLegacy.mdx +2 -2
- package/.docs/raw/reference/streaming/workflows/observeStream.mdx +1 -1
- package/.docs/raw/reference/streaming/workflows/resumeStream.mdx +1 -1
- package/.docs/raw/reference/streaming/workflows/stream.mdx +2 -2
- package/.docs/raw/reference/streaming/workflows/timeTravelStream.mdx +4 -4
- package/.docs/raw/reference/templates/overview.mdx +1 -2
- package/.docs/raw/reference/tools/create-tool.mdx +1 -4
- package/.docs/raw/reference/tools/vector-query-tool.mdx +1 -1
- package/.docs/raw/reference/vectors/astra.mdx +3 -3
- package/.docs/raw/reference/vectors/chroma.mdx +3 -3
- package/.docs/raw/reference/vectors/convex.mdx +12 -12
- package/.docs/raw/reference/vectors/couchbase.mdx +5 -5
- package/.docs/raw/reference/vectors/duckdb.mdx +10 -10
- package/.docs/raw/reference/vectors/elasticsearch.mdx +4 -4
- package/.docs/raw/reference/vectors/lance.mdx +4 -4
- package/.docs/raw/reference/vectors/libsql.mdx +61 -11
- package/.docs/raw/reference/vectors/mongodb.mdx +58 -5
- package/.docs/raw/reference/vectors/pg.mdx +53 -6
- package/.docs/raw/reference/vectors/pinecone.mdx +3 -3
- package/.docs/raw/reference/vectors/qdrant.mdx +3 -3
- package/.docs/raw/reference/vectors/s3vectors.mdx +6 -6
- package/.docs/raw/reference/vectors/turbopuffer.mdx +4 -4
- package/.docs/raw/reference/vectors/upstash.mdx +55 -6
- package/.docs/raw/reference/vectors/vectorize.mdx +3 -3
- package/.docs/raw/reference/workflows/run-methods/cancel.mdx +2 -2
- package/.docs/raw/reference/workflows/run-methods/restart.mdx +1 -3
- package/.docs/raw/reference/workflows/run-methods/resume.mdx +2 -2
- package/.docs/raw/reference/workflows/run-methods/start.mdx +2 -2
- package/.docs/raw/reference/workflows/run-methods/startAsync.mdx +2 -2
- package/.docs/raw/reference/workflows/run-methods/timeTravel.mdx +5 -5
- package/.docs/raw/reference/workflows/run.mdx +1 -1
- package/.docs/raw/reference/workflows/step.mdx +3 -3
- package/.docs/raw/reference/workflows/workflow-methods/branch.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/commit.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/create-run.mdx +3 -3
- package/.docs/raw/reference/workflows/workflow-methods/dountil.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/dowhile.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/foreach.mdx +6 -6
- package/.docs/raw/reference/workflows/workflow-methods/map.mdx +7 -7
- package/.docs/raw/reference/workflows/workflow-methods/parallel.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/sendEvent.mdx +2 -2
- package/.docs/raw/reference/workflows/workflow-methods/sleep.mdx +2 -2
- package/.docs/raw/reference/workflows/workflow-methods/sleepUntil.mdx +2 -2
- package/.docs/raw/reference/workflows/workflow-methods/then.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/waitForEvent.mdx +2 -2
- package/.docs/raw/reference/workflows/workflow.mdx +3 -3
- package/.docs/raw/server/auth/auth0.mdx +20 -14
- package/.docs/raw/server/auth/clerk.mdx +16 -9
- package/.docs/raw/server/auth/firebase.mdx +21 -15
- package/.docs/raw/server/auth/jwt.mdx +14 -7
- package/.docs/raw/server/auth/supabase.mdx +16 -9
- package/.docs/raw/server/auth/workos.mdx +19 -13
- package/.docs/raw/server/custom-adapters.mdx +10 -10
- package/.docs/raw/server/custom-api-routes.mdx +2 -4
- package/.docs/raw/server/mastra-client.mdx +24 -13
- package/.docs/raw/server/mastra-server.mdx +3 -3
- package/.docs/raw/server/middleware.mdx +7 -7
- package/.docs/raw/server/request-context.mdx +31 -30
- package/.docs/raw/server/server-adapters.mdx +6 -6
- package/.docs/raw/streaming/events.mdx +14 -7
- package/.docs/raw/streaming/overview.mdx +21 -10
- package/.docs/raw/streaming/tool-streaming.mdx +6 -6
- package/.docs/raw/streaming/workflow-streaming.mdx +6 -8
- package/.docs/raw/tools-mcp/advanced-usage.mdx +2 -2
- package/.docs/raw/tools-mcp/mcp-overview.mdx +31 -12
- package/.docs/raw/tools-mcp/overview.mdx +9 -10
- package/.docs/raw/voice/overview.mdx +2 -2
- package/.docs/raw/workflows/agents-and-tools.mdx +28 -19
- package/.docs/raw/workflows/control-flow.mdx +27 -40
- package/.docs/raw/workflows/error-handling.mdx +15 -22
- package/.docs/raw/workflows/human-in-the-loop.mdx +6 -7
- package/.docs/raw/workflows/input-data-mapping.mdx +7 -7
- package/.docs/raw/workflows/overview.mdx +34 -23
- package/.docs/raw/workflows/snapshots.mdx +16 -45
- package/.docs/raw/workflows/suspend-and-resume.mdx +7 -7
- package/.docs/raw/workflows/time-travel.mdx +16 -16
- package/.docs/raw/workflows/workflow-state.mdx +5 -8
- package/CHANGELOG.md +16 -0
- package/dist/logger.d.ts +3 -0
- package/dist/logger.d.ts.map +1 -1
- package/dist/stdio.js +53 -0
- package/package.json +3 -3
- package/.docs/raw/mastra-cloud/dashboard.mdx +0 -96
- package/.docs/raw/mastra-cloud/setting-up.mdx +0 -102
- 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/workflows/inngest-workflow.mdx +0 -363
|
@@ -1,138 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: "Memory with Postgres | Storage"
|
|
3
|
-
description: Example for how to use Mastra's memory system with PostgreSQL storage and vector capabilities.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Memory with Postgres
|
|
7
|
-
|
|
8
|
-
This example demonstrates how to use Mastra's memory system with PostgreSQL as the storage backend.
|
|
9
|
-
|
|
10
|
-
## Prerequisites
|
|
11
|
-
|
|
12
|
-
This example uses the `openai` model and requires a PostgreSQL database with the `pgvector` extension. Make sure to add the following to your `.env` file:
|
|
13
|
-
|
|
14
|
-
```bash title=".env" copy
|
|
15
|
-
OPENAI_API_KEY=<your-api-key>
|
|
16
|
-
DATABASE_URL=<your-connection-string>
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
And install the following package:
|
|
20
|
-
|
|
21
|
-
```bash copy
|
|
22
|
-
npm install @mastra/pg@beta
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
## Adding memory to an agent
|
|
26
|
-
|
|
27
|
-
To add PostgreSQL memory to an agent use the `Memory` class and create a new `storage` key using `PostgresStore`. The `connectionString` can either be a remote location, or a local database connection.
|
|
28
|
-
|
|
29
|
-
```typescript title="src/mastra/agents/example-pg-agent.ts" showLineNumbers copy
|
|
30
|
-
import { Memory } from "@mastra/memory";
|
|
31
|
-
import { Agent } from "@mastra/core/agent";
|
|
32
|
-
import { PostgresStore } from "@mastra/pg";
|
|
33
|
-
|
|
34
|
-
export const pgAgent = new Agent({
|
|
35
|
-
id: "pg-agent",
|
|
36
|
-
name: "PG Agent",
|
|
37
|
-
instructions:
|
|
38
|
-
"You are an AI agent with the ability to automatically recall memories from previous interactions.",
|
|
39
|
-
model: "openai/gpt-5.1",
|
|
40
|
-
memory: new Memory({
|
|
41
|
-
storage: new PostgresStore({
|
|
42
|
-
id: 'pg-agent-storage',
|
|
43
|
-
connectionString: process.env.DATABASE_URL!,
|
|
44
|
-
}),
|
|
45
|
-
options: {
|
|
46
|
-
generateTitle: true, // Explicitly enable automatic title generation
|
|
47
|
-
},
|
|
48
|
-
}),
|
|
49
|
-
});
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
## Local embeddings with fastembed
|
|
53
|
-
|
|
54
|
-
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.
|
|
55
|
-
|
|
56
|
-
Install `fastembed` to get started:
|
|
57
|
-
|
|
58
|
-
```bash copy
|
|
59
|
-
npm install @mastra/fastembed@beta
|
|
60
|
-
```
|
|
61
|
-
|
|
62
|
-
Add the following to your agent:
|
|
63
|
-
|
|
64
|
-
```typescript title="src/mastra/agents/example-pg-agent.ts" showLineNumbers copy
|
|
65
|
-
import { Memory } from "@mastra/memory";
|
|
66
|
-
import { Agent } from "@mastra/core/agent";
|
|
67
|
-
import { PostgresStore, PgVector } from "@mastra/pg";
|
|
68
|
-
import { fastembed } from "@mastra/fastembed";
|
|
69
|
-
|
|
70
|
-
export const pgAgent = new Agent({
|
|
71
|
-
id: "pg-agent",
|
|
72
|
-
name: "PG Agent",
|
|
73
|
-
instructions:
|
|
74
|
-
"You are an AI agent with the ability to automatically recall memories from previous interactions.",
|
|
75
|
-
model: "openai/gpt-5.1",
|
|
76
|
-
memory: new Memory({
|
|
77
|
-
storage: new PostgresStore({
|
|
78
|
-
id: 'pg-agent-storage',
|
|
79
|
-
connectionString: process.env.DATABASE_URL!,
|
|
80
|
-
}),
|
|
81
|
-
vector: new PgVector({
|
|
82
|
-
id: 'pg-agent-vector',
|
|
83
|
-
connectionString: process.env.DATABASE_URL!,
|
|
84
|
-
}),
|
|
85
|
-
embedder: fastembed,
|
|
86
|
-
options: {
|
|
87
|
-
lastMessages: 10,
|
|
88
|
-
semanticRecall: {
|
|
89
|
-
topK: 3,
|
|
90
|
-
messageRange: 2,
|
|
91
|
-
},
|
|
92
|
-
},
|
|
93
|
-
}),
|
|
94
|
-
});
|
|
95
|
-
```
|
|
96
|
-
|
|
97
|
-
## Usage example
|
|
98
|
-
|
|
99
|
-
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.
|
|
100
|
-
|
|
101
|
-
```typescript title="src/test-pg-agent.ts" showLineNumbers copy
|
|
102
|
-
import "dotenv/config";
|
|
103
|
-
|
|
104
|
-
import { mastra } from "./mastra";
|
|
105
|
-
|
|
106
|
-
const threadId = "123";
|
|
107
|
-
const resourceId = "user-456";
|
|
108
|
-
|
|
109
|
-
const agent = mastra.getAgent("pgAgent");
|
|
110
|
-
|
|
111
|
-
const message = await agent.stream("My name is Mastra", {
|
|
112
|
-
memory: {
|
|
113
|
-
thread: threadId,
|
|
114
|
-
resource: resourceId,
|
|
115
|
-
},
|
|
116
|
-
});
|
|
117
|
-
|
|
118
|
-
await message.textStream.pipeTo(new WritableStream());
|
|
119
|
-
|
|
120
|
-
const stream = await agent.stream("What's my name?", {
|
|
121
|
-
memory: {
|
|
122
|
-
thread: threadId,
|
|
123
|
-
resource: resourceId,
|
|
124
|
-
},
|
|
125
|
-
memoryOptions: {
|
|
126
|
-
lastMessages: 5,
|
|
127
|
-
semanticRecall: {
|
|
128
|
-
topK: 3,
|
|
129
|
-
messageRange: 2,
|
|
130
|
-
},
|
|
131
|
-
},
|
|
132
|
-
});
|
|
133
|
-
|
|
134
|
-
for await (const chunk of stream.textStream) {
|
|
135
|
-
process.stdout.write(chunk);
|
|
136
|
-
}
|
|
137
|
-
```
|
|
138
|
-
|
|
@@ -1,146 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: "Memory with Upstash | Storage"
|
|
3
|
-
description: Example for how to use Mastra's memory system with Upstash Redis storage and vector capabilities.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Memory with Upstash
|
|
7
|
-
|
|
8
|
-
This example demonstrates how to use Mastra's memory system with Upstash as the storage backend.
|
|
9
|
-
|
|
10
|
-
## Prerequisites
|
|
11
|
-
|
|
12
|
-
This example uses the `openai` model and requires both Upstash Redis and Upstash Vector services. Make sure to add the following to your `.env` file:
|
|
13
|
-
|
|
14
|
-
```bash title=".env" copy
|
|
15
|
-
OPENAI_API_KEY=<your-api-key>
|
|
16
|
-
UPSTASH_REDIS_REST_URL=<your-redis-url>
|
|
17
|
-
UPSTASH_REDIS_REST_TOKEN=<your-redis-token>
|
|
18
|
-
UPSTASH_VECTOR_REST_URL=<your-vector-index-url>
|
|
19
|
-
UPSTASH_VECTOR_REST_TOKEN=<your-vector-index-token>
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
You can get your Upstash credentials by signing up at [upstash.com](https://upstash.com) and creating both Redis and Vector databases.
|
|
23
|
-
|
|
24
|
-
And install the following package:
|
|
25
|
-
|
|
26
|
-
```bash copy
|
|
27
|
-
npm install @mastra/upstash@beta
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
## Adding memory to an agent
|
|
31
|
-
|
|
32
|
-
To add Upstash memory to an agent use the `Memory` class and create a new `storage` key using `UpstashStore` and a new `vector` key using `UpstashVector`. The configuration can point to either a remote service or a local setup.
|
|
33
|
-
|
|
34
|
-
```typescript title="src/mastra/agents/example-upstash-agent.ts" showLineNumbers copy
|
|
35
|
-
import { Memory } from "@mastra/memory";
|
|
36
|
-
import { Agent } from "@mastra/core/agent";
|
|
37
|
-
import { UpstashStore } from "@mastra/upstash";
|
|
38
|
-
|
|
39
|
-
export const upstashAgent = new Agent({
|
|
40
|
-
id: "upstash-agent",
|
|
41
|
-
name: "Upstash Agent",
|
|
42
|
-
instructions:
|
|
43
|
-
"You are an AI agent with the ability to automatically recall memories from previous interactions.",
|
|
44
|
-
model: "openai/gpt-5.1",
|
|
45
|
-
memory: new Memory({
|
|
46
|
-
storage: new UpstashStore({
|
|
47
|
-
id: 'upstash-agent-storage',
|
|
48
|
-
url: process.env.UPSTASH_REDIS_REST_URL!,
|
|
49
|
-
token: process.env.UPSTASH_REDIS_REST_TOKEN!,
|
|
50
|
-
}),
|
|
51
|
-
options: {
|
|
52
|
-
generateTitle: true, // Explicitly enable automatic title generation
|
|
53
|
-
},
|
|
54
|
-
}),
|
|
55
|
-
});
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
## Local embeddings with fastembed
|
|
59
|
-
|
|
60
|
-
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.
|
|
61
|
-
|
|
62
|
-
Install `fastembed` to get started:
|
|
63
|
-
|
|
64
|
-
```bash copy
|
|
65
|
-
npm install @mastra/fastembed@beta
|
|
66
|
-
```
|
|
67
|
-
|
|
68
|
-
Add the following to your agent:
|
|
69
|
-
|
|
70
|
-
```typescript title="src/mastra/agents/example-upstash-agent.ts" showLineNumbers copy
|
|
71
|
-
import { Memory } from "@mastra/memory";
|
|
72
|
-
import { Agent } from "@mastra/core/agent";
|
|
73
|
-
import { UpstashStore, UpstashVector } from "@mastra/upstash";
|
|
74
|
-
import { fastembed } from "@mastra/fastembed";
|
|
75
|
-
|
|
76
|
-
export const upstashAgent = new Agent({
|
|
77
|
-
id: "upstash-agent",
|
|
78
|
-
name: "Upstash Agent",
|
|
79
|
-
instructions:
|
|
80
|
-
"You are an AI agent with the ability to automatically recall memories from previous interactions.",
|
|
81
|
-
model: "openai/gpt-5.1",
|
|
82
|
-
memory: new Memory({
|
|
83
|
-
storage: new UpstashStore({
|
|
84
|
-
id: 'upstash-agent-storage',
|
|
85
|
-
url: process.env.UPSTASH_REDIS_REST_URL!,
|
|
86
|
-
token: process.env.UPSTASH_REDIS_REST_TOKEN!,
|
|
87
|
-
}),
|
|
88
|
-
vector: new UpstashVector({
|
|
89
|
-
id: 'upstash-agent-vector',
|
|
90
|
-
url: process.env.UPSTASH_VECTOR_REST_URL!,
|
|
91
|
-
token: process.env.UPSTASH_VECTOR_REST_TOKEN!,
|
|
92
|
-
}),
|
|
93
|
-
embedder: fastembed,
|
|
94
|
-
options: {
|
|
95
|
-
lastMessages: 10,
|
|
96
|
-
semanticRecall: {
|
|
97
|
-
topK: 3,
|
|
98
|
-
messageRange: 2,
|
|
99
|
-
},
|
|
100
|
-
},
|
|
101
|
-
}),
|
|
102
|
-
});
|
|
103
|
-
```
|
|
104
|
-
|
|
105
|
-
## Usage example
|
|
106
|
-
|
|
107
|
-
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.
|
|
108
|
-
|
|
109
|
-
```typescript title="src/test-upstash-agent.ts" showLineNumbers copy
|
|
110
|
-
import "dotenv/config";
|
|
111
|
-
|
|
112
|
-
import { mastra } from "./mastra";
|
|
113
|
-
|
|
114
|
-
const threadId = "123";
|
|
115
|
-
const resourceId = "user-456";
|
|
116
|
-
|
|
117
|
-
const agent = mastra.getAgent("upstashAgent");
|
|
118
|
-
|
|
119
|
-
const message = await agent.stream("My name is Mastra", {
|
|
120
|
-
memory: {
|
|
121
|
-
thread: threadId,
|
|
122
|
-
resource: resourceId,
|
|
123
|
-
},
|
|
124
|
-
});
|
|
125
|
-
|
|
126
|
-
await message.textStream.pipeTo(new WritableStream());
|
|
127
|
-
|
|
128
|
-
const stream = await agent.stream("What's my name?", {
|
|
129
|
-
memory: {
|
|
130
|
-
thread: threadId,
|
|
131
|
-
resource: resourceId,
|
|
132
|
-
},
|
|
133
|
-
memoryOptions: {
|
|
134
|
-
lastMessages: 5,
|
|
135
|
-
semanticRecall: {
|
|
136
|
-
topK: 3,
|
|
137
|
-
messageRange: 2,
|
|
138
|
-
},
|
|
139
|
-
},
|
|
140
|
-
});
|
|
141
|
-
|
|
142
|
-
for await (const chunk of stream.textStream) {
|
|
143
|
-
process.stdout.write(chunk);
|
|
144
|
-
}
|
|
145
|
-
```
|
|
146
|
-
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: "Memory threads and resources | Memory"
|
|
3
|
-
description: "Learn how Mastra's memory system works with working memory, conversation history, and semantic recall."
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Memory threads and resources
|
|
7
|
-
|
|
8
|
-
Mastra organizes memory into threads, which are records that group related interactions, using two identifiers:
|
|
9
|
-
|
|
10
|
-
1. **`thread`**: A globally unique ID representing the conversation (e.g., `support_123`). Must be unique across all resources.
|
|
11
|
-
2. **`resource`**: The user or entity that owns the thread (e.g., `user_123`, `org_456`).
|
|
12
|
-
|
|
13
|
-
The `resource` is especially important for [resource-scoped memory](./working-memory#resource-scoped-memory-default), which allows memory to persist across all threads associated with the same user or entity.
|
|
14
|
-
|
|
15
|
-
```typescript {4} showLineNumbers
|
|
16
|
-
const stream = await agent.stream("message for agent", {
|
|
17
|
-
memory: {
|
|
18
|
-
thread: "conversation-123",
|
|
19
|
-
resource: "user-123",
|
|
20
|
-
},
|
|
21
|
-
});
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
:::warning
|
|
25
|
-
|
|
26
|
-
Even with memory configured, agents won’t store or recall information unless both `thread` and `resource` are provided.
|
|
27
|
-
|
|
28
|
-
:::
|
|
29
|
-
|
|
30
|
-
> Studio sets `thread` and `resource` IDs automatically. In your own application, you must provide them manually as part of each `.generate()` or `.stream()` call.
|
|
31
|
-
|
|
32
|
-
### Thread title generation
|
|
33
|
-
|
|
34
|
-
Mastra can automatically generate descriptive thread titles based on the user's first message. This feature is disabled by default. Enable it by setting `generateTitle` to `true`. This improves organization and makes it easier to display conversations in your UI.
|
|
35
|
-
|
|
36
|
-
```typescript {3-7} showLineNumbers
|
|
37
|
-
export const testAgent = new Agent({
|
|
38
|
-
memory: new Memory({
|
|
39
|
-
options: {
|
|
40
|
-
generateTitle: true, // Explicitly enable automatic title generation
|
|
41
|
-
},
|
|
42
|
-
}),
|
|
43
|
-
});
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
> Title generation runs asynchronously after the agent responds and does not affect response time. See the [full configuration reference](/reference/v1/memory/memory-class) for details and examples.
|
|
47
|
-
|
|
48
|
-
#### Optimizing title generation
|
|
49
|
-
|
|
50
|
-
Titles are generated using your agent's model by default. To optimize cost or behavior, provide a smaller `model` and custom `instructions`. This keeps title generation separate from main conversation logic.
|
|
51
|
-
|
|
52
|
-
```typescript {5-9} showLineNumbers
|
|
53
|
-
export const testAgent = new Agent({
|
|
54
|
-
// ...
|
|
55
|
-
memory: new Memory({
|
|
56
|
-
options: {
|
|
57
|
-
threads: {
|
|
58
|
-
generateTitle: {
|
|
59
|
-
model: "openai/gpt-4.1-nano",
|
|
60
|
-
instructions:
|
|
61
|
-
"Generate a concise title based on the user's first message",
|
|
62
|
-
},
|
|
63
|
-
},
|
|
64
|
-
},
|
|
65
|
-
}),
|
|
66
|
-
});
|
|
67
|
-
```
|
|
68
|
-
|
|
69
|
-
#### Dynamic model selection and instructions
|
|
70
|
-
|
|
71
|
-
You can configure thread title generation dynamically by passing functions to `model` and `instructions`. These functions receive the `requestContext` object, allowing you to adapt title generation based on user-specific values.
|
|
72
|
-
|
|
73
|
-
```typescript {7-16} showLineNumbers
|
|
74
|
-
export const testAgent = new Agent({
|
|
75
|
-
// ...
|
|
76
|
-
memory: new Memory({
|
|
77
|
-
options: {
|
|
78
|
-
threads: {
|
|
79
|
-
generateTitle: {
|
|
80
|
-
model: ({ requestContext }) => {
|
|
81
|
-
const userTier = requestContext.get("userTier");
|
|
82
|
-
return userTier === "premium"
|
|
83
|
-
? "openai/gpt-5.1"
|
|
84
|
-
: "openai/gpt-4.1-nano";
|
|
85
|
-
},
|
|
86
|
-
instructions: ({ requestContext }) => {
|
|
87
|
-
const language = requestContext.get("userLanguage") || "English";
|
|
88
|
-
return `Generate a concise, engaging title in ${language} based on the user's first message.`;
|
|
89
|
-
},
|
|
90
|
-
},
|
|
91
|
-
},
|
|
92
|
-
},
|
|
93
|
-
}),
|
|
94
|
-
});
|
|
95
|
-
```
|