@mastra/mcp-docs-server 1.0.0-beta.9 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.docs/organized/changelogs/%40internal%2Fchangeset-cli.md +3 -1
- package/.docs/organized/changelogs/%40internal%2Fexternal-types.md +3 -1
- package/.docs/organized/changelogs/%40internal%2Fplayground.md +60 -0
- package/.docs/organized/changelogs/%40internal%2Fstorage-test-utils.md +15 -15
- package/.docs/organized/changelogs/%40internal%2Ftypes-builder.md +3 -1
- package/.docs/organized/changelogs/%40mastra%2Fagent-builder.md +287 -287
- package/.docs/organized/changelogs/%40mastra%2Fai-sdk.md +302 -302
- package/.docs/organized/changelogs/%40mastra%2Fastra.md +53 -53
- package/.docs/organized/changelogs/%40mastra%2Fauth.md +38 -0
- package/.docs/organized/changelogs/%40mastra%2Fchroma.md +66 -66
- package/.docs/organized/changelogs/%40mastra%2Fclickhouse.md +522 -212
- package/.docs/organized/changelogs/%40mastra%2Fclient-js.md +239 -239
- package/.docs/organized/changelogs/%40mastra%2Fcloudflare-d1.md +439 -234
- package/.docs/organized/changelogs/%40mastra%2Fcloudflare.md +450 -211
- package/.docs/organized/changelogs/%40mastra%2Fcodemod.md +202 -0
- package/.docs/organized/changelogs/%40mastra%2Fconvex.md +448 -22
- package/.docs/organized/changelogs/%40mastra%2Fcore.md +348 -348
- package/.docs/organized/changelogs/%40mastra%2Fcouchbase.md +60 -60
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloud.md +287 -287
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloudflare.md +106 -106
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-netlify.md +90 -90
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-vercel.md +86 -86
- package/.docs/organized/changelogs/%40mastra%2Fdeployer.md +221 -221
- package/.docs/organized/changelogs/%40mastra%2Fduckdb.md +70 -0
- package/.docs/organized/changelogs/%40mastra%2Fdynamodb.md +403 -225
- package/.docs/organized/changelogs/%40mastra%2Felasticsearch.md +72 -0
- package/.docs/organized/changelogs/%40mastra%2Fevals.md +145 -145
- package/.docs/organized/changelogs/%40mastra%2Ffastembed.md +54 -0
- package/.docs/organized/changelogs/%40mastra%2Flance.md +456 -226
- package/.docs/organized/changelogs/%40mastra%2Flibsql.md +625 -229
- package/.docs/organized/changelogs/%40mastra%2Floggers.md +71 -71
- package/.docs/organized/changelogs/%40mastra%2Fmcp-docs-server.md +245 -245
- package/.docs/organized/changelogs/%40mastra%2Fmcp-registry-registry.md +28 -28
- package/.docs/organized/changelogs/%40mastra%2Fmcp.md +281 -281
- package/.docs/organized/changelogs/%40mastra%2Fmemory.md +354 -156
- package/.docs/organized/changelogs/%40mastra%2Fmongodb.md +545 -212
- package/.docs/organized/changelogs/%40mastra%2Fmssql.md +481 -202
- package/.docs/organized/changelogs/%40mastra%2Fopensearch.md +194 -194
- package/.docs/organized/changelogs/%40mastra%2Fpg.md +781 -235
- package/.docs/organized/changelogs/%40mastra%2Fpinecone.md +198 -198
- package/.docs/organized/changelogs/%40mastra%2Fplayground-ui.md +282 -282
- package/.docs/organized/changelogs/%40mastra%2Fqdrant.md +163 -163
- package/.docs/organized/changelogs/%40mastra%2Frag.md +310 -310
- package/.docs/organized/changelogs/%40mastra%2Freact.md +328 -237
- package/.docs/organized/changelogs/%40mastra%2Fs3vectors.md +64 -0
- package/.docs/organized/changelogs/%40mastra%2Fschema-compat.md +160 -0
- package/.docs/organized/changelogs/%40mastra%2Fserver.md +230 -230
- package/.docs/organized/changelogs/%40mastra%2Fturbopuffer.md +57 -57
- package/.docs/organized/changelogs/%40mastra%2Fupstash.md +479 -232
- package/.docs/organized/changelogs/%40mastra%2Fvectorize.md +53 -53
- package/.docs/organized/changelogs/%40mastra%2Fvoice-azure.md +45 -45
- package/.docs/organized/changelogs/%40mastra%2Fvoice-cloudflare.md +45 -45
- package/.docs/organized/changelogs/%40mastra%2Fvoice-deepgram.md +47 -47
- package/.docs/organized/changelogs/%40mastra%2Fvoice-elevenlabs.md +110 -110
- package/.docs/organized/changelogs/%40mastra%2Fvoice-gladia.md +15 -0
- package/.docs/organized/changelogs/%40mastra%2Fvoice-google-gemini-live.md +98 -0
- package/.docs/organized/changelogs/%40mastra%2Fvoice-google.md +54 -54
- package/.docs/organized/changelogs/%40mastra%2Fvoice-murf.md +46 -46
- package/.docs/organized/changelogs/%40mastra%2Fvoice-openai-realtime.md +93 -93
- package/.docs/organized/changelogs/%40mastra%2Fvoice-openai.md +47 -47
- package/.docs/organized/changelogs/%40mastra%2Fvoice-playai.md +45 -45
- package/.docs/organized/changelogs/%40mastra%2Fvoice-sarvam.md +45 -45
- package/.docs/organized/changelogs/%40mastra%2Fvoice-speechify.md +45 -45
- package/.docs/organized/changelogs/create-mastra.md +219 -219
- package/.docs/organized/changelogs/mastra.md +276 -276
- package/.docs/organized/code-examples/a2a.md +2 -2
- package/.docs/organized/code-examples/agent-v6.md +221 -0
- package/.docs/organized/code-examples/agui.md +4 -4
- package/.docs/organized/code-examples/ai-elements.md +3 -3
- package/.docs/organized/code-examples/ai-sdk-useChat.md +2 -2
- package/.docs/organized/code-examples/ai-sdk-v5.md +3 -3
- package/.docs/organized/code-examples/assistant-ui.md +5 -5
- package/.docs/organized/code-examples/bird-checker-with-express.md +1 -1
- package/.docs/organized/code-examples/bird-checker-with-nextjs-and-eval.md +2 -2
- package/.docs/organized/code-examples/bird-checker-with-nextjs.md +3 -3
- package/.docs/organized/code-examples/client-side-tools.md +4 -4
- package/.docs/organized/code-examples/crypto-chatbot.md +5 -5
- package/.docs/organized/code-examples/experimental-auth-weather-agent.md +1 -1
- package/.docs/organized/code-examples/fireworks-r1.md +2 -2
- package/.docs/organized/code-examples/heads-up-game.md +7 -7
- package/.docs/organized/code-examples/inngest.md +1075 -0
- package/.docs/organized/code-examples/mcp-configuration.md +1 -1
- package/.docs/organized/code-examples/mcp-server-adapters.md +2 -2
- package/.docs/organized/code-examples/memory-per-resource-example.md +3 -3
- package/.docs/organized/code-examples/memory-todo-agent.md +1 -1
- package/.docs/organized/code-examples/memory-with-context.md +1 -1
- package/.docs/organized/code-examples/memory-with-processors.md +1 -1
- package/.docs/organized/code-examples/openapi-spec-writer.md +3 -3
- package/.docs/organized/code-examples/quick-start.md +1 -5
- package/.docs/organized/code-examples/server-app-access.md +2 -2
- package/.docs/organized/code-examples/server-express-adapter.md +1 -1
- package/.docs/organized/code-examples/server-fastify-adapter.md +83 -0
- package/.docs/organized/code-examples/server-hono-adapter.md +2 -2
- package/.docs/organized/code-examples/server-koa-adapter.md +94 -0
- package/.docs/organized/code-examples/stock-price-tool.md +21 -2
- package/.docs/organized/code-examples/workflow-ai-recruiter.md +1 -1
- package/.docs/organized/code-examples/workflow-with-inline-steps.md +1 -1
- package/.docs/organized/code-examples/workflow-with-memory.md +1 -1
- package/.docs/organized/code-examples/workflow-with-separate-steps.md +1 -1
- package/.docs/organized/code-examples/workflow-with-suspend-resume.md +1 -1
- package/.docs/raw/agents/adding-voice.mdx +24 -6
- package/.docs/raw/agents/agent-approval.mdx +209 -12
- package/.docs/raw/agents/agent-memory.mdx +36 -32
- package/.docs/raw/agents/guardrails.mdx +105 -56
- package/.docs/raw/agents/network-approval.mdx +281 -0
- package/.docs/raw/agents/networks.mdx +69 -13
- package/.docs/raw/agents/overview.mdx +43 -25
- package/.docs/raw/agents/processors.mdx +234 -17
- package/.docs/raw/agents/structured-output.mdx +78 -8
- package/.docs/raw/agents/using-tools.mdx +67 -6
- package/.docs/raw/course/01-first-agent/07-creating-your-agent.md +1 -2
- package/.docs/raw/course/01-first-agent/12-connecting-tool-to-agent.md +1 -1
- package/.docs/raw/course/01-first-agent/16-adding-memory-to-agent.md +1 -2
- package/.docs/raw/course/02-agent-tools-mcp/05-updating-your-agent.md +1 -1
- package/.docs/raw/course/02-agent-tools-mcp/10-updating-agent-instructions-zapier.md +1 -1
- package/.docs/raw/course/02-agent-tools-mcp/16-updating-agent-instructions-github.md +1 -1
- package/.docs/raw/course/02-agent-tools-mcp/21-updating-agent-instructions-hackernews.md +1 -1
- package/.docs/raw/course/02-agent-tools-mcp/27-updating-agent-instructions-filesystem.md +1 -1
- package/.docs/raw/course/02-agent-tools-mcp/31-enhancing-memory-configuration.md +3 -3
- package/.docs/raw/course/03-agent-memory/04-creating-basic-memory-agent.md +1 -2
- package/.docs/raw/course/03-agent-memory/07-understanding-memory-threads.md +35 -0
- package/.docs/raw/course/03-agent-memory/08-configuring-conversation-history.md +1 -2
- package/.docs/raw/course/03-agent-memory/13-vector-store-configuration.md +1 -1
- package/.docs/raw/course/03-agent-memory/16-configuring-semantic-recall.md +4 -5
- package/.docs/raw/course/03-agent-memory/18-advanced-configuration-semantic-recall.md +1 -1
- package/.docs/raw/course/03-agent-memory/21-configuring-working-memory.md +3 -4
- package/.docs/raw/course/03-agent-memory/22-custom-working-memory-templates.md +3 -4
- package/.docs/raw/course/03-agent-memory/25-combining-memory-features.md +3 -4
- package/.docs/raw/course/03-agent-memory/27-creating-learning-assistant.md +3 -4
- package/.docs/raw/course/04-workflows/11-creating-an-ai-agent.md +2 -3
- package/.docs/raw/deployment/cloud-providers.mdx +22 -0
- package/.docs/raw/deployment/mastra-server.mdx +140 -0
- package/.docs/raw/deployment/monorepo.mdx +106 -42
- package/.docs/raw/deployment/overview.mdx +35 -48
- package/.docs/raw/deployment/web-framework.mdx +17 -19
- package/.docs/raw/deployment/workflow-runners.mdx +16 -0
- package/.docs/raw/evals/built-in-scorers.mdx +2 -0
- package/.docs/raw/evals/custom-scorers.mdx +60 -12
- package/.docs/raw/evals/overview.mdx +6 -6
- package/.docs/raw/evals/running-in-ci.mdx +4 -2
- package/.docs/raw/getting-started/manual-install.mdx +20 -20
- package/.docs/raw/getting-started/mcp-docs-server.mdx +59 -2
- package/.docs/raw/getting-started/project-structure.mdx +2 -2
- package/.docs/raw/getting-started/start.mdx +17 -1
- package/.docs/raw/getting-started/studio.mdx +6 -35
- package/.docs/raw/guides/agent-frameworks/ai-sdk.mdx +23 -33
- package/.docs/raw/guides/build-your-ui/ai-sdk-ui.mdx +1034 -80
- package/.docs/raw/guides/build-your-ui/assistant-ui.mdx +8 -8
- package/.docs/raw/guides/build-your-ui/copilotkit.mdx +32 -11
- package/.docs/raw/{deployment/cloud-providers → guides/deployment}/amazon-ec2.mdx +9 -9
- package/.docs/raw/{deployment/cloud-providers → guides/deployment}/aws-lambda.mdx +13 -16
- package/.docs/raw/{deployment/cloud-providers → guides/deployment}/azure-app-services.mdx +5 -7
- package/.docs/raw/{deployment/cloud-providers → guides/deployment}/cloudflare-deployer.mdx +8 -5
- package/.docs/raw/{deployment/cloud-providers → guides/deployment}/digital-ocean.mdx +18 -23
- package/.docs/raw/guides/deployment/index.mdx +32 -0
- package/.docs/raw/guides/deployment/inngest.mdx +673 -0
- package/.docs/raw/{deployment/cloud-providers → guides/deployment}/netlify-deployer.mdx +7 -3
- package/.docs/raw/{deployment/cloud-providers → guides/deployment}/vercel-deployer.mdx +8 -5
- package/.docs/raw/guides/getting-started/astro.mdx +292 -451
- package/.docs/raw/guides/getting-started/express.mdx +72 -153
- package/.docs/raw/guides/getting-started/hono.mdx +227 -0
- package/.docs/raw/guides/getting-started/next-js.mdx +173 -61
- package/.docs/raw/guides/getting-started/nuxt.mdx +505 -0
- package/.docs/raw/guides/getting-started/quickstart.mdx +5 -5
- package/.docs/raw/guides/getting-started/sveltekit.mdx +238 -409
- package/.docs/raw/guides/getting-started/vite-react.mdx +317 -147
- package/.docs/raw/guides/guide/ai-recruiter.mdx +10 -10
- package/.docs/raw/guides/guide/chef-michel.mdx +9 -11
- package/.docs/raw/guides/guide/notes-mcp-server.mdx +15 -15
- package/.docs/raw/guides/guide/research-assistant.mdx +20 -20
- package/.docs/raw/guides/guide/stock-agent.mdx +5 -5
- package/.docs/raw/guides/guide/web-search.mdx +38 -38
- package/.docs/raw/guides/guide/whatsapp-chat-bot.mdx +7 -7
- package/.docs/raw/guides/index.mdx +0 -1
- package/.docs/raw/guides/migrations/ai-sdk-v4-to-v5.mdx +2 -2
- package/.docs/raw/guides/migrations/upgrade-to-v1/agent.mdx +105 -4
- package/.docs/raw/guides/migrations/upgrade-to-v1/cli.mdx +15 -1
- package/.docs/raw/guides/migrations/upgrade-to-v1/client.mdx +170 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/deployment.mdx +42 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/mastra.mdx +0 -35
- package/.docs/raw/guides/migrations/upgrade-to-v1/memory.mdx +40 -3
- package/.docs/raw/guides/migrations/upgrade-to-v1/overview.mdx +17 -2
- package/.docs/raw/guides/migrations/upgrade-to-v1/processors.mdx +11 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/rag.mdx +47 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/storage.mdx +271 -25
- package/.docs/raw/guides/migrations/upgrade-to-v1/tracing.mdx +72 -17
- package/.docs/raw/guides/migrations/upgrade-to-v1/vectors.mdx +46 -1
- package/.docs/raw/guides/migrations/upgrade-to-v1/workflows.mdx +50 -7
- package/.docs/raw/guides/migrations/vnext-to-standard-apis.mdx +21 -23
- package/.docs/raw/index.mdx +2 -2
- package/.docs/raw/mastra-cloud/deployment.mdx +86 -0
- package/.docs/raw/mastra-cloud/observability.mdx +43 -0
- package/.docs/raw/mastra-cloud/overview.mdx +31 -0
- package/.docs/raw/mastra-cloud/setup.mdx +64 -0
- package/.docs/raw/mastra-cloud/studio.mdx +35 -0
- package/.docs/raw/mcp/overview.mdx +60 -25
- package/.docs/raw/mcp/publishing-mcp-server.mdx +7 -4
- package/.docs/raw/memory/memory-processors.mdx +17 -12
- package/.docs/raw/memory/message-history.mdx +72 -0
- package/.docs/raw/memory/overview.mdx +38 -76
- package/.docs/raw/memory/semantic-recall.mdx +65 -52
- package/.docs/raw/memory/storage.mdx +248 -0
- package/.docs/raw/memory/working-memory.mdx +24 -13
- package/.docs/raw/observability/logging.mdx +16 -15
- package/.docs/raw/observability/overview.mdx +27 -7
- package/.docs/raw/observability/tracing/bridges/otel.mdx +7 -4
- package/.docs/raw/observability/tracing/exporters/arize.mdx +61 -24
- package/.docs/raw/observability/tracing/exporters/braintrust.mdx +32 -22
- package/.docs/raw/observability/tracing/exporters/cloud.mdx +24 -5
- package/.docs/raw/observability/tracing/exporters/datadog.mdx +175 -0
- package/.docs/raw/observability/tracing/exporters/default.mdx +28 -7
- package/.docs/raw/observability/tracing/exporters/laminar.mdx +89 -0
- package/.docs/raw/observability/tracing/exporters/langfuse.mdx +31 -22
- package/.docs/raw/observability/tracing/exporters/langsmith.mdx +33 -3
- package/.docs/raw/observability/tracing/exporters/otel.mdx +194 -22
- package/.docs/raw/observability/tracing/exporters/posthog.mdx +32 -22
- package/.docs/raw/observability/tracing/exporters/sentry.mdx +198 -0
- package/.docs/raw/observability/tracing/overview.mdx +388 -108
- package/.docs/raw/observability/tracing/processors/sensitive-data-filter.mdx +27 -7
- package/.docs/raw/rag/chunking-and-embedding.mdx +22 -33
- package/.docs/raw/rag/graph-rag.mdx +223 -0
- package/.docs/raw/rag/overview.mdx +6 -3
- package/.docs/raw/rag/retrieval.mdx +53 -57
- package/.docs/raw/rag/vector-databases.mdx +55 -31
- package/.docs/raw/reference/agents/agent.mdx +17 -14
- package/.docs/raw/reference/agents/generate.mdx +172 -44
- package/.docs/raw/reference/agents/generateLegacy.mdx +5 -3
- package/.docs/raw/reference/agents/getDefaultGenerateOptions.mdx +5 -3
- package/.docs/raw/reference/agents/getDefaultOptions.mdx +5 -3
- package/.docs/raw/reference/agents/getDefaultStreamOptions.mdx +5 -3
- package/.docs/raw/reference/agents/getDescription.mdx +3 -1
- package/.docs/raw/reference/agents/getInstructions.mdx +5 -3
- package/.docs/raw/reference/agents/getLLM.mdx +5 -3
- package/.docs/raw/reference/agents/getMemory.mdx +5 -3
- package/.docs/raw/reference/agents/getModel.mdx +5 -3
- package/.docs/raw/reference/agents/getTools.mdx +4 -2
- package/.docs/raw/reference/agents/getVoice.mdx +4 -2
- package/.docs/raw/reference/agents/listAgents.mdx +4 -2
- package/.docs/raw/reference/agents/listScorers.mdx +5 -3
- package/.docs/raw/reference/agents/listTools.mdx +4 -2
- package/.docs/raw/reference/agents/listWorkflows.mdx +4 -2
- package/.docs/raw/reference/agents/network.mdx +113 -1
- package/.docs/raw/reference/ai-sdk/chat-route.mdx +6 -3
- package/.docs/raw/reference/ai-sdk/handle-chat-stream.mdx +4 -2
- package/.docs/raw/reference/ai-sdk/handle-network-stream.mdx +4 -2
- package/.docs/raw/reference/ai-sdk/handle-workflow-stream.mdx +5 -3
- package/.docs/raw/reference/ai-sdk/network-route.mdx +6 -3
- package/.docs/raw/reference/ai-sdk/to-ai-sdk-stream.mdx +10 -6
- package/.docs/raw/reference/ai-sdk/to-ai-sdk-v4-messages.mdx +130 -0
- package/.docs/raw/reference/ai-sdk/to-ai-sdk-v5-messages.mdx +110 -0
- package/.docs/raw/reference/ai-sdk/with-mastra.mdx +122 -0
- package/.docs/raw/reference/ai-sdk/workflow-route.mdx +7 -4
- package/.docs/raw/reference/auth/auth0.mdx +5 -3
- package/.docs/raw/reference/auth/clerk.mdx +5 -3
- package/.docs/raw/reference/auth/firebase.mdx +6 -5
- package/.docs/raw/reference/auth/jwt.mdx +5 -3
- package/.docs/raw/reference/auth/supabase.mdx +5 -3
- package/.docs/raw/reference/auth/workos.mdx +5 -3
- package/.docs/raw/reference/cli/create-mastra.mdx +12 -10
- package/.docs/raw/reference/cli/mastra.mdx +63 -15
- package/.docs/raw/reference/client-js/agents.mdx +77 -35
- package/.docs/raw/reference/client-js/error-handling.mdx +3 -3
- package/.docs/raw/reference/client-js/logs.mdx +2 -0
- package/.docs/raw/reference/client-js/mastra-client.mdx +4 -2
- package/.docs/raw/reference/client-js/memory.mdx +43 -1
- package/.docs/raw/reference/client-js/observability.mdx +2 -0
- package/.docs/raw/reference/client-js/telemetry.mdx +2 -0
- package/.docs/raw/reference/client-js/tools.mdx +2 -0
- package/.docs/raw/reference/client-js/vectors.mdx +2 -0
- package/.docs/raw/reference/client-js/workflows.mdx +47 -3
- package/.docs/raw/reference/configuration.mdx +761 -0
- package/.docs/raw/reference/core/addGateway.mdx +2 -0
- package/.docs/raw/reference/core/getAgent.mdx +3 -1
- package/.docs/raw/reference/core/getAgentById.mdx +3 -1
- package/.docs/raw/reference/core/getDeployer.mdx +3 -1
- package/.docs/raw/reference/core/getGateway.mdx +2 -0
- package/.docs/raw/reference/core/getGatewayById.mdx +2 -0
- package/.docs/raw/reference/core/getLogger.mdx +3 -1
- package/.docs/raw/reference/core/getMCPServer.mdx +3 -1
- package/.docs/raw/reference/core/getMCPServerById.mdx +3 -1
- package/.docs/raw/reference/core/getMemory.mdx +7 -3
- package/.docs/raw/reference/core/getScorer.mdx +2 -0
- package/.docs/raw/reference/core/getScorerById.mdx +2 -0
- package/.docs/raw/reference/core/getServer.mdx +6 -4
- package/.docs/raw/reference/core/getStorage.mdx +5 -3
- package/.docs/raw/reference/core/getStoredAgentById.mdx +6 -4
- package/.docs/raw/reference/core/getTelemetry.mdx +3 -1
- package/.docs/raw/reference/core/getVector.mdx +3 -1
- package/.docs/raw/reference/core/getWorkflow.mdx +3 -1
- package/.docs/raw/reference/core/listAgents.mdx +3 -1
- package/.docs/raw/reference/core/listGateways.mdx +2 -0
- package/.docs/raw/reference/core/listLogs.mdx +3 -1
- package/.docs/raw/reference/core/listLogsByRunId.mdx +3 -1
- package/.docs/raw/reference/core/listMCPServers.mdx +3 -1
- package/.docs/raw/reference/core/listMemory.mdx +8 -4
- package/.docs/raw/reference/core/listScorers.mdx +2 -0
- package/.docs/raw/reference/core/listStoredAgents.mdx +7 -5
- package/.docs/raw/reference/core/listVectors.mdx +3 -1
- package/.docs/raw/reference/core/listWorkflows.mdx +3 -1
- package/.docs/raw/reference/core/mastra-class.mdx +27 -20
- package/.docs/raw/reference/core/mastra-model-gateway.mdx +2 -0
- package/.docs/raw/reference/core/setLogger.mdx +3 -1
- package/.docs/raw/reference/core/setStorage.mdx +6 -4
- package/.docs/raw/reference/deployer/cloudflare.mdx +22 -53
- package/.docs/raw/reference/deployer/deployer.mdx +2 -1
- package/.docs/raw/reference/deployer/netlify.mdx +4 -1
- package/.docs/raw/reference/deployer/vercel.mdx +5 -4
- package/.docs/raw/reference/evals/answer-relevancy.mdx +4 -1
- package/.docs/raw/reference/evals/answer-similarity.mdx +4 -1
- package/.docs/raw/reference/evals/bias.mdx +4 -1
- package/.docs/raw/reference/evals/completeness.mdx +4 -1
- package/.docs/raw/reference/evals/content-similarity.mdx +4 -1
- package/.docs/raw/reference/evals/context-precision.mdx +4 -1
- package/.docs/raw/reference/evals/context-relevance.mdx +2 -0
- package/.docs/raw/reference/evals/create-scorer.mdx +11 -3
- package/.docs/raw/reference/evals/faithfulness.mdx +4 -1
- package/.docs/raw/reference/evals/hallucination.mdx +4 -1
- package/.docs/raw/reference/evals/keyword-coverage.mdx +4 -1
- package/.docs/raw/reference/evals/mastra-scorer.mdx +2 -0
- package/.docs/raw/reference/evals/noise-sensitivity.mdx +2 -0
- package/.docs/raw/reference/evals/prompt-alignment.mdx +9 -7
- package/.docs/raw/reference/evals/run-evals.mdx +3 -1
- package/.docs/raw/reference/evals/scorer-utils.mdx +3 -0
- package/.docs/raw/reference/evals/textual-difference.mdx +4 -1
- package/.docs/raw/reference/evals/tone-consistency.mdx +4 -1
- package/.docs/raw/reference/evals/tool-call-accuracy.mdx +25 -23
- package/.docs/raw/reference/evals/toxicity.mdx +4 -1
- package/.docs/raw/reference/index.mdx +2 -1
- package/.docs/raw/reference/logging/pino-logger.mdx +10 -8
- package/.docs/raw/reference/memory/clone-utilities.mdx +345 -0
- package/.docs/raw/reference/memory/cloneThread.mdx +237 -0
- package/.docs/raw/reference/memory/createThread.mdx +6 -4
- package/.docs/raw/reference/memory/deleteMessages.mdx +4 -2
- package/.docs/raw/reference/memory/getThreadById.mdx +3 -1
- package/.docs/raw/reference/memory/listThreads.mdx +187 -0
- package/.docs/raw/reference/memory/memory-class.mdx +27 -20
- package/.docs/raw/reference/memory/recall.mdx +6 -4
- package/.docs/raw/reference/observability/tracing/bridges/otel.mdx +6 -2
- package/.docs/raw/reference/observability/tracing/configuration.mdx +51 -0
- package/.docs/raw/reference/observability/tracing/exporters/arize.mdx +25 -6
- package/.docs/raw/reference/observability/tracing/exporters/braintrust.mdx +23 -2
- package/.docs/raw/reference/observability/tracing/exporters/cloud-exporter.mdx +10 -0
- package/.docs/raw/reference/observability/tracing/exporters/console-exporter.mdx +3 -0
- package/.docs/raw/reference/observability/tracing/exporters/datadog.mdx +172 -0
- package/.docs/raw/reference/observability/tracing/exporters/default-exporter.mdx +10 -0
- package/.docs/raw/reference/observability/tracing/exporters/laminar.mdx +139 -0
- package/.docs/raw/reference/observability/tracing/exporters/langfuse.mdx +26 -4
- package/.docs/raw/reference/observability/tracing/exporters/langsmith.mdx +10 -0
- package/.docs/raw/reference/observability/tracing/exporters/otel.mdx +51 -34
- package/.docs/raw/reference/observability/tracing/exporters/posthog.mdx +25 -4
- package/.docs/raw/reference/observability/tracing/exporters/sentry.mdx +224 -0
- package/.docs/raw/reference/observability/tracing/instances.mdx +2 -0
- package/.docs/raw/reference/observability/tracing/interfaces.mdx +20 -0
- package/.docs/raw/reference/observability/tracing/processors/sensitive-data-filter.mdx +2 -0
- package/.docs/raw/reference/observability/tracing/spans.mdx +2 -0
- package/.docs/raw/reference/processors/batch-parts-processor.mdx +4 -2
- package/.docs/raw/reference/processors/language-detector.mdx +6 -3
- package/.docs/raw/reference/processors/message-history-processor.mdx +5 -2
- package/.docs/raw/reference/processors/moderation-processor.mdx +6 -4
- package/.docs/raw/reference/processors/pii-detector.mdx +6 -4
- package/.docs/raw/reference/processors/processor-interface.mdx +326 -23
- package/.docs/raw/reference/processors/prompt-injection-detector.mdx +5 -3
- package/.docs/raw/reference/processors/semantic-recall-processor.mdx +7 -2
- package/.docs/raw/reference/processors/system-prompt-scrubber.mdx +5 -3
- package/.docs/raw/reference/processors/token-limiter-processor.mdx +62 -19
- package/.docs/raw/reference/processors/tool-call-filter.mdx +5 -3
- package/.docs/raw/reference/processors/unicode-normalizer.mdx +6 -3
- package/.docs/raw/reference/processors/working-memory-processor.mdx +6 -3
- package/.docs/raw/reference/rag/chunk.mdx +7 -6
- package/.docs/raw/reference/rag/database-config.mdx +8 -6
- package/.docs/raw/reference/rag/document.mdx +2 -0
- package/.docs/raw/reference/rag/embeddings.mdx +2 -0
- package/.docs/raw/reference/rag/extract-params.mdx +57 -3
- package/.docs/raw/reference/rag/graph-rag.mdx +2 -0
- package/.docs/raw/reference/rag/metadata-filters.mdx +27 -7
- package/.docs/raw/reference/rag/rerank.mdx +2 -0
- package/.docs/raw/reference/rag/rerankWithScorer.mdx +2 -0
- package/.docs/raw/reference/server/create-route.mdx +34 -18
- package/.docs/raw/reference/server/express-adapter.mdx +27 -51
- package/.docs/raw/reference/server/fastify-adapter.mdx +130 -0
- package/.docs/raw/reference/server/hono-adapter.mdx +27 -51
- package/.docs/raw/reference/server/koa-adapter.mdx +129 -0
- package/.docs/raw/reference/server/mastra-server.mdx +52 -34
- package/.docs/raw/reference/server/routes.mdx +73 -10
- package/.docs/raw/reference/storage/cloudflare-d1.mdx +10 -5
- package/.docs/raw/reference/storage/cloudflare.mdx +12 -2
- package/.docs/raw/reference/storage/composite.mdx +245 -0
- package/.docs/raw/reference/storage/convex.mdx +8 -6
- package/.docs/raw/reference/storage/dynamodb.mdx +134 -8
- package/.docs/raw/reference/storage/lance.mdx +9 -5
- package/.docs/raw/reference/storage/libsql.mdx +76 -54
- package/.docs/raw/reference/storage/mongodb.mdx +115 -16
- package/.docs/raw/reference/storage/mssql.mdx +11 -6
- package/.docs/raw/{server-db/storage.mdx → reference/storage/overview.mdx} +15 -111
- package/.docs/raw/reference/storage/postgresql.mdx +228 -83
- package/.docs/raw/reference/storage/upstash.mdx +78 -2
- package/.docs/raw/reference/streaming/ChunkType.mdx +31 -3
- package/.docs/raw/reference/streaming/agents/MastraModelOutput.mdx +67 -6
- package/.docs/raw/reference/streaming/agents/stream.mdx +48 -51
- package/.docs/raw/reference/streaming/agents/streamLegacy.mdx +5 -3
- package/.docs/raw/reference/streaming/workflows/observeStream.mdx +3 -1
- package/.docs/raw/reference/streaming/workflows/resumeStream.mdx +3 -1
- package/.docs/raw/reference/streaming/workflows/stream.mdx +37 -22
- package/.docs/raw/reference/streaming/workflows/timeTravelStream.mdx +6 -4
- package/.docs/raw/reference/templates/overview.mdx +3 -2
- package/.docs/raw/reference/tools/client.mdx +3 -0
- package/.docs/raw/reference/tools/create-tool.mdx +127 -5
- package/.docs/raw/reference/tools/document-chunker-tool.mdx +2 -0
- package/.docs/raw/reference/tools/graph-rag-tool.mdx +40 -3
- package/.docs/raw/reference/tools/mcp-client.mdx +110 -1
- package/.docs/raw/reference/tools/mcp-server.mdx +278 -24
- package/.docs/raw/reference/tools/vector-query-tool.mdx +68 -4
- package/.docs/raw/reference/vectors/astra.mdx +5 -3
- package/.docs/raw/reference/vectors/chroma.mdx +5 -3
- package/.docs/raw/reference/vectors/convex.mdx +14 -12
- package/.docs/raw/reference/vectors/couchbase.mdx +7 -5
- package/.docs/raw/reference/vectors/duckdb.mdx +12 -10
- package/.docs/raw/reference/vectors/elasticsearch.mdx +12 -4
- package/.docs/raw/reference/vectors/lance.mdx +6 -4
- package/.docs/raw/reference/vectors/libsql.mdx +66 -13
- package/.docs/raw/reference/vectors/mongodb.mdx +90 -10
- package/.docs/raw/reference/vectors/opensearch.mdx +30 -3
- package/.docs/raw/reference/vectors/pg.mdx +58 -6
- package/.docs/raw/reference/vectors/pinecone.mdx +23 -8
- package/.docs/raw/reference/vectors/qdrant.mdx +148 -4
- package/.docs/raw/reference/vectors/s3vectors.mdx +8 -6
- package/.docs/raw/reference/vectors/turbopuffer.mdx +6 -4
- package/.docs/raw/reference/vectors/upstash.mdx +60 -6
- package/.docs/raw/reference/vectors/vectorize.mdx +5 -3
- package/.docs/raw/reference/voice/azure.mdx +2 -0
- package/.docs/raw/reference/voice/cloudflare.mdx +2 -0
- package/.docs/raw/reference/voice/composite-voice.mdx +4 -0
- package/.docs/raw/reference/voice/deepgram.mdx +2 -0
- package/.docs/raw/reference/voice/elevenlabs.mdx +2 -0
- package/.docs/raw/reference/voice/google-gemini-live.mdx +3 -0
- package/.docs/raw/reference/voice/google.mdx +2 -0
- package/.docs/raw/reference/voice/mastra-voice.mdx +2 -0
- package/.docs/raw/reference/voice/murf.mdx +2 -0
- package/.docs/raw/reference/voice/openai-realtime.mdx +3 -0
- package/.docs/raw/reference/voice/openai.mdx +2 -0
- package/.docs/raw/reference/voice/playai.mdx +2 -0
- package/.docs/raw/reference/voice/sarvam.mdx +2 -0
- package/.docs/raw/reference/voice/speechify.mdx +2 -0
- package/.docs/raw/reference/voice/voice.addInstructions.mdx +3 -0
- package/.docs/raw/reference/voice/voice.addTools.mdx +3 -0
- package/.docs/raw/reference/voice/voice.answer.mdx +4 -0
- package/.docs/raw/reference/voice/voice.close.mdx +3 -0
- package/.docs/raw/reference/voice/voice.connect.mdx +5 -1
- package/.docs/raw/reference/voice/voice.events.mdx +2 -0
- package/.docs/raw/reference/voice/voice.getSpeakers.mdx +3 -0
- package/.docs/raw/reference/voice/voice.listen.mdx +6 -0
- package/.docs/raw/reference/voice/voice.off.mdx +2 -0
- package/.docs/raw/reference/voice/voice.on.mdx +5 -1
- package/.docs/raw/reference/voice/voice.send.mdx +4 -0
- package/.docs/raw/reference/voice/voice.speak.mdx +6 -0
- package/.docs/raw/reference/voice/voice.updateConfig.mdx +2 -0
- package/.docs/raw/reference/workflows/run-methods/cancel.mdx +55 -5
- package/.docs/raw/reference/workflows/run-methods/restart.mdx +3 -3
- package/.docs/raw/reference/workflows/run-methods/resume.mdx +6 -4
- package/.docs/raw/reference/workflows/run-methods/start.mdx +7 -5
- package/.docs/raw/reference/workflows/run-methods/startAsync.mdx +145 -0
- package/.docs/raw/reference/workflows/run-methods/timeTravel.mdx +10 -8
- package/.docs/raw/reference/workflows/run.mdx +11 -3
- package/.docs/raw/reference/workflows/step.mdx +56 -3
- package/.docs/raw/reference/workflows/workflow-methods/branch.mdx +3 -1
- package/.docs/raw/reference/workflows/workflow-methods/commit.mdx +3 -1
- package/.docs/raw/reference/workflows/workflow-methods/create-run.mdx +39 -2
- package/.docs/raw/reference/workflows/workflow-methods/dountil.mdx +3 -1
- package/.docs/raw/reference/workflows/workflow-methods/dowhile.mdx +3 -1
- package/.docs/raw/reference/workflows/workflow-methods/foreach.mdx +71 -4
- package/.docs/raw/reference/workflows/workflow-methods/map.mdx +9 -7
- package/.docs/raw/reference/workflows/workflow-methods/parallel.mdx +3 -1
- package/.docs/raw/reference/workflows/workflow-methods/sleep.mdx +4 -6
- package/.docs/raw/reference/workflows/workflow-methods/sleepUntil.mdx +4 -6
- package/.docs/raw/reference/workflows/workflow-methods/then.mdx +3 -1
- package/.docs/raw/reference/workflows/workflow.mdx +193 -2
- package/.docs/raw/{auth → server/auth}/auth0.mdx +40 -21
- package/.docs/raw/{auth → server/auth}/clerk.mdx +37 -16
- package/.docs/raw/{auth → server/auth}/firebase.mdx +47 -25
- package/.docs/raw/{auth → server/auth}/index.mdx +8 -6
- package/.docs/raw/{auth → server/auth}/jwt.mdx +22 -10
- package/.docs/raw/{auth → server/auth}/supabase.mdx +45 -25
- package/.docs/raw/{auth → server/auth}/workos.mdx +39 -20
- package/.docs/raw/{server-db → server}/custom-adapters.mdx +40 -24
- package/.docs/raw/{server-db → server}/custom-api-routes.mdx +6 -6
- package/.docs/raw/{server-db → server}/mastra-client.mdx +35 -38
- package/.docs/raw/server/mastra-server.mdx +86 -0
- package/.docs/raw/{server-db → server}/middleware.mdx +11 -9
- package/.docs/raw/{server-db → server}/request-context.mdx +85 -43
- package/.docs/raw/{server-db → server}/server-adapters.mdx +154 -33
- package/.docs/raw/streaming/events.mdx +16 -7
- package/.docs/raw/streaming/overview.mdx +30 -17
- package/.docs/raw/streaming/tool-streaming.mdx +8 -6
- package/.docs/raw/streaming/workflow-streaming.mdx +8 -8
- package/.docs/raw/tools-mcp/advanced-usage.mdx +4 -2
- package/.docs/raw/tools-mcp/mcp-overview.mdx +46 -12
- package/.docs/raw/tools-mcp/overview.mdx +14 -13
- package/.docs/raw/voice/overview.mdx +17 -2
- package/.docs/raw/voice/speech-to-speech.mdx +5 -0
- package/.docs/raw/voice/speech-to-text.mdx +4 -0
- package/.docs/raw/voice/text-to-speech.mdx +3 -0
- package/.docs/raw/workflows/agents-and-tools.mdx +70 -21
- package/.docs/raw/workflows/control-flow.mdx +369 -34
- package/.docs/raw/workflows/error-handling.mdx +192 -18
- package/.docs/raw/workflows/human-in-the-loop.mdx +8 -7
- package/.docs/raw/workflows/input-data-mapping.mdx +9 -7
- package/.docs/raw/workflows/overview.mdx +80 -34
- package/.docs/raw/workflows/snapshots.mdx +19 -45
- package/.docs/raw/workflows/suspend-and-resume.mdx +14 -14
- package/.docs/raw/workflows/time-travel.mdx +25 -21
- package/.docs/raw/workflows/workflow-state.mdx +7 -8
- package/CHANGELOG.md +260 -0
- package/README.md +36 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/logger.d.ts +3 -0
- package/dist/logger.d.ts.map +1 -1
- package/dist/stdio.js +746 -49
- package/dist/tools/course.d.ts.map +1 -1
- package/dist/tools/embedded-docs.d.ts +276 -0
- package/dist/tools/embedded-docs.d.ts.map +1 -0
- package/package.json +9 -8
- package/.docs/organized/changelogs/%40internal%2Fai-sdk-v4.md +0 -1
- package/.docs/raw/deployment/building-mastra.mdx +0 -73
- package/.docs/raw/deployment/cloud-providers/index.mdx +0 -55
- package/.docs/raw/deployment/mastra-cloud/dashboard.mdx +0 -100
- package/.docs/raw/deployment/mastra-cloud/observability.mdx +0 -53
- package/.docs/raw/deployment/mastra-cloud/overview.mdx +0 -65
- package/.docs/raw/deployment/mastra-cloud/setting-up.mdx +0 -105
- package/.docs/raw/memory/conversation-history.mdx +0 -24
- package/.docs/raw/memory/storage/memory-with-libsql.mdx +0 -140
- package/.docs/raw/memory/storage/memory-with-mongodb.mdx +0 -150
- package/.docs/raw/memory/storage/memory-with-pg.mdx +0 -138
- package/.docs/raw/memory/storage/memory-with-upstash.mdx +0 -146
- package/.docs/raw/memory/threads-and-resources.mdx +0 -95
- package/.docs/raw/reference/core/setTelemetry.mdx +0 -36
- package/.docs/raw/reference/memory/listThreadsByResourceId.mdx +0 -110
- package/.docs/raw/reference/memory/query.mdx +0 -189
- package/.docs/raw/reference/workflows/workflow-methods/sendEvent.mdx +0 -70
- package/.docs/raw/reference/workflows/workflow-methods/waitForEvent.mdx +0 -66
- package/.docs/raw/server-db/mastra-server.mdx +0 -97
- package/.docs/raw/workflows/inngest-workflow.mdx +0 -363
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "Streaming Overview | Streaming"
|
|
3
3
|
description: "Streaming in Mastra enables real-time, incremental responses from both agents and workflows, providing immediate feedback as AI-generated content is produced."
|
|
4
|
+
packages:
|
|
5
|
+
- "@mastra/ai-sdk"
|
|
4
6
|
---
|
|
5
7
|
|
|
6
8
|
# Streaming Overview
|
|
@@ -11,7 +13,7 @@ Mastra supports real-time, incremental responses from agents and workflows, allo
|
|
|
11
13
|
|
|
12
14
|
Mastra's streaming API adapts based on your model version:
|
|
13
15
|
|
|
14
|
-
- **`.stream()`**: For V2 models, supports **AI SDK v5** (`LanguageModelV2`).
|
|
16
|
+
- **`.stream()`**: For V2 models, supports **AI SDK v5** and later (`LanguageModelV2`).
|
|
15
17
|
- **`.streamLegacy()`**: For V1 models, supports **AI SDK v4** (`LanguageModelV1`).
|
|
16
18
|
|
|
17
19
|
## Streaming with agents
|
|
@@ -22,7 +24,7 @@ You can pass a single string for simple prompts, an array of strings when provid
|
|
|
22
24
|
|
|
23
25
|
A `textStream` breaks the response into chunks as it's generated, allowing output to stream progressively instead of arriving all at once. Iterate over the `textStream` using a `for await` loop to inspect each stream chunk.
|
|
24
26
|
|
|
25
|
-
```typescript {3,7}
|
|
27
|
+
```typescript {3,7}
|
|
26
28
|
const testAgent = mastra.getAgent("testAgent");
|
|
27
29
|
|
|
28
30
|
const stream = await testAgent.stream([
|
|
@@ -34,7 +36,11 @@ for await (const chunk of stream.textStream) {
|
|
|
34
36
|
}
|
|
35
37
|
```
|
|
36
38
|
|
|
37
|
-
|
|
39
|
+
:::info
|
|
40
|
+
|
|
41
|
+
Visit [Agent.stream()](/reference/v1/streaming/agents/stream) for more information.
|
|
42
|
+
|
|
43
|
+
:::
|
|
38
44
|
|
|
39
45
|
### Output from `Agent.stream()`
|
|
40
46
|
|
|
@@ -56,13 +62,13 @@ An agent stream provides access to various response properties:
|
|
|
56
62
|
- **`stream.finishReason`**: The reason the agent stopped streaming.
|
|
57
63
|
- **`stream.usage`**: Token usage information.
|
|
58
64
|
|
|
59
|
-
### AI SDK v5 Compatibility
|
|
65
|
+
### AI SDK v5+ Compatibility
|
|
60
66
|
|
|
61
|
-
AI SDK v5 uses `LanguageModelV2` for the model providers. If you are getting an error that you are using an AI SDK v4 model you will need to upgrade your model package to the next major version.
|
|
67
|
+
AI SDK v5 (and later) uses `LanguageModelV2` for the model providers. If you are getting an error that you are using an AI SDK v4 model you will need to upgrade your model package to the next major version.
|
|
62
68
|
|
|
63
|
-
For integration with AI SDK v5
|
|
69
|
+
For integration with AI SDK v5+, use the `toAISdkV5Stream()` utility from `@mastra/ai-sdk` to convert Mastra streams to AI SDK-compatible format:
|
|
64
70
|
|
|
65
|
-
```typescript {2,9-12}
|
|
71
|
+
```typescript {2,9-12}
|
|
66
72
|
import { toAISdkV5Stream } from "@mastra/ai-sdk";
|
|
67
73
|
|
|
68
74
|
const testAgent = mastra.getAgent("testAgent");
|
|
@@ -71,15 +77,15 @@ const stream = await testAgent.stream([
|
|
|
71
77
|
{ role: "user", content: "Help me organize my day" },
|
|
72
78
|
]);
|
|
73
79
|
|
|
74
|
-
// Convert to AI SDK v5 compatible stream
|
|
80
|
+
// Convert to AI SDK v5+ compatible stream
|
|
75
81
|
const aiSDKStream = toAISdkV5Stream(stream, { from: "agent" });
|
|
76
82
|
|
|
77
|
-
// Use with AI SDK v5 methods
|
|
83
|
+
// Use with AI SDK v5+ methods
|
|
78
84
|
```
|
|
79
85
|
|
|
80
|
-
For converting messages to AI SDK v5 format, use the `toAISdkV5Messages()` utility from `@mastra/ai-sdk/ui`:
|
|
86
|
+
For converting messages to AI SDK v5+ format, use the `toAISdkV5Messages()` utility from `@mastra/ai-sdk/ui`:
|
|
81
87
|
|
|
82
|
-
```typescript {1,4}
|
|
88
|
+
```typescript {1,4}
|
|
83
89
|
import { toAISdkV5Messages } from "@mastra/ai-sdk/ui";
|
|
84
90
|
|
|
85
91
|
const messages = [{ role: "user", content: "Hello" }];
|
|
@@ -92,7 +98,7 @@ The `network()` method enables multi-agent collaboration by executing a network
|
|
|
92
98
|
|
|
93
99
|
> **Note**: This method is experimental and requires memory to be configured on the agent.
|
|
94
100
|
|
|
95
|
-
```typescript {3,5-7}
|
|
101
|
+
```typescript {3,5-7}
|
|
96
102
|
const testAgent = mastra.getAgent("testAgent");
|
|
97
103
|
|
|
98
104
|
const networkStream = await testAgent.network("Help me organize my day");
|
|
@@ -102,7 +108,11 @@ for await (const chunk of networkStream) {
|
|
|
102
108
|
}
|
|
103
109
|
```
|
|
104
110
|
|
|
105
|
-
|
|
111
|
+
:::info
|
|
112
|
+
|
|
113
|
+
Visit [Agent.network()](/reference/v1/agents/network) for more information.
|
|
114
|
+
|
|
115
|
+
:::
|
|
106
116
|
|
|
107
117
|
#### Network stream properties
|
|
108
118
|
|
|
@@ -112,7 +122,7 @@ The network stream provides access to execution information:
|
|
|
112
122
|
- **`networkStream.result`**: Promise resolving to the complete execution results
|
|
113
123
|
- **`networkStream.usage`**: Promise resolving to token usage information
|
|
114
124
|
|
|
115
|
-
```typescript {9-11}
|
|
125
|
+
```typescript {9-11}
|
|
116
126
|
const testAgent = mastra.getAgent("testAgent");
|
|
117
127
|
|
|
118
128
|
const networkStream = await testAgent.network(
|
|
@@ -136,7 +146,7 @@ Streaming from a workflow returns a sequence of structured events describing the
|
|
|
136
146
|
|
|
137
147
|
The `stream()` method returns a `ReadableStream` of events directly.
|
|
138
148
|
|
|
139
|
-
```typescript {3,9}
|
|
149
|
+
```typescript {3,9}
|
|
140
150
|
const run = await testWorkflow.createRun();
|
|
141
151
|
|
|
142
152
|
const stream = await run.stream({
|
|
@@ -150,14 +160,17 @@ for await (const chunk of stream) {
|
|
|
150
160
|
}
|
|
151
161
|
```
|
|
152
162
|
|
|
153
|
-
|
|
163
|
+
:::info
|
|
164
|
+
|
|
165
|
+
Visit [Run.stream()](/reference/v1/streaming/workflows/stream) for more information.
|
|
166
|
+
|
|
167
|
+
:::
|
|
154
168
|
|
|
155
169
|
### Output from `Run.stream()`
|
|
156
170
|
|
|
157
171
|
The event structure includes `runId` and `from` at the top level, making it easier to identify and track workflow runs without digging into the payload.
|
|
158
172
|
|
|
159
173
|
```typescript
|
|
160
|
-
// ...
|
|
161
174
|
{
|
|
162
175
|
type: 'workflow-start',
|
|
163
176
|
runId: '1eeaf01a-d2bf-4e3f-8d1b-027795ccd3df',
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "Tool streaming | Streaming"
|
|
3
3
|
description: "Learn how to use tool streaming in Mastra, including handling tool calls, tool results, and tool execution events during streaming."
|
|
4
|
+
packages:
|
|
5
|
+
- "@mastra/core"
|
|
4
6
|
---
|
|
5
7
|
|
|
6
8
|
# Tool streaming
|
|
@@ -18,7 +20,7 @@ By combining writable tool streams with agent streaming, you gain fine grained c
|
|
|
18
20
|
|
|
19
21
|
Agent streaming can be combined with tool calls, allowing tool outputs to be written directly into the agent’s streaming response. This makes it possible to surface tool activity as part of the overall interaction.
|
|
20
22
|
|
|
21
|
-
```typescript {2,9}
|
|
23
|
+
```typescript {2,9}
|
|
22
24
|
import { Agent } from "@mastra/core/agent";
|
|
23
25
|
import { testTool } from "../tools/test-tool";
|
|
24
26
|
|
|
@@ -41,7 +43,7 @@ You must `await` the call to `writer.write()` or else you will lock the stream a
|
|
|
41
43
|
|
|
42
44
|
:::
|
|
43
45
|
|
|
44
|
-
```typescript {4,7,14}
|
|
46
|
+
```typescript {4,7,14}
|
|
45
47
|
import { createTool } from "@mastra/core/tools";
|
|
46
48
|
|
|
47
49
|
export const testTool = createTool({
|
|
@@ -70,7 +72,7 @@ export const testTool = createTool({
|
|
|
70
72
|
You can also use `writer.custom()` if you want to emit top level stream chunks, This useful and relevant when
|
|
71
73
|
integrating with UI Frameworks
|
|
72
74
|
|
|
73
|
-
```typescript {4,7,14}
|
|
75
|
+
```typescript {4,7,14}
|
|
74
76
|
import { createTool } from "@mastra/core/tools";
|
|
75
77
|
|
|
76
78
|
export const testTool = createTool({
|
|
@@ -100,7 +102,7 @@ export const testTool = createTool({
|
|
|
100
102
|
|
|
101
103
|
Events written to the stream are included in the emitted chunks. These chunks can be inspected to access any custom fields, such as event types, intermediate values, or tool-specific data.
|
|
102
104
|
|
|
103
|
-
```typescript
|
|
105
|
+
```typescript
|
|
104
106
|
const stream = await testAgent.stream([
|
|
105
107
|
"What is the weather in London?",
|
|
106
108
|
"Use the testTool",
|
|
@@ -119,7 +121,7 @@ Tools support lifecycle hooks that allow you to monitor different stages of tool
|
|
|
119
121
|
|
|
120
122
|
### Example: Using onInputAvailable and onOutput
|
|
121
123
|
|
|
122
|
-
```typescript
|
|
124
|
+
```typescript
|
|
123
125
|
import { createTool } from "@mastra/core/tools";
|
|
124
126
|
import { z } from "zod";
|
|
125
127
|
|
|
@@ -161,7 +163,7 @@ For detailed documentation on all lifecycle hooks, see the [createTool() referen
|
|
|
161
163
|
|
|
162
164
|
Pipe an agent's `fullStream` to the tool's `writer`. This streams partial output, and Mastra automatically aggregates the agent's usage into the tool run.
|
|
163
165
|
|
|
164
|
-
```typescript
|
|
166
|
+
```typescript
|
|
165
167
|
import { createTool } from "@mastra/core/tools";
|
|
166
168
|
import { z } from "zod";
|
|
167
169
|
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "Workflow streaming | Streaming"
|
|
3
3
|
description: "Learn how to use workflow streaming in Mastra, including handling workflow execution events, step streaming, and workflow integration with agents and tools."
|
|
4
|
+
packages:
|
|
5
|
+
- "@mastra/core"
|
|
4
6
|
---
|
|
5
7
|
|
|
6
8
|
# Workflow streaming
|
|
@@ -24,13 +26,12 @@ You must `await` the call to `writer.write(...)` or else you will lock the strea
|
|
|
24
26
|
|
|
25
27
|
:::
|
|
26
28
|
|
|
27
|
-
```typescript {5,
|
|
29
|
+
```typescript {5,7,14}
|
|
28
30
|
import { createStep } from "@mastra/core/workflows";
|
|
29
31
|
|
|
30
32
|
export const testStep = createStep({
|
|
31
|
-
// ...
|
|
32
33
|
execute: async ({ inputData, writer }) => {
|
|
33
|
-
|
|
34
|
+
const { value } = inputData;
|
|
34
35
|
|
|
35
36
|
await writer?.write({
|
|
36
37
|
type: "custom-event",
|
|
@@ -39,7 +40,7 @@ export const testStep = createStep({
|
|
|
39
40
|
|
|
40
41
|
const response = await fetch(...);
|
|
41
42
|
|
|
42
|
-
|
|
43
|
+
await writer?.write({
|
|
43
44
|
type: "custom-event",
|
|
44
45
|
status: "success"
|
|
45
46
|
});
|
|
@@ -55,7 +56,7 @@ export const testStep = createStep({
|
|
|
55
56
|
|
|
56
57
|
Events written to the stream are included in the emitted chunks. These chunks can be inspected to access any custom fields, such as event types, intermediate values, or step-specific data.
|
|
57
58
|
|
|
58
|
-
```typescript
|
|
59
|
+
```typescript
|
|
59
60
|
const testWorkflow = mastra.getWorkflow("testWorkflow");
|
|
60
61
|
|
|
61
62
|
const run = await testWorkflow.createRun();
|
|
@@ -86,7 +87,7 @@ if (result!.status === "suspended") {
|
|
|
86
87
|
|
|
87
88
|
If a workflow stream is closed or interrupted for any reason, you can resume it with the `resumeStream` method. This will return a new `ReadableStream` that you can use to observe the workflow events.
|
|
88
89
|
|
|
89
|
-
```typescript
|
|
90
|
+
```typescript
|
|
90
91
|
const newStream = await run.resumeStream();
|
|
91
92
|
|
|
92
93
|
for await (const chunk of newStream) {
|
|
@@ -98,12 +99,11 @@ for await (const chunk of newStream) {
|
|
|
98
99
|
|
|
99
100
|
Pipe an agent's `textStream` to the workflow step's `writer`. This streams partial output, and Mastra automatically aggregates the agent's usage into the workflow run.
|
|
100
101
|
|
|
101
|
-
```typescript
|
|
102
|
+
```typescript
|
|
102
103
|
import { createStep } from "@mastra/core/workflows";
|
|
103
104
|
import { z } from "zod";
|
|
104
105
|
|
|
105
106
|
export const testStep = createStep({
|
|
106
|
-
// ...
|
|
107
107
|
execute: async ({ inputData, mastra, writer }) => {
|
|
108
108
|
const { city } = inputData;
|
|
109
109
|
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "Advanced Tool Usage | Tools & MCP"
|
|
3
3
|
description: This page covers advanced features for Mastra tools, including abort signals and compatibility with the Vercel AI SDK tool format.
|
|
4
|
+
packages:
|
|
5
|
+
- "@mastra/core"
|
|
4
6
|
---
|
|
5
7
|
|
|
6
8
|
# Advanced Tool Usage
|
|
@@ -82,13 +84,13 @@ Mastra maintains compatibility with the tool format used by the Vercel AI SDK (`
|
|
|
82
84
|
|
|
83
85
|
First, ensure you have the `ai` package installed:
|
|
84
86
|
|
|
85
|
-
```bash npm2yarn
|
|
87
|
+
```bash npm2yarn
|
|
86
88
|
npm install ai
|
|
87
89
|
```
|
|
88
90
|
|
|
89
91
|
Here's an example of a tool defined using the Vercel AI SDK format:
|
|
90
92
|
|
|
91
|
-
```typescript title="src/mastra/tools/vercelWeatherTool.ts"
|
|
93
|
+
```typescript title="src/mastra/tools/vercelWeatherTool.ts"
|
|
92
94
|
import { tool } from "ai";
|
|
93
95
|
import { z } from "zod";
|
|
94
96
|
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "MCP Overview | Tools & MCP"
|
|
3
3
|
description: Learn about the Model Context Protocol (MCP), how to use third-party tools via MCPClient, connect to registries, and share your own tools using MCPServer.
|
|
4
|
+
packages:
|
|
5
|
+
- "@mastra/core"
|
|
6
|
+
- "@mastra/mcp"
|
|
4
7
|
---
|
|
5
8
|
|
|
6
9
|
import Tabs from "@theme/Tabs";
|
|
@@ -29,7 +32,7 @@ npm install @mastra/mcp@beta
|
|
|
29
32
|
|
|
30
33
|
The `MCPClient` connects Mastra primitives to external MCP servers, which can be local packages (invoked using `npx`) or remote HTTP(S) endpoints. Each server must be configured with either a `command` or a `url`, depending on how it's hosted.
|
|
31
34
|
|
|
32
|
-
```typescript title="src/mastra/mcp/test-mcp-client.ts"
|
|
35
|
+
```typescript title="src/mastra/mcp/test-mcp-client.ts"
|
|
33
36
|
import { MCPClient } from "@mastra/mcp";
|
|
34
37
|
|
|
35
38
|
export const testMcpClient = new MCPClient({
|
|
@@ -48,13 +51,23 @@ export const testMcpClient = new MCPClient({
|
|
|
48
51
|
});
|
|
49
52
|
```
|
|
50
53
|
|
|
51
|
-
|
|
54
|
+
:::info
|
|
55
|
+
|
|
56
|
+
Visit [MCPClient](/reference/v1/tools/mcp-client) for a full list of configuration options.
|
|
57
|
+
|
|
58
|
+
:::
|
|
59
|
+
|
|
60
|
+
:::tip Authentication
|
|
61
|
+
|
|
62
|
+
For connecting to OAuth-protected MCP servers, see the [OAuth Authentication](/reference/v1/tools/mcp-client#oauth-authentication) section.
|
|
63
|
+
|
|
64
|
+
:::
|
|
52
65
|
|
|
53
66
|
## Using `MCPClient` with an agent
|
|
54
67
|
|
|
55
68
|
To use tools from an MCP server in an agent, import your `MCPClient` and call `.listTools()` in the `tools` parameter. This loads from the defined MCP servers, making them available to the agent.
|
|
56
69
|
|
|
57
|
-
```typescript {3,15} title="src/mastra/agents/test-agent.ts"
|
|
70
|
+
```typescript {3,15} title="src/mastra/agents/test-agent.ts"
|
|
58
71
|
import { Agent } from "@mastra/core/agent";
|
|
59
72
|
|
|
60
73
|
import { testMcpClient } from "../mcp/test-mcp-client";
|
|
@@ -74,13 +87,17 @@ export const testAgent = new Agent({
|
|
|
74
87
|
});
|
|
75
88
|
```
|
|
76
89
|
|
|
77
|
-
|
|
90
|
+
:::info
|
|
91
|
+
|
|
92
|
+
Visit [Agent Class](/reference/v1/agents/agent) for a full list of configuration options.
|
|
93
|
+
|
|
94
|
+
:::
|
|
78
95
|
|
|
79
96
|
## Configuring `MCPServer`
|
|
80
97
|
|
|
81
98
|
To expose agents, tools, and workflows from your Mastra application to external systems over HTTP(S) use the `MCPServer` class. This makes them accessible to any system or agent that supports the protocol.
|
|
82
99
|
|
|
83
|
-
```typescript title="src/mastra/mcp/test-mcp-server.ts"
|
|
100
|
+
```typescript title="src/mastra/mcp/test-mcp-server.ts"
|
|
84
101
|
import { MCPServer } from "@mastra/mcp";
|
|
85
102
|
|
|
86
103
|
import { testAgent } from "../agents/test-agent";
|
|
@@ -97,7 +114,17 @@ export const testMcpServer = new MCPServer({
|
|
|
97
114
|
});
|
|
98
115
|
```
|
|
99
116
|
|
|
100
|
-
|
|
117
|
+
:::info
|
|
118
|
+
|
|
119
|
+
Visit [MCPServer](/reference/v1/tools/mcp-server) for a full list of configuration options.
|
|
120
|
+
|
|
121
|
+
:::
|
|
122
|
+
|
|
123
|
+
:::tip Authentication
|
|
124
|
+
|
|
125
|
+
To protect your MCP server with OAuth, see the [OAuth Protection](/reference/v1/tools/mcp-server#oauth-protection) section.
|
|
126
|
+
|
|
127
|
+
:::
|
|
101
128
|
|
|
102
129
|
### Serverless deployments
|
|
103
130
|
|
|
@@ -109,13 +136,12 @@ export const testMcpServer = new MCPServer({
|
|
|
109
136
|
|
|
110
137
|
To make an MCP server available to other systems or agents that support the protocol, register it in the main `Mastra` instance using `mcpServers`.
|
|
111
138
|
|
|
112
|
-
```typescript title="src/mastra/index.ts"
|
|
139
|
+
```typescript title="src/mastra/index.ts"
|
|
113
140
|
import { Mastra } from "@mastra/core";
|
|
114
141
|
|
|
115
142
|
import { testMcpServer } from "./mcp/test-mcp-server";
|
|
116
143
|
|
|
117
144
|
export const mastra = new Mastra({
|
|
118
|
-
// ...
|
|
119
145
|
mcpServers: {
|
|
120
146
|
testMcpServer, // Registry key: 'testMcpServer'
|
|
121
147
|
},
|
|
@@ -141,9 +167,13 @@ mastra.getMCPServerById('test-mcp-server'); // By intrinsic ID
|
|
|
141
167
|
|
|
142
168
|
Use the `.listTools()` method to fetch tools from all configured MCP servers. This is suitable when configuration (such as API keys) is static and consistent across users or requests. Call it once and pass the result to the `tools` property when defining your agent.
|
|
143
169
|
|
|
144
|
-
|
|
170
|
+
:::info
|
|
145
171
|
|
|
146
|
-
|
|
172
|
+
Visit [listTools()](/reference/v1/tools/mcp-client#listtools) for more information.
|
|
173
|
+
|
|
174
|
+
:::
|
|
175
|
+
|
|
176
|
+
```typescript {7} title="src/mastra/agents/test-agent.ts"
|
|
147
177
|
import { Agent } from "@mastra/core/agent";
|
|
148
178
|
|
|
149
179
|
import { testMcpClient } from "../mcp/test-mcp-client";
|
|
@@ -158,7 +188,7 @@ export const testAgent = new Agent({
|
|
|
158
188
|
|
|
159
189
|
Use the `.listToolsets()` method when tool configuration may vary by request or user, such as in a multi-tenant system where each user provides their own API key. This method returns toolsets that can be passed to the `toolsets` option in the agent's `.generate()` or `.stream()` calls.
|
|
160
190
|
|
|
161
|
-
```typescript {5-16,21}
|
|
191
|
+
```typescript {5-16,21}
|
|
162
192
|
import { MCPClient } from "@mastra/mcp";
|
|
163
193
|
import { mastra } from "./mastra";
|
|
164
194
|
|
|
@@ -190,7 +220,11 @@ async function handleRequest(userPrompt: string, userApiKey: string) {
|
|
|
190
220
|
}
|
|
191
221
|
```
|
|
192
222
|
|
|
193
|
-
|
|
223
|
+
:::info
|
|
224
|
+
|
|
225
|
+
Visit [listToolsets()](/reference/v1/tools/mcp-client#listtoolsets) for more information.
|
|
226
|
+
|
|
227
|
+
:::
|
|
194
228
|
|
|
195
229
|
## Connecting to an MCP registry
|
|
196
230
|
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "Using Tools | Tools & MCP"
|
|
3
3
|
description: Understand what tools are in Mastra, how to add them to agents, and best practices for designing effective tools.
|
|
4
|
+
packages:
|
|
5
|
+
- "@mastra/core"
|
|
4
6
|
---
|
|
5
7
|
|
|
6
8
|
# Using Tools
|
|
@@ -18,7 +20,7 @@ Each tool typically defines:
|
|
|
18
20
|
|
|
19
21
|
In Mastra, you create tools using the [`createTool`](/reference/v1/tools/create-tool) function from the `@mastra/core/tools` package.
|
|
20
22
|
|
|
21
|
-
```typescript title="src/mastra/tools/weatherInfo.ts"
|
|
23
|
+
```typescript title="src/mastra/tools/weatherInfo.ts"
|
|
22
24
|
import { createTool } from "@mastra/core/tools";
|
|
23
25
|
import { z } from "zod";
|
|
24
26
|
|
|
@@ -56,32 +58,31 @@ To make tools available to an agent, you configure them in the agent's definitio
|
|
|
56
58
|
|
|
57
59
|
## Using `RequestContext`
|
|
58
60
|
|
|
59
|
-
Use [RequestContext](/docs/v1/server
|
|
61
|
+
Use [RequestContext](/docs/v1/server/request-context) to access request-specific values. This lets you conditionally adjust behavior based on the context of the request.
|
|
60
62
|
|
|
61
|
-
```typescript title="src/mastra/tools/test-tool.ts"
|
|
63
|
+
```typescript title="src/mastra/tools/test-tool.ts"
|
|
62
64
|
export type UserTier = {
|
|
63
65
|
"user-tier": "enterprise" | "pro";
|
|
64
66
|
};
|
|
65
67
|
|
|
66
|
-
const advancedTools = () => {
|
|
67
|
-
// ...
|
|
68
|
-
};
|
|
68
|
+
const advancedTools = () => {};
|
|
69
69
|
|
|
70
|
-
const baseTools = () => {
|
|
71
|
-
// ...
|
|
72
|
-
};
|
|
70
|
+
const baseTools = () => {};
|
|
73
71
|
|
|
74
72
|
export const testTool = createTool({
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
const userTier = requestContext.get("user-tier") as UserTier["user-tier"];
|
|
73
|
+
execute: async (inputData, context) => {
|
|
74
|
+
const userTier = context?.requestContext?.get("user-tier") as UserTier["user-tier"];
|
|
78
75
|
|
|
79
76
|
return userTier === "enterprise" ? advancedTools : baseTools;
|
|
80
77
|
},
|
|
81
78
|
});
|
|
82
79
|
```
|
|
83
80
|
|
|
84
|
-
|
|
81
|
+
:::info
|
|
82
|
+
|
|
83
|
+
Visit [Request Context](/docs/v1/server/request-context) for more information.
|
|
84
|
+
|
|
85
|
+
:::
|
|
85
86
|
|
|
86
87
|
## Testing with Studio
|
|
87
88
|
|
|
@@ -1,6 +1,21 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "Voice in Mastra | Voice"
|
|
3
3
|
description: Overview of voice capabilities in Mastra, including text-to-speech, speech-to-text, and real-time speech-to-speech interactions.
|
|
4
|
+
packages:
|
|
5
|
+
- "@mastra/core"
|
|
6
|
+
- "@mastra/node-audio"
|
|
7
|
+
- "@mastra/voice-azure"
|
|
8
|
+
- "@mastra/voice-cloudflare"
|
|
9
|
+
- "@mastra/voice-deepgram"
|
|
10
|
+
- "@mastra/voice-elevenlabs"
|
|
11
|
+
- "@mastra/voice-google"
|
|
12
|
+
- "@mastra/voice-google-gemini-live"
|
|
13
|
+
- "@mastra/voice-murf"
|
|
14
|
+
- "@mastra/voice-openai"
|
|
15
|
+
- "@mastra/voice-openai-realtime"
|
|
16
|
+
- "@mastra/voice-playai"
|
|
17
|
+
- "@mastra/voice-sarvam"
|
|
18
|
+
- "@mastra/voice-speechify"
|
|
4
19
|
---
|
|
5
20
|
|
|
6
21
|
import { AudioPlayback } from "@site/src/components/AudioPlayback";
|
|
@@ -917,7 +932,7 @@ const voiceAgent = new Agent({
|
|
|
917
932
|
id: "aisdk-voice-agent",
|
|
918
933
|
name: "AI SDK Voice Agent",
|
|
919
934
|
instructions: "You are a helpful assistant with voice capabilities.",
|
|
920
|
-
model: openai
|
|
935
|
+
model: "openai/gpt-5.1",
|
|
921
936
|
voice,
|
|
922
937
|
});
|
|
923
938
|
```
|
|
@@ -1031,4 +1046,4 @@ For more information on the CompositeVoice, refer to the [CompositeVoice Referen
|
|
|
1031
1046
|
- [Google Gemini Live Voice](/reference/v1/voice/google-gemini-live)
|
|
1032
1047
|
- [Deepgram Voice](/reference/v1/voice/deepgram)
|
|
1033
1048
|
- [PlayAI Voice](/reference/v1/voice/playai)
|
|
1034
|
-
- [Voice Examples](/
|
|
1049
|
+
- [Voice Examples](https://github.com/mastra-ai/voice-examples)
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "Speech-to-Speech Capabilities in Mastra | Voice"
|
|
3
3
|
description: Overview of speech-to-speech capabilities in Mastra, including real-time interactions and event-driven architecture.
|
|
4
|
+
packages:
|
|
5
|
+
- "@mastra/core"
|
|
6
|
+
- "@mastra/node-audio"
|
|
7
|
+
- "@mastra/voice-google-gemini-live"
|
|
8
|
+
- "@mastra/voice-openai-realtime"
|
|
4
9
|
---
|
|
5
10
|
|
|
6
11
|
# Speech-to-Speech Capabilities in Mastra
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "Speech-to-Text (STT) | Voice"
|
|
3
3
|
description: Overview of Speech-to-Text capabilities in Mastra, including configuration, usage, and integration with voice providers.
|
|
4
|
+
packages:
|
|
5
|
+
- "@mastra/core"
|
|
6
|
+
- "@mastra/node-audio"
|
|
7
|
+
- "@mastra/voice-openai"
|
|
4
8
|
---
|
|
5
9
|
|
|
6
10
|
# Speech-to-Text (STT)
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "Text-to-Speech (TTS) | Voice"
|
|
3
3
|
description: Overview of Text-to-Speech capabilities in Mastra, including configuration, usage, and integration with voice providers.
|
|
4
|
+
packages:
|
|
5
|
+
- "@mastra/core"
|
|
6
|
+
- "@mastra/voice-openai"
|
|
4
7
|
---
|
|
5
8
|
|
|
6
9
|
# Text-to-Speech (TTS)
|