@mastra/mcp-docs-server 1.0.0-beta.11 → 1.0.0-beta.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.docs/organized/changelogs/%40mastra%2Fagent-builder.md +29 -29
- package/.docs/organized/changelogs/%40mastra%2Fai-sdk.md +51 -51
- package/.docs/organized/changelogs/%40mastra%2Fclickhouse.md +45 -45
- package/.docs/organized/changelogs/%40mastra%2Fclient-js.md +180 -180
- package/.docs/organized/changelogs/%40mastra%2Fcloudflare-d1.md +39 -39
- package/.docs/organized/changelogs/%40mastra%2Fcloudflare.md +39 -39
- package/.docs/organized/changelogs/%40mastra%2Fconvex.md +68 -0
- package/.docs/organized/changelogs/%40mastra%2Fcore.md +331 -331
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloud.md +31 -31
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloudflare.md +16 -16
- package/.docs/organized/changelogs/%40mastra%2Fdeployer.md +41 -41
- package/.docs/organized/changelogs/%40mastra%2Fdynamodb.md +39 -39
- package/.docs/organized/changelogs/%40mastra%2Ffastembed.md +6 -0
- package/.docs/organized/changelogs/%40mastra%2Flance.md +39 -39
- package/.docs/organized/changelogs/%40mastra%2Flibsql.md +45 -45
- package/.docs/organized/changelogs/%40mastra%2Fmcp-docs-server.md +24 -24
- package/.docs/organized/changelogs/%40mastra%2Fmemory.md +24 -24
- package/.docs/organized/changelogs/%40mastra%2Fmongodb.md +39 -39
- package/.docs/organized/changelogs/%40mastra%2Fmssql.md +39 -39
- package/.docs/organized/changelogs/%40mastra%2Fpg.md +45 -45
- package/.docs/organized/changelogs/%40mastra%2Fplayground-ui.md +96 -96
- package/.docs/organized/changelogs/%40mastra%2Frag.md +17 -17
- package/.docs/organized/changelogs/%40mastra%2Freact.md +49 -2
- package/.docs/organized/changelogs/%40mastra%2Fschema-compat.md +6 -0
- package/.docs/organized/changelogs/%40mastra%2Fserver.md +122 -122
- package/.docs/organized/changelogs/%40mastra%2Fupstash.md +39 -39
- package/.docs/organized/changelogs/create-mastra.md +31 -31
- package/.docs/organized/changelogs/mastra.md +51 -51
- package/.docs/organized/code-examples/agent-v6.md +151 -0
- package/.docs/organized/code-examples/ai-elements.md +1 -1
- package/.docs/organized/code-examples/quick-start.md +0 -4
- package/.docs/organized/code-examples/stock-price-tool.md +21 -2
- package/.docs/raw/agents/adding-voice.mdx +2 -3
- package/.docs/raw/agents/agent-approval.mdx +139 -6
- package/.docs/raw/agents/agent-memory.mdx +24 -32
- package/.docs/raw/agents/guardrails.mdx +61 -51
- package/.docs/raw/agents/networks.mdx +9 -13
- package/.docs/raw/agents/overview.mdx +40 -24
- package/.docs/raw/agents/processors.mdx +20 -19
- package/.docs/raw/agents/structured-output.mdx +11 -7
- package/.docs/raw/agents/using-tools.mdx +5 -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 +2 -2
- package/.docs/raw/course/03-agent-memory/04-creating-basic-memory-agent.md +1 -2
- package/.docs/raw/course/03-agent-memory/08-configuring-conversation-history.md +1 -2
- package/.docs/raw/course/03-agent-memory/16-configuring-semantic-recall.md +3 -4
- package/.docs/raw/course/03-agent-memory/21-configuring-working-memory.md +2 -3
- package/.docs/raw/course/03-agent-memory/22-custom-working-memory-templates.md +2 -3
- package/.docs/raw/course/03-agent-memory/25-combining-memory-features.md +1 -2
- package/.docs/raw/course/03-agent-memory/27-creating-learning-assistant.md +2 -3
- package/.docs/raw/course/04-workflows/11-creating-an-ai-agent.md +2 -3
- package/.docs/raw/deployment/cloud-providers.mdx +20 -0
- package/.docs/raw/deployment/{building-mastra.mdx → mastra-server.mdx} +5 -5
- package/.docs/raw/deployment/monorepo.mdx +23 -44
- package/.docs/raw/deployment/overview.mdx +32 -50
- package/.docs/raw/deployment/web-framework.mdx +15 -19
- package/.docs/raw/evals/custom-scorers.mdx +9 -6
- package/.docs/raw/evals/overview.mdx +3 -6
- package/.docs/raw/evals/running-in-ci.mdx +2 -2
- package/.docs/raw/getting-started/manual-install.mdx +20 -20
- package/.docs/raw/getting-started/mcp-docs-server.mdx +2 -2
- package/.docs/raw/getting-started/start.mdx +10 -1
- package/.docs/raw/getting-started/studio.mdx +1 -1
- package/.docs/raw/guides/agent-frameworks/ai-sdk.mdx +4 -4
- package/.docs/raw/guides/build-your-ui/ai-sdk-ui.mdx +1033 -79
- package/.docs/raw/guides/build-your-ui/assistant-ui.mdx +8 -8
- package/.docs/raw/guides/build-your-ui/copilotkit.mdx +11 -11
- package/.docs/raw/{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 +12 -15
- package/.docs/raw/guides/deployment/index.mdx +32 -0
- package/.docs/raw/guides/deployment/inngest.mdx +386 -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 +170 -61
- package/.docs/raw/guides/getting-started/quickstart.mdx +4 -4
- package/.docs/raw/guides/getting-started/sveltekit.mdx +238 -409
- package/.docs/raw/guides/getting-started/vite-react.mdx +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 +17 -17
- package/.docs/raw/guides/guide/stock-agent.mdx +5 -5
- package/.docs/raw/guides/guide/web-search.mdx +8 -8
- package/.docs/raw/guides/guide/whatsapp-chat-bot.mdx +7 -7
- package/.docs/raw/guides/migrations/ai-sdk-v4-to-v5.mdx +2 -2
- package/.docs/raw/guides/migrations/upgrade-to-v1/agent.mdx +1 -1
- package/.docs/raw/guides/migrations/upgrade-to-v1/client.mdx +17 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/overview.mdx +6 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/workflows.mdx +0 -2
- package/.docs/raw/guides/migrations/vnext-to-standard-apis.mdx +21 -23
- package/.docs/raw/index.mdx +2 -2
- package/.docs/raw/{deployment/mastra-cloud → mastra-cloud}/dashboard.mdx +2 -6
- package/.docs/raw/{deployment/mastra-cloud → mastra-cloud}/observability.mdx +1 -5
- package/.docs/raw/{deployment/mastra-cloud → mastra-cloud}/overview.mdx +2 -6
- package/.docs/raw/{deployment/mastra-cloud → mastra-cloud}/setting-up.mdx +8 -7
- package/.docs/raw/mcp/overview.mdx +31 -13
- package/.docs/raw/mcp/publishing-mcp-server.mdx +2 -2
- package/.docs/raw/memory/memory-processors.mdx +9 -9
- package/.docs/raw/memory/message-history.mdx +69 -0
- package/.docs/raw/memory/overview.mdx +34 -76
- package/.docs/raw/memory/semantic-recall.mdx +58 -49
- package/.docs/raw/memory/storage.mdx +188 -0
- package/.docs/raw/memory/working-memory.mdx +7 -7
- package/.docs/raw/observability/logging.mdx +10 -11
- package/.docs/raw/observability/overview.mdx +0 -1
- package/.docs/raw/observability/tracing/bridges/otel.mdx +2 -2
- package/.docs/raw/observability/tracing/exporters/cloud.mdx +1 -1
- package/.docs/raw/observability/tracing/exporters/default.mdx +3 -3
- package/.docs/raw/observability/tracing/exporters/langfuse.mdx +1 -2
- package/.docs/raw/observability/tracing/overview.mdx +23 -25
- package/.docs/raw/observability/tracing/processors/sensitive-data-filter.mdx +3 -3
- package/.docs/raw/rag/chunking-and-embedding.mdx +18 -31
- package/.docs/raw/rag/graph-rag.mdx +220 -0
- package/.docs/raw/rag/overview.mdx +2 -3
- package/.docs/raw/rag/retrieval.mdx +34 -51
- package/.docs/raw/rag/vector-databases.mdx +29 -25
- package/.docs/raw/reference/agents/agent.mdx +3 -3
- package/.docs/raw/reference/agents/generate.mdx +1 -1
- package/.docs/raw/reference/agents/generateLegacy.mdx +2 -2
- package/.docs/raw/reference/agents/getDefaultGenerateOptions.mdx +3 -3
- package/.docs/raw/reference/agents/getDefaultOptions.mdx +3 -3
- package/.docs/raw/reference/agents/getDefaultStreamOptions.mdx +3 -3
- package/.docs/raw/reference/agents/getDescription.mdx +1 -1
- package/.docs/raw/reference/agents/getInstructions.mdx +3 -3
- package/.docs/raw/reference/agents/getLLM.mdx +3 -3
- package/.docs/raw/reference/agents/getMemory.mdx +3 -3
- package/.docs/raw/reference/agents/getModel.mdx +3 -3
- package/.docs/raw/reference/agents/getTools.mdx +2 -2
- package/.docs/raw/reference/agents/getVoice.mdx +2 -2
- package/.docs/raw/reference/agents/listAgents.mdx +2 -2
- package/.docs/raw/reference/agents/listScorers.mdx +3 -3
- package/.docs/raw/reference/agents/listTools.mdx +2 -2
- package/.docs/raw/reference/agents/listWorkflows.mdx +2 -2
- package/.docs/raw/reference/agents/network.mdx +1 -1
- package/.docs/raw/reference/ai-sdk/chat-route.mdx +3 -3
- package/.docs/raw/reference/ai-sdk/handle-chat-stream.mdx +2 -2
- package/.docs/raw/reference/ai-sdk/handle-network-stream.mdx +2 -2
- package/.docs/raw/reference/ai-sdk/handle-workflow-stream.mdx +2 -2
- package/.docs/raw/reference/ai-sdk/network-route.mdx +3 -3
- package/.docs/raw/reference/ai-sdk/to-ai-sdk-stream.mdx +6 -6
- package/.docs/raw/reference/ai-sdk/to-ai-sdk-v4-messages.mdx +127 -0
- package/.docs/raw/reference/ai-sdk/to-ai-sdk-v5-messages.mdx +107 -0
- package/.docs/raw/reference/ai-sdk/with-mastra.mdx +1 -1
- package/.docs/raw/reference/ai-sdk/workflow-route.mdx +3 -3
- package/.docs/raw/reference/auth/auth0.mdx +2 -3
- package/.docs/raw/reference/auth/clerk.mdx +2 -3
- package/.docs/raw/reference/auth/firebase.mdx +3 -5
- package/.docs/raw/reference/auth/jwt.mdx +2 -3
- package/.docs/raw/reference/auth/supabase.mdx +2 -3
- package/.docs/raw/reference/auth/workos.mdx +2 -3
- package/.docs/raw/reference/cli/create-mastra.mdx +10 -10
- package/.docs/raw/reference/cli/mastra.mdx +10 -10
- package/.docs/raw/reference/client-js/agents.mdx +1 -2
- package/.docs/raw/reference/client-js/mastra-client.mdx +2 -2
- package/.docs/raw/reference/client-js/workflows.mdx +20 -0
- package/.docs/raw/reference/core/getAgent.mdx +1 -1
- package/.docs/raw/reference/core/getAgentById.mdx +1 -1
- package/.docs/raw/reference/core/getDeployer.mdx +1 -1
- package/.docs/raw/reference/core/getLogger.mdx +1 -1
- package/.docs/raw/reference/core/getMCPServer.mdx +1 -1
- package/.docs/raw/reference/core/getMCPServerById.mdx +1 -1
- package/.docs/raw/reference/core/getMemory.mdx +2 -2
- package/.docs/raw/reference/core/getServer.mdx +3 -3
- package/.docs/raw/reference/core/getStorage.mdx +2 -2
- package/.docs/raw/reference/core/getStoredAgentById.mdx +3 -3
- package/.docs/raw/reference/core/getTelemetry.mdx +1 -1
- package/.docs/raw/reference/core/getVector.mdx +1 -1
- package/.docs/raw/reference/core/getWorkflow.mdx +1 -1
- package/.docs/raw/reference/core/listAgents.mdx +1 -1
- package/.docs/raw/reference/core/listLogs.mdx +1 -1
- package/.docs/raw/reference/core/listLogsByRunId.mdx +1 -1
- package/.docs/raw/reference/core/listMCPServers.mdx +1 -1
- package/.docs/raw/reference/core/listMemory.mdx +2 -2
- package/.docs/raw/reference/core/listStoredAgents.mdx +4 -4
- package/.docs/raw/reference/core/listVectors.mdx +1 -1
- package/.docs/raw/reference/core/listWorkflows.mdx +1 -1
- package/.docs/raw/reference/core/setLogger.mdx +1 -1
- package/.docs/raw/reference/core/setStorage.mdx +2 -2
- package/.docs/raw/reference/core/setTelemetry.mdx +1 -1
- package/.docs/raw/reference/deployer/cloudflare.mdx +1 -2
- package/.docs/raw/reference/deployer/deployer.mdx +0 -1
- package/.docs/raw/reference/deployer/netlify.mdx +1 -1
- package/.docs/raw/reference/deployer/vercel.mdx +2 -4
- package/.docs/raw/reference/evals/answer-relevancy.mdx +1 -1
- package/.docs/raw/reference/evals/answer-similarity.mdx +1 -1
- package/.docs/raw/reference/evals/bias.mdx +1 -1
- package/.docs/raw/reference/evals/completeness.mdx +1 -1
- package/.docs/raw/reference/evals/content-similarity.mdx +1 -1
- package/.docs/raw/reference/evals/context-precision.mdx +1 -1
- package/.docs/raw/reference/evals/faithfulness.mdx +1 -1
- package/.docs/raw/reference/evals/hallucination.mdx +1 -1
- package/.docs/raw/reference/evals/keyword-coverage.mdx +1 -1
- package/.docs/raw/reference/evals/prompt-alignment.mdx +7 -7
- package/.docs/raw/reference/evals/textual-difference.mdx +1 -1
- package/.docs/raw/reference/evals/tone-consistency.mdx +1 -1
- package/.docs/raw/reference/evals/tool-call-accuracy.mdx +10 -10
- package/.docs/raw/reference/evals/toxicity.mdx +1 -1
- package/.docs/raw/reference/logging/pino-logger.mdx +7 -8
- package/.docs/raw/reference/memory/createThread.mdx +2 -2
- package/.docs/raw/reference/memory/deleteMessages.mdx +2 -2
- package/.docs/raw/reference/memory/listThreadsByResourceId.mdx +2 -2
- package/.docs/raw/reference/memory/memory-class.mdx +3 -3
- package/.docs/raw/reference/memory/query.mdx +2 -2
- package/.docs/raw/reference/memory/recall.mdx +2 -2
- package/.docs/raw/reference/observability/tracing/exporters/langfuse.mdx +1 -1
- package/.docs/raw/reference/processors/batch-parts-processor.mdx +2 -2
- package/.docs/raw/reference/processors/language-detector.mdx +2 -2
- package/.docs/raw/reference/processors/message-history-processor.mdx +2 -2
- package/.docs/raw/reference/processors/moderation-processor.mdx +3 -3
- package/.docs/raw/reference/processors/pii-detector.mdx +3 -3
- package/.docs/raw/reference/processors/processor-interface.mdx +13 -13
- package/.docs/raw/reference/processors/prompt-injection-detector.mdx +2 -2
- package/.docs/raw/reference/processors/semantic-recall-processor.mdx +2 -2
- package/.docs/raw/reference/processors/system-prompt-scrubber.mdx +2 -2
- package/.docs/raw/reference/processors/token-limiter-processor.mdx +2 -2
- package/.docs/raw/reference/processors/tool-call-filter.mdx +3 -3
- package/.docs/raw/reference/processors/unicode-normalizer.mdx +2 -2
- package/.docs/raw/reference/processors/working-memory-processor.mdx +3 -3
- package/.docs/raw/reference/rag/chunk.mdx +1 -1
- package/.docs/raw/reference/rag/database-config.mdx +1 -1
- package/.docs/raw/reference/rag/extract-params.mdx +2 -2
- package/.docs/raw/reference/rag/metadata-filters.mdx +7 -7
- package/.docs/raw/reference/server/create-route.mdx +14 -14
- package/.docs/raw/reference/server/express-adapter.mdx +10 -11
- package/.docs/raw/reference/server/hono-adapter.mdx +10 -11
- package/.docs/raw/reference/server/mastra-server.mdx +22 -22
- package/.docs/raw/reference/server/routes.mdx +28 -1
- package/.docs/raw/reference/storage/cloudflare-d1.mdx +3 -3
- package/.docs/raw/reference/storage/cloudflare.mdx +2 -2
- package/.docs/raw/reference/storage/convex.mdx +6 -6
- package/.docs/raw/reference/storage/dynamodb.mdx +4 -4
- package/.docs/raw/reference/storage/lance.mdx +3 -3
- package/.docs/raw/reference/storage/libsql.mdx +69 -54
- package/.docs/raw/reference/storage/mongodb.mdx +80 -7
- package/.docs/raw/reference/storage/mssql.mdx +4 -4
- package/.docs/raw/{server-db/storage.mdx → reference/storage/overview.mdx} +13 -111
- package/.docs/raw/reference/storage/postgresql.mdx +78 -7
- package/.docs/raw/reference/storage/upstash.mdx +74 -2
- package/.docs/raw/reference/streaming/agents/stream.mdx +27 -5
- package/.docs/raw/reference/streaming/agents/streamLegacy.mdx +2 -2
- package/.docs/raw/reference/streaming/workflows/observeStream.mdx +1 -1
- package/.docs/raw/reference/streaming/workflows/resumeStream.mdx +1 -1
- package/.docs/raw/reference/streaming/workflows/stream.mdx +35 -22
- package/.docs/raw/reference/streaming/workflows/timeTravelStream.mdx +4 -4
- package/.docs/raw/reference/templates/overview.mdx +1 -2
- package/.docs/raw/reference/tools/create-tool.mdx +24 -5
- package/.docs/raw/reference/tools/graph-rag-tool.mdx +3 -3
- package/.docs/raw/reference/tools/vector-query-tool.mdx +4 -4
- package/.docs/raw/reference/vectors/astra.mdx +3 -3
- package/.docs/raw/reference/vectors/chroma.mdx +3 -3
- package/.docs/raw/reference/vectors/convex.mdx +12 -12
- package/.docs/raw/reference/vectors/couchbase.mdx +5 -5
- package/.docs/raw/reference/vectors/duckdb.mdx +10 -10
- package/.docs/raw/reference/vectors/elasticsearch.mdx +4 -4
- package/.docs/raw/reference/vectors/lance.mdx +4 -4
- package/.docs/raw/reference/vectors/libsql.mdx +61 -11
- package/.docs/raw/reference/vectors/mongodb.mdx +58 -5
- package/.docs/raw/reference/vectors/pg.mdx +53 -6
- package/.docs/raw/reference/vectors/pinecone.mdx +3 -3
- package/.docs/raw/reference/vectors/qdrant.mdx +3 -3
- package/.docs/raw/reference/vectors/s3vectors.mdx +6 -6
- package/.docs/raw/reference/vectors/turbopuffer.mdx +4 -4
- package/.docs/raw/reference/vectors/upstash.mdx +55 -6
- package/.docs/raw/reference/vectors/vectorize.mdx +3 -3
- package/.docs/raw/reference/workflows/run-methods/cancel.mdx +2 -2
- package/.docs/raw/reference/workflows/run-methods/restart.mdx +1 -3
- package/.docs/raw/reference/workflows/run-methods/resume.mdx +2 -2
- package/.docs/raw/reference/workflows/run-methods/start.mdx +2 -2
- package/.docs/raw/reference/workflows/run-methods/startAsync.mdx +143 -0
- package/.docs/raw/reference/workflows/run-methods/timeTravel.mdx +5 -5
- package/.docs/raw/reference/workflows/run.mdx +1 -1
- package/.docs/raw/reference/workflows/step.mdx +3 -3
- package/.docs/raw/reference/workflows/workflow-methods/branch.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/commit.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/create-run.mdx +37 -2
- package/.docs/raw/reference/workflows/workflow-methods/dountil.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/dowhile.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/foreach.mdx +6 -6
- package/.docs/raw/reference/workflows/workflow-methods/map.mdx +7 -7
- package/.docs/raw/reference/workflows/workflow-methods/parallel.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/sendEvent.mdx +2 -2
- package/.docs/raw/reference/workflows/workflow-methods/sleep.mdx +2 -2
- package/.docs/raw/reference/workflows/workflow-methods/sleepUntil.mdx +2 -2
- package/.docs/raw/reference/workflows/workflow-methods/then.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/waitForEvent.mdx +2 -2
- package/.docs/raw/reference/workflows/workflow.mdx +17 -3
- package/.docs/raw/{auth → server/auth}/auth0.mdx +20 -14
- package/.docs/raw/{auth → server/auth}/clerk.mdx +16 -9
- package/.docs/raw/{auth → server/auth}/firebase.mdx +21 -15
- package/.docs/raw/{auth → server/auth}/index.mdx +6 -6
- package/.docs/raw/{auth → server/auth}/jwt.mdx +14 -7
- package/.docs/raw/{auth → server/auth}/supabase.mdx +16 -9
- package/.docs/raw/{auth → server/auth}/workos.mdx +19 -13
- package/.docs/raw/{server-db → server}/custom-adapters.mdx +13 -13
- package/.docs/raw/{server-db → server}/custom-api-routes.mdx +3 -5
- package/.docs/raw/{server-db → server}/mastra-client.mdx +26 -15
- package/.docs/raw/{server-db → server}/mastra-server.mdx +8 -8
- package/.docs/raw/{server-db → server}/middleware.mdx +9 -9
- package/.docs/raw/{server-db → server}/request-context.mdx +33 -32
- package/.docs/raw/{server-db → server}/server-adapters.mdx +12 -12
- package/.docs/raw/streaming/events.mdx +14 -7
- package/.docs/raw/streaming/overview.mdx +21 -10
- package/.docs/raw/streaming/tool-streaming.mdx +6 -6
- package/.docs/raw/streaming/workflow-streaming.mdx +6 -8
- package/.docs/raw/tools-mcp/advanced-usage.mdx +2 -2
- package/.docs/raw/tools-mcp/mcp-overview.mdx +31 -12
- package/.docs/raw/tools-mcp/overview.mdx +10 -11
- package/.docs/raw/voice/overview.mdx +1 -1
- package/.docs/raw/workflows/agents-and-tools.mdx +28 -19
- package/.docs/raw/workflows/control-flow.mdx +27 -40
- package/.docs/raw/workflows/error-handling.mdx +172 -18
- package/.docs/raw/workflows/human-in-the-loop.mdx +6 -7
- package/.docs/raw/workflows/inngest-workflow.mdx +8 -9
- package/.docs/raw/workflows/input-data-mapping.mdx +7 -7
- package/.docs/raw/workflows/overview.mdx +34 -23
- package/.docs/raw/workflows/snapshots.mdx +14 -44
- package/.docs/raw/workflows/suspend-and-resume.mdx +7 -7
- package/.docs/raw/workflows/time-travel.mdx +16 -16
- package/.docs/raw/workflows/workflow-state.mdx +5 -8
- package/CHANGELOG.md +23 -0
- package/dist/logger.d.ts +3 -0
- package/dist/logger.d.ts.map +1 -1
- package/dist/stdio.js +53 -0
- package/package.json +4 -4
- package/.docs/organized/changelogs/%40internal%2Fai-sdk-v4.md +0 -1
- package/.docs/raw/deployment/cloud-providers/index.mdx +0 -55
- 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
|
@@ -11,7 +11,7 @@ The `Agent` class is the foundation for creating AI agents in Mastra. It provide
|
|
|
11
11
|
|
|
12
12
|
### Basic string instructions
|
|
13
13
|
|
|
14
|
-
```typescript title="src/mastra/agents/string-agent.ts"
|
|
14
|
+
```typescript title="src/mastra/agents/string-agent.ts"
|
|
15
15
|
import { Agent } from "@mastra/core/agent";
|
|
16
16
|
|
|
17
17
|
// String instructions
|
|
@@ -49,7 +49,7 @@ export const agent3 = new Agent({
|
|
|
49
49
|
|
|
50
50
|
Use CoreSystemMessage format to access additional properties like `providerOptions` for provider-specific configurations:
|
|
51
51
|
|
|
52
|
-
```typescript title="src/mastra/agents/core-message-agent.ts"
|
|
52
|
+
```typescript title="src/mastra/agents/core-message-agent.ts"
|
|
53
53
|
import { Agent } from "@mastra/core/agent";
|
|
54
54
|
|
|
55
55
|
export const agent = new Agent({
|
|
@@ -71,7 +71,7 @@ export const agent = new Agent({
|
|
|
71
71
|
|
|
72
72
|
### Multiple CoreSystemMessages
|
|
73
73
|
|
|
74
|
-
```typescript title="src/mastra/agents/multi-message-agent.ts"
|
|
74
|
+
```typescript title="src/mastra/agents/multi-message-agent.ts"
|
|
75
75
|
import { Agent } from "@mastra/core/agent";
|
|
76
76
|
|
|
77
77
|
// This could be customizable based on the user
|
|
@@ -15,7 +15,7 @@ The `.generateLegacy()` method is the legacy version of the agent generation API
|
|
|
15
15
|
|
|
16
16
|
## Usage example
|
|
17
17
|
|
|
18
|
-
```typescript
|
|
18
|
+
```typescript
|
|
19
19
|
await agent.generateLegacy("message for agent");
|
|
20
20
|
```
|
|
21
21
|
|
|
@@ -546,7 +546,7 @@ const result = await agent.generate("message", {
|
|
|
546
546
|
|
|
547
547
|
## Extended usage example
|
|
548
548
|
|
|
549
|
-
```typescript
|
|
549
|
+
```typescript
|
|
550
550
|
import { z } from "zod";
|
|
551
551
|
import {
|
|
552
552
|
ModerationProcessor,
|
|
@@ -15,7 +15,7 @@ Agents can be configured with default generation options for controlling model b
|
|
|
15
15
|
|
|
16
16
|
## Usage example
|
|
17
17
|
|
|
18
|
-
```typescript
|
|
18
|
+
```typescript
|
|
19
19
|
await agent.getDefaultGenerateOptionsLegacy();
|
|
20
20
|
```
|
|
21
21
|
|
|
@@ -48,7 +48,7 @@ await agent.getDefaultGenerateOptionsLegacy();
|
|
|
48
48
|
|
|
49
49
|
## Extended usage example
|
|
50
50
|
|
|
51
|
-
```typescript
|
|
51
|
+
```typescript
|
|
52
52
|
await agent.getDefaultGenerateOptionsLegacy({
|
|
53
53
|
requestContext: new RequestContext(),
|
|
54
54
|
});
|
|
@@ -72,4 +72,4 @@ await agent.getDefaultGenerateOptionsLegacy({
|
|
|
72
72
|
## Related
|
|
73
73
|
|
|
74
74
|
- [Agent generation](/docs/v1/agents/overview#generating-responses)
|
|
75
|
-
- [Request Context](/docs/v1/server
|
|
75
|
+
- [Request Context](/docs/v1/server/request-context)
|
|
@@ -9,7 +9,7 @@ Agents can be configured with default options for memory usage, output format, a
|
|
|
9
9
|
|
|
10
10
|
## Usage example
|
|
11
11
|
|
|
12
|
-
```typescript
|
|
12
|
+
```typescript
|
|
13
13
|
await agent.getDefaultOptions();
|
|
14
14
|
```
|
|
15
15
|
|
|
@@ -42,7 +42,7 @@ await agent.getDefaultOptions();
|
|
|
42
42
|
|
|
43
43
|
## Extended usage example
|
|
44
44
|
|
|
45
|
-
```typescript
|
|
45
|
+
```typescript
|
|
46
46
|
await agent.getDefaultOptions({
|
|
47
47
|
requestContext: new RequestContext(),
|
|
48
48
|
});
|
|
@@ -66,4 +66,4 @@ await agent.getDefaultOptions({
|
|
|
66
66
|
## Related
|
|
67
67
|
|
|
68
68
|
- [Streaming with agents](/docs/v1/streaming/overview#streaming-with-agents)
|
|
69
|
-
- [Request Context](/docs/v1/server
|
|
69
|
+
- [Request Context](/docs/v1/server/request-context)
|
|
@@ -15,7 +15,7 @@ Agents can be configured with default streaming options for memory usage, output
|
|
|
15
15
|
|
|
16
16
|
## Usage example
|
|
17
17
|
|
|
18
|
-
```typescript
|
|
18
|
+
```typescript
|
|
19
19
|
await agent.getDefaultStreamOptionsLegacy();
|
|
20
20
|
```
|
|
21
21
|
|
|
@@ -48,7 +48,7 @@ await agent.getDefaultStreamOptionsLegacy();
|
|
|
48
48
|
|
|
49
49
|
## Extended usage example
|
|
50
50
|
|
|
51
|
-
```typescript
|
|
51
|
+
```typescript
|
|
52
52
|
await agent.getDefaultStreamOptionsLegacy({
|
|
53
53
|
requestContext: new RequestContext(),
|
|
54
54
|
});
|
|
@@ -72,4 +72,4 @@ await agent.getDefaultStreamOptionsLegacy({
|
|
|
72
72
|
## Related
|
|
73
73
|
|
|
74
74
|
- [Streaming with agents](/docs/v1/streaming/overview#streaming-with-agents)
|
|
75
|
-
- [Request Context](/docs/v1/server
|
|
75
|
+
- [Request Context](/docs/v1/server/request-context)
|
|
@@ -9,7 +9,7 @@ The `.getInstructions()` method retrieves the instructions configured for an age
|
|
|
9
9
|
|
|
10
10
|
## Usage example
|
|
11
11
|
|
|
12
|
-
```typescript
|
|
12
|
+
```typescript
|
|
13
13
|
await agent.getInstructions();
|
|
14
14
|
```
|
|
15
15
|
|
|
@@ -42,7 +42,7 @@ await agent.getInstructions();
|
|
|
42
42
|
|
|
43
43
|
## Extended usage example
|
|
44
44
|
|
|
45
|
-
```typescript
|
|
45
|
+
```typescript
|
|
46
46
|
await agent.getInstructions({
|
|
47
47
|
requestContext: new RequestContext(),
|
|
48
48
|
});
|
|
@@ -66,4 +66,4 @@ await agent.getInstructions({
|
|
|
66
66
|
## Related
|
|
67
67
|
|
|
68
68
|
- [Agents overview](/docs/v1/agents/overview)
|
|
69
|
-
- [Request Context](/docs/v1/server
|
|
69
|
+
- [Request Context](/docs/v1/server/request-context)
|
|
@@ -9,7 +9,7 @@ The `.getLLM()` method retrieves the language model instance configured for an a
|
|
|
9
9
|
|
|
10
10
|
## Usage example
|
|
11
11
|
|
|
12
|
-
```typescript
|
|
12
|
+
```typescript
|
|
13
13
|
await agent.getLLM();
|
|
14
14
|
```
|
|
15
15
|
|
|
@@ -43,7 +43,7 @@ await agent.getLLM();
|
|
|
43
43
|
|
|
44
44
|
## Extended usage example
|
|
45
45
|
|
|
46
|
-
```typescript
|
|
46
|
+
```typescript
|
|
47
47
|
await agent.getLLM({
|
|
48
48
|
requestContext: new RequestContext(),
|
|
49
49
|
model: "openai/gpt-5.1",
|
|
@@ -75,4 +75,4 @@ await agent.getLLM({
|
|
|
75
75
|
## Related
|
|
76
76
|
|
|
77
77
|
- [Agents overview](/docs/v1/agents/overview)
|
|
78
|
-
- [Request Context](/docs/v1/server
|
|
78
|
+
- [Request Context](/docs/v1/server/request-context)
|
|
@@ -9,7 +9,7 @@ The `.getMemory()` method retrieves the memory system associated with an agent.
|
|
|
9
9
|
|
|
10
10
|
## Usage example
|
|
11
11
|
|
|
12
|
-
```typescript
|
|
12
|
+
```typescript
|
|
13
13
|
await agent.getMemory();
|
|
14
14
|
```
|
|
15
15
|
|
|
@@ -42,7 +42,7 @@ await agent.getMemory();
|
|
|
42
42
|
|
|
43
43
|
## Extended usage example
|
|
44
44
|
|
|
45
|
-
```typescript
|
|
45
|
+
```typescript
|
|
46
46
|
await agent.getMemory({
|
|
47
47
|
requestContext: new RequestContext(),
|
|
48
48
|
});
|
|
@@ -66,4 +66,4 @@ await agent.getMemory({
|
|
|
66
66
|
## Related
|
|
67
67
|
|
|
68
68
|
- [Agent memory](/docs/v1/agents/agent-memory)
|
|
69
|
-
- [Request Context](/docs/v1/server
|
|
69
|
+
- [Request Context](/docs/v1/server/request-context)
|
|
@@ -9,7 +9,7 @@ The `.getModel()` method retrieves the language model configured for an agent, r
|
|
|
9
9
|
|
|
10
10
|
## Usage example
|
|
11
11
|
|
|
12
|
-
```typescript
|
|
12
|
+
```typescript
|
|
13
13
|
await agent.getModel();
|
|
14
14
|
```
|
|
15
15
|
|
|
@@ -42,7 +42,7 @@ await agent.getModel();
|
|
|
42
42
|
|
|
43
43
|
## Extended usage example
|
|
44
44
|
|
|
45
|
-
```typescript
|
|
45
|
+
```typescript
|
|
46
46
|
await agent.getModel({
|
|
47
47
|
requestContext: new RequestContext(),
|
|
48
48
|
});
|
|
@@ -66,4 +66,4 @@ await agent.getModel({
|
|
|
66
66
|
## Related
|
|
67
67
|
|
|
68
68
|
- [Agents overview](/docs/v1/agents/overview)
|
|
69
|
-
- [Request Context](/docs/v1/server
|
|
69
|
+
- [Request Context](/docs/v1/server/request-context)
|
|
@@ -9,7 +9,7 @@ The `.getTools()` method retrieves the tools configured for an agent, resolving
|
|
|
9
9
|
|
|
10
10
|
## Usage example
|
|
11
11
|
|
|
12
|
-
```typescript
|
|
12
|
+
```typescript
|
|
13
13
|
await agent.getTools();
|
|
14
14
|
```
|
|
15
15
|
|
|
@@ -42,7 +42,7 @@ await agent.getTools();
|
|
|
42
42
|
|
|
43
43
|
## Extended usage example
|
|
44
44
|
|
|
45
|
-
```typescript
|
|
45
|
+
```typescript
|
|
46
46
|
await agent.getTools({
|
|
47
47
|
requestContext: new RequestContext(),
|
|
48
48
|
});
|
|
@@ -9,7 +9,7 @@ The `.getVoice()` method retrieves the voice provider configured for an agent, r
|
|
|
9
9
|
|
|
10
10
|
## Usage example
|
|
11
11
|
|
|
12
|
-
```typescript
|
|
12
|
+
```typescript
|
|
13
13
|
await agent.getVoice();
|
|
14
14
|
```
|
|
15
15
|
|
|
@@ -42,7 +42,7 @@ await agent.getVoice();
|
|
|
42
42
|
|
|
43
43
|
## Extended usage example
|
|
44
44
|
|
|
45
|
-
```typescript
|
|
45
|
+
```typescript
|
|
46
46
|
await agent.getVoice({
|
|
47
47
|
requestContext: new RequestContext(),
|
|
48
48
|
});
|
|
@@ -9,7 +9,7 @@ The `.listAgents()` method retrieves the sub-agents configured for an agent, res
|
|
|
9
9
|
|
|
10
10
|
## Usage example
|
|
11
11
|
|
|
12
|
-
```typescript
|
|
12
|
+
```typescript
|
|
13
13
|
await agent.listAgents();
|
|
14
14
|
```
|
|
15
15
|
|
|
@@ -42,7 +42,7 @@ await agent.listAgents();
|
|
|
42
42
|
|
|
43
43
|
## Extended usage example
|
|
44
44
|
|
|
45
|
-
```typescript
|
|
45
|
+
```typescript
|
|
46
46
|
import { RequestContext } from "@mastra/core/request-context";
|
|
47
47
|
|
|
48
48
|
await agent.listAgents({
|
|
@@ -9,7 +9,7 @@ The `.listScorers()` method retrieves the scoring configuration configured for a
|
|
|
9
9
|
|
|
10
10
|
## Usage example
|
|
11
11
|
|
|
12
|
-
```typescript
|
|
12
|
+
```typescript
|
|
13
13
|
await agent.listScorers();
|
|
14
14
|
```
|
|
15
15
|
|
|
@@ -42,7 +42,7 @@ await agent.listScorers();
|
|
|
42
42
|
|
|
43
43
|
## Extended usage example
|
|
44
44
|
|
|
45
|
-
```typescript
|
|
45
|
+
```typescript
|
|
46
46
|
await agent.listScorers({
|
|
47
47
|
requestContext: new RequestContext(),
|
|
48
48
|
});
|
|
@@ -66,4 +66,4 @@ await agent.listScorers({
|
|
|
66
66
|
## Related
|
|
67
67
|
|
|
68
68
|
- [Agents overview](/docs/v1/agents/overview)
|
|
69
|
-
- [Request Context](/docs/v1/server
|
|
69
|
+
- [Request Context](/docs/v1/server/request-context)
|
|
@@ -9,7 +9,7 @@ The `.listTools()` method retrieves the tools configured for an agent, resolving
|
|
|
9
9
|
|
|
10
10
|
## Usage example
|
|
11
11
|
|
|
12
|
-
```typescript
|
|
12
|
+
```typescript
|
|
13
13
|
await agent.listTools();
|
|
14
14
|
```
|
|
15
15
|
|
|
@@ -42,7 +42,7 @@ await agent.listTools();
|
|
|
42
42
|
|
|
43
43
|
## Extended usage example
|
|
44
44
|
|
|
45
|
-
```typescript
|
|
45
|
+
```typescript
|
|
46
46
|
await agent.listTools({
|
|
47
47
|
requestContext: new RequestContext(),
|
|
48
48
|
});
|
|
@@ -9,7 +9,7 @@ The `.listWorkflows()` method retrieves the workflows configured for an agent, r
|
|
|
9
9
|
|
|
10
10
|
## Usage example
|
|
11
11
|
|
|
12
|
-
```typescript
|
|
12
|
+
```typescript
|
|
13
13
|
await agent.listWorkflows();
|
|
14
14
|
```
|
|
15
15
|
|
|
@@ -42,7 +42,7 @@ await agent.listWorkflows();
|
|
|
42
42
|
|
|
43
43
|
## Extended usage example
|
|
44
44
|
|
|
45
|
-
```typescript
|
|
45
|
+
```typescript
|
|
46
46
|
await agent.listWorkflows({
|
|
47
47
|
requestContext: new RequestContext(),
|
|
48
48
|
});
|
|
@@ -15,7 +15,7 @@ The `.network()` method enables multi-agent collaboration and routing. This meth
|
|
|
15
15
|
|
|
16
16
|
## Usage example
|
|
17
17
|
|
|
18
|
-
```typescript
|
|
18
|
+
```typescript
|
|
19
19
|
import { Agent } from "@mastra/core/agent";
|
|
20
20
|
import { agent1, agent2 } from "./agents";
|
|
21
21
|
import { workflow1 } from "./workflows";
|
|
@@ -7,7 +7,7 @@ import PropertiesTable from "@site/src/components/PropertiesTable";
|
|
|
7
7
|
|
|
8
8
|
# chatRoute()
|
|
9
9
|
|
|
10
|
-
Creates a chat route handler for streaming agent conversations using the AI SDK format. This function registers an HTTP `POST` endpoint that accepts messages, executes an agent, and streams the response back to the client in AI SDK-compatible format. You have to use it inside a [custom API route](/docs/v1/server
|
|
10
|
+
Creates a chat route handler for streaming agent conversations using the AI SDK format. This function registers an HTTP `POST` endpoint that accepts messages, executes an agent, and streams the response back to the client in AI SDK-compatible format. You have to use it inside a [custom API route](/docs/v1/server/custom-api-routes).
|
|
11
11
|
|
|
12
12
|
Use [`handleChatStream()`](/reference/v1/ai-sdk/handle-chat-stream) if you need a framework-agnostic handler.
|
|
13
13
|
|
|
@@ -15,7 +15,7 @@ Use [`handleChatStream()`](/reference/v1/ai-sdk/handle-chat-stream) if you need
|
|
|
15
15
|
|
|
16
16
|
This example shows how to set up a chat route at the `/chat` endpoint that uses an agent with the ID `weatherAgent`.
|
|
17
17
|
|
|
18
|
-
```typescript title="src/mastra/index.ts"
|
|
18
|
+
```typescript title="src/mastra/index.ts"
|
|
19
19
|
import { Mastra } from "@mastra/core";
|
|
20
20
|
import { chatRoute } from "@mastra/ai-sdk";
|
|
21
21
|
|
|
@@ -33,7 +33,7 @@ export const mastra = new Mastra({
|
|
|
33
33
|
|
|
34
34
|
You can also use dynamic agent routing based on an `agentId`. The URL `/chat/weatherAgent` will resolve to the agent with the ID `weatherAgent`.
|
|
35
35
|
|
|
36
|
-
```typescript title="src/mastra/index.ts"
|
|
36
|
+
```typescript title="src/mastra/index.ts"
|
|
37
37
|
import { Mastra } from "@mastra/core";
|
|
38
38
|
import { chatRoute } from "@mastra/ai-sdk";
|
|
39
39
|
|
|
@@ -7,7 +7,7 @@ import PropertiesTable from "@site/src/components/PropertiesTable";
|
|
|
7
7
|
|
|
8
8
|
# handleChatStream()
|
|
9
9
|
|
|
10
|
-
Framework-agnostic handler for streaming agent chat in AI SDK-compatible format. Use this function directly when you need to handle chat streaming outside Hono or Mastra's own [apiRoutes](/docs/v1/server
|
|
10
|
+
Framework-agnostic handler for streaming agent chat in AI SDK-compatible format. Use this function directly when you need to handle chat streaming outside Hono or Mastra's own [apiRoutes](/docs/v1/server/custom-api-routes) feature.
|
|
11
11
|
|
|
12
12
|
`handleChatStream()` returns a `ReadableStream` that you can wrap with [`createUIMessageStreamResponse()`](https://ai-sdk.dev/docs/reference/ai-sdk-ui/create-ui-message-stream-response).
|
|
13
13
|
|
|
@@ -17,7 +17,7 @@ Use [`chatRoute()`](/reference/v1/ai-sdk/chat-route) if you want to create a cha
|
|
|
17
17
|
|
|
18
18
|
Next.js App Router example:
|
|
19
19
|
|
|
20
|
-
```typescript title="app/api/chat/route.ts"
|
|
20
|
+
```typescript title="app/api/chat/route.ts"
|
|
21
21
|
import { handleChatStream } from '@mastra/ai-sdk';
|
|
22
22
|
import { createUIMessageStreamResponse } from 'ai';
|
|
23
23
|
import { mastra } from '@/src/mastra';
|
|
@@ -7,7 +7,7 @@ import PropertiesTable from "@site/src/components/PropertiesTable";
|
|
|
7
7
|
|
|
8
8
|
# handleNetworkStream()
|
|
9
9
|
|
|
10
|
-
Framework-agnostic handler for streaming network execution in AI SDK-compatible format. Use this function directly when you need to handle network streaming outside Hono or Mastra's own [apiRoutes](/docs/v1/server
|
|
10
|
+
Framework-agnostic handler for streaming network execution in AI SDK-compatible format. Use this function directly when you need to handle network streaming outside Hono or Mastra's own [apiRoutes](/docs/v1/server/custom-api-routes) feature.
|
|
11
11
|
|
|
12
12
|
`handleNetworkStream()` returns a `ReadableStream` that you can wrap with [`createUIMessageStreamResponse()`](https://ai-sdk.dev/docs/reference/ai-sdk-ui/create-ui-message-stream-response).
|
|
13
13
|
|
|
@@ -16,7 +16,7 @@ Use [`networkRoute()`](/reference/v1/ai-sdk/network-route) if you want to create
|
|
|
16
16
|
|
|
17
17
|
Next.js App Router example:
|
|
18
18
|
|
|
19
|
-
```typescript title="app/api/network/route.ts"
|
|
19
|
+
```typescript title="app/api/network/route.ts"
|
|
20
20
|
import { handleNetworkStream } from '@mastra/ai-sdk';
|
|
21
21
|
import { createUIMessageStreamResponse } from 'ai';
|
|
22
22
|
import { mastra } from '@/src/mastra';
|
|
@@ -7,7 +7,7 @@ import PropertiesTable from "@site/src/components/PropertiesTable";
|
|
|
7
7
|
|
|
8
8
|
# handleWorkflowStream()
|
|
9
9
|
|
|
10
|
-
Framework-agnostic handler for streaming workflow execution in AI SDK-compatible format. Use this function directly when you need to handle workflow streaming outside Hono or Mastra's own [apiRoutes](/docs/v1/server
|
|
10
|
+
Framework-agnostic handler for streaming workflow execution in AI SDK-compatible format. Use this function directly when you need to handle workflow streaming outside Hono or Mastra's own [apiRoutes](/docs/v1/server/custom-api-routes) feature.
|
|
11
11
|
|
|
12
12
|
`handleWorkflowStream()` returns a `ReadableStream` that you can wrap with [`createUIMessageStreamResponse()`](https://ai-sdk.dev/docs/reference/ai-sdk-ui/create-ui-message-stream-response).
|
|
13
13
|
|
|
@@ -25,7 +25,7 @@ See [Workflow Streaming](/docs/v1/streaming/workflow-streaming#streaming-agent-t
|
|
|
25
25
|
|
|
26
26
|
Next.js App Router example:
|
|
27
27
|
|
|
28
|
-
```typescript title="app/api/workflow/route.ts"
|
|
28
|
+
```typescript title="app/api/workflow/route.ts"
|
|
29
29
|
import { handleWorkflowStream } from '@mastra/ai-sdk';
|
|
30
30
|
import { createUIMessageStreamResponse } from 'ai';
|
|
31
31
|
import { mastra } from '@/src/mastra';
|
|
@@ -7,7 +7,7 @@ import PropertiesTable from "@site/src/components/PropertiesTable";
|
|
|
7
7
|
|
|
8
8
|
# networkRoute()
|
|
9
9
|
|
|
10
|
-
Creates a network route handler for streaming network execution using the AI SDK format. This function registers an HTTP `POST` endpoint that accepts messages, executes an agent network, and streams the response back to the client in AI SDK-compatible format. Agent networks allow a routing agent to delegate tasks to other agents. You have to use it inside a [custom API route](/docs/v1/server
|
|
10
|
+
Creates a network route handler for streaming network execution using the AI SDK format. This function registers an HTTP `POST` endpoint that accepts messages, executes an agent network, and streams the response back to the client in AI SDK-compatible format. Agent networks allow a routing agent to delegate tasks to other agents. You have to use it inside a [custom API route](/docs/v1/server/custom-api-routes).
|
|
11
11
|
|
|
12
12
|
Use [`handleNetworkStream()`](/reference/v1/ai-sdk/handle-network-stream) if you need a framework-agnostic handler.
|
|
13
13
|
|
|
@@ -15,7 +15,7 @@ Use [`handleNetworkStream()`](/reference/v1/ai-sdk/handle-network-stream) if you
|
|
|
15
15
|
|
|
16
16
|
This example shows how to set up a network route at the `/network` endpoint that uses an agent with the ID `weatherAgent`.
|
|
17
17
|
|
|
18
|
-
```typescript title="src/mastra/index.ts"
|
|
18
|
+
```typescript title="src/mastra/index.ts"
|
|
19
19
|
import { Mastra } from "@mastra/core";
|
|
20
20
|
import { networkRoute } from "@mastra/ai-sdk";
|
|
21
21
|
|
|
@@ -33,7 +33,7 @@ export const mastra = new Mastra({
|
|
|
33
33
|
|
|
34
34
|
You can also use dynamic agent routing based on an `agentId`. The URL `/network/weatherAgent` will resolve to the agent with the ID `weatherAgent`.
|
|
35
35
|
|
|
36
|
-
```typescript title="src/mastra/index.ts"
|
|
36
|
+
```typescript title="src/mastra/index.ts"
|
|
37
37
|
import { Mastra } from "@mastra/core";
|
|
38
38
|
import { networkRoute } from "@mastra/ai-sdk";
|
|
39
39
|
|
|
@@ -15,7 +15,7 @@ This is useful when building custom streaming endpoints outside Mastra's provide
|
|
|
15
15
|
|
|
16
16
|
Next.js App Router example:
|
|
17
17
|
|
|
18
|
-
```typescript title="app/api/chat/route.ts"
|
|
18
|
+
```typescript title="app/api/chat/route.ts"
|
|
19
19
|
import { mastra } from "../../mastra";
|
|
20
20
|
import { createUIMessageStream, createUIMessageStreamResponse } from "ai";
|
|
21
21
|
import { toAISdkStream } from "@mastra/ai-sdk";
|
|
@@ -124,7 +124,7 @@ The second parameter is an options object:
|
|
|
124
124
|
|
|
125
125
|
### Converting a workflow stream
|
|
126
126
|
|
|
127
|
-
```typescript title="app/api/workflow/route.ts"
|
|
127
|
+
```typescript title="app/api/workflow/route.ts" {13}
|
|
128
128
|
import { mastra } from "../../mastra";
|
|
129
129
|
import { createUIMessageStream, createUIMessageStreamResponse } from "ai";
|
|
130
130
|
import { toAISdkStream } from "@mastra/ai-sdk";
|
|
@@ -151,7 +151,7 @@ export async function POST(req: Request) {
|
|
|
151
151
|
|
|
152
152
|
### Converting a network stream
|
|
153
153
|
|
|
154
|
-
```typescript title="app/api/network/route.ts"
|
|
154
|
+
```typescript title="app/api/network/route.ts" {12}
|
|
155
155
|
import { mastra } from "../../mastra";
|
|
156
156
|
import { createUIMessageStream, createUIMessageStreamResponse } from "ai";
|
|
157
157
|
import { toAISdkStream } from "@mastra/ai-sdk";
|
|
@@ -177,7 +177,7 @@ export async function POST(req: Request) {
|
|
|
177
177
|
|
|
178
178
|
### Converting an agent stream with reasoning enabled
|
|
179
179
|
|
|
180
|
-
```typescript title="app/api/reasoning/route.ts"
|
|
180
|
+
```typescript title="app/api/reasoning/route.ts" {8-12,17-20}
|
|
181
181
|
import { mastra } from "../../mastra";
|
|
182
182
|
import { createUIMessageStream, createUIMessageStreamResponse } from "ai";
|
|
183
183
|
import { toAISdkStream } from "@mastra/ai-sdk";
|
|
@@ -211,7 +211,7 @@ export async function POST(req: Request) {
|
|
|
211
211
|
|
|
212
212
|
### Using messageMetadata
|
|
213
213
|
|
|
214
|
-
```typescript title="app/api/chat-with-metadata/route.ts"
|
|
214
|
+
```typescript title="app/api/chat-with-metadata/route.ts" {13-19}
|
|
215
215
|
import { mastra } from "../../mastra";
|
|
216
216
|
import { createUIMessageStream, createUIMessageStreamResponse } from "ai";
|
|
217
217
|
import { toAISdkStream } from "@mastra/ai-sdk";
|
|
@@ -246,7 +246,7 @@ export async function POST(req: Request) {
|
|
|
246
246
|
|
|
247
247
|
If you're using the Mastra client SDK (`@mastra/client-js`) on the client side and want to convert streams to AI SDK format:
|
|
248
248
|
|
|
249
|
-
```typescript title="client-stream-to-ai-sdk.ts"
|
|
249
|
+
```typescript title="client-stream-to-ai-sdk.ts" {14-23,25-35}
|
|
250
250
|
import { MastraClient } from "@mastra/client-js";
|
|
251
251
|
import { createUIMessageStream } from "ai";
|
|
252
252
|
import { toAISdkStream } from "@mastra/ai-sdk";
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "Reference: toAISdkV4Messages() | AI SDK"
|
|
3
|
+
description: API reference for toAISdkV4Messages(), a function to convert Mastra messages to AI SDK v4 UI messages.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
import PropertiesTable from "@site/src/components/PropertiesTable";
|
|
7
|
+
|
|
8
|
+
# toAISdkV4Messages()
|
|
9
|
+
|
|
10
|
+
Converts messages from various input formats to AI SDK V4 UI message format. This function accepts messages in multiple formats (strings, AI SDK V4/V5 messages, Mastra DB messages, etc.) and normalizes them to the AI SDK V4 `UIMessage` format, which is suitable for use with AI SDK UI components like `useChat()`.
|
|
11
|
+
|
|
12
|
+
## Usage example
|
|
13
|
+
|
|
14
|
+
```typescript title="app/chat/page.tsx"
|
|
15
|
+
import { toAISdkV4Messages } from "@mastra/ai-sdk";
|
|
16
|
+
import { useChat } from "ai/react"; // AI SDK V4
|
|
17
|
+
|
|
18
|
+
// Stored messages from your database, memory or API
|
|
19
|
+
const storedMessages = [
|
|
20
|
+
{ id: "1", role: "user", parts: [{ type: "text", text: "Hello" }] },
|
|
21
|
+
{ id: "2", role: "assistant", parts: [{ type: "text", text: "Hi there!" }] }
|
|
22
|
+
];
|
|
23
|
+
|
|
24
|
+
export default function Chat() {
|
|
25
|
+
const { messages } = useChat({
|
|
26
|
+
initialMessages: toAISdkV4Messages(storedMessages)
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
return (
|
|
30
|
+
<div>
|
|
31
|
+
{messages.map((message) => (
|
|
32
|
+
<div key={message.id}>
|
|
33
|
+
{message.role}: {message.content}
|
|
34
|
+
</div>
|
|
35
|
+
))}
|
|
36
|
+
</div>
|
|
37
|
+
);
|
|
38
|
+
}
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
## Parameters
|
|
42
|
+
|
|
43
|
+
<PropertiesTable
|
|
44
|
+
content={[
|
|
45
|
+
{
|
|
46
|
+
name: "messages",
|
|
47
|
+
type: "MessageListInput",
|
|
48
|
+
description: "Messages to convert. Can be a string, array of strings, a single message object, or an array of message objects in any supported format.",
|
|
49
|
+
isOptional: false,
|
|
50
|
+
},
|
|
51
|
+
]}
|
|
52
|
+
/>
|
|
53
|
+
|
|
54
|
+
## Returns
|
|
55
|
+
|
|
56
|
+
Returns an array of AI SDK V4 `UIMessage` objects with the following structure:
|
|
57
|
+
|
|
58
|
+
<PropertiesTable
|
|
59
|
+
content={[
|
|
60
|
+
{
|
|
61
|
+
name: "id",
|
|
62
|
+
type: "string",
|
|
63
|
+
description: "Unique message identifier.",
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
name: "role",
|
|
67
|
+
type: "'user' | 'assistant' | 'system'",
|
|
68
|
+
description: "The role of the message sender.",
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
name: "content",
|
|
72
|
+
type: "string",
|
|
73
|
+
description: "Text content of the message.",
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
name: "parts",
|
|
77
|
+
type: "UIMessagePart[]",
|
|
78
|
+
description: "Array of UI parts including text, tool-invocation, file, reasoning, source, and step markers.",
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
name: "createdAt",
|
|
82
|
+
type: "Date",
|
|
83
|
+
description: "Message creation timestamp.",
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
name: "toolInvocations",
|
|
87
|
+
type: "ToolInvocation[]",
|
|
88
|
+
description: "Array of tool invocations for assistant messages.",
|
|
89
|
+
isOptional: true,
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
name: "experimental_attachments",
|
|
93
|
+
type: "Attachment[]",
|
|
94
|
+
description: "File attachments on the message.",
|
|
95
|
+
isOptional: true,
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
name: "metadata",
|
|
99
|
+
type: "Record<string, unknown>",
|
|
100
|
+
description: "Custom metadata attached to the message.",
|
|
101
|
+
isOptional: true,
|
|
102
|
+
},
|
|
103
|
+
]}
|
|
104
|
+
/>
|
|
105
|
+
|
|
106
|
+
## Examples
|
|
107
|
+
|
|
108
|
+
### Converting simple text messages
|
|
109
|
+
|
|
110
|
+
```typescript
|
|
111
|
+
import { toAISdkV4Messages } from "@mastra/ai-sdk";
|
|
112
|
+
|
|
113
|
+
const messages = toAISdkV4Messages(["Hello", "How can I help you today?"]);
|
|
114
|
+
// Returns array of UIMessage objects with user role and content string
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
### Loading messages with Mastra client
|
|
118
|
+
|
|
119
|
+
```typescript
|
|
120
|
+
import { MastraClient } from "@mastra/client-js";
|
|
121
|
+
import { toAISdkV4Messages } from "@mastra/ai-sdk";
|
|
122
|
+
|
|
123
|
+
const client = new MastraClient();
|
|
124
|
+
|
|
125
|
+
const { messages } = await client.listThreadMessages("thread-id", { agentId: "myAgent" });
|
|
126
|
+
const uiMessages = toAISdkV4Messages(messages);
|
|
127
|
+
```
|