@mastra/mcp-docs-server 0.0.0-error-handler-fix-20251020202607 → 0.0.0-execa-dynamic-import-20260304221256
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/course/01-first-agent/04-project-structure.md +19 -0
- package/.docs/course/01-first-agent/05-running-playground.md +19 -0
- package/.docs/course/01-first-agent/07-creating-your-agent.md +50 -0
- package/.docs/course/01-first-agent/08-exporting-your-agent.md +34 -0
- package/.docs/course/01-first-agent/09-testing-your-agent.md +12 -0
- package/.docs/course/01-first-agent/11-creating-transactions-tool.md +41 -0
- package/.docs/course/01-first-agent/12-connecting-tool-to-agent.md +29 -0
- package/.docs/course/01-first-agent/13-testing-your-tool.md +15 -0
- package/.docs/course/01-first-agent/15-installing-memory.md +13 -0
- package/.docs/course/01-first-agent/16-adding-memory-to-agent.md +33 -0
- package/.docs/course/01-first-agent/17-testing-memory.md +15 -0
- package/.docs/course/02-agent-tools-mcp/03-setting-up-mcp-configuration.md +21 -0
- package/.docs/course/02-agent-tools-mcp/04-initializing-mcp-tools.md +11 -0
- package/.docs/course/02-agent-tools-mcp/05-updating-your-agent.md +20 -0
- package/.docs/course/02-agent-tools-mcp/07-what-is-zapier-mcp.md +23 -0
- package/.docs/course/02-agent-tools-mcp/08-getting-zapier-mcp-url.md +21 -0
- package/.docs/course/02-agent-tools-mcp/09-updating-mcp-config-zapier.md +29 -0
- package/.docs/course/02-agent-tools-mcp/10-updating-agent-instructions-zapier.md +29 -0
- package/.docs/course/02-agent-tools-mcp/12-troubleshooting-zapier.md +19 -0
- package/.docs/course/02-agent-tools-mcp/13-what-is-github-mcp.md +14 -0
- package/.docs/course/02-agent-tools-mcp/14-getting-github-mcp-url.md +40 -0
- package/.docs/course/02-agent-tools-mcp/15-updating-mcp-config-github.md +36 -0
- package/.docs/course/02-agent-tools-mcp/16-updating-agent-instructions-github.md +33 -0
- package/.docs/course/02-agent-tools-mcp/18-troubleshooting-github.md +17 -0
- package/.docs/course/02-agent-tools-mcp/20-updating-mcp-config-hackernews.md +36 -0
- package/.docs/course/02-agent-tools-mcp/21-updating-agent-instructions-hackernews.md +38 -0
- package/.docs/course/02-agent-tools-mcp/26-updating-mcp-config-filesystem.md +43 -0
- package/.docs/course/02-agent-tools-mcp/27-updating-agent-instructions-filesystem.md +45 -0
- package/.docs/course/02-agent-tools-mcp/31-enhancing-memory-configuration.md +78 -0
- package/.docs/course/02-agent-tools-mcp/32-conclusion.md +17 -0
- package/.docs/course/03-agent-memory/03-installing-memory.md +13 -0
- package/.docs/course/03-agent-memory/04-creating-basic-memory-agent.md +36 -0
- package/.docs/course/03-agent-memory/05-updating-mastra-export.md +18 -0
- package/.docs/course/03-agent-memory/07-understanding-memory-threads.md +49 -0
- package/.docs/course/03-agent-memory/08-configuring-conversation-history.md +36 -0
- package/.docs/course/03-agent-memory/09-using-memory-in-application.md +19 -0
- package/.docs/course/03-agent-memory/10-storage-configuration.md +29 -0
- package/.docs/course/03-agent-memory/12-handling-memory-frontend.md +62 -0
- package/.docs/course/03-agent-memory/13-vector-store-configuration.md +29 -0
- package/.docs/course/03-agent-memory/16-configuring-semantic-recall.md +42 -0
- package/.docs/course/03-agent-memory/18-advanced-configuration-semantic-recall.md +29 -0
- package/.docs/course/03-agent-memory/21-configuring-working-memory.md +64 -0
- package/.docs/course/03-agent-memory/22-custom-working-memory-templates.md +89 -0
- package/.docs/course/03-agent-memory/25-combining-memory-features.md +80 -0
- package/.docs/course/03-agent-memory/26-updating-mastra-export-comprehensive.md +0 -0
- package/.docs/course/03-agent-memory/27-creating-learning-assistant.md +103 -0
- package/.docs/course/04-workflows/01-introduction-to-workflows.md +44 -0
- package/.docs/course/04-workflows/02-understanding-steps.md +53 -0
- package/.docs/course/04-workflows/03-creating-your-first-step.md +57 -0
- package/.docs/course/04-workflows/04-creating-a-second-step.md +58 -0
- package/.docs/course/04-workflows/05-chaining-steps-together.md +57 -0
- package/.docs/course/04-workflows/06-registering-with-mastra.md +24 -0
- package/.docs/course/04-workflows/07-using-playground.md +58 -0
- package/.docs/course/04-workflows/08-running-workflows-programmatically.md +73 -0
- package/.docs/course/04-workflows/09-adding-a-third-step.md +68 -0
- package/.docs/course/04-workflows/10-updating-the-workflow.md +55 -0
- package/.docs/course/04-workflows/11-creating-an-ai-agent.md +66 -0
- package/.docs/course/04-workflows/12-using-agent-in-workflow.md +89 -0
- package/.docs/course/04-workflows/13-creating-ai-enhanced-workflow.md +72 -0
- package/.docs/course/04-workflows/14-understanding-parallel-execution.md +38 -0
- package/.docs/course/04-workflows/15-creating-parallel-steps.md +111 -0
- package/.docs/course/04-workflows/16-building-parallel-workflow.md +100 -0
- package/.docs/course/04-workflows/17-testing-parallel-performance.md +36 -0
- package/.docs/course/04-workflows/18-understanding-conditional-branching.md +61 -0
- package/.docs/course/04-workflows/19-creating-conditional-steps.md +124 -0
- package/.docs/course/04-workflows/20-building-conditional-workflow.md +55 -0
- package/.docs/course/04-workflows/21-testing-conditional-logic.md +58 -0
- package/.docs/docs/agents/adding-voice.md +349 -0
- package/.docs/docs/agents/agent-approval.md +588 -0
- package/.docs/docs/agents/agent-memory.md +209 -0
- package/.docs/docs/agents/guardrails.md +374 -0
- package/.docs/docs/agents/network-approval.md +275 -0
- package/.docs/docs/agents/networks.md +299 -0
- package/.docs/docs/agents/overview.md +304 -0
- package/.docs/docs/agents/processors.md +622 -0
- package/.docs/docs/agents/structured-output.md +273 -0
- package/.docs/docs/agents/supervisor-agents.md +304 -0
- package/.docs/docs/agents/using-tools.md +248 -0
- package/.docs/docs/build-with-ai/mcp-docs-server.md +238 -0
- package/.docs/docs/build-with-ai/skills.md +35 -0
- package/.docs/docs/community/contributing-templates.md +3 -0
- package/.docs/docs/community/discord.md +9 -0
- package/.docs/docs/community/licensing.md +66 -0
- package/.docs/docs/deployment/cloud-providers.md +15 -0
- package/.docs/docs/deployment/mastra-server.md +122 -0
- package/.docs/docs/deployment/monorepo.md +142 -0
- package/.docs/docs/deployment/overview.md +62 -0
- package/.docs/docs/deployment/studio.md +247 -0
- package/.docs/docs/deployment/web-framework.md +52 -0
- package/.docs/docs/deployment/workflow-runners.md +9 -0
- package/.docs/docs/evals/built-in-scorers.md +47 -0
- package/.docs/docs/evals/custom-scorers.md +519 -0
- package/.docs/docs/evals/overview.md +141 -0
- package/.docs/docs/evals/running-in-ci.md +124 -0
- package/.docs/docs/getting-started/build-with-ai.md +68 -0
- package/.docs/docs/getting-started/manual-install.md +226 -0
- package/.docs/docs/getting-started/project-structure.md +60 -0
- package/.docs/docs/getting-started/start.md +28 -0
- package/.docs/docs/getting-started/studio.md +101 -0
- package/.docs/docs/index.md +43 -0
- package/.docs/docs/mastra-cloud/deployment.md +77 -0
- package/.docs/docs/mastra-cloud/observability.md +38 -0
- package/.docs/docs/mastra-cloud/overview.md +23 -0
- package/.docs/docs/mastra-cloud/setup.md +42 -0
- package/.docs/docs/mastra-cloud/studio.md +24 -0
- package/.docs/docs/mcp/overview.md +373 -0
- package/.docs/docs/mcp/publishing-mcp-server.md +95 -0
- package/.docs/docs/memory/memory-processors.md +314 -0
- package/.docs/docs/memory/message-history.md +260 -0
- package/.docs/docs/memory/observational-memory.md +255 -0
- package/.docs/docs/memory/overview.md +45 -0
- package/.docs/docs/memory/semantic-recall.md +288 -0
- package/.docs/docs/memory/storage.md +261 -0
- package/.docs/docs/memory/working-memory.md +400 -0
- package/.docs/docs/observability/datasets/overview.md +198 -0
- package/.docs/docs/observability/datasets/running-experiments.md +274 -0
- package/.docs/docs/observability/logging.md +99 -0
- package/.docs/docs/observability/overview.md +70 -0
- package/.docs/docs/observability/tracing/bridges/otel.md +209 -0
- package/.docs/docs/observability/tracing/exporters/arize.md +272 -0
- package/.docs/docs/observability/tracing/exporters/braintrust.md +111 -0
- package/.docs/docs/observability/tracing/exporters/cloud.md +127 -0
- package/.docs/docs/observability/tracing/exporters/datadog.md +187 -0
- package/.docs/docs/observability/tracing/exporters/default.md +209 -0
- package/.docs/docs/observability/tracing/exporters/laminar.md +100 -0
- package/.docs/docs/observability/tracing/exporters/langfuse.md +213 -0
- package/.docs/docs/observability/tracing/exporters/langsmith.md +198 -0
- package/.docs/docs/observability/tracing/exporters/otel.md +476 -0
- package/.docs/docs/observability/tracing/exporters/posthog.md +148 -0
- package/.docs/docs/observability/tracing/exporters/sentry.md +208 -0
- package/.docs/docs/observability/tracing/overview.md +1112 -0
- package/.docs/docs/observability/tracing/processors/sensitive-data-filter.md +300 -0
- package/.docs/docs/rag/chunking-and-embedding.md +183 -0
- package/.docs/docs/rag/graph-rag.md +215 -0
- package/.docs/docs/rag/overview.md +72 -0
- package/.docs/docs/rag/retrieval.md +515 -0
- package/.docs/docs/rag/vector-databases.md +645 -0
- package/.docs/docs/server/auth/auth0.md +220 -0
- package/.docs/docs/server/auth/better-auth.md +220 -0
- package/.docs/docs/server/auth/clerk.md +132 -0
- package/.docs/docs/server/auth/composite-auth.md +234 -0
- package/.docs/docs/server/auth/custom-auth-provider.md +513 -0
- package/.docs/docs/server/auth/firebase.md +272 -0
- package/.docs/docs/server/auth/jwt.md +110 -0
- package/.docs/docs/server/auth/simple-auth.md +180 -0
- package/.docs/docs/server/auth/supabase.md +117 -0
- package/.docs/docs/server/auth/workos.md +186 -0
- package/.docs/docs/server/auth.md +38 -0
- package/.docs/docs/server/custom-adapters.md +378 -0
- package/.docs/docs/server/custom-api-routes.md +267 -0
- package/.docs/docs/server/mastra-client.md +243 -0
- package/.docs/docs/server/mastra-server.md +71 -0
- package/.docs/docs/server/middleware.md +225 -0
- package/.docs/docs/server/request-context.md +471 -0
- package/.docs/docs/server/server-adapters.md +547 -0
- package/.docs/docs/streaming/events.md +237 -0
- package/.docs/docs/streaming/overview.md +175 -0
- package/.docs/docs/streaming/tool-streaming.md +175 -0
- package/.docs/docs/streaming/workflow-streaming.md +109 -0
- package/.docs/docs/voice/overview.md +959 -0
- package/.docs/docs/voice/speech-to-speech.md +102 -0
- package/.docs/docs/voice/speech-to-text.md +79 -0
- package/.docs/docs/voice/text-to-speech.md +83 -0
- package/.docs/docs/workflows/agents-and-tools.md +166 -0
- package/.docs/docs/workflows/control-flow.md +822 -0
- package/.docs/docs/workflows/error-handling.md +360 -0
- package/.docs/docs/workflows/human-in-the-loop.md +215 -0
- package/.docs/docs/workflows/overview.md +370 -0
- package/.docs/docs/workflows/snapshots.md +238 -0
- package/.docs/docs/workflows/suspend-and-resume.md +205 -0
- package/.docs/docs/workflows/time-travel.md +309 -0
- package/.docs/docs/workflows/workflow-state.md +181 -0
- package/.docs/docs/workspace/filesystem.md +164 -0
- package/.docs/docs/workspace/overview.md +239 -0
- package/.docs/docs/workspace/sandbox.md +65 -0
- package/.docs/docs/workspace/search.md +243 -0
- package/.docs/docs/workspace/skills.md +169 -0
- package/.docs/guides/agent-frameworks/ai-sdk.md +140 -0
- package/.docs/guides/build-your-ui/ai-sdk-ui.md +1499 -0
- package/.docs/guides/build-your-ui/assistant-ui.md +156 -0
- package/.docs/guides/build-your-ui/copilotkit.md +289 -0
- package/.docs/guides/deployment/amazon-ec2.md +130 -0
- package/.docs/guides/deployment/aws-lambda.md +248 -0
- package/.docs/guides/deployment/azure-app-services.md +114 -0
- package/.docs/guides/deployment/cloudflare.md +99 -0
- package/.docs/guides/deployment/digital-ocean.md +168 -0
- package/.docs/guides/deployment/inngest.md +682 -0
- package/.docs/guides/deployment/netlify.md +77 -0
- package/.docs/guides/deployment/vercel.md +120 -0
- package/.docs/guides/getting-started/astro.md +398 -0
- package/.docs/guides/getting-started/electron.md +504 -0
- package/.docs/guides/getting-started/express.md +251 -0
- package/.docs/guides/getting-started/hono.md +190 -0
- package/.docs/guides/getting-started/next-js.md +347 -0
- package/.docs/guides/getting-started/nuxt.md +497 -0
- package/.docs/guides/getting-started/quickstart.md +67 -0
- package/.docs/guides/getting-started/sveltekit.md +296 -0
- package/.docs/guides/getting-started/vite-react.md +425 -0
- package/.docs/guides/guide/ai-recruiter.md +226 -0
- package/.docs/guides/guide/chef-michel.md +211 -0
- package/.docs/guides/guide/code-review-bot.md +226 -0
- package/.docs/guides/guide/dev-assistant.md +307 -0
- package/.docs/guides/guide/docs-manager.md +238 -0
- package/.docs/guides/guide/github-actions-pr-description.md +236 -0
- package/.docs/guides/guide/notes-mcp-server.md +416 -0
- package/.docs/guides/guide/research-assistant.md +348 -0
- package/.docs/guides/guide/research-coordinator.md +416 -0
- package/.docs/guides/guide/stock-agent.md +132 -0
- package/.docs/guides/guide/web-search.md +320 -0
- package/.docs/guides/guide/whatsapp-chat-bot.md +405 -0
- package/.docs/guides/index.md +22 -0
- package/.docs/guides/migrations/agentnetwork.md +97 -0
- package/.docs/guides/migrations/ai-sdk-v4-to-v5.md +112 -0
- package/.docs/guides/migrations/network-to-supervisor.md +261 -0
- package/.docs/guides/migrations/upgrade-to-v1/agent.md +404 -0
- package/.docs/guides/migrations/upgrade-to-v1/cli.md +57 -0
- package/.docs/guides/migrations/upgrade-to-v1/client.md +337 -0
- package/.docs/guides/migrations/upgrade-to-v1/deployment.md +37 -0
- package/.docs/guides/migrations/upgrade-to-v1/evals.md +239 -0
- package/.docs/guides/migrations/upgrade-to-v1/mastra.md +143 -0
- package/.docs/guides/migrations/upgrade-to-v1/mcp.md +97 -0
- package/.docs/guides/migrations/upgrade-to-v1/memory.md +285 -0
- package/.docs/guides/migrations/upgrade-to-v1/overview.md +119 -0
- package/.docs/guides/migrations/upgrade-to-v1/processors.md +68 -0
- package/.docs/guides/migrations/upgrade-to-v1/rag.md +42 -0
- package/.docs/guides/migrations/upgrade-to-v1/storage.md +553 -0
- package/.docs/guides/migrations/upgrade-to-v1/tools.md +180 -0
- package/.docs/guides/migrations/upgrade-to-v1/tracing.md +412 -0
- package/.docs/guides/migrations/upgrade-to-v1/vectors.md +87 -0
- package/.docs/guides/migrations/upgrade-to-v1/voice.md +30 -0
- package/.docs/guides/migrations/upgrade-to-v1/workflows.md +341 -0
- package/.docs/guides/migrations/vnext-to-standard-apis.md +362 -0
- package/.docs/models/embeddings.md +161 -0
- package/.docs/models/gateways/azure-openai.md +128 -0
- package/.docs/models/gateways/custom-gateways.md +545 -0
- package/.docs/models/gateways/netlify.md +93 -0
- package/.docs/models/gateways/openrouter.md +222 -0
- package/.docs/models/gateways/vercel.md +235 -0
- package/.docs/models/gateways.md +14 -0
- package/.docs/models/index.md +286 -0
- package/.docs/models/providers/302ai.md +134 -0
- package/.docs/models/providers/abacus.md +125 -0
- package/.docs/models/providers/agentrouter.md +90 -0
- package/.docs/models/providers/aihubmix.md +113 -0
- package/.docs/models/providers/alibaba-cn.md +135 -0
- package/.docs/models/providers/alibaba.md +111 -0
- package/.docs/models/providers/amazon-bedrock.md +33 -0
- package/.docs/models/providers/anthropic.md +154 -0
- package/.docs/models/providers/azure.md +33 -0
- package/.docs/models/providers/bailing.md +72 -0
- package/.docs/models/providers/baseten.md +79 -0
- package/.docs/models/providers/berget.md +78 -0
- package/.docs/models/providers/cerebras.md +101 -0
- package/.docs/models/providers/chutes.md +137 -0
- package/.docs/models/providers/cloudferro-sherlock.md +74 -0
- package/.docs/models/providers/cloudflare-ai-gateway.md +33 -0
- package/.docs/models/providers/cloudflare-workers-ai.md +109 -0
- package/.docs/models/providers/cohere.md +33 -0
- package/.docs/models/providers/cortecs.md +91 -0
- package/.docs/models/providers/deepinfra.md +112 -0
- package/.docs/models/providers/deepseek.md +88 -0
- package/.docs/models/providers/evroc.md +83 -0
- package/.docs/models/providers/fastrouter.md +84 -0
- package/.docs/models/providers/fireworks-ai.md +83 -0
- package/.docs/models/providers/firmware.md +86 -0
- package/.docs/models/providers/friendli.md +77 -0
- package/.docs/models/providers/github-models.md +125 -0
- package/.docs/models/providers/google-vertex.md +33 -0
- package/.docs/models/providers/google.md +161 -0
- package/.docs/models/providers/groq.md +107 -0
- package/.docs/models/providers/helicone.md +161 -0
- package/.docs/models/providers/huggingface.md +90 -0
- package/.docs/models/providers/iflowcn.md +84 -0
- package/.docs/models/providers/inception.md +72 -0
- package/.docs/models/providers/inference.md +79 -0
- package/.docs/models/providers/io-intelligence.md +87 -0
- package/.docs/models/providers/io-net.md +87 -0
- package/.docs/models/providers/jiekou.md +131 -0
- package/.docs/models/providers/kilo.md +333 -0
- package/.docs/models/providers/kimi-for-coding.md +100 -0
- package/.docs/models/providers/kuae-cloud-coding-plan.md +71 -0
- package/.docs/models/providers/llama.md +77 -0
- package/.docs/models/providers/lmstudio.md +73 -0
- package/.docs/models/providers/lucidquery.md +72 -0
- package/.docs/models/providers/meganova.md +89 -0
- package/.docs/models/providers/minimax-cn-coding-plan.md +102 -0
- package/.docs/models/providers/minimax-cn.md +102 -0
- package/.docs/models/providers/minimax-coding-plan.md +102 -0
- package/.docs/models/providers/minimax.md +104 -0
- package/.docs/models/providers/mistral.md +124 -0
- package/.docs/models/providers/moark.md +72 -0
- package/.docs/models/providers/modelscope.md +77 -0
- package/.docs/models/providers/moonshotai-cn.md +76 -0
- package/.docs/models/providers/moonshotai.md +76 -0
- package/.docs/models/providers/morph.md +73 -0
- package/.docs/models/providers/nano-gpt.md +103 -0
- package/.docs/models/providers/nebius.md +116 -0
- package/.docs/models/providers/nova.md +72 -0
- package/.docs/models/providers/novita-ai.md +154 -0
- package/.docs/models/providers/nvidia.md +141 -0
- package/.docs/models/providers/ollama-cloud.md +103 -0
- package/.docs/models/providers/ollama.md +33 -0
- package/.docs/models/providers/openai.md +193 -0
- package/.docs/models/providers/opencode-go.md +73 -0
- package/.docs/models/providers/opencode.md +100 -0
- package/.docs/models/providers/ovhcloud.md +83 -0
- package/.docs/models/providers/perplexity-agent.md +113 -0
- package/.docs/models/providers/perplexity.md +101 -0
- package/.docs/models/providers/poe.md +184 -0
- package/.docs/models/providers/privatemode-ai.md +75 -0
- package/.docs/models/providers/qihang-ai.md +79 -0
- package/.docs/models/providers/qiniu-ai.md +146 -0
- package/.docs/models/providers/requesty.md +90 -0
- package/.docs/models/providers/scaleway.md +84 -0
- package/.docs/models/providers/siliconflow-cn.md +142 -0
- package/.docs/models/providers/siliconflow.md +140 -0
- package/.docs/models/providers/stackit.md +78 -0
- package/.docs/models/providers/stepfun.md +73 -0
- package/.docs/models/providers/submodel.md +79 -0
- package/.docs/models/providers/synthetic.md +96 -0
- package/.docs/models/providers/togetherai.md +116 -0
- package/.docs/models/providers/upstage.md +73 -0
- package/.docs/models/providers/venice.md +95 -0
- package/.docs/models/providers/vivgrid.md +106 -0
- package/.docs/models/providers/vultr.md +75 -0
- package/.docs/models/providers/wandb.md +80 -0
- package/.docs/models/providers/xai.md +141 -0
- package/.docs/models/providers/xiaomi.md +71 -0
- package/.docs/models/providers/zai-coding-plan.md +80 -0
- package/.docs/models/providers/zai.md +79 -0
- package/.docs/models/providers/zenmux.md +165 -0
- package/.docs/models/providers/zhipuai-coding-plan.md +79 -0
- package/.docs/models/providers/zhipuai.md +79 -0
- package/.docs/models/providers.md +88 -0
- package/.docs/reference/agents/agent.md +141 -0
- package/.docs/reference/agents/generate.md +186 -0
- package/.docs/reference/agents/generateLegacy.md +173 -0
- package/.docs/reference/agents/getDefaultGenerateOptions.md +36 -0
- package/.docs/reference/agents/getDefaultOptions.md +34 -0
- package/.docs/reference/agents/getDefaultStreamOptions.md +36 -0
- package/.docs/reference/agents/getDescription.md +21 -0
- package/.docs/reference/agents/getInstructions.md +34 -0
- package/.docs/reference/agents/getLLM.md +37 -0
- package/.docs/reference/agents/getMemory.md +34 -0
- package/.docs/reference/agents/getModel.md +34 -0
- package/.docs/reference/agents/getTools.md +29 -0
- package/.docs/reference/agents/getVoice.md +34 -0
- package/.docs/reference/agents/listAgents.md +35 -0
- package/.docs/reference/agents/listScorers.md +34 -0
- package/.docs/reference/agents/listTools.md +34 -0
- package/.docs/reference/agents/listWorkflows.md +34 -0
- package/.docs/reference/agents/network.md +170 -0
- package/.docs/reference/ai-sdk/chat-route.md +82 -0
- package/.docs/reference/ai-sdk/handle-chat-stream.md +53 -0
- package/.docs/reference/ai-sdk/handle-network-stream.md +37 -0
- package/.docs/reference/ai-sdk/handle-workflow-stream.md +55 -0
- package/.docs/reference/ai-sdk/network-route.md +74 -0
- package/.docs/reference/ai-sdk/to-ai-sdk-stream.md +231 -0
- package/.docs/reference/ai-sdk/to-ai-sdk-v4-messages.md +79 -0
- package/.docs/reference/ai-sdk/to-ai-sdk-v5-messages.md +76 -0
- package/.docs/reference/ai-sdk/with-mastra.md +63 -0
- package/.docs/reference/ai-sdk/workflow-route.md +79 -0
- package/.docs/reference/auth/auth0.md +73 -0
- package/.docs/reference/auth/better-auth.md +71 -0
- package/.docs/reference/auth/clerk.md +36 -0
- package/.docs/reference/auth/firebase.md +80 -0
- package/.docs/reference/auth/jwt.md +26 -0
- package/.docs/reference/auth/supabase.md +33 -0
- package/.docs/reference/auth/workos.md +84 -0
- package/.docs/reference/cli/create-mastra.md +137 -0
- package/.docs/reference/cli/mastra.md +336 -0
- package/.docs/reference/client-js/agents.md +437 -0
- package/.docs/reference/client-js/error-handling.md +16 -0
- package/.docs/reference/client-js/logs.md +24 -0
- package/.docs/reference/client-js/mastra-client.md +63 -0
- package/.docs/reference/client-js/memory.md +221 -0
- package/.docs/reference/client-js/observability.md +72 -0
- package/.docs/reference/client-js/telemetry.md +20 -0
- package/.docs/reference/client-js/tools.md +44 -0
- package/.docs/reference/client-js/vectors.md +79 -0
- package/.docs/reference/client-js/workflows.md +199 -0
- package/.docs/reference/configuration.md +752 -0
- package/.docs/reference/core/addGateway.md +42 -0
- package/.docs/reference/core/getAgent.md +21 -0
- package/.docs/reference/core/getAgentById.md +21 -0
- package/.docs/reference/core/getDeployer.md +22 -0
- package/.docs/reference/core/getGateway.md +38 -0
- package/.docs/reference/core/getGatewayById.md +41 -0
- package/.docs/reference/core/getLogger.md +22 -0
- package/.docs/reference/core/getMCPServer.md +47 -0
- package/.docs/reference/core/getMCPServerById.md +55 -0
- package/.docs/reference/core/getMemory.md +50 -0
- package/.docs/reference/core/getScorer.md +54 -0
- package/.docs/reference/core/getScorerById.md +54 -0
- package/.docs/reference/core/getServer.md +22 -0
- package/.docs/reference/core/getStorage.md +22 -0
- package/.docs/reference/core/getStoredAgentById.md +89 -0
- package/.docs/reference/core/getTelemetry.md +22 -0
- package/.docs/reference/core/getVector.md +22 -0
- package/.docs/reference/core/getWorkflow.md +42 -0
- package/.docs/reference/core/listAgents.md +21 -0
- package/.docs/reference/core/listGateways.md +40 -0
- package/.docs/reference/core/listLogs.md +38 -0
- package/.docs/reference/core/listLogsByRunId.md +36 -0
- package/.docs/reference/core/listMCPServers.md +55 -0
- package/.docs/reference/core/listMemory.md +56 -0
- package/.docs/reference/core/listScorers.md +29 -0
- package/.docs/reference/core/listStoredAgents.md +93 -0
- package/.docs/reference/core/listVectors.md +22 -0
- package/.docs/reference/core/listWorkflows.md +21 -0
- package/.docs/reference/core/mastra-class.md +66 -0
- package/.docs/reference/core/mastra-model-gateway.md +153 -0
- package/.docs/reference/core/setLogger.md +26 -0
- package/.docs/reference/core/setStorage.md +27 -0
- package/.docs/reference/datasets/addItem.md +37 -0
- package/.docs/reference/datasets/addItems.md +35 -0
- package/.docs/reference/datasets/compareExperiments.md +52 -0
- package/.docs/reference/datasets/create.md +51 -0
- package/.docs/reference/datasets/dataset.md +82 -0
- package/.docs/reference/datasets/datasets-manager.md +94 -0
- package/.docs/reference/datasets/delete.md +25 -0
- package/.docs/reference/datasets/deleteExperiment.md +27 -0
- package/.docs/reference/datasets/deleteItem.md +27 -0
- package/.docs/reference/datasets/deleteItems.md +29 -0
- package/.docs/reference/datasets/get.md +31 -0
- package/.docs/reference/datasets/getDetails.md +47 -0
- package/.docs/reference/datasets/getExperiment.md +30 -0
- package/.docs/reference/datasets/getItem.md +33 -0
- package/.docs/reference/datasets/getItemHistory.md +31 -0
- package/.docs/reference/datasets/list.md +31 -0
- package/.docs/reference/datasets/listExperimentResults.md +39 -0
- package/.docs/reference/datasets/listExperiments.md +33 -0
- package/.docs/reference/datasets/listItems.md +46 -0
- package/.docs/reference/datasets/listVersions.md +33 -0
- package/.docs/reference/datasets/startExperiment.md +62 -0
- package/.docs/reference/datasets/startExperimentAsync.md +43 -0
- package/.docs/reference/datasets/update.md +48 -0
- package/.docs/reference/datasets/updateItem.md +38 -0
- package/.docs/reference/deployer/cloudflare.md +79 -0
- package/.docs/reference/deployer/netlify.md +80 -0
- package/.docs/reference/deployer/vercel.md +116 -0
- package/.docs/reference/deployer.md +100 -0
- package/.docs/reference/evals/answer-relevancy.md +105 -0
- package/.docs/reference/evals/answer-similarity.md +99 -0
- package/.docs/reference/evals/bias.md +120 -0
- package/.docs/reference/evals/completeness.md +136 -0
- package/.docs/reference/evals/content-similarity.md +101 -0
- package/.docs/reference/evals/context-precision.md +196 -0
- package/.docs/reference/evals/context-relevance.md +531 -0
- package/.docs/reference/evals/create-scorer.md +270 -0
- package/.docs/reference/evals/faithfulness.md +114 -0
- package/.docs/reference/evals/hallucination.md +213 -0
- package/.docs/reference/evals/keyword-coverage.md +128 -0
- package/.docs/reference/evals/mastra-scorer.md +123 -0
- package/.docs/reference/evals/noise-sensitivity.md +675 -0
- package/.docs/reference/evals/prompt-alignment.md +614 -0
- package/.docs/reference/evals/run-evals.md +179 -0
- package/.docs/reference/evals/scorer-utils.md +326 -0
- package/.docs/reference/evals/textual-difference.md +113 -0
- package/.docs/reference/evals/tone-consistency.md +119 -0
- package/.docs/reference/evals/tool-call-accuracy.md +533 -0
- package/.docs/reference/evals/toxicity.md +123 -0
- package/.docs/reference/harness/harness-class.md +760 -0
- package/.docs/reference/index.md +277 -0
- package/.docs/reference/logging/pino-logger.md +117 -0
- package/.docs/reference/memory/clone-utilities.md +199 -0
- package/.docs/reference/memory/cloneThread.md +142 -0
- package/.docs/reference/memory/createThread.md +68 -0
- package/.docs/reference/memory/deleteMessages.md +38 -0
- package/.docs/reference/memory/getThreadById.md +24 -0
- package/.docs/reference/memory/listThreads.md +145 -0
- package/.docs/reference/memory/memory-class.md +147 -0
- package/.docs/reference/memory/observational-memory.md +577 -0
- package/.docs/reference/memory/recall.md +91 -0
- package/.docs/reference/observability/tracing/bridges/otel.md +131 -0
- package/.docs/reference/observability/tracing/configuration.md +178 -0
- package/.docs/reference/observability/tracing/exporters/arize.md +141 -0
- package/.docs/reference/observability/tracing/exporters/braintrust.md +93 -0
- package/.docs/reference/observability/tracing/exporters/cloud-exporter.md +163 -0
- package/.docs/reference/observability/tracing/exporters/console-exporter.md +138 -0
- package/.docs/reference/observability/tracing/exporters/datadog.md +116 -0
- package/.docs/reference/observability/tracing/exporters/default-exporter.md +174 -0
- package/.docs/reference/observability/tracing/exporters/laminar.md +78 -0
- package/.docs/reference/observability/tracing/exporters/langfuse.md +134 -0
- package/.docs/reference/observability/tracing/exporters/langsmith.md +108 -0
- package/.docs/reference/observability/tracing/exporters/otel.md +199 -0
- package/.docs/reference/observability/tracing/exporters/posthog.md +92 -0
- package/.docs/reference/observability/tracing/exporters/sentry.md +184 -0
- package/.docs/reference/observability/tracing/instances.md +107 -0
- package/.docs/reference/observability/tracing/interfaces.md +743 -0
- package/.docs/reference/observability/tracing/processors/sensitive-data-filter.md +144 -0
- package/.docs/reference/observability/tracing/spans.md +224 -0
- package/.docs/reference/processors/batch-parts-processor.md +61 -0
- package/.docs/reference/processors/language-detector.md +82 -0
- package/.docs/reference/processors/message-history-processor.md +85 -0
- package/.docs/reference/processors/moderation-processor.md +104 -0
- package/.docs/reference/processors/pii-detector.md +108 -0
- package/.docs/reference/processors/processor-interface.md +521 -0
- package/.docs/reference/processors/prompt-injection-detector.md +72 -0
- package/.docs/reference/processors/semantic-recall-processor.md +117 -0
- package/.docs/reference/processors/system-prompt-scrubber.md +80 -0
- package/.docs/reference/processors/token-limiter-processor.md +115 -0
- package/.docs/reference/processors/tool-call-filter.md +85 -0
- package/.docs/reference/processors/tool-search-processor.md +111 -0
- package/.docs/reference/processors/unicode-normalizer.md +62 -0
- package/.docs/reference/processors/working-memory-processor.md +152 -0
- package/.docs/reference/rag/chunk.md +221 -0
- package/.docs/reference/rag/database-config.md +261 -0
- package/.docs/reference/rag/document.md +114 -0
- package/.docs/reference/rag/embeddings.md +92 -0
- package/.docs/reference/rag/extract-params.md +168 -0
- package/.docs/reference/rag/graph-rag.md +111 -0
- package/.docs/reference/rag/metadata-filters.md +216 -0
- package/.docs/reference/rag/rerank.md +75 -0
- package/.docs/reference/rag/rerankWithScorer.md +80 -0
- package/.docs/reference/server/create-route.md +262 -0
- package/.docs/reference/server/express-adapter.md +176 -0
- package/.docs/reference/server/fastify-adapter.md +90 -0
- package/.docs/reference/server/hono-adapter.md +162 -0
- package/.docs/reference/server/koa-adapter.md +127 -0
- package/.docs/reference/server/mastra-server.md +298 -0
- package/.docs/reference/server/register-api-route.md +249 -0
- package/.docs/reference/server/routes.md +306 -0
- package/.docs/reference/storage/cloudflare-d1.md +218 -0
- package/.docs/reference/storage/cloudflare.md +88 -0
- package/.docs/reference/storage/composite.md +235 -0
- package/.docs/reference/storage/convex.md +161 -0
- package/.docs/reference/storage/dynamodb.md +282 -0
- package/.docs/reference/storage/lance.md +131 -0
- package/.docs/reference/storage/libsql.md +135 -0
- package/.docs/reference/storage/mongodb.md +262 -0
- package/.docs/reference/storage/mssql.md +157 -0
- package/.docs/reference/storage/overview.md +121 -0
- package/.docs/reference/storage/postgresql.md +526 -0
- package/.docs/reference/storage/upstash.md +160 -0
- package/.docs/reference/streaming/ChunkType.md +292 -0
- package/.docs/reference/streaming/agents/MastraModelOutput.md +182 -0
- package/.docs/reference/streaming/agents/stream.md +255 -0
- package/.docs/reference/streaming/agents/streamLegacy.md +142 -0
- package/.docs/reference/streaming/workflows/observeStream.md +42 -0
- package/.docs/reference/streaming/workflows/resumeStream.md +61 -0
- package/.docs/reference/streaming/workflows/stream.md +88 -0
- package/.docs/reference/streaming/workflows/timeTravelStream.md +142 -0
- package/.docs/reference/templates/overview.md +194 -0
- package/.docs/reference/tools/create-tool.md +285 -0
- package/.docs/reference/tools/document-chunker-tool.md +89 -0
- package/.docs/reference/tools/graph-rag-tool.md +182 -0
- package/.docs/reference/tools/mcp-client.md +965 -0
- package/.docs/reference/tools/mcp-server.md +1271 -0
- package/.docs/reference/tools/vector-query-tool.md +459 -0
- package/.docs/reference/vectors/astra.md +121 -0
- package/.docs/reference/vectors/chroma.md +264 -0
- package/.docs/reference/vectors/convex.md +300 -0
- package/.docs/reference/vectors/couchbase.md +226 -0
- package/.docs/reference/vectors/duckdb.md +318 -0
- package/.docs/reference/vectors/elasticsearch.md +189 -0
- package/.docs/reference/vectors/lance.md +220 -0
- package/.docs/reference/vectors/libsql.md +305 -0
- package/.docs/reference/vectors/mongodb.md +295 -0
- package/.docs/reference/vectors/opensearch.md +99 -0
- package/.docs/reference/vectors/pg.md +408 -0
- package/.docs/reference/vectors/pinecone.md +168 -0
- package/.docs/reference/vectors/qdrant.md +222 -0
- package/.docs/reference/vectors/s3vectors.md +277 -0
- package/.docs/reference/vectors/turbopuffer.md +157 -0
- package/.docs/reference/vectors/upstash.md +294 -0
- package/.docs/reference/vectors/vectorize.md +147 -0
- package/.docs/reference/voice/azure.md +148 -0
- package/.docs/reference/voice/cloudflare.md +83 -0
- package/.docs/reference/voice/composite-voice.md +121 -0
- package/.docs/reference/voice/deepgram.md +79 -0
- package/.docs/reference/voice/elevenlabs.md +98 -0
- package/.docs/reference/voice/google-gemini-live.md +378 -0
- package/.docs/reference/voice/google.md +228 -0
- package/.docs/reference/voice/mastra-voice.md +311 -0
- package/.docs/reference/voice/murf.md +122 -0
- package/.docs/reference/voice/openai-realtime.md +203 -0
- package/.docs/reference/voice/openai.md +88 -0
- package/.docs/reference/voice/playai.md +80 -0
- package/.docs/reference/voice/sarvam.md +126 -0
- package/.docs/reference/voice/speechify.md +75 -0
- package/.docs/reference/voice/voice.addInstructions.md +55 -0
- package/.docs/reference/voice/voice.addTools.md +67 -0
- package/.docs/reference/voice/voice.answer.md +54 -0
- package/.docs/reference/voice/voice.close.md +51 -0
- package/.docs/reference/voice/voice.connect.md +94 -0
- package/.docs/reference/voice/voice.events.md +37 -0
- package/.docs/reference/voice/voice.getSpeakers.md +129 -0
- package/.docs/reference/voice/voice.listen.md +164 -0
- package/.docs/reference/voice/voice.off.md +54 -0
- package/.docs/reference/voice/voice.on.md +111 -0
- package/.docs/reference/voice/voice.send.md +65 -0
- package/.docs/reference/voice/voice.speak.md +157 -0
- package/.docs/reference/voice/voice.updateConfig.md +60 -0
- package/.docs/reference/workflows/run-methods/cancel.md +86 -0
- package/.docs/reference/workflows/run-methods/restart.md +33 -0
- package/.docs/reference/workflows/run-methods/resume.md +59 -0
- package/.docs/reference/workflows/run-methods/start.md +58 -0
- package/.docs/reference/workflows/run-methods/startAsync.md +67 -0
- package/.docs/reference/workflows/run-methods/timeTravel.md +142 -0
- package/.docs/reference/workflows/run.md +59 -0
- package/.docs/reference/workflows/step.md +119 -0
- package/.docs/reference/workflows/workflow-methods/branch.md +25 -0
- package/.docs/reference/workflows/workflow-methods/commit.md +17 -0
- package/.docs/reference/workflows/workflow-methods/create-run.md +63 -0
- package/.docs/reference/workflows/workflow-methods/dountil.md +25 -0
- package/.docs/reference/workflows/workflow-methods/dowhile.md +25 -0
- package/.docs/reference/workflows/workflow-methods/foreach.md +118 -0
- package/.docs/reference/workflows/workflow-methods/map.md +93 -0
- package/.docs/reference/workflows/workflow-methods/parallel.md +21 -0
- package/.docs/reference/workflows/workflow-methods/sleep.md +35 -0
- package/.docs/reference/workflows/workflow-methods/sleepUntil.md +35 -0
- package/.docs/reference/workflows/workflow-methods/then.md +21 -0
- package/.docs/reference/workflows/workflow.md +157 -0
- package/.docs/reference/workspace/daytona-sandbox.md +580 -0
- package/.docs/reference/workspace/e2b-sandbox.md +289 -0
- package/.docs/reference/workspace/filesystem.md +255 -0
- package/.docs/reference/workspace/gcs-filesystem.md +174 -0
- package/.docs/reference/workspace/local-filesystem.md +343 -0
- package/.docs/reference/workspace/local-sandbox.md +301 -0
- package/.docs/reference/workspace/s3-filesystem.md +177 -0
- package/.docs/reference/workspace/sandbox.md +87 -0
- package/.docs/reference/workspace/workspace-class.md +244 -0
- package/CHANGELOG.md +659 -4
- package/LICENSE.md +15 -0
- package/README.md +63 -125
- 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/prompts/migration.d.ts +6 -0
- package/dist/prompts/migration.d.ts.map +1 -0
- package/dist/stdio.js +1253 -293
- package/dist/stdio.js.map +1 -0
- package/dist/tools/course.d.ts.map +1 -1
- package/dist/tools/docs.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/dist/tools/migration.d.ts +40 -0
- package/dist/tools/migration.d.ts.map +1 -0
- package/dist/utils.d.ts +0 -54
- package/dist/utils.d.ts.map +1 -1
- package/package.json +22 -21
- package/.docs/organized/changelogs/%40internal%2Fchangeset-cli.md +0 -9
- package/.docs/organized/changelogs/%40internal%2Fplayground.md +0 -3
- package/.docs/organized/changelogs/%40internal%2Fstorage-test-utils.md +0 -302
- package/.docs/organized/changelogs/%40internal%2Ftypes-builder.md +0 -49
- package/.docs/organized/changelogs/%40mastra%2Fagent-builder.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fai-sdk.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fastra.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fauth.md +0 -31
- package/.docs/organized/changelogs/%40mastra%2Fchroma.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fclickhouse.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fclient-js.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fcloud.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fcloudflare-d1.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fcloudflare.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fcore.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fcouchbase.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloud.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloudflare.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-netlify.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-vercel.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fdeployer.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fdynamodb.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fevals.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Ffastembed.md +0 -87
- package/.docs/organized/changelogs/%40mastra%2Flance.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Flibsql.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Floggers.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fmcp-docs-server.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fmcp-registry-registry.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fmcp.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fmemory.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fmongodb.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fmssql.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fopensearch.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fpg.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fpinecone.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fplayground-ui.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fqdrant.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Frag.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Freact.md +0 -247
- package/.docs/organized/changelogs/%40mastra%2Fs3vectors.md +0 -149
- package/.docs/organized/changelogs/%40mastra%2Fschema-compat.md +0 -195
- package/.docs/organized/changelogs/%40mastra%2Fserver.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fturbopuffer.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fupstash.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fvectorize.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fvoice-azure.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fvoice-cloudflare.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fvoice-deepgram.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fvoice-elevenlabs.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fvoice-gladia.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fvoice-google-gemini-live.md +0 -265
- package/.docs/organized/changelogs/%40mastra%2Fvoice-google.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fvoice-murf.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fvoice-openai-realtime.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fvoice-openai.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fvoice-playai.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fvoice-sarvam.md +0 -302
- package/.docs/organized/changelogs/%40mastra%2Fvoice-speechify.md +0 -302
- package/.docs/organized/changelogs/create-mastra.md +0 -302
- package/.docs/organized/changelogs/mastra.md +0 -302
- package/.docs/organized/code-examples/a2a.md +0 -208
- package/.docs/organized/code-examples/agent.md +0 -1333
- package/.docs/organized/code-examples/agui.md +0 -173
- package/.docs/organized/code-examples/ai-elements.md +0 -47
- package/.docs/organized/code-examples/ai-sdk-useChat.md +0 -369
- package/.docs/organized/code-examples/ai-sdk-v5.md +0 -203
- package/.docs/organized/code-examples/assistant-ui.md +0 -28
- package/.docs/organized/code-examples/bird-checker-with-express.md +0 -223
- package/.docs/organized/code-examples/bird-checker-with-nextjs-and-eval.md +0 -347
- package/.docs/organized/code-examples/bird-checker-with-nextjs.md +0 -241
- package/.docs/organized/code-examples/client-side-tools.md +0 -59
- package/.docs/organized/code-examples/crypto-chatbot.md +0 -87
- package/.docs/organized/code-examples/experimental-auth-weather-agent.md +0 -564
- package/.docs/organized/code-examples/fireworks-r1.md +0 -148
- package/.docs/organized/code-examples/heads-up-game.md +0 -252
- package/.docs/organized/code-examples/mcp-configuration.md +0 -556
- package/.docs/organized/code-examples/mcp-registry-registry.md +0 -50
- package/.docs/organized/code-examples/memory-per-resource-example.md +0 -222
- package/.docs/organized/code-examples/memory-todo-agent.md +0 -152
- package/.docs/organized/code-examples/memory-with-context.md +0 -155
- package/.docs/organized/code-examples/memory-with-libsql.md +0 -190
- package/.docs/organized/code-examples/memory-with-pg.md +0 -211
- package/.docs/organized/code-examples/memory-with-processors.md +0 -594
- package/.docs/organized/code-examples/memory-with-upstash.md +0 -254
- package/.docs/organized/code-examples/openapi-spec-writer.md +0 -567
- package/.docs/organized/code-examples/quick-start.md +0 -156
- package/.docs/organized/code-examples/stock-price-tool.md +0 -111
- package/.docs/organized/code-examples/weather-agent.md +0 -576
- package/.docs/organized/code-examples/workflow-ai-recruiter.md +0 -147
- package/.docs/organized/code-examples/workflow-with-inline-steps.md +0 -99
- package/.docs/organized/code-examples/workflow-with-memory.md +0 -381
- package/.docs/organized/code-examples/workflow-with-separate-steps.md +0 -160
- package/.docs/organized/code-examples/workflow-with-suspend-resume.md +0 -182
- package/.docs/raw/agents/adding-voice.mdx +0 -290
- package/.docs/raw/agents/agent-memory.mdx +0 -158
- package/.docs/raw/agents/guardrails.mdx +0 -342
- package/.docs/raw/agents/networks.mdx +0 -235
- package/.docs/raw/agents/overview.mdx +0 -425
- package/.docs/raw/agents/using-tools.mdx +0 -95
- package/.docs/raw/auth/auth0.mdx +0 -235
- package/.docs/raw/auth/clerk.mdx +0 -142
- package/.docs/raw/auth/firebase.mdx +0 -285
- package/.docs/raw/auth/index.mdx +0 -19
- package/.docs/raw/auth/jwt.mdx +0 -101
- package/.docs/raw/auth/supabase.mdx +0 -128
- package/.docs/raw/auth/workos.mdx +0 -198
- package/.docs/raw/community/contributing-templates.mdx +0 -193
- package/.docs/raw/community/discord.mdx +0 -12
- package/.docs/raw/community/licensing.mdx +0 -71
- package/.docs/raw/course/01-first-agent/04-project-structure.md +0 -17
- package/.docs/raw/course/01-first-agent/05-running-playground.md +0 -19
- package/.docs/raw/course/01-first-agent/07-creating-your-agent.md +0 -51
- package/.docs/raw/course/01-first-agent/08-exporting-your-agent.md +0 -33
- package/.docs/raw/course/01-first-agent/09-testing-your-agent.md +0 -12
- package/.docs/raw/course/01-first-agent/11-creating-transactions-tool.md +0 -41
- package/.docs/raw/course/01-first-agent/12-connecting-tool-to-agent.md +0 -29
- package/.docs/raw/course/01-first-agent/13-testing-your-tool.md +0 -15
- package/.docs/raw/course/01-first-agent/15-installing-memory.md +0 -13
- package/.docs/raw/course/01-first-agent/16-adding-memory-to-agent.md +0 -33
- package/.docs/raw/course/01-first-agent/17-testing-memory.md +0 -15
- package/.docs/raw/course/02-agent-tools-mcp/03-setting-up-mcp-configuration.md +0 -21
- package/.docs/raw/course/02-agent-tools-mcp/04-initializing-mcp-tools.md +0 -11
- package/.docs/raw/course/02-agent-tools-mcp/05-updating-your-agent.md +0 -20
- package/.docs/raw/course/02-agent-tools-mcp/07-what-is-zapier-mcp.md +0 -14
- package/.docs/raw/course/02-agent-tools-mcp/08-getting-zapier-mcp-url.md +0 -16
- package/.docs/raw/course/02-agent-tools-mcp/09-updating-mcp-config-zapier.md +0 -17
- package/.docs/raw/course/02-agent-tools-mcp/10-updating-agent-instructions-zapier.md +0 -29
- package/.docs/raw/course/02-agent-tools-mcp/12-troubleshooting-zapier.md +0 -17
- package/.docs/raw/course/02-agent-tools-mcp/13-what-is-github-mcp.md +0 -14
- package/.docs/raw/course/02-agent-tools-mcp/14-getting-github-mcp-url.md +0 -35
- package/.docs/raw/course/02-agent-tools-mcp/15-updating-mcp-config-github.md +0 -20
- package/.docs/raw/course/02-agent-tools-mcp/16-updating-agent-instructions-github.md +0 -33
- package/.docs/raw/course/02-agent-tools-mcp/18-troubleshooting-github.md +0 -17
- package/.docs/raw/course/02-agent-tools-mcp/20-updating-mcp-config-hackernews.md +0 -26
- package/.docs/raw/course/02-agent-tools-mcp/21-updating-agent-instructions-hackernews.md +0 -38
- package/.docs/raw/course/02-agent-tools-mcp/26-updating-mcp-config-filesystem.md +0 -33
- package/.docs/raw/course/02-agent-tools-mcp/27-updating-agent-instructions-filesystem.md +0 -45
- package/.docs/raw/course/02-agent-tools-mcp/31-enhancing-memory-configuration.md +0 -76
- package/.docs/raw/course/02-agent-tools-mcp/32-conclusion.md +0 -17
- package/.docs/raw/course/03-agent-memory/03-installing-memory.md +0 -13
- package/.docs/raw/course/03-agent-memory/04-creating-basic-memory-agent.md +0 -36
- package/.docs/raw/course/03-agent-memory/05-updating-mastra-export.md +0 -18
- package/.docs/raw/course/03-agent-memory/07-understanding-memory-threads.md +0 -14
- package/.docs/raw/course/03-agent-memory/08-configuring-conversation-history.md +0 -37
- package/.docs/raw/course/03-agent-memory/09-using-memory-in-application.md +0 -19
- package/.docs/raw/course/03-agent-memory/10-storage-configuration.md +0 -30
- package/.docs/raw/course/03-agent-memory/12-handling-memory-frontend.md +0 -62
- package/.docs/raw/course/03-agent-memory/13-vector-store-configuration.md +0 -27
- package/.docs/raw/course/03-agent-memory/16-configuring-semantic-recall.md +0 -41
- package/.docs/raw/course/03-agent-memory/18-advanced-configuration-semantic-recall.md +0 -28
- package/.docs/raw/course/03-agent-memory/21-configuring-working-memory.md +0 -63
- package/.docs/raw/course/03-agent-memory/22-custom-working-memory-templates.md +0 -89
- package/.docs/raw/course/03-agent-memory/25-combining-memory-features.md +0 -80
- package/.docs/raw/course/03-agent-memory/26-updating-mastra-export-comprehensive.md +0 -32
- package/.docs/raw/course/03-agent-memory/27-creating-learning-assistant.md +0 -103
- package/.docs/raw/course/04-workflows/01-introduction-to-workflows.md +0 -44
- package/.docs/raw/course/04-workflows/02-understanding-steps.md +0 -53
- package/.docs/raw/course/04-workflows/03-creating-your-first-step.md +0 -57
- package/.docs/raw/course/04-workflows/04-creating-a-second-step.md +0 -58
- package/.docs/raw/course/04-workflows/05-chaining-steps-together.md +0 -57
- package/.docs/raw/course/04-workflows/06-registering-with-mastra.md +0 -24
- package/.docs/raw/course/04-workflows/07-using-playground.md +0 -58
- package/.docs/raw/course/04-workflows/08-running-workflows-programmatically.md +0 -77
- package/.docs/raw/course/04-workflows/09-adding-a-third-step.md +0 -70
- package/.docs/raw/course/04-workflows/10-updating-the-workflow.md +0 -55
- package/.docs/raw/course/04-workflows/11-creating-an-ai-agent.md +0 -67
- package/.docs/raw/course/04-workflows/12-using-agent-in-workflow.md +0 -91
- package/.docs/raw/course/04-workflows/13-creating-ai-enhanced-workflow.md +0 -75
- package/.docs/raw/course/04-workflows/14-understanding-parallel-execution.md +0 -38
- package/.docs/raw/course/04-workflows/15-creating-parallel-steps.md +0 -115
- package/.docs/raw/course/04-workflows/16-building-parallel-workflow.md +0 -100
- package/.docs/raw/course/04-workflows/17-testing-parallel-performance.md +0 -40
- package/.docs/raw/course/04-workflows/18-understanding-conditional-branching.md +0 -61
- package/.docs/raw/course/04-workflows/19-creating-conditional-steps.md +0 -128
- package/.docs/raw/course/04-workflows/20-building-conditional-workflow.md +0 -60
- package/.docs/raw/course/04-workflows/21-testing-conditional-logic.md +0 -58
- package/.docs/raw/deployment/cloud-providers/amazon-ec2.mdx +0 -115
- package/.docs/raw/deployment/cloud-providers/aws-lambda.mdx +0 -273
- package/.docs/raw/deployment/cloud-providers/azure-app-services.mdx +0 -137
- package/.docs/raw/deployment/cloud-providers/digital-ocean.mdx +0 -206
- package/.docs/raw/deployment/cloud-providers/index.mdx +0 -52
- package/.docs/raw/deployment/monorepo.mdx +0 -107
- package/.docs/raw/deployment/overview.mdx +0 -82
- package/.docs/raw/deployment/server-deployment.mdx +0 -86
- package/.docs/raw/deployment/serverless-platforms/cloudflare-deployer.mdx +0 -87
- package/.docs/raw/deployment/serverless-platforms/index.mdx +0 -52
- package/.docs/raw/deployment/serverless-platforms/netlify-deployer.mdx +0 -94
- package/.docs/raw/deployment/serverless-platforms/vercel-deployer.mdx +0 -109
- package/.docs/raw/deployment/web-framework.mdx +0 -63
- package/.docs/raw/frameworks/agentic-uis/ai-sdk.mdx +0 -675
- package/.docs/raw/frameworks/agentic-uis/assistant-ui.mdx +0 -125
- package/.docs/raw/frameworks/agentic-uis/cedar-os.mdx +0 -108
- package/.docs/raw/frameworks/agentic-uis/copilotkit.mdx +0 -341
- package/.docs/raw/frameworks/agentic-uis/openrouter.mdx +0 -165
- package/.docs/raw/frameworks/servers/express.mdx +0 -208
- package/.docs/raw/frameworks/web-frameworks/astro.mdx +0 -519
- package/.docs/raw/frameworks/web-frameworks/next-js.mdx +0 -336
- package/.docs/raw/frameworks/web-frameworks/sveltekit.mdx +0 -461
- package/.docs/raw/frameworks/web-frameworks/vite-react.mdx +0 -242
- package/.docs/raw/getting-started/installation.mdx +0 -316
- package/.docs/raw/getting-started/mcp-docs-server.mdx +0 -183
- package/.docs/raw/getting-started/project-structure.mdx +0 -72
- package/.docs/raw/getting-started/templates.mdx +0 -70
- package/.docs/raw/index.mdx +0 -58
- package/.docs/raw/mastra-cloud/dashboard.mdx +0 -100
- package/.docs/raw/mastra-cloud/observability.mdx +0 -52
- package/.docs/raw/mastra-cloud/overview.mdx +0 -71
- package/.docs/raw/mastra-cloud/setting-up.mdx +0 -92
- package/.docs/raw/memory/conversation-history.mdx +0 -23
- package/.docs/raw/memory/memory-processors.mdx +0 -136
- package/.docs/raw/memory/overview.mdx +0 -119
- package/.docs/raw/memory/semantic-recall.mdx +0 -226
- package/.docs/raw/memory/threads-and-resources.mdx +0 -94
- package/.docs/raw/memory/working-memory.mdx +0 -378
- package/.docs/raw/observability/ai-tracing/exporters/braintrust.mdx +0 -81
- package/.docs/raw/observability/ai-tracing/exporters/cloud.mdx +0 -120
- package/.docs/raw/observability/ai-tracing/exporters/default.mdx +0 -168
- package/.docs/raw/observability/ai-tracing/exporters/langfuse.mdx +0 -121
- package/.docs/raw/observability/ai-tracing/exporters/langsmith.mdx +0 -88
- package/.docs/raw/observability/ai-tracing/exporters/otel.mdx +0 -253
- package/.docs/raw/observability/ai-tracing/overview.mdx +0 -565
- package/.docs/raw/observability/ai-tracing/processors/sensitive-data-filter.mdx +0 -274
- package/.docs/raw/observability/logging.mdx +0 -113
- package/.docs/raw/observability/nextjs-tracing.mdx +0 -109
- package/.docs/raw/observability/otel-tracing.mdx +0 -190
- package/.docs/raw/observability/overview.mdx +0 -66
- package/.docs/raw/rag/chunking-and-embedding.mdx +0 -208
- package/.docs/raw/rag/overview.mdx +0 -87
- package/.docs/raw/rag/retrieval.mdx +0 -543
- package/.docs/raw/rag/vector-databases.mdx +0 -529
- package/.docs/raw/reference/agents/agent.mdx +0 -230
- package/.docs/raw/reference/agents/generate.mdx +0 -577
- package/.docs/raw/reference/agents/generateLegacy.mdx +0 -528
- package/.docs/raw/reference/agents/getDefaultGenerateOptions.mdx +0 -67
- package/.docs/raw/reference/agents/getDefaultStreamOptions.mdx +0 -67
- package/.docs/raw/reference/agents/getDescription.mdx +0 -34
- package/.docs/raw/reference/agents/getInstructions.mdx +0 -67
- package/.docs/raw/reference/agents/getLLM.mdx +0 -74
- package/.docs/raw/reference/agents/getMemory.mdx +0 -67
- package/.docs/raw/reference/agents/getModel.mdx +0 -67
- package/.docs/raw/reference/agents/getScorers.mdx +0 -67
- package/.docs/raw/reference/agents/getTools.mdx +0 -67
- package/.docs/raw/reference/agents/getVoice.mdx +0 -67
- package/.docs/raw/reference/agents/getWorkflows.mdx +0 -67
- package/.docs/raw/reference/agents/listAgents.mdx +0 -68
- package/.docs/raw/reference/agents/network.mdx +0 -290
- package/.docs/raw/reference/auth/auth0.mdx +0 -117
- package/.docs/raw/reference/auth/clerk.mdx +0 -71
- package/.docs/raw/reference/auth/firebase.mdx +0 -128
- package/.docs/raw/reference/auth/jwt.mdx +0 -41
- package/.docs/raw/reference/auth/supabase.mdx +0 -62
- package/.docs/raw/reference/auth/workos.mdx +0 -128
- package/.docs/raw/reference/cli/create-mastra.mdx +0 -177
- package/.docs/raw/reference/cli/mastra.mdx +0 -258
- package/.docs/raw/reference/client-js/agents.mdx +0 -220
- package/.docs/raw/reference/client-js/error-handling.mdx +0 -23
- package/.docs/raw/reference/client-js/logs.mdx +0 -29
- package/.docs/raw/reference/client-js/mastra-client.mdx +0 -157
- package/.docs/raw/reference/client-js/memory.mdx +0 -130
- package/.docs/raw/reference/client-js/observability.mdx +0 -76
- package/.docs/raw/reference/client-js/telemetry.mdx +0 -25
- package/.docs/raw/reference/client-js/tools.mdx +0 -49
- package/.docs/raw/reference/client-js/vectors.mdx +0 -84
- package/.docs/raw/reference/client-js/workflows-legacy.mdx +0 -143
- package/.docs/raw/reference/client-js/workflows.mdx +0 -175
- package/.docs/raw/reference/core/getAgent.mdx +0 -43
- package/.docs/raw/reference/core/getAgentById.mdx +0 -43
- package/.docs/raw/reference/core/getAgents.mdx +0 -35
- package/.docs/raw/reference/core/getDeployer.mdx +0 -35
- package/.docs/raw/reference/core/getLogger.mdx +0 -35
- package/.docs/raw/reference/core/getLogs.mdx +0 -92
- package/.docs/raw/reference/core/getLogsByRunId.mdx +0 -84
- package/.docs/raw/reference/core/getMCPServer.mdx +0 -49
- package/.docs/raw/reference/core/getMCPServers.mdx +0 -35
- package/.docs/raw/reference/core/getMemory.mdx +0 -35
- package/.docs/raw/reference/core/getScorer.mdx +0 -75
- package/.docs/raw/reference/core/getScorerByName.mdx +0 -75
- package/.docs/raw/reference/core/getScorers.mdx +0 -42
- package/.docs/raw/reference/core/getServer.mdx +0 -35
- package/.docs/raw/reference/core/getStorage.mdx +0 -35
- package/.docs/raw/reference/core/getTelemetry.mdx +0 -35
- package/.docs/raw/reference/core/getVector.mdx +0 -43
- package/.docs/raw/reference/core/getVectors.mdx +0 -35
- package/.docs/raw/reference/core/getWorkflow.mdx +0 -48
- package/.docs/raw/reference/core/getWorkflows.mdx +0 -43
- package/.docs/raw/reference/core/mastra-class.mdx +0 -143
- package/.docs/raw/reference/core/setLogger.mdx +0 -47
- package/.docs/raw/reference/core/setStorage.mdx +0 -39
- package/.docs/raw/reference/core/setTelemetry.mdx +0 -35
- package/.docs/raw/reference/deployer/cloudflare.mdx +0 -91
- package/.docs/raw/reference/deployer/deployer.mdx +0 -165
- package/.docs/raw/reference/deployer/netlify.mdx +0 -20
- package/.docs/raw/reference/deployer/vercel.mdx +0 -46
- package/.docs/raw/reference/evals/answer-relevancy.mdx +0 -190
- package/.docs/raw/reference/evals/bias.mdx +0 -195
- package/.docs/raw/reference/evals/completeness.mdx +0 -184
- package/.docs/raw/reference/evals/content-similarity.mdx +0 -185
- package/.docs/raw/reference/evals/context-position.mdx +0 -198
- package/.docs/raw/reference/evals/context-precision.mdx +0 -196
- package/.docs/raw/reference/evals/context-relevancy.mdx +0 -197
- package/.docs/raw/reference/evals/contextual-recall.mdx +0 -197
- package/.docs/raw/reference/evals/faithfulness.mdx +0 -200
- package/.docs/raw/reference/evals/hallucination.mdx +0 -227
- package/.docs/raw/reference/evals/keyword-coverage.mdx +0 -186
- package/.docs/raw/reference/evals/prompt-alignment.mdx +0 -248
- package/.docs/raw/reference/evals/summarization.mdx +0 -214
- package/.docs/raw/reference/evals/textual-difference.mdx +0 -172
- package/.docs/raw/reference/evals/tone-consistency.mdx +0 -190
- package/.docs/raw/reference/evals/toxicity.mdx +0 -173
- package/.docs/raw/reference/index.mdx +0 -12
- package/.docs/raw/reference/legacyWorkflows/after.mdx +0 -89
- package/.docs/raw/reference/legacyWorkflows/afterEvent.mdx +0 -79
- package/.docs/raw/reference/legacyWorkflows/commit.mdx +0 -33
- package/.docs/raw/reference/legacyWorkflows/createRun.mdx +0 -76
- package/.docs/raw/reference/legacyWorkflows/else.mdx +0 -68
- package/.docs/raw/reference/legacyWorkflows/events.mdx +0 -305
- package/.docs/raw/reference/legacyWorkflows/execute.mdx +0 -110
- package/.docs/raw/reference/legacyWorkflows/if.mdx +0 -108
- package/.docs/raw/reference/legacyWorkflows/resume.mdx +0 -158
- package/.docs/raw/reference/legacyWorkflows/resumeWithEvent.mdx +0 -133
- package/.docs/raw/reference/legacyWorkflows/snapshots.mdx +0 -207
- package/.docs/raw/reference/legacyWorkflows/start.mdx +0 -87
- package/.docs/raw/reference/legacyWorkflows/step-class.mdx +0 -100
- package/.docs/raw/reference/legacyWorkflows/step-condition.mdx +0 -137
- package/.docs/raw/reference/legacyWorkflows/step-function.mdx +0 -93
- package/.docs/raw/reference/legacyWorkflows/step-options.mdx +0 -69
- package/.docs/raw/reference/legacyWorkflows/step-retries.mdx +0 -196
- package/.docs/raw/reference/legacyWorkflows/suspend.mdx +0 -70
- package/.docs/raw/reference/legacyWorkflows/then.mdx +0 -72
- package/.docs/raw/reference/legacyWorkflows/until.mdx +0 -168
- package/.docs/raw/reference/legacyWorkflows/watch.mdx +0 -124
- package/.docs/raw/reference/legacyWorkflows/while.mdx +0 -168
- package/.docs/raw/reference/legacyWorkflows/workflow.mdx +0 -234
- package/.docs/raw/reference/memory/Memory.mdx +0 -206
- package/.docs/raw/reference/memory/createThread.mdx +0 -119
- package/.docs/raw/reference/memory/deleteMessages.mdx +0 -60
- package/.docs/raw/reference/memory/getThreadById.mdx +0 -46
- package/.docs/raw/reference/memory/getThreadsByResourceId.mdx +0 -78
- package/.docs/raw/reference/memory/getThreadsByResourceIdPaginated.mdx +0 -109
- package/.docs/raw/reference/memory/query.mdx +0 -174
- package/.docs/raw/reference/observability/ai-tracing/ai-tracing.mdx +0 -182
- package/.docs/raw/reference/observability/ai-tracing/configuration.mdx +0 -234
- package/.docs/raw/reference/observability/ai-tracing/exporters/braintrust.mdx +0 -112
- package/.docs/raw/reference/observability/ai-tracing/exporters/cloud-exporter.mdx +0 -176
- package/.docs/raw/reference/observability/ai-tracing/exporters/console-exporter.mdx +0 -148
- package/.docs/raw/reference/observability/ai-tracing/exporters/default-exporter.mdx +0 -196
- package/.docs/raw/reference/observability/ai-tracing/exporters/langfuse.mdx +0 -116
- package/.docs/raw/reference/observability/ai-tracing/exporters/langsmith.mdx +0 -112
- package/.docs/raw/reference/observability/ai-tracing/exporters/otel.mdx +0 -361
- package/.docs/raw/reference/observability/ai-tracing/interfaces.mdx +0 -651
- package/.docs/raw/reference/observability/ai-tracing/processors/sensitive-data-filter.mdx +0 -178
- package/.docs/raw/reference/observability/ai-tracing/span.mdx +0 -371
- package/.docs/raw/reference/observability/logging/pino-logger.mdx +0 -148
- package/.docs/raw/reference/observability/otel-tracing/otel-config.mdx +0 -117
- package/.docs/raw/reference/observability/otel-tracing/providers/arize-ax.mdx +0 -81
- package/.docs/raw/reference/observability/otel-tracing/providers/arize-phoenix.mdx +0 -120
- package/.docs/raw/reference/observability/otel-tracing/providers/braintrust.mdx +0 -40
- package/.docs/raw/reference/observability/otel-tracing/providers/dash0.mdx +0 -40
- package/.docs/raw/reference/observability/otel-tracing/providers/index.mdx +0 -22
- package/.docs/raw/reference/observability/otel-tracing/providers/keywordsai.mdx +0 -73
- package/.docs/raw/reference/observability/otel-tracing/providers/laminar.mdx +0 -41
- package/.docs/raw/reference/observability/otel-tracing/providers/langfuse.mdx +0 -84
- package/.docs/raw/reference/observability/otel-tracing/providers/langsmith.mdx +0 -48
- package/.docs/raw/reference/observability/otel-tracing/providers/langwatch.mdx +0 -43
- package/.docs/raw/reference/observability/otel-tracing/providers/new-relic.mdx +0 -40
- package/.docs/raw/reference/observability/otel-tracing/providers/signoz.mdx +0 -40
- package/.docs/raw/reference/observability/otel-tracing/providers/traceloop.mdx +0 -40
- package/.docs/raw/reference/processors/batch-parts-processor.mdx +0 -111
- package/.docs/raw/reference/processors/language-detector.mdx +0 -154
- package/.docs/raw/reference/processors/moderation-processor.mdx +0 -145
- package/.docs/raw/reference/processors/pii-detector.mdx +0 -153
- package/.docs/raw/reference/processors/prompt-injection-detector.mdx +0 -130
- package/.docs/raw/reference/processors/system-prompt-scrubber.mdx +0 -145
- package/.docs/raw/reference/processors/token-limiter-processor.mdx +0 -136
- package/.docs/raw/reference/processors/unicode-normalizer.mdx +0 -114
- package/.docs/raw/reference/rag/chunk.mdx +0 -445
- package/.docs/raw/reference/rag/database-config.mdx +0 -334
- package/.docs/raw/reference/rag/document.mdx +0 -131
- package/.docs/raw/reference/rag/embeddings.mdx +0 -168
- package/.docs/raw/reference/rag/extract-params.mdx +0 -254
- package/.docs/raw/reference/rag/graph-rag.mdx +0 -186
- package/.docs/raw/reference/rag/metadata-filters.mdx +0 -347
- package/.docs/raw/reference/rag/rerank.mdx +0 -213
- package/.docs/raw/reference/rag/rerankWithScorer.mdx +0 -213
- package/.docs/raw/reference/scorers/answer-relevancy.mdx +0 -209
- package/.docs/raw/reference/scorers/answer-similarity.mdx +0 -423
- package/.docs/raw/reference/scorers/bias.mdx +0 -225
- package/.docs/raw/reference/scorers/completeness.mdx +0 -209
- package/.docs/raw/reference/scorers/content-similarity.mdx +0 -195
- package/.docs/raw/reference/scorers/context-precision.mdx +0 -343
- package/.docs/raw/reference/scorers/context-relevance.mdx +0 -599
- package/.docs/raw/reference/scorers/create-scorer.mdx +0 -495
- package/.docs/raw/reference/scorers/faithfulness.mdx +0 -233
- package/.docs/raw/reference/scorers/hallucination.mdx +0 -247
- package/.docs/raw/reference/scorers/keyword-coverage.mdx +0 -224
- package/.docs/raw/reference/scorers/mastra-scorer.mdx +0 -182
- package/.docs/raw/reference/scorers/noise-sensitivity.mdx +0 -766
- package/.docs/raw/reference/scorers/prompt-alignment.mdx +0 -614
- package/.docs/raw/reference/scorers/run-experiment.mdx +0 -216
- package/.docs/raw/reference/scorers/textual-difference.mdx +0 -204
- package/.docs/raw/reference/scorers/tone-consistency.mdx +0 -208
- package/.docs/raw/reference/scorers/tool-call-accuracy.mdx +0 -567
- package/.docs/raw/reference/scorers/toxicity.mdx +0 -224
- package/.docs/raw/reference/storage/cloudflare-d1.mdx +0 -104
- package/.docs/raw/reference/storage/cloudflare.mdx +0 -95
- package/.docs/raw/reference/storage/dynamodb.mdx +0 -196
- package/.docs/raw/reference/storage/lance.mdx +0 -101
- package/.docs/raw/reference/storage/libsql.mdx +0 -74
- package/.docs/raw/reference/storage/mssql.mdx +0 -112
- package/.docs/raw/reference/storage/postgresql.mdx +0 -305
- package/.docs/raw/reference/storage/upstash.mdx +0 -91
- package/.docs/raw/reference/streaming/ChunkType.mdx +0 -854
- package/.docs/raw/reference/streaming/agents/MastraModelOutput.mdx +0 -321
- package/.docs/raw/reference/streaming/agents/stream.mdx +0 -698
- package/.docs/raw/reference/streaming/agents/streamLegacy.mdx +0 -515
- package/.docs/raw/reference/streaming/workflows/observeStream.mdx +0 -49
- package/.docs/raw/reference/streaming/workflows/observeStreamVNext.mdx +0 -47
- package/.docs/raw/reference/streaming/workflows/resumeStreamVNext.mdx +0 -118
- package/.docs/raw/reference/streaming/workflows/stream.mdx +0 -125
- package/.docs/raw/reference/streaming/workflows/streamVNext.mdx +0 -144
- package/.docs/raw/reference/templates/overview.mdx +0 -228
- package/.docs/raw/reference/tools/client.mdx +0 -336
- package/.docs/raw/reference/tools/create-tool.mdx +0 -130
- package/.docs/raw/reference/tools/document-chunker-tool.mdx +0 -141
- package/.docs/raw/reference/tools/graph-rag-tool.mdx +0 -262
- package/.docs/raw/reference/tools/mcp-client.mdx +0 -830
- package/.docs/raw/reference/tools/mcp-server.mdx +0 -1079
- package/.docs/raw/reference/tools/vector-query-tool.mdx +0 -604
- package/.docs/raw/reference/vectors/astra.mdx +0 -258
- package/.docs/raw/reference/vectors/chroma.mdx +0 -422
- package/.docs/raw/reference/vectors/couchbase.mdx +0 -345
- package/.docs/raw/reference/vectors/lance.mdx +0 -451
- package/.docs/raw/reference/vectors/libsql.mdx +0 -355
- package/.docs/raw/reference/vectors/mongodb.mdx +0 -309
- package/.docs/raw/reference/vectors/opensearch.mdx +0 -200
- package/.docs/raw/reference/vectors/pg.mdx +0 -632
- package/.docs/raw/reference/vectors/pinecone.mdx +0 -286
- package/.docs/raw/reference/vectors/qdrant.mdx +0 -236
- package/.docs/raw/reference/vectors/s3vectors.mdx +0 -386
- package/.docs/raw/reference/vectors/turbopuffer.mdx +0 -249
- package/.docs/raw/reference/vectors/upstash.mdx +0 -354
- package/.docs/raw/reference/vectors/vectorize.mdx +0 -298
- package/.docs/raw/reference/voice/azure.mdx +0 -218
- package/.docs/raw/reference/voice/cloudflare.mdx +0 -154
- package/.docs/raw/reference/voice/composite-voice.mdx +0 -144
- package/.docs/raw/reference/voice/deepgram.mdx +0 -166
- package/.docs/raw/reference/voice/elevenlabs.mdx +0 -218
- package/.docs/raw/reference/voice/google-gemini-live.mdx +0 -629
- package/.docs/raw/reference/voice/google.mdx +0 -203
- package/.docs/raw/reference/voice/mastra-voice.mdx +0 -413
- package/.docs/raw/reference/voice/murf.mdx +0 -253
- package/.docs/raw/reference/voice/openai-realtime.mdx +0 -376
- package/.docs/raw/reference/voice/openai.mdx +0 -169
- package/.docs/raw/reference/voice/playai.mdx +0 -163
- package/.docs/raw/reference/voice/sarvam.mdx +0 -260
- package/.docs/raw/reference/voice/speechify.mdx +0 -147
- package/.docs/raw/reference/voice/voice.addInstructions.mdx +0 -72
- package/.docs/raw/reference/voice/voice.addTools.mdx +0 -83
- package/.docs/raw/reference/voice/voice.answer.mdx +0 -69
- package/.docs/raw/reference/voice/voice.close.mdx +0 -56
- package/.docs/raw/reference/voice/voice.connect.mdx +0 -123
- package/.docs/raw/reference/voice/voice.events.mdx +0 -85
- package/.docs/raw/reference/voice/voice.getSpeakers.mdx +0 -298
- package/.docs/raw/reference/voice/voice.listen.mdx +0 -201
- package/.docs/raw/reference/voice/voice.off.mdx +0 -74
- package/.docs/raw/reference/voice/voice.on.mdx +0 -132
- package/.docs/raw/reference/voice/voice.send.mdx +0 -81
- package/.docs/raw/reference/voice/voice.speak.mdx +0 -206
- package/.docs/raw/reference/voice/voice.updateConfig.mdx +0 -92
- package/.docs/raw/reference/workflows/run-methods/cancel.mdx +0 -58
- package/.docs/raw/reference/workflows/run-methods/resume.mdx +0 -137
- package/.docs/raw/reference/workflows/run-methods/start.mdx +0 -134
- package/.docs/raw/reference/workflows/run-methods/watch.mdx +0 -74
- package/.docs/raw/reference/workflows/run.mdx +0 -104
- package/.docs/raw/reference/workflows/step.mdx +0 -155
- package/.docs/raw/reference/workflows/workflow-methods/branch.mdx +0 -48
- package/.docs/raw/reference/workflows/workflow-methods/commit.mdx +0 -30
- package/.docs/raw/reference/workflows/workflow-methods/create-run.mdx +0 -65
- package/.docs/raw/reference/workflows/workflow-methods/dountil.mdx +0 -52
- package/.docs/raw/reference/workflows/workflow-methods/dowhile.mdx +0 -52
- package/.docs/raw/reference/workflows/workflow-methods/foreach.mdx +0 -60
- package/.docs/raw/reference/workflows/workflow-methods/map.mdx +0 -43
- package/.docs/raw/reference/workflows/workflow-methods/parallel.mdx +0 -43
- package/.docs/raw/reference/workflows/workflow-methods/sendEvent.mdx +0 -70
- package/.docs/raw/reference/workflows/workflow-methods/sleep.mdx +0 -61
- package/.docs/raw/reference/workflows/workflow-methods/sleepUntil.mdx +0 -61
- package/.docs/raw/reference/workflows/workflow-methods/then.mdx +0 -44
- package/.docs/raw/reference/workflows/workflow-methods/waitForEvent.mdx +0 -66
- package/.docs/raw/reference/workflows/workflow.mdx +0 -132
- package/.docs/raw/scorers/custom-scorers.mdx +0 -473
- package/.docs/raw/scorers/evals-old-api/custom-eval.mdx +0 -26
- package/.docs/raw/scorers/evals-old-api/overview.mdx +0 -106
- package/.docs/raw/scorers/evals-old-api/running-in-ci.mdx +0 -85
- package/.docs/raw/scorers/evals-old-api/textual-evals.mdx +0 -58
- package/.docs/raw/scorers/off-the-shelf-scorers.mdx +0 -48
- package/.docs/raw/scorers/overview.mdx +0 -138
- package/.docs/raw/server-db/custom-api-routes.mdx +0 -67
- package/.docs/raw/server-db/local-dev-playground.mdx +0 -233
- package/.docs/raw/server-db/mastra-client.mdx +0 -274
- package/.docs/raw/server-db/middleware.mdx +0 -173
- package/.docs/raw/server-db/production-server.mdx +0 -91
- package/.docs/raw/server-db/runtime-context.mdx +0 -190
- package/.docs/raw/server-db/storage.mdx +0 -514
- package/.docs/raw/streaming/events.mdx +0 -223
- package/.docs/raw/streaming/overview.mdx +0 -177
- package/.docs/raw/streaming/tool-streaming.mdx +0 -143
- package/.docs/raw/streaming/workflow-streaming.mdx +0 -124
- package/.docs/raw/tools-mcp/advanced-usage.mdx +0 -128
- package/.docs/raw/tools-mcp/mcp-overview.mdx +0 -370
- package/.docs/raw/tools-mcp/overview.mdx +0 -93
- package/.docs/raw/voice/overview.mdx +0 -944
- package/.docs/raw/voice/speech-to-speech.mdx +0 -105
- package/.docs/raw/voice/speech-to-text.mdx +0 -86
- package/.docs/raw/voice/text-to-speech.mdx +0 -90
- package/.docs/raw/workflows/control-flow.mdx +0 -265
- package/.docs/raw/workflows/error-handling.mdx +0 -213
- package/.docs/raw/workflows/inngest-workflow.mdx +0 -359
- package/.docs/raw/workflows/input-data-mapping.mdx +0 -107
- package/.docs/raw/workflows/overview.mdx +0 -277
- package/.docs/raw/workflows/snapshots.mdx +0 -250
- package/.docs/raw/workflows/suspend-and-resume.mdx +0 -298
- package/.docs/raw/workflows/using-with-agents-and-tools.mdx +0 -350
- package/.docs/raw/workflows-legacy/control-flow.mdx +0 -776
- package/.docs/raw/workflows-legacy/dynamic-workflows.mdx +0 -237
- package/.docs/raw/workflows-legacy/error-handling.mdx +0 -185
- package/.docs/raw/workflows-legacy/nested-workflows.mdx +0 -354
- package/.docs/raw/workflows-legacy/overview.mdx +0 -180
- package/.docs/raw/workflows-legacy/runtime-variables.mdx +0 -154
- package/.docs/raw/workflows-legacy/steps.mdx +0 -113
- package/.docs/raw/workflows-legacy/suspend-and-resume.mdx +0 -404
- package/.docs/raw/workflows-legacy/variables.mdx +0 -316
- package/dist/chunk-TUAHUTTB.js +0 -356
- package/dist/prepare-docs/code-examples.d.ts +0 -5
- package/dist/prepare-docs/code-examples.d.ts.map +0 -1
- package/dist/prepare-docs/copy-raw.d.ts +0 -2
- package/dist/prepare-docs/copy-raw.d.ts.map +0 -1
- package/dist/prepare-docs/package-changes.d.ts +0 -5
- package/dist/prepare-docs/package-changes.d.ts.map +0 -1
- package/dist/prepare-docs/prepare.d.ts +0 -2
- package/dist/prepare-docs/prepare.d.ts.map +0 -1
- package/dist/prepare-docs/prepare.js +0 -1
- package/dist/tools/__tests__/test-setup.d.ts +0 -5
- package/dist/tools/__tests__/test-setup.d.ts.map +0 -1
- package/dist/tools/blog.d.ts +0 -22
- package/dist/tools/blog.d.ts.map +0 -1
- package/dist/tools/changes.d.ts +0 -22
- package/dist/tools/changes.d.ts.map +0 -1
- package/dist/tools/examples.d.ts +0 -28
- package/dist/tools/examples.d.ts.map +0 -1
- /package/.docs/{raw/course → course}/01-first-agent/01-introduction-to-mastra.md +0 -0
- /package/.docs/{raw/course → course}/01-first-agent/02-what-is-mastra.md +0 -0
- /package/.docs/{raw/course → course}/01-first-agent/03-verifying-installation.md +0 -0
- /package/.docs/{raw/course → course}/01-first-agent/06-understanding-system-prompts.md +0 -0
- /package/.docs/{raw/course → course}/01-first-agent/10-understanding-tools.md +0 -0
- /package/.docs/{raw/course → course}/01-first-agent/14-understanding-memory.md +0 -0
- /package/.docs/{raw/course → course}/01-first-agent/18-conclusion.md +0 -0
- /package/.docs/{raw/course → course}/02-agent-tools-mcp/01-introduction-to-mcp.md +0 -0
- /package/.docs/{raw/course → course}/02-agent-tools-mcp/02-installing-mcp.md +0 -0
- /package/.docs/{raw/course → course}/02-agent-tools-mcp/06-testing-mcp-setup.md +0 -0
- /package/.docs/{raw/course → course}/02-agent-tools-mcp/11-testing-zapier-integration.md +0 -0
- /package/.docs/{raw/course → course}/02-agent-tools-mcp/17-testing-github-integration.md +0 -0
- /package/.docs/{raw/course → course}/02-agent-tools-mcp/19-what-is-hackernews-mcp.md +0 -0
- /package/.docs/{raw/course → course}/02-agent-tools-mcp/22-testing-hackernews-integration.md +0 -0
- /package/.docs/{raw/course → course}/02-agent-tools-mcp/23-troubleshooting-hackernews.md +0 -0
- /package/.docs/{raw/course → course}/02-agent-tools-mcp/24-what-is-filesystem-mcp.md +0 -0
- /package/.docs/{raw/course → course}/02-agent-tools-mcp/25-creating-notes-directory.md +0 -0
- /package/.docs/{raw/course → course}/02-agent-tools-mcp/28-testing-filesystem-integration.md +0 -0
- /package/.docs/{raw/course → course}/02-agent-tools-mcp/29-troubleshooting-filesystem.md +0 -0
- /package/.docs/{raw/course → course}/03-agent-memory/01-understanding-memory.md +0 -0
- /package/.docs/{raw/course → course}/03-agent-memory/02-why-memory-matters.md +0 -0
- /package/.docs/{raw/course → course}/03-agent-memory/06-testing-memory-agent.md +0 -0
- /package/.docs/{raw/course → course}/03-agent-memory/11-testing-conversation-history.md +0 -0
- /package/.docs/{raw/course → course}/03-agent-memory/14-what-is-semantic-recall.md +0 -0
- /package/.docs/{raw/course → course}/03-agent-memory/15-how-semantic-recall-works.md +0 -0
- /package/.docs/{raw/course → course}/03-agent-memory/17-testing-semantic-recall.md +0 -0
- /package/.docs/{raw/course → course}/03-agent-memory/19-what-is-working-memory.md +0 -0
- /package/.docs/{raw/course → course}/03-agent-memory/20-how-working-memory-works.md +0 -0
- /package/.docs/{raw/course → course}/03-agent-memory/23-testing-working-memory.md +0 -0
- /package/.docs/{raw/course → course}/03-agent-memory/24-working-memory-in-practice.md +0 -0
- /package/.docs/{raw/course → course}/03-agent-memory/28-testing-memory-enhanced-agents.md +0 -0
- /package/.docs/{raw/course → course}/03-agent-memory/29-memory-best-practices.md +0 -0
- /package/.docs/{raw/course → course}/03-agent-memory/30-conclusion.md +0 -0
- /package/.docs/{raw/course → course}/04-workflows/22-conclusion.md +0 -0
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# Updating Your MCP Configuration
|
|
2
|
+
|
|
3
|
+
Unlike the previous MCP servers that use URLs, the Hacker News MCP server can be run directly using NPX. This means we don't need to set up any external services or authentication.
|
|
4
|
+
|
|
5
|
+
Let's update your MCP configuration in `src/mastra/agents/index.ts` to include the Hacker News server:
|
|
6
|
+
|
|
7
|
+
```typescript
|
|
8
|
+
const mcp = new MCPClient({
|
|
9
|
+
servers: {
|
|
10
|
+
zapier: {
|
|
11
|
+
url: new URL(process.env.ZAPIER_MCP_URL || ''),
|
|
12
|
+
requestInit: {
|
|
13
|
+
headers: {
|
|
14
|
+
Authorization: `Bearer ${process.env.ZAPIER_MCP_API_KEY}`,
|
|
15
|
+
},
|
|
16
|
+
},
|
|
17
|
+
},
|
|
18
|
+
github: {
|
|
19
|
+
url: new URL('https://api.githubcopilot.com/mcp/'),
|
|
20
|
+
requestInit: {
|
|
21
|
+
headers: {
|
|
22
|
+
Authorization: `Bearer ${process.env.GITHUB_PERSONAL_ACCESS_TOKEN}`,
|
|
23
|
+
},
|
|
24
|
+
},
|
|
25
|
+
},
|
|
26
|
+
hackernews: {
|
|
27
|
+
command: 'npx',
|
|
28
|
+
args: ['-y', '@devabdultech/hn-mcp-server'],
|
|
29
|
+
},
|
|
30
|
+
},
|
|
31
|
+
})
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
This configuration tells MCP to run the Hacker News server using NPX when needed. The `-y` flag automatically confirms any prompts, making it seamless to use.
|
|
35
|
+
|
|
36
|
+
Unlike the Zapier and GitHub servers that connect to external services via URLs, the Hacker News server is run locally using NPX. This approach is simpler because it doesn't require any authentication or external service setup.
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# Updating Your Agent's Instructions
|
|
2
|
+
|
|
3
|
+
Next, let's update your agent's instructions to include information about the Hacker News tools:
|
|
4
|
+
|
|
5
|
+
```typescript
|
|
6
|
+
export const personalAssistantAgent = new Agent({
|
|
7
|
+
name: 'Personal Assistant',
|
|
8
|
+
instructions: `
|
|
9
|
+
You are a helpful personal assistant that can help with various tasks such as email,
|
|
10
|
+
monitoring github activity, scheduling social media posts, and providing tech news.
|
|
11
|
+
|
|
12
|
+
You have access to the following tools:
|
|
13
|
+
|
|
14
|
+
1. Gmail:
|
|
15
|
+
- Use these tools for reading and categorizing emails from Gmail
|
|
16
|
+
- You can categorize emails by priority, identify action items, and summarize content
|
|
17
|
+
- You can also use this tool to send emails
|
|
18
|
+
|
|
19
|
+
2. GitHub:
|
|
20
|
+
- Use these tools for monitoring and summarizing GitHub activity
|
|
21
|
+
- You can summarize recent commits, pull requests, issues, and development patterns
|
|
22
|
+
|
|
23
|
+
3. Hackernews:
|
|
24
|
+
- Use this tool to search for stories on Hackernews
|
|
25
|
+
- You can use it to get the top stories or specific stories
|
|
26
|
+
- You can use it to retrieve comments for stories
|
|
27
|
+
|
|
28
|
+
Keep your responses concise and friendly.
|
|
29
|
+
`,
|
|
30
|
+
model: 'openai/gpt-4.1-mini',
|
|
31
|
+
tools: { ...mcpTools },
|
|
32
|
+
memory,
|
|
33
|
+
})
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
By updating your agent's instructions to include information about the Hacker News tools, you're helping it understand when and how to use these tools. The instructions provide context about what the Hacker News tools can do, such as searching for stories, retrieving top stories, and accessing comments.
|
|
37
|
+
|
|
38
|
+
This context helps your agent make better decisions about when to use the Hacker News tools and how to interpret the results they provide. When a user asks about tech news or specific topics on Hacker News, your agent will know to use these tools to provide relevant information.
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# Updating Your MCP Configuration
|
|
2
|
+
|
|
3
|
+
Now, let's update your MCP configuration in `src/mastra/agents/index.ts` to include the Filesystem server:
|
|
4
|
+
|
|
5
|
+
```typescript
|
|
6
|
+
import path from 'path'
|
|
7
|
+
|
|
8
|
+
const mcp = new MCPClient({
|
|
9
|
+
servers: {
|
|
10
|
+
zapier: {
|
|
11
|
+
url: new URL(process.env.ZAPIER_MCP_URL || ''),
|
|
12
|
+
requestInit: {
|
|
13
|
+
headers: {
|
|
14
|
+
Authorization: `Bearer ${process.env.ZAPIER_MCP_API_KEY}`,
|
|
15
|
+
},
|
|
16
|
+
},
|
|
17
|
+
},
|
|
18
|
+
github: {
|
|
19
|
+
url: new URL('https://api.githubcopilot.com/mcp/'),
|
|
20
|
+
requestInit: {
|
|
21
|
+
headers: {
|
|
22
|
+
Authorization: `Bearer ${process.env.GITHUB_PERSONAL_ACCESS_TOKEN}`,
|
|
23
|
+
},
|
|
24
|
+
},
|
|
25
|
+
},
|
|
26
|
+
hackernews: {
|
|
27
|
+
command: 'npx',
|
|
28
|
+
args: ['-y', '@devabdultech/hn-mcp-server'],
|
|
29
|
+
},
|
|
30
|
+
textEditor: {
|
|
31
|
+
command: 'pnpx',
|
|
32
|
+
args: [
|
|
33
|
+
`@modelcontextprotocol/server-filesystem`,
|
|
34
|
+
path.join(process.cwd(), '..', '..', 'notes'), // relative to output directory
|
|
35
|
+
],
|
|
36
|
+
},
|
|
37
|
+
},
|
|
38
|
+
})
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
This configuration tells MCP to run the Filesystem server using PNPX, pointing it to the "notes" directory we created. The `path.join(process.cwd(), "notes")` ensures that the path is correct regardless of where the application is run from.
|
|
42
|
+
|
|
43
|
+
The `textEditor` key is a unique identifier for this server in your configuration. The `command` property specifies that we want to use PNPX to run the server, and the `args` property provides the arguments to pass to PNPX, including the package name and the path to the notes directory.
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# Updating Your Agent's Instructions
|
|
2
|
+
|
|
3
|
+
Next, let's update your agent's instructions to include information about the Filesystem tools:
|
|
4
|
+
|
|
5
|
+
```typescript
|
|
6
|
+
export const personalAssistantAgent = new Agent({
|
|
7
|
+
name: 'Personal Assistant',
|
|
8
|
+
instructions: `
|
|
9
|
+
You are a helpful personal assistant that can help with various tasks such as email,
|
|
10
|
+
monitoring github activity, scheduling social media posts, providing tech news,
|
|
11
|
+
and managing notes and to-do lists.
|
|
12
|
+
|
|
13
|
+
You have access to the following tools:
|
|
14
|
+
|
|
15
|
+
1. Gmail:
|
|
16
|
+
- Use these tools for reading and categorizing emails from Gmail
|
|
17
|
+
- You can categorize emails by priority, identify action items, and summarize content
|
|
18
|
+
- You can also use this tool to send emails
|
|
19
|
+
|
|
20
|
+
2. GitHub:
|
|
21
|
+
- Use these tools for monitoring and summarizing GitHub activity
|
|
22
|
+
- You can summarize recent commits, pull requests, issues, and development patterns
|
|
23
|
+
|
|
24
|
+
3. Hackernews:
|
|
25
|
+
- Use this tool to search for stories on Hackernews
|
|
26
|
+
- You can use it to get the top stories or specific stories
|
|
27
|
+
- You can use it to retrieve comments for stories
|
|
28
|
+
|
|
29
|
+
4. Filesystem:
|
|
30
|
+
- You also have filesystem read/write access to a notes directory.
|
|
31
|
+
- You can use that to store info for later use or organize info for the user.
|
|
32
|
+
- You can use this notes directory to keep track of to-do list items for the user.
|
|
33
|
+
- Notes dir: ${path.join(process.cwd(), 'notes')}
|
|
34
|
+
|
|
35
|
+
Keep your responses concise and friendly.
|
|
36
|
+
`,
|
|
37
|
+
model: 'openai/gpt-4.1-mini',
|
|
38
|
+
tools: { ...mcpTools },
|
|
39
|
+
memory,
|
|
40
|
+
})
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
By updating your agent's instructions to include information about the Filesystem tools, you're helping it understand when and how to use these tools. The instructions provide context about what the Filesystem tools can do, such as storing information for later use and keeping track of to-do list items.
|
|
44
|
+
|
|
45
|
+
This context helps your agent make better decisions about when to use the Filesystem tools and how to organize the information it stores. The inclusion of the notes directory path in the instructions ensures that your agent knows exactly where it can read from and write to.
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
# Enhancing Memory Configuration
|
|
2
|
+
|
|
3
|
+
Finally, let's enhance our memory configuration to make our agent even more helpful:
|
|
4
|
+
|
|
5
|
+
```typescript
|
|
6
|
+
import { LibSQLStore, LibSQLVector } from '@mastra/libsql'
|
|
7
|
+
|
|
8
|
+
const memory = new Memory({
|
|
9
|
+
storage: new LibSQLStore({
|
|
10
|
+
id: 'learning-memory-storage',
|
|
11
|
+
url: 'file:../../memory.db',
|
|
12
|
+
}),
|
|
13
|
+
vector: new LibSQLVector({
|
|
14
|
+
id: 'learning-memory-vector',
|
|
15
|
+
url: 'file:../../memory.db',
|
|
16
|
+
}),
|
|
17
|
+
embedder: 'openai/text-embedding-3-small',
|
|
18
|
+
options: {
|
|
19
|
+
// Keep last 20 messages in context
|
|
20
|
+
lastMessages: 20,
|
|
21
|
+
// Enable semantic search to find relevant past conversations
|
|
22
|
+
semanticRecall: {
|
|
23
|
+
topK: 3,
|
|
24
|
+
messageRange: {
|
|
25
|
+
before: 2,
|
|
26
|
+
after: 1,
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
// Enable working memory to remember user information
|
|
30
|
+
workingMemory: {
|
|
31
|
+
enabled: true,
|
|
32
|
+
template: `
|
|
33
|
+
<user>
|
|
34
|
+
<first_name></first_name>
|
|
35
|
+
<username></username>
|
|
36
|
+
<preferences></preferences>
|
|
37
|
+
<interests></interests>
|
|
38
|
+
<conversation_style></conversation_style>
|
|
39
|
+
</user>`,
|
|
40
|
+
},
|
|
41
|
+
},
|
|
42
|
+
})
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
And update the agent instructions to use this enhanced memory:
|
|
46
|
+
|
|
47
|
+
```typescript
|
|
48
|
+
export const personalAssistantAgent = new Agent({
|
|
49
|
+
name: 'Personal Assistant',
|
|
50
|
+
instructions: `
|
|
51
|
+
// ... existing instructions ...
|
|
52
|
+
|
|
53
|
+
You have access to conversation memory and can remember details about users.
|
|
54
|
+
When you learn something about a user, update their working memory using the appropriate tool.
|
|
55
|
+
This includes:
|
|
56
|
+
- Their interests
|
|
57
|
+
- Their preferences
|
|
58
|
+
- Their conversation style (formal, casual, etc.)
|
|
59
|
+
- Any other relevant information that would help personalize the conversation
|
|
60
|
+
|
|
61
|
+
Always maintain a helpful and professional tone.
|
|
62
|
+
Use the stored information to provide more personalized responses.
|
|
63
|
+
`,
|
|
64
|
+
model: 'openai/gpt-4.1-mini',
|
|
65
|
+
tools: { ...mcpTools },
|
|
66
|
+
memory,
|
|
67
|
+
})
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
This enhanced memory configuration gives your agent more sophisticated memory capabilities:
|
|
71
|
+
|
|
72
|
+
1. **Conversation History**: The `lastMessages` option keeps the last 20 messages in context, allowing your agent to reference recent conversations.
|
|
73
|
+
|
|
74
|
+
2. **Semantic Recall**: The `semanticRecall` option enables your agent to find relevant past conversations using semantic search, even if they happened a long time ago. For `semanticRecall` to work, you need to have a vector store and an embedder configured
|
|
75
|
+
|
|
76
|
+
3. **Working Memory**: The `workingMemory` option allows your agent to remember specific information about users, such as their preferences and interests, and use that information to provide more personalized responses.
|
|
77
|
+
|
|
78
|
+
By updating your agent's instructions to include information about these memory capabilities, you're helping it understand how to use them effectively to provide a better user experience.
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# Conclusion
|
|
2
|
+
|
|
3
|
+
Congratulations! You've successfully enhanced your Mastra agent with MCP servers, giving it powerful capabilities including:
|
|
4
|
+
|
|
5
|
+
1. Email and social media integration through Zapier
|
|
6
|
+
2. GitHub monitoring through the official GitHub MCP server
|
|
7
|
+
3. Tech news access through the Hacker News MCP server
|
|
8
|
+
4. Local file management through the Filesystem MCP server
|
|
9
|
+
5. Enhanced memory for personalized interactions
|
|
10
|
+
|
|
11
|
+
Your agent is now a versatile personal assistant that can help with a wide range of tasks. Feel free to experiment with different MCP servers and configurations to further enhance your agent's capabilities.
|
|
12
|
+
|
|
13
|
+
The power of MCP lies in its ability to connect your agent to a wide variety of external services and data sources without requiring you to write custom tool functions for each one. This modular approach makes it easy to add new capabilities to your agent as needed.
|
|
14
|
+
|
|
15
|
+
As you continue to develop your Mastra agent, consider exploring other MCP servers and tools that might be useful for your specific use case. The Mastra ecosystem is constantly growing, with new tools and capabilities being added regularly.
|
|
16
|
+
|
|
17
|
+
For more information on MCP and available servers, check out the [Mastra MCP documentation](https://mastra.ai/docs/mcp/overview).
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# Installing Memory
|
|
2
|
+
|
|
3
|
+
Let's start by installing the Mastra memory package:
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
npm install @mastra/memory@latest @mastra/libsql@latest
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
The `@mastra/memory` package provides all the functionality you need to add memory capabilities to your Mastra agents. It includes support for conversation history, semantic recall, and working memory.
|
|
10
|
+
|
|
11
|
+
The `@mastra/libsql` package is **one of many** storage adapters that complement the memory package. The purpose of a storage adapter is to provide a way to persist the memory data to a database or other storage system. The `@mastra/libsql` package provides a storage adapter for LibSQL, which is a fast, open-source fork of SQLite.
|
|
12
|
+
|
|
13
|
+
These packages are separate from the core Mastra package, allowing you to only include them when you need memory capabilities in your project. This modular approach helps keep your project dependencies lean when you don't need all features.
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# Creating a Basic Memory Agent
|
|
2
|
+
|
|
3
|
+
Now, let's create a simple agent with memory capabilities. We'll start with the basics and add more advanced features in the following steps.
|
|
4
|
+
|
|
5
|
+
Create or update your `src/mastra/agents/index.ts` file:
|
|
6
|
+
|
|
7
|
+
```typescript
|
|
8
|
+
import { Agent } from '@mastra/core/agent'
|
|
9
|
+
import { Memory } from '@mastra/memory'
|
|
10
|
+
import { LibSQLStore } from '@mastra/libsql'
|
|
11
|
+
|
|
12
|
+
// Create a basic memory instance
|
|
13
|
+
const memory = new Memory({
|
|
14
|
+
storage: new LibSQLStore({
|
|
15
|
+
id: 'learning-memory-storage',
|
|
16
|
+
url: 'file:../../memory.db', // relative path from the `.mastra/output` directory
|
|
17
|
+
}),
|
|
18
|
+
})
|
|
19
|
+
|
|
20
|
+
// Create an agent with memory
|
|
21
|
+
export const memoryAgent = new Agent({
|
|
22
|
+
name: 'MemoryAgent',
|
|
23
|
+
instructions: `
|
|
24
|
+
You are a helpful assistant with memory capabilities.
|
|
25
|
+
You can remember previous conversations and user preferences.
|
|
26
|
+
When a user shares information about themselves, acknowledge it and remember it for future reference.
|
|
27
|
+
If asked about something mentioned earlier in the conversation, recall it accurately.
|
|
28
|
+
`,
|
|
29
|
+
model: 'openai/gpt-4.1-mini',
|
|
30
|
+
memory: memory,
|
|
31
|
+
})
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
In this example, we're creating a basic `Memory` instance without any special configuration. This default configuration will still provide your agent with the ability to remember previous messages in the conversation.
|
|
35
|
+
|
|
36
|
+
The key part is adding the `memory` property to your agent configuration, which connects the memory instance to your agent.
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Updating Your Mastra Export
|
|
2
|
+
|
|
3
|
+
Make sure to update your `src/mastra/index.ts` file to include your new memory agent:
|
|
4
|
+
|
|
5
|
+
```typescript
|
|
6
|
+
import { Mastra } from '@mastra/core'
|
|
7
|
+
import { memoryAgent } from './agents'
|
|
8
|
+
|
|
9
|
+
export const mastra: Mastra = new Mastra({
|
|
10
|
+
agents: {
|
|
11
|
+
memoryAgent,
|
|
12
|
+
},
|
|
13
|
+
})
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
This step is essential for making your agent available in the Mastra playground. The `mastra` export is the main entry point for your Mastra application, and it needs to include all the agents you want to use.
|
|
17
|
+
|
|
18
|
+
By adding your `memoryAgent` to the `agents` object in the Mastra configuration, you're registering it with the Mastra system, making it available for use in the playground and other parts of your application.
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# Managing Conversation History
|
|
2
|
+
|
|
3
|
+
In this step, we'll learn how to configure conversation history and understand memory threads in Mastra. Conversation history allows your agent to remember recent interactions, which is essential for maintaining context in ongoing conversations.
|
|
4
|
+
|
|
5
|
+
## Understanding Memory Threads
|
|
6
|
+
|
|
7
|
+
Mastra organizes memory into threads, which are records that identify specific conversation histories. Each thread uses two important identifiers:
|
|
8
|
+
|
|
9
|
+
1. **`threadId`**: A specific conversation ID (e.g., `support_123`)
|
|
10
|
+
2. **`resourceId`**: The user or entity ID that owns each thread (e.g., `user_alice`)
|
|
11
|
+
|
|
12
|
+
These identifiers allow memory to work properly outside of the playground. They help Mastra distinguish between different conversations and users, ensuring that the right memory is associated with the right conversation.
|
|
13
|
+
|
|
14
|
+
Without these identifiers, your agent would have no way to know which conversation history to retrieve when a user sends a message. The playground handles these identifiers automatically, but you'll need to manage them yourself when using memory in your own applications.
|
|
15
|
+
|
|
16
|
+
## Thread ID and Resource ID Relationship
|
|
17
|
+
|
|
18
|
+
**Important:** Each thread has an owner (its `resourceId`) that is set when the thread is created. Once created, a thread's owner cannot be changed.
|
|
19
|
+
|
|
20
|
+
The relationship works like this:
|
|
21
|
+
|
|
22
|
+
- **One thread → One owner** (each thread has exactly one `resourceId` that identifies its owner)
|
|
23
|
+
- **One resource → Many threads** (a user can have multiple separate conversations)
|
|
24
|
+
- **One thread → Messages with different resourceIds** (messages can have varying `resourceId` values for attribution and filtering purposes)
|
|
25
|
+
|
|
26
|
+
### Common Pitfall: Thread ID Reuse
|
|
27
|
+
|
|
28
|
+
If you create a thread with `threadId: "abc"` and `resourceId: "user-alice"`, you cannot later query or create another thread with `threadId: "abc"` but `resourceId: "user-bob"`. This will cause an error:
|
|
29
|
+
|
|
30
|
+
```text
|
|
31
|
+
Thread with id <thread_id> is for resource with id <resource_a>
|
|
32
|
+
but resource <resource_b> was queried
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
This error means you're trying to access a thread with the wrong owner's ID. Thread IDs are database primary keys and must be globally unique - you cannot reuse the same thread ID for different thread owners.
|
|
36
|
+
|
|
37
|
+
### Generating Thread IDs
|
|
38
|
+
|
|
39
|
+
The safest approach is to use UUIDs to avoid accidentally reusing thread IDs:
|
|
40
|
+
|
|
41
|
+
```typescript
|
|
42
|
+
// Using UUIDs (recommended)
|
|
43
|
+
const threadId = crypto.randomUUID() // "550e8400-e29b-41d4-a716-446655440000"
|
|
44
|
+
|
|
45
|
+
// Or combine resource ID with a unique suffix
|
|
46
|
+
const threadId = `${resourceId}_${Date.now()}` // "user_alice_1737907200000"
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
Avoid reusing simple identifiers like `"conversation_1"` for threads owned by different users, as this creates confusion about thread ownership.
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# Configuring Conversation History
|
|
2
|
+
|
|
3
|
+
By default, the `Memory` instance includes the last 10 messages from the current memory thread in each new request. You can customize this by configuring the `lastMessages` option:
|
|
4
|
+
|
|
5
|
+
```typescript
|
|
6
|
+
import { Agent } from '@mastra/core/agent'
|
|
7
|
+
import { Memory } from '@mastra/memory'
|
|
8
|
+
import { LibSQLStore } from '@mastra/libsql'
|
|
9
|
+
|
|
10
|
+
// Create a memory instance with custom conversation history settings
|
|
11
|
+
const memory = new Memory({
|
|
12
|
+
storage: new LibSQLStore({
|
|
13
|
+
url: 'file:../../memory.db',
|
|
14
|
+
}),
|
|
15
|
+
options: {
|
|
16
|
+
lastMessages: 20, // Include the last 20 messages in the context instead of the default 10
|
|
17
|
+
},
|
|
18
|
+
})
|
|
19
|
+
|
|
20
|
+
// Create an agent with the configured memory
|
|
21
|
+
export const memoryAgent = new Agent({
|
|
22
|
+
name: 'MemoryAgent',
|
|
23
|
+
instructions: `
|
|
24
|
+
You are a helpful assistant with memory capabilities.
|
|
25
|
+
You can remember previous conversations and user preferences.
|
|
26
|
+
When a user shares information about themselves, acknowledge it and remember it for future reference.
|
|
27
|
+
If asked about something mentioned earlier in the conversation, recall it accurately.
|
|
28
|
+
`,
|
|
29
|
+
model: 'openai/gpt-4.1-mini',
|
|
30
|
+
memory: memory,
|
|
31
|
+
})
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
The `lastMessages` option controls how many of the most recent messages are included in the agent's context window. This is important because language models have a limited context window size, and including too many messages can push out other important information.
|
|
35
|
+
|
|
36
|
+
You'll want to balance between having enough context for the agent to understand the conversation and not overwhelming the context window with too much history.
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# Using Memory in Your Application
|
|
2
|
+
|
|
3
|
+
When using memory in your own application (outside the playground), you need to provide the `resourceId` and `threadId` with each agent call:
|
|
4
|
+
|
|
5
|
+
```typescript
|
|
6
|
+
// Example of using memory in your application
|
|
7
|
+
const response = await memoryAgent.stream('Hello, my name is Alice.', {
|
|
8
|
+
resourceId: 'user_alice',
|
|
9
|
+
threadId: 'conversation_123',
|
|
10
|
+
})
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
**Important:** Without these IDs, your agent will not use memory, even if memory is properly configured. The playground handles this for you, but you need to add IDs yourself when using memory in your application.
|
|
14
|
+
|
|
15
|
+
The `resourceId` should be a unique identifier for the user or entity that owns the conversation. This could be a user ID from your authentication system, an email address, or any other unique identifier.
|
|
16
|
+
|
|
17
|
+
The `threadId` should be a unique identifier for the specific conversation. This allows a single user to have multiple separate conversations with your agent, each with its own memory thread.
|
|
18
|
+
|
|
19
|
+
In a real application, you might generate these IDs when a user starts a new conversation and store them in your database or client-side storage to reuse in subsequent requests.
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Storage Configuration
|
|
2
|
+
|
|
3
|
+
Conversation history relies on a storage adapter to persist messages. By default, Mastra uses a LibSQL store that saves messages to a local database. You can configure this or use other storage options:
|
|
4
|
+
|
|
5
|
+
```typescript
|
|
6
|
+
import { Memory } from '@mastra/memory'
|
|
7
|
+
import { LibSQLStore } from '@mastra/libsql'
|
|
8
|
+
|
|
9
|
+
const memory = new Memory({
|
|
10
|
+
// Configure storage
|
|
11
|
+
storage: new LibSQLStore({
|
|
12
|
+
id: 'learning-memory-storage',
|
|
13
|
+
url: 'file:../../memory.db', // Local database. Relative to the output folder
|
|
14
|
+
}),
|
|
15
|
+
options: {
|
|
16
|
+
lastMessages: 20,
|
|
17
|
+
},
|
|
18
|
+
})
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
Mastra supports several storage options, including:
|
|
22
|
+
|
|
23
|
+
- LibSQL (default, local SQLite)
|
|
24
|
+
- PostgreSQL
|
|
25
|
+
- Upstash (Redis)
|
|
26
|
+
|
|
27
|
+
The storage adapter is responsible for persisting memory data, including conversation history and working memory. This allows your agent to remember conversations even after your application restarts.
|
|
28
|
+
|
|
29
|
+
For development and testing, the default LibSQL store is usually sufficient. For production applications, you might want to use a more robust storage option like PostgreSQL or a cloud-based solution like Upstash.
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# Handling Memory in Frontend Applications
|
|
2
|
+
|
|
3
|
+
When building a frontend application that uses Mastra memory, it's important to only send the newest user message in each agent call. Mastra handles retrieving and injecting the necessary history. Sending the full history yourself will cause duplication.
|
|
4
|
+
|
|
5
|
+
Here's a simplified example of how to handle this in a React application:
|
|
6
|
+
|
|
7
|
+
```tsx
|
|
8
|
+
import { useState } from 'react'
|
|
9
|
+
import { memoryAgent } from './agents'
|
|
10
|
+
|
|
11
|
+
function ChatApp() {
|
|
12
|
+
const [messages, setMessages] = useState([])
|
|
13
|
+
const [input, setInput] = useState('')
|
|
14
|
+
|
|
15
|
+
const handleSendMessage = async () => {
|
|
16
|
+
// Add user message to UI
|
|
17
|
+
setMessages([...messages, { role: 'user', content: input }])
|
|
18
|
+
|
|
19
|
+
// Only send the newest message to the agent
|
|
20
|
+
const response = await memoryAgent.stream(input, {
|
|
21
|
+
resourceId: 'user_123',
|
|
22
|
+
threadId: 'conversation_456',
|
|
23
|
+
})
|
|
24
|
+
|
|
25
|
+
// Add agent response to UI
|
|
26
|
+
setMessages([...messages, { role: 'assistant', content: response }])
|
|
27
|
+
setInput('')
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
return (
|
|
31
|
+
<div>
|
|
32
|
+
{/* Display messages */}
|
|
33
|
+
<div>
|
|
34
|
+
{messages.map((msg, index) => (
|
|
35
|
+
<div key={index}>
|
|
36
|
+
<strong>{msg.role}:</strong> {msg.content}
|
|
37
|
+
</div>
|
|
38
|
+
))}
|
|
39
|
+
</div>
|
|
40
|
+
|
|
41
|
+
{/* Input for new messages */}
|
|
42
|
+
<input
|
|
43
|
+
value={input}
|
|
44
|
+
onChange={e => setInput(e.target.value)}
|
|
45
|
+
onKeyPress={e => e.key === 'Enter' && handleSendMessage()}
|
|
46
|
+
/>
|
|
47
|
+
<button onClick={handleSendMessage}>Send</button>
|
|
48
|
+
</div>
|
|
49
|
+
)
|
|
50
|
+
}
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
This example demonstrates a common pattern for handling memory in a frontend application:
|
|
54
|
+
|
|
55
|
+
1. Store the conversation messages in the UI state for display purposes
|
|
56
|
+
2. When sending a message to the agent, only send the newest message
|
|
57
|
+
3. Include the `resourceId` and `threadId` with each agent call
|
|
58
|
+
4. Let Mastra handle retrieving and injecting the conversation history
|
|
59
|
+
|
|
60
|
+
This approach ensures that your agent has access to the conversation history without duplicating messages in the context window.
|
|
61
|
+
|
|
62
|
+
In the next step, we'll explore semantic recall, which allows your agent to remember information from older conversations that are no longer in the recent history.
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Vector Store Configuration
|
|
2
|
+
|
|
3
|
+
In addition to the memory storage adapters, Mastra also provides vector store adapters useful for storing and retrieving vector embeddings. One of these is the `LibSQLVector` adapter, which provides a simple interface for storing and retrieving vector embeddings in a LibSQL vector database.
|
|
4
|
+
|
|
5
|
+
```typescript
|
|
6
|
+
import { Memory } from '@mastra/memory'
|
|
7
|
+
import { LibSQLStore, LibSQLVector } from '@mastra/libsql'
|
|
8
|
+
|
|
9
|
+
const memory = new Memory({
|
|
10
|
+
storage: new LibSQLStore({
|
|
11
|
+
id: 'learning-memory-storage',
|
|
12
|
+
url: 'file:../../memory.db', // relative path from the `.mastra/output` directory
|
|
13
|
+
}),
|
|
14
|
+
vector: new LibSQLVector({
|
|
15
|
+
id: 'learning-memory-vector',
|
|
16
|
+
url: 'file:../../vector.db', // relative path from the `.mastra/output` directory
|
|
17
|
+
}),
|
|
18
|
+
})
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
Mastra supports several vector store options, including:
|
|
22
|
+
|
|
23
|
+
- LibSQL
|
|
24
|
+
- Chroma
|
|
25
|
+
- Pinecone
|
|
26
|
+
- Qdrant
|
|
27
|
+
- Postgres (with pgvector)
|
|
28
|
+
|
|
29
|
+
The vector store is responsible for storing and retrieving the vector embeddings used for semantic search.
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# Configuring Semantic Recall
|
|
2
|
+
|
|
3
|
+
Let's update our agent with custom semantic recall settings:
|
|
4
|
+
|
|
5
|
+
```typescript
|
|
6
|
+
import { Agent } from '@mastra/core/agent'
|
|
7
|
+
import { Memory } from '@mastra/memory'
|
|
8
|
+
import { LibSQLStore, LibSQLVector } from '@mastra/libsql'
|
|
9
|
+
|
|
10
|
+
// Create a memory instance with semantic recall configuration
|
|
11
|
+
const memory = new Memory({
|
|
12
|
+
storage: new LibSQLStore({
|
|
13
|
+
id: 'learning-memory-storage',
|
|
14
|
+
url: 'file:../../memory.db', // relative path from the `.mastra/output` directory
|
|
15
|
+
}), // Storage for message history
|
|
16
|
+
vector: new LibSQLVector({
|
|
17
|
+
id: 'learning-memory-vector',
|
|
18
|
+
url: 'file:../../vector.db', // relative path from the `.mastra/output` directory
|
|
19
|
+
}), // Vector database for semantic search
|
|
20
|
+
embedder: 'openai/text-embedding-3-small', // Embedder for message embeddings
|
|
21
|
+
options: {
|
|
22
|
+
lastMessages: 20, // Include the last 20 messages in the context
|
|
23
|
+
semanticRecall: true, // Enable semantic recall with default settings
|
|
24
|
+
},
|
|
25
|
+
})
|
|
26
|
+
|
|
27
|
+
// Create an agent with the configured memory
|
|
28
|
+
export const memoryAgent = new Agent({
|
|
29
|
+
name: 'MemoryAgent',
|
|
30
|
+
instructions: `
|
|
31
|
+
You are a helpful assistant with advanced memory capabilities.
|
|
32
|
+
You can remember previous conversations and user preferences.
|
|
33
|
+
When a user shares information about themselves, acknowledge it and remember it for future reference.
|
|
34
|
+
If asked about something mentioned earlier in the conversation, recall it accurately.
|
|
35
|
+
You can also recall relevant information from older conversations when appropriate.
|
|
36
|
+
`,
|
|
37
|
+
model: 'openai/gpt-4.1-mini',
|
|
38
|
+
memory: memory,
|
|
39
|
+
})
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
For semantic recall to work, you need to have a **vector store** configured. You also need to have an **embedder** configured. You may use any compatible embedding model for this. In this example, we're using OpenAI's `openai/text-embedding-3-small` model.
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Advanced Configuration of Semantic Recall
|
|
2
|
+
|
|
3
|
+
We can configure semantic recall in more detail by setting options for the `semanticRecall` option:
|
|
4
|
+
|
|
5
|
+
```typescript
|
|
6
|
+
const memory = new Memory({
|
|
7
|
+
storage: new LibSQLStore({
|
|
8
|
+
id: 'learning-memory-storage',
|
|
9
|
+
url: 'file:../../memory.db', // relative path from the `.mastra/output` directory
|
|
10
|
+
}),
|
|
11
|
+
vector: new LibSQLVector({
|
|
12
|
+
url: 'file:../../vector.db', // relative path from the `.mastra/output` directory
|
|
13
|
+
}),
|
|
14
|
+
embedder: openai.embedding('text-embedding-3-small'),
|
|
15
|
+
options: {
|
|
16
|
+
semanticRecall: {
|
|
17
|
+
topK: 3,
|
|
18
|
+
messageRange: {
|
|
19
|
+
before: 2,
|
|
20
|
+
after: 1,
|
|
21
|
+
},
|
|
22
|
+
},
|
|
23
|
+
},
|
|
24
|
+
})
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
The `topK` parameter controls how many semantically similar messages are retrieved. A higher value will retrieve more messages, which can be helpful for complex topics but may also include less relevant information. The default value is `4`.
|
|
28
|
+
|
|
29
|
+
The `messageRange` parameter controls how much context is included with each match. This is important because the matching message alone might not provide enough context to understand the conversation. Including messages before and after the match helps the agent understand the context of the matched message.
|