@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
package/dist/stdio.js
CHANGED
|
@@ -10,6 +10,40 @@ import fs3 from 'fs/promises';
|
|
|
10
10
|
import { MCPServer } from '@mastra/mcp';
|
|
11
11
|
import { z } from 'zod';
|
|
12
12
|
|
|
13
|
+
var LOG_LEVEL_PRIORITY = {
|
|
14
|
+
debug: 0,
|
|
15
|
+
info: 1,
|
|
16
|
+
warn: 2,
|
|
17
|
+
error: 3,
|
|
18
|
+
none: 4
|
|
19
|
+
// none = disable all logs
|
|
20
|
+
};
|
|
21
|
+
function mapToLogLevel(level) {
|
|
22
|
+
switch (level) {
|
|
23
|
+
case "debug":
|
|
24
|
+
return "debug";
|
|
25
|
+
case "info":
|
|
26
|
+
case "notice":
|
|
27
|
+
return "info";
|
|
28
|
+
case "warning":
|
|
29
|
+
return "warn";
|
|
30
|
+
case "error":
|
|
31
|
+
case "critical":
|
|
32
|
+
case "alert":
|
|
33
|
+
case "emergency":
|
|
34
|
+
return "error";
|
|
35
|
+
default:
|
|
36
|
+
return "info";
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
var currentLogLevel = "debug";
|
|
40
|
+
function setLogLevel(level) {
|
|
41
|
+
currentLogLevel = level;
|
|
42
|
+
}
|
|
43
|
+
function shouldLog(level) {
|
|
44
|
+
const mappedLevel = mapToLogLevel(level);
|
|
45
|
+
return LOG_LEVEL_PRIORITY[mappedLevel] >= LOG_LEVEL_PRIORITY[currentLogLevel];
|
|
46
|
+
}
|
|
13
47
|
var writeErrorLog = (message, data) => {
|
|
14
48
|
const now = /* @__PURE__ */ new Date();
|
|
15
49
|
const timestamp = now.toISOString();
|
|
@@ -31,6 +65,7 @@ var writeErrorLog = (message, data) => {
|
|
|
31
65
|
function createLogger(server2) {
|
|
32
66
|
const sendLog = async (level, message, data) => {
|
|
33
67
|
if (!server2) return;
|
|
68
|
+
if (!shouldLog(level)) return;
|
|
34
69
|
try {
|
|
35
70
|
const sdkServer = server2.getServer();
|
|
36
71
|
if (!sdkServer) return;
|
|
@@ -1499,6 +1534,24 @@ async function runServer() {
|
|
|
1499
1534
|
}
|
|
1500
1535
|
|
|
1501
1536
|
// src/stdio.ts
|
|
1537
|
+
function parseLogLevel() {
|
|
1538
|
+
const args = process.argv.slice(2);
|
|
1539
|
+
const logLevelIndex = args.indexOf("--log-level");
|
|
1540
|
+
if (logLevelIndex === -1 || logLevelIndex === args.length - 1) {
|
|
1541
|
+
return void 0;
|
|
1542
|
+
}
|
|
1543
|
+
const level = args[logLevelIndex + 1];
|
|
1544
|
+
const validLevels = ["debug", "info", "warn", "error", "none"];
|
|
1545
|
+
if (validLevels.includes(level)) {
|
|
1546
|
+
return level;
|
|
1547
|
+
}
|
|
1548
|
+
console.error(`Invalid log level: ${level}. Valid levels: ${validLevels.join(", ")}`);
|
|
1549
|
+
return void 0;
|
|
1550
|
+
}
|
|
1551
|
+
var logLevel = parseLogLevel();
|
|
1552
|
+
if (logLevel) {
|
|
1553
|
+
setLogLevel(logLevel);
|
|
1554
|
+
}
|
|
1502
1555
|
runServer().catch((error) => {
|
|
1503
1556
|
const errorMessage = "Fatal error running server";
|
|
1504
1557
|
console.error(errorMessage, error);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mastra/mcp-docs-server",
|
|
3
|
-
"version": "1.0.0-beta.
|
|
3
|
+
"version": "1.0.0-beta.15",
|
|
4
4
|
"description": "MCP server for accessing Mastra.ai documentation, changelogs, and news.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"@modelcontextprotocol/sdk": "^1.17.5",
|
|
29
29
|
"jsdom": "^26.1.0",
|
|
30
30
|
"zod": "^3.25.76",
|
|
31
|
-
"@mastra/core": "1.0.0-beta.
|
|
31
|
+
"@mastra/core": "1.0.0-beta.15",
|
|
32
32
|
"@mastra/mcp": "^1.0.0-beta.6"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
"typescript": "^5.8.3",
|
|
47
47
|
"vitest": "4.0.12",
|
|
48
48
|
"@internal/lint": "0.0.53",
|
|
49
|
-
"@mastra/core": "1.0.0-beta.
|
|
49
|
+
"@mastra/core": "1.0.0-beta.15"
|
|
50
50
|
},
|
|
51
51
|
"homepage": "https://mastra.ai",
|
|
52
52
|
"repository": {
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: "Navigating the Dashboard | Mastra Cloud"
|
|
3
|
-
description: Details of each feature available in Mastra Cloud
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Navigating the Dashboard
|
|
7
|
-
|
|
8
|
-
This page explains how to navigate the Mastra Cloud dashboard, where you can configure your project, view deployment details, and interact with agents and workflows using the built-in [Studio](/docs/v1/mastra-cloud/dashboard#studio).
|
|
9
|
-
|
|
10
|
-
## Overview
|
|
11
|
-
|
|
12
|
-
The **Overview** page provides details about your application, including its domain URL, status, latest deployment, and connected agents and workflows.
|
|
13
|
-
|
|
14
|
-

|
|
15
|
-
|
|
16
|
-
Key features:
|
|
17
|
-
|
|
18
|
-
Each project shows its current deployment status, active domains, and environment variables, so you can quickly understand how your application is running.
|
|
19
|
-
|
|
20
|
-
## Deployments
|
|
21
|
-
|
|
22
|
-
The **Deployments** page shows recent builds and gives you quick access to detailed build logs. Click any row to view more information about a specific deployment.
|
|
23
|
-
|
|
24
|
-

|
|
25
|
-
|
|
26
|
-
Key features:
|
|
27
|
-
|
|
28
|
-
Each deployment includes its current status, the Git branch it was deployed from, and a title generated from the commit hash.
|
|
29
|
-
|
|
30
|
-
## Logs
|
|
31
|
-
|
|
32
|
-
The **Logs** page is where you'll find detailed information to help debug and monitor your application's behavior in the production environment.
|
|
33
|
-
|
|
34
|
-

|
|
35
|
-
|
|
36
|
-
Key features:
|
|
37
|
-
|
|
38
|
-
Each log includes a severity level and detailed messages showing agent, workflow, and storage activity.
|
|
39
|
-
|
|
40
|
-
## Settings
|
|
41
|
-
|
|
42
|
-
On the **Settings** page you can modify the configuration of your application.
|
|
43
|
-
|
|
44
|
-

|
|
45
|
-
|
|
46
|
-
Key features:
|
|
47
|
-
|
|
48
|
-
You can manage environment variables, edit key project settings like the name and branch, configure storage with LibSQLStore, and set a stable URL for your endpoints.
|
|
49
|
-
|
|
50
|
-
> Changes to configuration require a new deployment before taking effect.
|
|
51
|
-
|
|
52
|
-
## Studio
|
|
53
|
-
|
|
54
|
-
### Agents
|
|
55
|
-
|
|
56
|
-
On the **Agents** page you'll see all agents used in your application. Click any agent to interact using the chat interface.
|
|
57
|
-
|
|
58
|
-

|
|
59
|
-
|
|
60
|
-
Key features:
|
|
61
|
-
|
|
62
|
-
Test your agents in real time using the chat interface, review traces of each interaction, and see evaluation scores for every response.
|
|
63
|
-
|
|
64
|
-
### Workflows
|
|
65
|
-
|
|
66
|
-
On the **Workflows** page you'll see all workflows used in your application. Click any workflow to interact using the runner interface.
|
|
67
|
-
|
|
68
|
-

|
|
69
|
-
|
|
70
|
-
Key features:
|
|
71
|
-
|
|
72
|
-
Visualize your workflow with a step-by-step graph, view execution traces, and run workflows directly using the built-in runner.
|
|
73
|
-
|
|
74
|
-
### Tools
|
|
75
|
-
|
|
76
|
-
On the **Tools** page you'll see all tools used by your agents. Click any tool to interact using the input interface.
|
|
77
|
-
|
|
78
|
-

|
|
79
|
-
|
|
80
|
-
Key features:
|
|
81
|
-
|
|
82
|
-
Test your tools by providing an input that matches the schema and viewing the structured output.
|
|
83
|
-
|
|
84
|
-
## MCP Servers
|
|
85
|
-
|
|
86
|
-
The **MCP Servers** page lists all MCP Servers included in your application. Click any MCP Server for more information.
|
|
87
|
-
|
|
88
|
-

|
|
89
|
-
|
|
90
|
-
Key features:
|
|
91
|
-
|
|
92
|
-
Each MCP Server includes API endpoints for HTTP and SSE, along with IDE configuration snippets for tools like Cursor and Windsurf.
|
|
93
|
-
|
|
94
|
-
## Next steps
|
|
95
|
-
|
|
96
|
-
- [Understanding Tracing and Logs](/docs/v1/mastra-cloud/observability)
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: "Setting Up and Deploying | Mastra Cloud"
|
|
3
|
-
description: Configuration steps for Mastra Cloud projects
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
import Steps from "@site/src/components/Steps";
|
|
7
|
-
import StepItem from "@site/src/components/StepItem";
|
|
8
|
-
|
|
9
|
-
# Setting Up and Deploying
|
|
10
|
-
|
|
11
|
-
This page explains how to set up a project on [Mastra Cloud](https://mastra.ai/cloud) with automatic deployments using our GitHub integration.
|
|
12
|
-
|
|
13
|
-
## Prerequisites
|
|
14
|
-
|
|
15
|
-
- A [Mastra Cloud](https://mastra.ai/cloud) account
|
|
16
|
-
- A GitHub account / repository containing a Mastra application
|
|
17
|
-
|
|
18
|
-
> See our [Getting started](/guides/v1/getting-started/quickstart) guide to scaffold out a new Mastra project with sensible defaults.
|
|
19
|
-
|
|
20
|
-
## Setup and Deploy process
|
|
21
|
-
|
|
22
|
-
<Steps>
|
|
23
|
-
|
|
24
|
-
<StepItem>
|
|
25
|
-
|
|
26
|
-
Head over to [https://cloud.mastra.ai/](https://cloud.mastra.ai) and sign in with either:
|
|
27
|
-
|
|
28
|
-
- **GitHub**
|
|
29
|
-
- **Google**
|
|
30
|
-
|
|
31
|
-
</StepItem>
|
|
32
|
-
|
|
33
|
-
<StepItem>
|
|
34
|
-
|
|
35
|
-
When prompted, install the Mastra GitHub app.
|
|
36
|
-
|
|
37
|
-

|
|
38
|
-
|
|
39
|
-
</StepItem>
|
|
40
|
-
|
|
41
|
-
<StepItem>
|
|
42
|
-
|
|
43
|
-
Click the **Create new project** button to create a new project.
|
|
44
|
-
|
|
45
|
-

|
|
46
|
-
|
|
47
|
-
</StepItem>
|
|
48
|
-
|
|
49
|
-
<StepItem>
|
|
50
|
-
|
|
51
|
-
Search for a repository, then click **Import**.
|
|
52
|
-
|
|
53
|
-

|
|
54
|
-
|
|
55
|
-
</StepItem>
|
|
56
|
-
|
|
57
|
-
<StepItem>
|
|
58
|
-
|
|
59
|
-
Mastra Cloud automatically detects the right build settings, but you can customize them using the options described below.
|
|
60
|
-
|
|
61
|
-

|
|
62
|
-
|
|
63
|
-
- **Importing from GitHub**: The GitHub repository name
|
|
64
|
-
- **Project name**: Customize the project name
|
|
65
|
-
- **Branch**: The branch to deploy from
|
|
66
|
-
- **Project root**: The root directory of your project
|
|
67
|
-
- **Mastra directory**: Where Mastra files are located
|
|
68
|
-
- **Environment variables**: Add environment variables used by the application
|
|
69
|
-
- **Build and Store settings**:
|
|
70
|
-
- **Install command**: Runs pre-build to install project dependencies
|
|
71
|
-
- **Project setup command**: Runs pre-build to prepare any external dependencies
|
|
72
|
-
- **Port**: The network port the server will use
|
|
73
|
-
- **Store settings**: Use Mastra Cloud's built-in [LibSQLStore](/docs/v1/memory/storage/overview) storage
|
|
74
|
-
- **Deploy Project**: Starts the deployment process
|
|
75
|
-
|
|
76
|
-
</StepItem>
|
|
77
|
-
|
|
78
|
-
<StepItem>
|
|
79
|
-
|
|
80
|
-
Click **Deploy Project** to create and deploy your application using the configuration you've set.
|
|
81
|
-
|
|
82
|
-
</StepItem>
|
|
83
|
-
|
|
84
|
-
</Steps>
|
|
85
|
-
|
|
86
|
-
## Successful deployment
|
|
87
|
-
|
|
88
|
-
After a successful deployment you'll be shown the **Overview** screen where you can view your project's status, domains, latest deployments and connected agents and workflows.
|
|
89
|
-
|
|
90
|
-

|
|
91
|
-
|
|
92
|
-
## Continuous integration
|
|
93
|
-
|
|
94
|
-
Your project is now configured with automatic deployments which occur whenever you push to the configured branch of your GitHub repository.
|
|
95
|
-
|
|
96
|
-
## Testing your application
|
|
97
|
-
|
|
98
|
-
After a successful deployment you can test your agents and workflows [Studio](/docs/v1/mastra-cloud/dashboard#studio) in Mastra Cloud, or interact with them using our [Client SDK](/docs/v1/server/mastra-client).
|
|
99
|
-
|
|
100
|
-
## Next steps
|
|
101
|
-
|
|
102
|
-
- [Navigating the Dashboard](/docs/v1/mastra-cloud/dashboard)
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: "Conversation History | Memory"
|
|
3
|
-
description: "Learn how to configure conversation history in Mastra to store recent messages from the current conversation."
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Conversation History
|
|
7
|
-
|
|
8
|
-
Conversation history is the simplest kind of memory. It is a list of messages from the current conversation.
|
|
9
|
-
|
|
10
|
-
By default, each request includes the last 10 messages from the current memory thread, giving the agent short-term conversational context. This limit can be increased using the `lastMessages` parameter.
|
|
11
|
-
|
|
12
|
-
You can increase this limit by passing the `lastMessages` parameter to the `Memory` instance.
|
|
13
|
-
|
|
14
|
-
```typescript {3-7} showLineNumbers
|
|
15
|
-
export const testAgent = new Agent({
|
|
16
|
-
id: "test-agent",
|
|
17
|
-
// ...
|
|
18
|
-
memory: new Memory({
|
|
19
|
-
options: {
|
|
20
|
-
lastMessages: 20,
|
|
21
|
-
},
|
|
22
|
-
}),
|
|
23
|
-
});
|
|
24
|
-
```
|
|
@@ -1,140 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: "Memory with LibSQL | Storage"
|
|
3
|
-
description: Example for how to use Mastra's memory system with LibSQL storage and vector database backend.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Memory with LibSQL
|
|
7
|
-
|
|
8
|
-
This example demonstrates how to use Mastra's memory system with LibSQL as the storage backend.
|
|
9
|
-
|
|
10
|
-
## Prerequisites
|
|
11
|
-
|
|
12
|
-
This example uses the `openai` model. Make sure to add `OPENAI_API_KEY` to your `.env` file.
|
|
13
|
-
|
|
14
|
-
```bash title=".env" copy
|
|
15
|
-
OPENAI_API_KEY=<your-api-key>
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
And install the following package:
|
|
19
|
-
|
|
20
|
-
```bash copy
|
|
21
|
-
npm install @mastra/libsql@beta
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
## Adding memory to an agent
|
|
25
|
-
|
|
26
|
-
To add LibSQL memory to an agent use the `Memory` class and create a new `storage` key using `LibSQLStore`. The `url` can either by a remote location, or a local file system resource.
|
|
27
|
-
|
|
28
|
-
```typescript title="src/mastra/agents/example-libsql-agent.ts" showLineNumbers copy
|
|
29
|
-
import { Memory } from "@mastra/memory";
|
|
30
|
-
import { Agent } from "@mastra/core/agent";
|
|
31
|
-
import { LibSQLStore } from "@mastra/libsql";
|
|
32
|
-
|
|
33
|
-
export const libsqlAgent = new Agent({
|
|
34
|
-
id: "libsql-agent",
|
|
35
|
-
name: "LibSQL Agent",
|
|
36
|
-
instructions:
|
|
37
|
-
"You are an AI agent with the ability to automatically recall memories from previous interactions.",
|
|
38
|
-
model: "openai/gpt-5.1",
|
|
39
|
-
memory: new Memory({
|
|
40
|
-
storage: new LibSQLStore({
|
|
41
|
-
id: 'libsql-agent-storage',
|
|
42
|
-
url: "file:libsql-agent.db",
|
|
43
|
-
}),
|
|
44
|
-
options: {
|
|
45
|
-
generateTitle: true, // Explicitly enable automatic title generation
|
|
46
|
-
},
|
|
47
|
-
}),
|
|
48
|
-
});
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
## Local embeddings with fastembed
|
|
52
|
-
|
|
53
|
-
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.
|
|
54
|
-
|
|
55
|
-
Install `fastembed` to get started:
|
|
56
|
-
|
|
57
|
-
```bash copy
|
|
58
|
-
npm install @mastra/fastembed@beta
|
|
59
|
-
```
|
|
60
|
-
|
|
61
|
-
Add the following to your agent:
|
|
62
|
-
|
|
63
|
-
```typescript title="src/mastra/agents/example-libsql-agent.ts" showLineNumbers copy
|
|
64
|
-
import { Memory } from "@mastra/memory";
|
|
65
|
-
import { Agent } from "@mastra/core/agent";
|
|
66
|
-
import { LibSQLStore, LibSQLVector } from "@mastra/libsql";
|
|
67
|
-
import { fastembed } from "@mastra/fastembed";
|
|
68
|
-
|
|
69
|
-
export const libsqlAgent = new Agent({
|
|
70
|
-
id: "libsql-agent",
|
|
71
|
-
name: "LibSQL Agent",
|
|
72
|
-
instructions:
|
|
73
|
-
"You are an AI agent with the ability to automatically recall memories from previous interactions.",
|
|
74
|
-
model: "openai/gpt-5.1",
|
|
75
|
-
memory: new Memory({
|
|
76
|
-
storage: new LibSQLStore({
|
|
77
|
-
id: 'libsql-agent-storage',
|
|
78
|
-
url: "file:libsql-agent.db",
|
|
79
|
-
}),
|
|
80
|
-
vector: new LibSQLVector({
|
|
81
|
-
id: 'libsql-agent-vector',
|
|
82
|
-
connectionUrl: "file:libsql-agent.db",
|
|
83
|
-
}),
|
|
84
|
-
embedder: fastembed,
|
|
85
|
-
options: {
|
|
86
|
-
lastMessages: 10,
|
|
87
|
-
semanticRecall: {
|
|
88
|
-
topK: 3,
|
|
89
|
-
messageRange: 2,
|
|
90
|
-
},
|
|
91
|
-
threads: {
|
|
92
|
-
generateTitle: true, // Explicitly enable automatic title generation
|
|
93
|
-
},
|
|
94
|
-
},
|
|
95
|
-
}),
|
|
96
|
-
});
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
## Usage example
|
|
100
|
-
|
|
101
|
-
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.
|
|
102
|
-
|
|
103
|
-
```typescript title="src/test-libsql-agent.ts" showLineNumbers copy
|
|
104
|
-
import "dotenv/config";
|
|
105
|
-
|
|
106
|
-
import { mastra } from "./mastra";
|
|
107
|
-
|
|
108
|
-
const threadId = "123";
|
|
109
|
-
const resourceId = "user-456";
|
|
110
|
-
|
|
111
|
-
const agent = mastra.getAgent("libsqlAgent");
|
|
112
|
-
|
|
113
|
-
const message = await agent.stream("My name is Mastra", {
|
|
114
|
-
memory: {
|
|
115
|
-
thread: threadId,
|
|
116
|
-
resource: resourceId,
|
|
117
|
-
},
|
|
118
|
-
});
|
|
119
|
-
|
|
120
|
-
await message.textStream.pipeTo(new WritableStream());
|
|
121
|
-
|
|
122
|
-
const stream = await agent.stream("What's my name?", {
|
|
123
|
-
memory: {
|
|
124
|
-
thread: threadId,
|
|
125
|
-
resource: resourceId,
|
|
126
|
-
},
|
|
127
|
-
memoryOptions: {
|
|
128
|
-
lastMessages: 5,
|
|
129
|
-
semanticRecall: {
|
|
130
|
-
topK: 3,
|
|
131
|
-
messageRange: 2,
|
|
132
|
-
},
|
|
133
|
-
},
|
|
134
|
-
});
|
|
135
|
-
|
|
136
|
-
for await (const chunk of stream.textStream) {
|
|
137
|
-
process.stdout.write(chunk);
|
|
138
|
-
}
|
|
139
|
-
```
|
|
140
|
-
|
|
@@ -1,150 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: "Example: Memory with MongoDB | Storage"
|
|
3
|
-
description: Example for how to use Mastra's memory system with MongoDB storage and vector capabilities.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Memory with MongoDB
|
|
7
|
-
|
|
8
|
-
This example demonstrates how to use Mastra's memory system with MongoDB as the storage backend.
|
|
9
|
-
|
|
10
|
-
## Prerequisites
|
|
11
|
-
|
|
12
|
-
This example uses the `openai` model and requires a MongoDB database. Make sure to add the following to your `.env` file:
|
|
13
|
-
|
|
14
|
-
```bash title=".env" copy
|
|
15
|
-
OPENAI_API_KEY=<your-api-key>
|
|
16
|
-
MONGODB_URI=<your-connection-string>
|
|
17
|
-
MONGODB_DB_NAME=<your-db-name>
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
And install the following package:
|
|
21
|
-
|
|
22
|
-
```bash copy
|
|
23
|
-
npm install @mastra/mongodb@beta
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
## Adding memory to an agent
|
|
27
|
-
|
|
28
|
-
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.
|
|
29
|
-
|
|
30
|
-
```typescript title="src/mastra/agents/example-mongodb-agent.ts" showLineNumbers copy
|
|
31
|
-
import { Memory } from "@mastra/memory";
|
|
32
|
-
import { Agent } from "@mastra/core/agent";
|
|
33
|
-
import { MongoDBStore } from "@mastra/mongodb";
|
|
34
|
-
|
|
35
|
-
export const mongodbAgent = new Agent({
|
|
36
|
-
id: "mongodb-agent",
|
|
37
|
-
name: "mongodb-agent",
|
|
38
|
-
instructions:
|
|
39
|
-
"You are an AI agent with the ability to automatically recall memories from previous interactions.",
|
|
40
|
-
model: "openai/gpt-5.1",
|
|
41
|
-
memory: new Memory({
|
|
42
|
-
storage: new MongoDBStore({
|
|
43
|
-
url: process.env.MONGODB_URI!,
|
|
44
|
-
dbName: process.env.MONGODB_DB_NAME!,
|
|
45
|
-
}),
|
|
46
|
-
options: {
|
|
47
|
-
threads: {
|
|
48
|
-
generateTitle: true,
|
|
49
|
-
},
|
|
50
|
-
},
|
|
51
|
-
}),
|
|
52
|
-
});
|
|
53
|
-
```
|
|
54
|
-
|
|
55
|
-
## Vector embeddings with MongoDB
|
|
56
|
-
|
|
57
|
-
Embeddings are numeric vectors used by memory's `semanticRecall` to retrieve related messages by meaning (not keywords).
|
|
58
|
-
|
|
59
|
-
> Note: You must use a deployment hosted on MongoDB Atlas to successfully use the MongoDB Vector database.
|
|
60
|
-
|
|
61
|
-
This setup uses FastEmbed, a local embedding model, to generate vector embeddings.
|
|
62
|
-
To use this, install `@mastra/fastembed`:
|
|
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-mongodb-agent.ts" showLineNumbers copy
|
|
71
|
-
import { Memory } from "@mastra/memory";
|
|
72
|
-
import { Agent } from "@mastra/core/agent";
|
|
73
|
-
import { MongoDBStore, MongoDBVector } from "@mastra/mongodb";
|
|
74
|
-
import { fastembed } from "@mastra/fastembed";
|
|
75
|
-
|
|
76
|
-
export const mongodbAgent = new Agent({
|
|
77
|
-
id: "mongodb-agent",
|
|
78
|
-
name: "mongodb-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 MongoDBStore({
|
|
84
|
-
url: process.env.MONGODB_URI!,
|
|
85
|
-
dbName: process.env.MONGODB_DB_NAME!,
|
|
86
|
-
}),
|
|
87
|
-
vector: new MongoDBVector({
|
|
88
|
-
uri: process.env.MONGODB_URI!,
|
|
89
|
-
dbName: process.env.MONGODB_DB_NAME!,
|
|
90
|
-
}),
|
|
91
|
-
embedder: fastembed,
|
|
92
|
-
options: {
|
|
93
|
-
lastMessages: 10,
|
|
94
|
-
semanticRecall: {
|
|
95
|
-
topK: 3,
|
|
96
|
-
messageRange: 2,
|
|
97
|
-
},
|
|
98
|
-
threads: {
|
|
99
|
-
generateTitle: true, // generates descriptive thread titles automatically
|
|
100
|
-
},
|
|
101
|
-
},
|
|
102
|
-
}),
|
|
103
|
-
});
|
|
104
|
-
```
|
|
105
|
-
|
|
106
|
-
## Usage example
|
|
107
|
-
|
|
108
|
-
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.
|
|
109
|
-
|
|
110
|
-
```typescript title="src/test-mongodb-agent.ts" showLineNumbers copy
|
|
111
|
-
import "dotenv/config";
|
|
112
|
-
|
|
113
|
-
import { mastra } from "./mastra";
|
|
114
|
-
|
|
115
|
-
const threadId = "123";
|
|
116
|
-
const resourceId = "user-456";
|
|
117
|
-
|
|
118
|
-
const agent = mastra.getAgent("mongodbAgent");
|
|
119
|
-
|
|
120
|
-
const message = await agent.stream("My name is Mastra", {
|
|
121
|
-
memory: {
|
|
122
|
-
thread: threadId,
|
|
123
|
-
resource: resourceId,
|
|
124
|
-
},
|
|
125
|
-
});
|
|
126
|
-
|
|
127
|
-
await message.textStream.pipeTo(new WritableStream());
|
|
128
|
-
|
|
129
|
-
const stream = await agent.stream("What's my name?", {
|
|
130
|
-
memory: {
|
|
131
|
-
thread: threadId,
|
|
132
|
-
resource: resourceId,
|
|
133
|
-
},
|
|
134
|
-
memoryOptions: {
|
|
135
|
-
lastMessages: 5,
|
|
136
|
-
semanticRecall: {
|
|
137
|
-
topK: 3,
|
|
138
|
-
messageRange: 2,
|
|
139
|
-
},
|
|
140
|
-
},
|
|
141
|
-
});
|
|
142
|
-
|
|
143
|
-
for await (const chunk of stream.textStream) {
|
|
144
|
-
process.stdout.write(chunk);
|
|
145
|
-
}
|
|
146
|
-
```
|
|
147
|
-
|
|
148
|
-
## Related
|
|
149
|
-
|
|
150
|
-
- [Calling Agents](/docs/v1/agents/overview)
|