@mastra/mcp-docs-server 1.0.0-beta.1 → 1.0.0-beta.10
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 +1 -15
- package/.docs/organized/changelogs/%40internal%2Fexternal-types.md +1 -7
- package/.docs/organized/changelogs/%40internal%2Fstorage-test-utils.md +201 -1
- package/.docs/organized/changelogs/%40internal%2Ftypes-builder.md +1 -55
- package/.docs/organized/changelogs/%40mastra%2Fagent-builder.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fai-sdk.md +250 -50
- package/.docs/organized/changelogs/%40mastra%2Fastra.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fauth.md +6 -0
- package/.docs/organized/changelogs/%40mastra%2Fchroma.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fclickhouse.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fclient-js.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fcloudflare-d1.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fcloudflare.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fcodemod.md +26 -0
- package/.docs/organized/changelogs/%40mastra%2Fconvex.md +89 -0
- package/.docs/organized/changelogs/%40mastra%2Fcore.md +393 -193
- package/.docs/organized/changelogs/%40mastra%2Fcouchbase.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloud.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloudflare.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-netlify.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-vercel.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fdeployer.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fduckdb.md +42 -0
- package/.docs/organized/changelogs/%40mastra%2Fdynamodb.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Felasticsearch.md +61 -0
- package/.docs/organized/changelogs/%40mastra%2Fevals.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Flance.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Flibsql.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Floggers.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fmcp-docs-server.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fmcp-registry-registry.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fmcp.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fmemory.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fmongodb.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fmssql.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fopensearch.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fpg.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fpinecone.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fplayground-ui.md +234 -34
- package/.docs/organized/changelogs/%40mastra%2Fqdrant.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Frag.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Freact.md +128 -1
- package/.docs/organized/changelogs/%40mastra%2Fs3vectors.md +18 -0
- package/.docs/organized/changelogs/%40mastra%2Fschema-compat.md +42 -0
- package/.docs/organized/changelogs/%40mastra%2Fserver.md +244 -44
- package/.docs/organized/changelogs/%40mastra%2Fturbopuffer.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fupstash.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fvectorize.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-azure.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-cloudflare.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-deepgram.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-elevenlabs.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-gladia.md +92 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-google-gemini-live.md +67 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-google.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-murf.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-openai-realtime.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-openai.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-playai.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-sarvam.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-speechify.md +201 -1
- package/.docs/organized/changelogs/create-mastra.md +201 -1
- package/.docs/organized/changelogs/mastra.md +201 -1
- package/.docs/organized/code-examples/agui.md +1 -0
- package/.docs/organized/code-examples/ai-elements.md +2 -2
- package/.docs/organized/code-examples/ai-sdk-useChat.md +2 -2
- package/.docs/organized/code-examples/ai-sdk-v5.md +3 -2
- package/.docs/organized/code-examples/assistant-ui.md +2 -2
- 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 +2 -2
- package/.docs/organized/code-examples/client-side-tools.md +1 -1
- package/.docs/organized/code-examples/crypto-chatbot.md +2 -2
- package/.docs/organized/code-examples/fireworks-r1.md +1 -1
- package/.docs/organized/code-examples/heads-up-game.md +1 -1
- package/.docs/organized/code-examples/mcp-configuration.md +0 -3
- package/.docs/organized/code-examples/mcp-server-adapters.md +720 -0
- package/.docs/organized/code-examples/memory-per-resource-example.md +1 -1
- package/.docs/organized/code-examples/memory-with-processors.md +1 -1
- package/.docs/organized/code-examples/openapi-spec-writer.md +1 -1
- package/.docs/organized/code-examples/processors-with-ai-sdk.md +14 -0
- package/.docs/organized/code-examples/quick-start.md +2 -2
- package/.docs/organized/code-examples/server-app-access.md +342 -0
- package/.docs/organized/code-examples/server-express-adapter.md +87 -0
- package/.docs/organized/code-examples/server-hono-adapter.md +85 -0
- package/.docs/organized/code-examples/stock-price-tool.md +1 -21
- 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 +56 -10
- package/.docs/raw/agents/agent-approval.mdx +189 -0
- package/.docs/raw/agents/agent-memory.mdx +1 -1
- package/.docs/raw/agents/guardrails.mdx +27 -24
- package/.docs/raw/agents/networks.mdx +3 -3
- package/.docs/raw/agents/overview.mdx +18 -167
- package/.docs/raw/agents/processors.mdx +279 -0
- package/.docs/raw/agents/structured-output.mdx +224 -0
- package/.docs/raw/agents/using-tools.mdx +14 -14
- package/.docs/raw/auth/auth0.mdx +1 -1
- package/.docs/raw/auth/clerk.mdx +1 -1
- package/.docs/raw/auth/firebase.mdx +1 -1
- package/.docs/raw/auth/index.mdx +1 -1
- package/.docs/raw/auth/jwt.mdx +1 -1
- package/.docs/raw/auth/supabase.mdx +1 -1
- package/.docs/raw/auth/workos.mdx +1 -1
- package/.docs/raw/community/contributing-templates.mdx +1 -1
- package/.docs/raw/community/discord.mdx +2 -2
- package/.docs/raw/community/licensing.mdx +1 -1
- package/.docs/raw/course/01-first-agent/05-running-playground.md +5 -5
- package/.docs/raw/course/01-first-agent/09-testing-your-agent.md +3 -3
- package/.docs/raw/course/01-first-agent/13-testing-your-tool.md +3 -3
- package/.docs/raw/course/01-first-agent/17-testing-memory.md +2 -2
- package/.docs/raw/course/04-workflows/07-using-playground.md +1 -1
- package/.docs/raw/deployment/{server-deployment.mdx → building-mastra.mdx} +4 -4
- package/.docs/raw/deployment/cloud-providers/amazon-ec2.mdx +2 -2
- package/.docs/raw/deployment/cloud-providers/aws-lambda.mdx +3 -3
- package/.docs/raw/deployment/cloud-providers/azure-app-services.mdx +2 -2
- package/.docs/raw/deployment/{serverless-platforms → cloud-providers}/cloudflare-deployer.mdx +1 -1
- package/.docs/raw/deployment/cloud-providers/digital-ocean.mdx +2 -2
- package/.docs/raw/deployment/cloud-providers/index.mdx +26 -29
- package/.docs/raw/deployment/{serverless-platforms → cloud-providers}/netlify-deployer.mdx +45 -14
- package/.docs/raw/deployment/{serverless-platforms → cloud-providers}/vercel-deployer.mdx +1 -1
- package/.docs/raw/{mastra-cloud → deployment/mastra-cloud}/dashboard.mdx +3 -3
- package/.docs/raw/deployment/mastra-cloud/observability.mdx +53 -0
- package/.docs/raw/{mastra-cloud → deployment/mastra-cloud}/overview.mdx +3 -3
- package/.docs/raw/{mastra-cloud → deployment/mastra-cloud}/setting-up.mdx +4 -4
- package/.docs/raw/deployment/monorepo.mdx +3 -3
- package/.docs/raw/deployment/overview.mdx +7 -7
- package/.docs/raw/deployment/web-framework.mdx +6 -6
- package/.docs/raw/evals/{off-the-shelf-scorers.mdx → built-in-scorers.mdx} +17 -15
- package/.docs/raw/evals/custom-scorers.mdx +4 -6
- package/.docs/raw/evals/overview.mdx +5 -6
- package/.docs/raw/evals/running-in-ci.mdx +2 -4
- package/.docs/raw/getting-started/{installation.mdx → manual-install.mdx} +6 -80
- package/.docs/raw/getting-started/mcp-docs-server.mdx +6 -6
- package/.docs/raw/getting-started/project-structure.mdx +2 -2
- package/.docs/raw/getting-started/start.mdx +72 -0
- package/.docs/raw/getting-started/studio.mdx +8 -6
- package/.docs/raw/guides/agent-frameworks/ai-sdk.mdx +147 -0
- package/.docs/raw/guides/build-your-ui/ai-sdk-ui.mdx +627 -0
- package/.docs/raw/{frameworks/agentic-uis → guides/build-your-ui}/assistant-ui.mdx +71 -19
- package/.docs/raw/guides/build-your-ui/copilotkit.mdx +206 -0
- package/.docs/raw/{frameworks/web-frameworks → guides/getting-started}/astro.mdx +24 -26
- package/.docs/raw/{frameworks/servers → guides/getting-started}/express.mdx +4 -5
- package/.docs/raw/guides/{quickstarts/nextjs.mdx → getting-started/next-js.mdx} +26 -25
- package/.docs/raw/guides/getting-started/quickstart.mdx +97 -0
- package/.docs/raw/{frameworks/web-frameworks → guides/getting-started}/sveltekit.mdx +24 -26
- package/.docs/raw/{frameworks/web-frameworks → guides/getting-started}/vite-react.mdx +7 -7
- package/.docs/raw/guides/guide/ai-recruiter.mdx +2 -3
- package/.docs/raw/guides/guide/chef-michel.mdx +2 -3
- package/.docs/raw/guides/guide/notes-mcp-server.mdx +2 -2
- package/.docs/raw/guides/guide/research-assistant.mdx +7 -8
- package/.docs/raw/guides/guide/stock-agent.mdx +4 -6
- package/.docs/raw/guides/guide/web-search.mdx +12 -10
- package/.docs/raw/guides/guide/whatsapp-chat-bot.mdx +421 -0
- package/.docs/raw/guides/index.mdx +3 -35
- package/.docs/raw/guides/migrations/agentnetwork.mdx +4 -4
- package/.docs/raw/guides/migrations/ai-sdk-v4-to-v5.mdx +119 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/agent.mdx +51 -1
- package/.docs/raw/guides/migrations/upgrade-to-v1/client.mdx +42 -2
- package/.docs/raw/guides/migrations/upgrade-to-v1/evals.mdx +31 -1
- package/.docs/raw/guides/migrations/upgrade-to-v1/mastra.mdx +27 -3
- package/.docs/raw/guides/migrations/upgrade-to-v1/mcp.mdx +1 -1
- package/.docs/raw/guides/migrations/upgrade-to-v1/memory.mdx +28 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/overview.mdx +25 -3
- package/.docs/raw/guides/migrations/upgrade-to-v1/storage.mdx +80 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/tools.mdx +68 -3
- package/.docs/raw/guides/migrations/upgrade-to-v1/vectors.mdx +25 -1
- package/.docs/raw/guides/migrations/upgrade-to-v1/workflows.mdx +174 -1
- package/.docs/raw/guides/migrations/vnext-to-standard-apis.mdx +2 -2
- package/.docs/raw/index.mdx +3 -3
- package/.docs/raw/mcp/overview.mdx +358 -0
- package/.docs/raw/mcp/publishing-mcp-server.mdx +139 -0
- package/.docs/raw/memory/conversation-history.mdx +1 -1
- package/.docs/raw/memory/memory-processors.mdx +265 -80
- package/.docs/raw/memory/overview.mdx +2 -2
- package/.docs/raw/memory/semantic-recall.mdx +9 -9
- package/.docs/raw/memory/storage/memory-with-libsql.mdx +3 -8
- package/.docs/raw/memory/storage/memory-with-mongodb.mdx +150 -0
- package/.docs/raw/memory/storage/memory-with-pg.mdx +3 -8
- package/.docs/raw/memory/storage/memory-with-upstash.mdx +3 -8
- package/.docs/raw/memory/threads-and-resources.mdx +4 -4
- package/.docs/raw/memory/working-memory.mdx +16 -8
- package/.docs/raw/{logging.mdx → observability/logging.mdx} +7 -7
- package/.docs/raw/observability/overview.mdx +3 -4
- package/.docs/raw/observability/tracing/bridges/otel.mdx +200 -0
- package/.docs/raw/observability/tracing/exporters/arize.mdx +37 -1
- package/.docs/raw/observability/tracing/exporters/braintrust.mdx +20 -1
- package/.docs/raw/observability/tracing/exporters/cloud.mdx +2 -2
- package/.docs/raw/observability/tracing/exporters/default.mdx +1 -1
- package/.docs/raw/observability/tracing/exporters/langfuse.mdx +84 -1
- package/.docs/raw/observability/tracing/exporters/langsmith.mdx +13 -1
- package/.docs/raw/observability/tracing/exporters/otel.mdx +123 -25
- package/.docs/raw/observability/tracing/exporters/posthog.mdx +127 -0
- package/.docs/raw/observability/tracing/overview.mdx +80 -9
- package/.docs/raw/observability/tracing/processors/sensitive-data-filter.mdx +1 -2
- package/.docs/raw/rag/chunking-and-embedding.mdx +16 -17
- package/.docs/raw/rag/overview.mdx +4 -3
- package/.docs/raw/rag/retrieval.mdx +44 -39
- package/.docs/raw/rag/vector-databases.mdx +94 -3
- package/.docs/raw/reference/agents/agent.mdx +8 -12
- package/.docs/raw/reference/agents/generate.mdx +67 -99
- package/.docs/raw/reference/agents/generateLegacy.mdx +3 -3
- package/.docs/raw/reference/agents/getDefaultGenerateOptions.mdx +1 -1
- package/.docs/raw/reference/agents/getDefaultOptions.mdx +1 -1
- package/.docs/raw/reference/agents/getDefaultStreamOptions.mdx +1 -1
- package/.docs/raw/reference/agents/getDescription.mdx +1 -1
- package/.docs/raw/reference/agents/getInstructions.mdx +1 -1
- package/.docs/raw/reference/agents/getLLM.mdx +2 -2
- package/.docs/raw/reference/agents/getMemory.mdx +1 -1
- package/.docs/raw/reference/agents/getModel.mdx +1 -1
- package/.docs/raw/reference/agents/getTools.mdx +69 -0
- package/.docs/raw/reference/agents/getVoice.mdx +1 -1
- package/.docs/raw/reference/agents/listAgents.mdx +1 -1
- package/.docs/raw/reference/agents/listScorers.mdx +1 -1
- package/.docs/raw/reference/agents/listTools.mdx +2 -2
- package/.docs/raw/reference/agents/listWorkflows.mdx +1 -1
- package/.docs/raw/reference/agents/network.mdx +33 -72
- package/.docs/raw/reference/ai-sdk/chat-route.mdx +127 -0
- package/.docs/raw/reference/ai-sdk/handle-chat-stream.mdx +117 -0
- package/.docs/raw/reference/ai-sdk/handle-network-stream.mdx +64 -0
- package/.docs/raw/reference/ai-sdk/handle-workflow-stream.mdx +116 -0
- package/.docs/raw/reference/ai-sdk/network-route.mdx +99 -0
- package/.docs/raw/reference/ai-sdk/to-ai-sdk-stream.mdx +289 -0
- package/.docs/raw/reference/ai-sdk/with-mastra.mdx +119 -0
- package/.docs/raw/reference/ai-sdk/workflow-route.mdx +110 -0
- package/.docs/raw/reference/auth/auth0.mdx +1 -1
- package/.docs/raw/reference/auth/clerk.mdx +1 -1
- package/.docs/raw/reference/auth/firebase.mdx +1 -1
- package/.docs/raw/reference/auth/jwt.mdx +1 -1
- package/.docs/raw/reference/auth/supabase.mdx +1 -1
- package/.docs/raw/reference/auth/workos.mdx +1 -1
- package/.docs/raw/reference/cli/create-mastra.mdx +1 -1
- package/.docs/raw/reference/cli/mastra.mdx +19 -6
- package/.docs/raw/reference/client-js/agents.mdx +252 -68
- package/.docs/raw/reference/client-js/error-handling.mdx +1 -1
- package/.docs/raw/reference/client-js/logs.mdx +1 -1
- package/.docs/raw/reference/client-js/mastra-client.mdx +4 -4
- package/.docs/raw/reference/client-js/memory.mdx +48 -2
- package/.docs/raw/reference/client-js/observability.mdx +1 -1
- package/.docs/raw/reference/client-js/telemetry.mdx +1 -1
- package/.docs/raw/reference/client-js/tools.mdx +1 -1
- package/.docs/raw/reference/client-js/vectors.mdx +1 -1
- package/.docs/raw/reference/client-js/workflows.mdx +93 -64
- package/.docs/raw/reference/core/addGateway.mdx +59 -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/getGateway.mdx +59 -0
- package/.docs/raw/reference/core/getGatewayById.mdx +62 -0
- package/.docs/raw/reference/core/getLogger.mdx +2 -2
- package/.docs/raw/reference/core/getMCPServer.mdx +2 -2
- package/.docs/raw/reference/core/getMCPServerById.mdx +2 -2
- package/.docs/raw/reference/core/getMemory.mdx +73 -0
- package/.docs/raw/reference/core/getScorer.mdx +1 -1
- package/.docs/raw/reference/core/getScorerById.mdx +1 -1
- package/.docs/raw/reference/core/getServer.mdx +2 -2
- package/.docs/raw/reference/core/getStorage.mdx +1 -1
- package/.docs/raw/reference/core/getStoredAgentById.mdx +183 -0
- 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/listGateways.mdx +53 -0
- package/.docs/raw/reference/core/listLogs.mdx +2 -2
- package/.docs/raw/reference/core/listLogsByRunId.mdx +2 -2
- package/.docs/raw/reference/core/listMCPServers.mdx +2 -2
- package/.docs/raw/reference/core/listMemory.mdx +70 -0
- package/.docs/raw/reference/core/listScorers.mdx +1 -1
- package/.docs/raw/reference/core/listStoredAgents.mdx +151 -0
- package/.docs/raw/reference/core/listVectors.mdx +1 -1
- package/.docs/raw/reference/core/listWorkflows.mdx +1 -1
- package/.docs/raw/reference/core/mastra-class.mdx +17 -1
- package/.docs/raw/reference/core/mastra-model-gateway.mdx +227 -0
- package/.docs/raw/reference/core/setLogger.mdx +2 -2
- package/.docs/raw/reference/core/setStorage.mdx +1 -1
- package/.docs/raw/reference/core/setTelemetry.mdx +2 -2
- package/.docs/raw/reference/deployer/cloudflare.mdx +1 -1
- package/.docs/raw/reference/deployer/deployer.mdx +1 -1
- package/.docs/raw/reference/deployer/netlify.mdx +2 -3
- package/.docs/raw/reference/deployer/vercel.mdx +1 -1
- package/.docs/raw/reference/evals/answer-relevancy.mdx +29 -99
- package/.docs/raw/reference/evals/answer-similarity.mdx +13 -259
- package/.docs/raw/reference/evals/bias.mdx +30 -88
- package/.docs/raw/reference/evals/completeness.mdx +32 -91
- package/.docs/raw/reference/evals/content-similarity.mdx +29 -89
- package/.docs/raw/reference/evals/context-precision.mdx +29 -131
- package/.docs/raw/reference/evals/context-relevance.mdx +12 -12
- package/.docs/raw/reference/evals/create-scorer.mdx +1 -1
- package/.docs/raw/reference/evals/faithfulness.mdx +29 -102
- package/.docs/raw/reference/evals/hallucination.mdx +29 -104
- package/.docs/raw/reference/evals/keyword-coverage.mdx +29 -108
- package/.docs/raw/reference/evals/mastra-scorer.mdx +1 -1
- package/.docs/raw/reference/evals/noise-sensitivity.mdx +12 -12
- package/.docs/raw/reference/evals/prompt-alignment.mdx +16 -16
- package/.docs/raw/reference/evals/run-evals.mdx +1 -1
- package/.docs/raw/reference/evals/scorer-utils.mdx +362 -0
- package/.docs/raw/reference/evals/textual-difference.mdx +28 -101
- package/.docs/raw/reference/evals/tone-consistency.mdx +26 -99
- package/.docs/raw/reference/evals/tool-call-accuracy.mdx +8 -8
- package/.docs/raw/reference/evals/toxicity.mdx +30 -93
- package/.docs/raw/reference/index.mdx +1 -0
- package/.docs/raw/reference/logging/pino-logger.mdx +2 -2
- package/.docs/raw/reference/memory/createThread.mdx +1 -1
- package/.docs/raw/reference/memory/deleteMessages.mdx +1 -1
- package/.docs/raw/reference/memory/getThreadById.mdx +1 -1
- package/.docs/raw/reference/memory/listThreadsByResourceId.mdx +1 -1
- package/.docs/raw/reference/memory/memory-class.mdx +6 -8
- package/.docs/raw/reference/memory/query.mdx +1 -1
- package/.docs/raw/reference/memory/recall.mdx +1 -1
- package/.docs/raw/reference/observability/tracing/bridges/otel.mdx +177 -0
- package/.docs/raw/reference/observability/tracing/configuration.mdx +1 -5
- package/.docs/raw/reference/observability/tracing/exporters/arize.mdx +30 -1
- package/.docs/raw/reference/observability/tracing/exporters/braintrust.mdx +1 -1
- package/.docs/raw/reference/observability/tracing/exporters/cloud-exporter.mdx +1 -1
- package/.docs/raw/reference/observability/tracing/exporters/console-exporter.mdx +1 -1
- package/.docs/raw/reference/observability/tracing/exporters/default-exporter.mdx +1 -1
- package/.docs/raw/reference/observability/tracing/exporters/langfuse.mdx +44 -1
- package/.docs/raw/reference/observability/tracing/exporters/langsmith.mdx +18 -2
- package/.docs/raw/reference/observability/tracing/exporters/otel.mdx +34 -44
- package/.docs/raw/reference/observability/tracing/exporters/posthog.mdx +132 -0
- package/.docs/raw/reference/observability/tracing/instances.mdx +1 -5
- package/.docs/raw/reference/observability/tracing/interfaces.mdx +30 -5
- package/.docs/raw/reference/observability/tracing/processors/sensitive-data-filter.mdx +1 -1
- package/.docs/raw/reference/observability/tracing/spans.mdx +1 -5
- package/.docs/raw/reference/processors/batch-parts-processor.mdx +2 -2
- package/.docs/raw/reference/processors/language-detector.mdx +11 -4
- package/.docs/raw/reference/processors/message-history-processor.mdx +131 -0
- package/.docs/raw/reference/processors/moderation-processor.mdx +13 -6
- package/.docs/raw/reference/processors/pii-detector.mdx +13 -6
- package/.docs/raw/reference/processors/processor-interface.mdx +502 -0
- package/.docs/raw/reference/processors/prompt-injection-detector.mdx +11 -4
- package/.docs/raw/reference/processors/semantic-recall-processor.mdx +197 -0
- package/.docs/raw/reference/processors/system-prompt-scrubber.mdx +4 -5
- package/.docs/raw/reference/processors/token-limiter-processor.mdx +3 -3
- package/.docs/raw/reference/processors/tool-call-filter.mdx +125 -0
- package/.docs/raw/reference/processors/unicode-normalizer.mdx +2 -2
- package/.docs/raw/reference/processors/working-memory-processor.mdx +221 -0
- package/.docs/raw/reference/rag/chunk.mdx +1 -1
- package/.docs/raw/reference/rag/database-config.mdx +1 -1
- package/.docs/raw/reference/rag/document.mdx +1 -1
- package/.docs/raw/reference/rag/embeddings.mdx +6 -6
- package/.docs/raw/reference/rag/extract-params.mdx +1 -1
- package/.docs/raw/reference/rag/graph-rag.mdx +1 -1
- package/.docs/raw/reference/rag/metadata-filters.mdx +1 -1
- package/.docs/raw/reference/rag/rerank.mdx +2 -3
- package/.docs/raw/reference/rag/rerankWithScorer.mdx +1 -2
- package/.docs/raw/reference/server/create-route.mdx +328 -0
- package/.docs/raw/reference/server/express-adapter.mdx +260 -0
- package/.docs/raw/reference/server/hono-adapter.mdx +242 -0
- package/.docs/raw/reference/server/mastra-server.mdx +345 -0
- package/.docs/raw/reference/server/routes.mdx +250 -0
- package/.docs/raw/reference/storage/cloudflare-d1.mdx +38 -1
- package/.docs/raw/reference/storage/cloudflare.mdx +1 -1
- package/.docs/raw/reference/storage/convex.mdx +164 -0
- package/.docs/raw/reference/storage/dynamodb.mdx +1 -1
- package/.docs/raw/reference/storage/lance.mdx +34 -1
- package/.docs/raw/reference/storage/libsql.mdx +38 -1
- package/.docs/raw/reference/storage/mongodb.mdx +40 -1
- package/.docs/raw/reference/storage/mssql.mdx +38 -1
- package/.docs/raw/reference/storage/postgresql.mdx +38 -1
- package/.docs/raw/reference/storage/upstash.mdx +1 -1
- package/.docs/raw/reference/streaming/ChunkType.mdx +2 -2
- package/.docs/raw/reference/streaming/agents/MastraModelOutput.mdx +1 -1
- package/.docs/raw/reference/streaming/agents/stream.mdx +68 -95
- package/.docs/raw/reference/streaming/agents/streamLegacy.mdx +1 -1
- package/.docs/raw/reference/streaming/workflows/observeStream.mdx +8 -10
- package/.docs/raw/reference/streaming/workflows/{resumeStreamVNext.mdx → resumeStream.mdx} +51 -11
- package/.docs/raw/reference/streaming/workflows/stream.mdx +84 -25
- package/.docs/raw/reference/streaming/workflows/timeTravelStream.mdx +170 -0
- package/.docs/raw/reference/templates/overview.mdx +2 -5
- package/.docs/raw/reference/tools/client.mdx +2 -3
- package/.docs/raw/reference/tools/create-tool.mdx +135 -4
- package/.docs/raw/reference/tools/document-chunker-tool.mdx +1 -1
- package/.docs/raw/reference/tools/graph-rag-tool.mdx +7 -7
- package/.docs/raw/reference/tools/mcp-client.mdx +131 -23
- package/.docs/raw/reference/tools/mcp-server.mdx +56 -8
- package/.docs/raw/reference/tools/vector-query-tool.mdx +16 -17
- package/.docs/raw/reference/vectors/astra.mdx +1 -1
- package/.docs/raw/reference/vectors/chroma.mdx +82 -2
- package/.docs/raw/reference/vectors/convex.mdx +429 -0
- package/.docs/raw/reference/vectors/couchbase.mdx +25 -18
- package/.docs/raw/reference/vectors/duckdb.mdx +462 -0
- package/.docs/raw/reference/vectors/elasticsearch.mdx +310 -0
- package/.docs/raw/reference/vectors/lance.mdx +39 -23
- package/.docs/raw/reference/vectors/libsql.mdx +36 -3
- package/.docs/raw/reference/vectors/mongodb.mdx +36 -3
- package/.docs/raw/reference/vectors/opensearch.mdx +38 -17
- package/.docs/raw/reference/vectors/pg.mdx +44 -37
- package/.docs/raw/reference/vectors/pinecone.mdx +70 -3
- package/.docs/raw/reference/vectors/qdrant.mdx +37 -2
- package/.docs/raw/reference/vectors/s3vectors.mdx +1 -1
- package/.docs/raw/reference/vectors/turbopuffer.mdx +75 -1
- package/.docs/raw/reference/vectors/upstash.mdx +1 -1
- package/.docs/raw/reference/vectors/vectorize.mdx +1 -1
- package/.docs/raw/reference/voice/azure.mdx +96 -81
- package/.docs/raw/reference/voice/cloudflare.mdx +1 -1
- package/.docs/raw/reference/voice/composite-voice.mdx +72 -29
- package/.docs/raw/reference/voice/deepgram.mdx +1 -1
- package/.docs/raw/reference/voice/elevenlabs.mdx +1 -1
- package/.docs/raw/reference/voice/google-gemini-live.mdx +1 -1
- package/.docs/raw/reference/voice/google.mdx +160 -21
- package/.docs/raw/reference/voice/mastra-voice.mdx +1 -1
- package/.docs/raw/reference/voice/murf.mdx +1 -1
- package/.docs/raw/reference/voice/openai-realtime.mdx +3 -3
- package/.docs/raw/reference/voice/openai.mdx +1 -1
- package/.docs/raw/reference/voice/playai.mdx +1 -1
- package/.docs/raw/reference/voice/sarvam.mdx +1 -1
- package/.docs/raw/reference/voice/speechify.mdx +1 -1
- package/.docs/raw/reference/voice/voice.addInstructions.mdx +3 -4
- package/.docs/raw/reference/voice/voice.addTools.mdx +2 -2
- package/.docs/raw/reference/voice/voice.answer.mdx +2 -2
- package/.docs/raw/reference/voice/voice.close.mdx +2 -2
- package/.docs/raw/reference/voice/voice.connect.mdx +2 -2
- package/.docs/raw/reference/voice/voice.events.mdx +1 -1
- package/.docs/raw/reference/voice/voice.getSpeakers.mdx +1 -1
- package/.docs/raw/reference/voice/voice.listen.mdx +87 -53
- package/.docs/raw/reference/voice/voice.off.mdx +2 -2
- package/.docs/raw/reference/voice/voice.on.mdx +2 -2
- package/.docs/raw/reference/voice/voice.send.mdx +2 -2
- package/.docs/raw/reference/voice/voice.speak.mdx +76 -41
- package/.docs/raw/reference/voice/voice.updateConfig.mdx +2 -2
- package/.docs/raw/reference/workflows/run-methods/cancel.mdx +1 -1
- package/.docs/raw/reference/workflows/run-methods/restart.mdx +142 -0
- package/.docs/raw/reference/workflows/run-methods/resume.mdx +45 -1
- package/.docs/raw/reference/workflows/run-methods/start.mdx +48 -4
- package/.docs/raw/reference/workflows/run-methods/timeTravel.mdx +310 -0
- package/.docs/raw/reference/workflows/run.mdx +28 -6
- package/.docs/raw/reference/workflows/step.mdx +65 -1
- 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 +1 -1
- 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 +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/map.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/parallel.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/sendEvent.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/sleep.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/sleepUntil.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/then.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/waitForEvent.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow.mdx +21 -2
- package/.docs/raw/server-db/custom-adapters.mdx +386 -0
- package/.docs/raw/server-db/custom-api-routes.mdx +6 -6
- package/.docs/raw/server-db/mastra-client.mdx +3 -4
- package/.docs/raw/server-db/{production-server.mdx → mastra-server.mdx} +16 -8
- package/.docs/raw/server-db/middleware.mdx +31 -31
- package/.docs/raw/server-db/request-context.mdx +3 -4
- package/.docs/raw/server-db/server-adapters.mdx +312 -0
- package/.docs/raw/server-db/storage.mdx +12 -1
- package/.docs/raw/streaming/events.mdx +1 -1
- package/.docs/raw/streaming/overview.mdx +27 -16
- package/.docs/raw/streaming/tool-streaming.mdx +58 -19
- package/.docs/raw/streaming/workflow-streaming.mdx +6 -12
- package/.docs/raw/tools-mcp/advanced-usage.mdx +2 -3
- package/.docs/raw/tools-mcp/mcp-overview.mdx +4 -6
- package/.docs/raw/tools-mcp/overview.mdx +1 -1
- package/.docs/raw/voice/overview.mdx +88 -41
- package/.docs/raw/voice/speech-to-speech.mdx +5 -5
- package/.docs/raw/voice/speech-to-text.mdx +2 -3
- package/.docs/raw/voice/text-to-speech.mdx +2 -3
- package/.docs/raw/workflows/agents-and-tools.mdx +43 -5
- package/.docs/raw/workflows/control-flow.mdx +186 -1
- package/.docs/raw/workflows/error-handling.mdx +5 -4
- package/.docs/raw/workflows/human-in-the-loop.mdx +160 -213
- package/.docs/raw/workflows/inngest-workflow.mdx +1 -1
- package/.docs/raw/workflows/input-data-mapping.mdx +1 -1
- package/.docs/raw/workflows/overview.mdx +67 -47
- package/.docs/raw/workflows/snapshots.mdx +5 -3
- package/.docs/raw/workflows/suspend-and-resume.mdx +121 -204
- package/.docs/raw/workflows/time-travel.mdx +313 -0
- package/.docs/raw/workflows/workflow-state.mdx +190 -0
- package/CHANGELOG.md +81 -0
- package/dist/{chunk-5NJC7NRO.js → chunk-4CM2BQNP.js} +24 -4
- package/dist/prepare-docs/package-changes.d.ts.map +1 -1
- package/dist/prepare-docs/prepare.js +1 -1
- package/dist/stdio.js +17 -19
- package/package.json +11 -15
- package/.docs/raw/deployment/serverless-platforms/index.mdx +0 -58
- package/.docs/raw/frameworks/agentic-uis/ai-sdk.mdx +0 -688
- package/.docs/raw/frameworks/agentic-uis/cedar-os.mdx +0 -123
- package/.docs/raw/frameworks/agentic-uis/copilotkit.mdx +0 -382
- package/.docs/raw/frameworks/agentic-uis/openrouter.mdx +0 -179
- package/.docs/raw/frameworks/web-frameworks/next-js.mdx +0 -379
- package/.docs/raw/getting-started/templates.mdx +0 -73
- package/.docs/raw/mastra-cloud/observability.mdx +0 -51
- package/.docs/raw/reference/streaming/workflows/observeStreamVNext.mdx +0 -47
- package/.docs/raw/reference/streaming/workflows/streamVNext.mdx +0 -153
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: "Reference: CompositeVoice | Voice
|
|
2
|
+
title: "Reference: CompositeVoice | Voice"
|
|
3
3
|
description: "Documentation for the CompositeVoice class, which enables combining multiple voice providers for flexible text-to-speech and speech-to-text operations."
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -7,31 +7,7 @@ description: "Documentation for the CompositeVoice class, which enables combinin
|
|
|
7
7
|
|
|
8
8
|
The CompositeVoice class allows you to combine different voice providers for text-to-speech and speech-to-text operations. This is particularly useful when you want to use the best provider for each operation - for example, using OpenAI for speech-to-text and PlayAI for text-to-speech.
|
|
9
9
|
|
|
10
|
-
CompositeVoice
|
|
11
|
-
|
|
12
|
-
## Usage Example
|
|
13
|
-
|
|
14
|
-
```typescript
|
|
15
|
-
import { CompositeVoice } from "@mastra/core/voice";
|
|
16
|
-
import { OpenAIVoice } from "@mastra/voice-openai";
|
|
17
|
-
import { PlayAIVoice } from "@mastra/voice-playai";
|
|
18
|
-
|
|
19
|
-
// Create voice providers
|
|
20
|
-
const openai = new OpenAIVoice();
|
|
21
|
-
const playai = new PlayAIVoice();
|
|
22
|
-
|
|
23
|
-
// Use OpenAI for listening (speech-to-text) and PlayAI for speaking (text-to-speech)
|
|
24
|
-
const voice = new CompositeVoice({
|
|
25
|
-
input: openai,
|
|
26
|
-
output: playai,
|
|
27
|
-
});
|
|
28
|
-
|
|
29
|
-
// Convert speech to text using OpenAI
|
|
30
|
-
const text = await voice.listen(audioStream);
|
|
31
|
-
|
|
32
|
-
// Convert text to speech using PlayAI
|
|
33
|
-
const audio = await voice.speak("Hello, world!");
|
|
34
|
-
```
|
|
10
|
+
CompositeVoice supports both Mastra voice providers and AI SDK model providers
|
|
35
11
|
|
|
36
12
|
## Constructor Parameters
|
|
37
13
|
|
|
@@ -45,14 +21,20 @@ const audio = await voice.speak("Hello, world!");
|
|
|
45
21
|
},
|
|
46
22
|
{
|
|
47
23
|
name: "config.input",
|
|
48
|
-
type: "MastraVoice",
|
|
49
|
-
description: "Voice provider to use for speech-to-text operations",
|
|
24
|
+
type: "MastraVoice | TranscriptionModel",
|
|
25
|
+
description: "Voice provider or AI SDK transcription model to use for speech-to-text operations. AI SDK models are automatically wrapped.",
|
|
50
26
|
isOptional: true,
|
|
51
27
|
},
|
|
52
28
|
{
|
|
53
29
|
name: "config.output",
|
|
30
|
+
type: "MastraVoice | SpeechModel",
|
|
31
|
+
description: "Voice provider or AI SDK speech model to use for text-to-speech operations. AI SDK models are automatically wrapped.",
|
|
32
|
+
isOptional: true,
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
name: "config.realtime",
|
|
54
36
|
type: "MastraVoice",
|
|
55
|
-
description: "Voice provider to use for
|
|
37
|
+
description: "Voice provider to use for real-time speech-to-speech operations",
|
|
56
38
|
isOptional: true,
|
|
57
39
|
},
|
|
58
40
|
]}
|
|
@@ -142,3 +124,64 @@ Notes:
|
|
|
142
124
|
- If no speaking provider is configured, returns an empty array
|
|
143
125
|
- Each voice object will have at least a voiceId property
|
|
144
126
|
- Additional voice properties depend on the speaking provider
|
|
127
|
+
|
|
128
|
+
## Usage Examples
|
|
129
|
+
|
|
130
|
+
### Using Mastra Voice Providers
|
|
131
|
+
|
|
132
|
+
```typescript
|
|
133
|
+
import { CompositeVoice } from "@mastra/core/voice";
|
|
134
|
+
import { OpenAIVoice } from "@mastra/voice-openai";
|
|
135
|
+
import { PlayAIVoice } from "@mastra/voice-playai";
|
|
136
|
+
|
|
137
|
+
// Create voice providers
|
|
138
|
+
const openai = new OpenAIVoice();
|
|
139
|
+
const playai = new PlayAIVoice();
|
|
140
|
+
|
|
141
|
+
// Use OpenAI for listening (speech-to-text) and PlayAI for speaking (text-to-speech)
|
|
142
|
+
const voice = new CompositeVoice({
|
|
143
|
+
input: openai,
|
|
144
|
+
output: playai,
|
|
145
|
+
});
|
|
146
|
+
|
|
147
|
+
// Convert speech to text using OpenAI
|
|
148
|
+
const text = await voice.listen(audioStream);
|
|
149
|
+
|
|
150
|
+
// Convert text to speech using PlayAI
|
|
151
|
+
const audio = await voice.speak("Hello, world!");
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
### Using AI SDK Model Providers
|
|
155
|
+
|
|
156
|
+
You can pass AI SDK transcription and speech models directly to CompositeVoice:
|
|
157
|
+
|
|
158
|
+
```typescript
|
|
159
|
+
import { CompositeVoice } from "@mastra/core/voice";
|
|
160
|
+
import { openai } from "@ai-sdk/openai";
|
|
161
|
+
import { elevenlabs } from "@ai-sdk/elevenlabs";
|
|
162
|
+
|
|
163
|
+
// Use AI SDK models directly - they will be auto-wrapped
|
|
164
|
+
const voice = new CompositeVoice({
|
|
165
|
+
input: openai.transcription('whisper-1'), // AI SDK transcription
|
|
166
|
+
output: elevenlabs.speech('eleven_turbo_v2'), // AI SDK speech
|
|
167
|
+
});
|
|
168
|
+
|
|
169
|
+
// Works the same way as with Mastra providers
|
|
170
|
+
const text = await voice.listen(audioStream);
|
|
171
|
+
const audio = await voice.speak("Hello from AI SDK!");
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
### Mix and Match
|
|
175
|
+
|
|
176
|
+
You can combine Mastra providers with AI SDK models:
|
|
177
|
+
|
|
178
|
+
```typescript
|
|
179
|
+
import { CompositeVoice } from "@mastra/core/voice";
|
|
180
|
+
import { PlayAIVoice } from "@mastra/voice-playai";
|
|
181
|
+
import { groq } from "@ai-sdk/groq";
|
|
182
|
+
|
|
183
|
+
const voice = new CompositeVoice({
|
|
184
|
+
input: groq.transcription('whisper-large-v3'), // AI SDK for STT
|
|
185
|
+
output: new PlayAIVoice(), // Mastra for TTS
|
|
186
|
+
});
|
|
187
|
+
```
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: "Reference: Deepgram | Voice
|
|
2
|
+
title: "Reference: Deepgram | Voice"
|
|
3
3
|
description: "Documentation for the Deepgram voice implementation, providing text-to-speech and speech-to-text capabilities with multiple voice models and languages."
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: "Reference: ElevenLabs | Voice
|
|
2
|
+
title: "Reference: ElevenLabs | Voice"
|
|
3
3
|
description: "Documentation for the ElevenLabs voice implementation, offering high-quality text-to-speech capabilities with multiple voice models and natural-sounding synthesis."
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: "Reference: Google Gemini Live Voice | Voice
|
|
2
|
+
title: "Reference: Google Gemini Live Voice | Voice"
|
|
3
3
|
description: "Documentation for the GeminiLiveVoice class, providing real-time multimodal voice interactions using Google's Gemini Live API with support for both Gemini API and Vertex AI."
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: "Reference: Google | Voice
|
|
3
|
-
description: "Documentation for the Google Voice implementation, providing text-to-speech and speech-to-text capabilities."
|
|
2
|
+
title: "Reference: Google | Voice"
|
|
3
|
+
description: "Documentation for the Google Voice implementation, providing text-to-speech and speech-to-text capabilities with support for both API key and Vertex AI authentication."
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Google
|
|
7
7
|
|
|
8
|
-
The Google Voice implementation in Mastra provides both text-to-speech (TTS) and speech-to-text (STT) capabilities using Google Cloud services. It supports multiple voices, languages,
|
|
8
|
+
The Google Voice implementation in Mastra provides both text-to-speech (TTS) and speech-to-text (STT) capabilities using Google Cloud services. It supports multiple voices, languages, advanced audio configuration options, and both standard API key authentication and Vertex AI mode for enterprise deployments.
|
|
9
9
|
|
|
10
10
|
## Usage Example
|
|
11
11
|
|
|
@@ -15,17 +15,6 @@ import { GoogleVoice } from "@mastra/voice-google";
|
|
|
15
15
|
// Initialize with default configuration (uses GOOGLE_API_KEY environment variable)
|
|
16
16
|
const voice = new GoogleVoice();
|
|
17
17
|
|
|
18
|
-
// Initialize with custom configuration
|
|
19
|
-
const voice = new GoogleVoice({
|
|
20
|
-
speechModel: {
|
|
21
|
-
apiKey: "your-speech-api-key",
|
|
22
|
-
},
|
|
23
|
-
listeningModel: {
|
|
24
|
-
apiKey: "your-listening-api-key",
|
|
25
|
-
},
|
|
26
|
-
speaker: "en-US-Casual-K",
|
|
27
|
-
});
|
|
28
|
-
|
|
29
18
|
// Text-to-Speech
|
|
30
19
|
const audioStream = await voice.speak("Hello, world!", {
|
|
31
20
|
languageCode: "en-US",
|
|
@@ -71,6 +60,29 @@ const voices = await voice.getSpeakers({ languageCode: "en-US" });
|
|
|
71
60
|
isOptional: true,
|
|
72
61
|
defaultValue: "'en-US-Casual-K'",
|
|
73
62
|
},
|
|
63
|
+
{
|
|
64
|
+
name: "vertexAI",
|
|
65
|
+
type: "boolean",
|
|
66
|
+
description:
|
|
67
|
+
"Enable Vertex AI mode for enterprise deployments. Uses project-based authentication instead of API keys. Requires 'project' to be set.",
|
|
68
|
+
isOptional: true,
|
|
69
|
+
defaultValue: "false",
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
name: "project",
|
|
73
|
+
type: "string",
|
|
74
|
+
description:
|
|
75
|
+
"Google Cloud project ID (required when vertexAI is true). Falls back to GOOGLE_CLOUD_PROJECT environment variable.",
|
|
76
|
+
isOptional: true,
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
name: "location",
|
|
80
|
+
type: "string",
|
|
81
|
+
description:
|
|
82
|
+
"Google Cloud region for Vertex AI. Falls back to GOOGLE_CLOUD_LOCATION environment variable.",
|
|
83
|
+
isOptional: true,
|
|
84
|
+
defaultValue: "'us-central1'",
|
|
85
|
+
},
|
|
74
86
|
]}
|
|
75
87
|
/>
|
|
76
88
|
|
|
@@ -82,7 +94,21 @@ const voices = await voice.getSpeakers({ languageCode: "en-US" });
|
|
|
82
94
|
name: "apiKey",
|
|
83
95
|
type: "string",
|
|
84
96
|
description:
|
|
85
|
-
"Google Cloud API key. Falls back to GOOGLE_API_KEY environment variable",
|
|
97
|
+
"Google Cloud API key. Falls back to GOOGLE_API_KEY environment variable. Not used when vertexAI is true.",
|
|
98
|
+
isOptional: true,
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
name: "keyFilename",
|
|
102
|
+
type: "string",
|
|
103
|
+
description:
|
|
104
|
+
"Path to service account JSON key file. Falls back to GOOGLE_APPLICATION_CREDENTIALS environment variable.",
|
|
105
|
+
isOptional: true,
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
name: "credentials",
|
|
109
|
+
type: "object",
|
|
110
|
+
description:
|
|
111
|
+
"In-memory service account credentials object with client_email and private_key properties.",
|
|
86
112
|
isOptional: true,
|
|
87
113
|
},
|
|
88
114
|
]}
|
|
@@ -193,11 +219,124 @@ Returns an array of available voice options, where each node contains:
|
|
|
193
219
|
]}
|
|
194
220
|
/>
|
|
195
221
|
|
|
222
|
+
### isUsingVertexAI()
|
|
223
|
+
|
|
224
|
+
Checks if Vertex AI mode is enabled.
|
|
225
|
+
|
|
226
|
+
Returns: `boolean` - `true` if using Vertex AI, `false` otherwise
|
|
227
|
+
|
|
228
|
+
### getProject()
|
|
229
|
+
|
|
230
|
+
Gets the configured Google Cloud project ID.
|
|
231
|
+
|
|
232
|
+
Returns: `string | undefined` - The project ID or `undefined` if not set
|
|
233
|
+
|
|
234
|
+
### getLocation()
|
|
235
|
+
|
|
236
|
+
Gets the configured Google Cloud location/region.
|
|
237
|
+
|
|
238
|
+
Returns: `string` - The location (default: `'us-central1'`)
|
|
239
|
+
|
|
240
|
+
## Authentication
|
|
241
|
+
|
|
242
|
+
The Google Voice provider supports two authentication methods:
|
|
243
|
+
|
|
244
|
+
### Standard Mode (API Key)
|
|
245
|
+
|
|
246
|
+
Uses a Google Cloud API key for authentication. Suitable for development and simple use cases.
|
|
247
|
+
|
|
248
|
+
```typescript
|
|
249
|
+
// Using environment variable (GOOGLE_API_KEY)
|
|
250
|
+
const voice = new GoogleVoice();
|
|
251
|
+
|
|
252
|
+
// Using explicit API key
|
|
253
|
+
const voice = new GoogleVoice({
|
|
254
|
+
speechModel: { apiKey: "your-api-key" },
|
|
255
|
+
listeningModel: { apiKey: "your-api-key" },
|
|
256
|
+
speaker: "en-US-Casual-K",
|
|
257
|
+
});
|
|
258
|
+
```
|
|
259
|
+
|
|
260
|
+
### Vertex AI Mode (Service Account)
|
|
261
|
+
|
|
262
|
+
Uses Google Cloud project-based authentication with service accounts. Recommended for production and enterprise deployments.
|
|
263
|
+
|
|
264
|
+
**Benefits:**
|
|
265
|
+
- Better security (no API keys in code)
|
|
266
|
+
- IAM-based access control
|
|
267
|
+
- Project-level billing and quotas
|
|
268
|
+
- Audit logging
|
|
269
|
+
- Enterprise features
|
|
270
|
+
|
|
271
|
+
**Configuration Options:**
|
|
272
|
+
|
|
273
|
+
```typescript
|
|
274
|
+
// Using Application Default Credentials (ADC)
|
|
275
|
+
// Set GOOGLE_APPLICATION_CREDENTIALS and GOOGLE_CLOUD_PROJECT env vars
|
|
276
|
+
const voice = new GoogleVoice({
|
|
277
|
+
vertexAI: true,
|
|
278
|
+
project: "your-gcp-project",
|
|
279
|
+
location: "us-central1", // Optional, defaults to 'us-central1'
|
|
280
|
+
});
|
|
281
|
+
|
|
282
|
+
// Using service account key file
|
|
283
|
+
const voice = new GoogleVoice({
|
|
284
|
+
vertexAI: true,
|
|
285
|
+
project: "your-gcp-project",
|
|
286
|
+
speechModel: {
|
|
287
|
+
keyFilename: "/path/to/service-account.json",
|
|
288
|
+
},
|
|
289
|
+
listeningModel: {
|
|
290
|
+
keyFilename: "/path/to/service-account.json",
|
|
291
|
+
},
|
|
292
|
+
});
|
|
293
|
+
|
|
294
|
+
// Using in-memory credentials
|
|
295
|
+
const voice = new GoogleVoice({
|
|
296
|
+
vertexAI: true,
|
|
297
|
+
project: "your-gcp-project",
|
|
298
|
+
speechModel: {
|
|
299
|
+
credentials: {
|
|
300
|
+
client_email: "service-account@project.iam.gserviceaccount.com",
|
|
301
|
+
private_key: "-----BEGIN PRIVATE KEY-----\n...\n-----END PRIVATE KEY-----",
|
|
302
|
+
},
|
|
303
|
+
},
|
|
304
|
+
});
|
|
305
|
+
```
|
|
306
|
+
|
|
307
|
+
**Required Permissions:**
|
|
308
|
+
|
|
309
|
+
**IAM Roles:**
|
|
310
|
+
|
|
311
|
+
For Text-to-Speech:
|
|
312
|
+
- `roles/texttospeech.admin` - Text-to-Speech Admin (full access)
|
|
313
|
+
- `roles/texttospeech.editor` - Text-to-Speech Editor (create and manage)
|
|
314
|
+
- `roles/texttospeech.viewer` - Text-to-Speech Viewer (read-only)
|
|
315
|
+
|
|
316
|
+
For Speech-to-Text:
|
|
317
|
+
- `roles/speech.client` - Speech-to-Text Client
|
|
318
|
+
|
|
319
|
+
**OAuth Scopes:**
|
|
320
|
+
|
|
321
|
+
For synchronous Text-to-Speech synthesis:
|
|
322
|
+
- `https://www.googleapis.com/auth/cloud-platform` - Full access to Google Cloud Platform services
|
|
323
|
+
|
|
324
|
+
For long-audio Text-to-Speech operations:
|
|
325
|
+
- `locations.longAudioSynthesize` - Create long-audio synthesis operations
|
|
326
|
+
- `operations.get` - Get operation status
|
|
327
|
+
- `operations.list` - List operations
|
|
328
|
+
|
|
196
329
|
## Important Notes
|
|
197
330
|
|
|
198
|
-
1.
|
|
199
|
-
2.
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
331
|
+
1. **Authentication**: Either a Google Cloud API key (standard mode) or service account credentials (Vertex AI mode) is required.
|
|
332
|
+
2. **Environment Variables**:
|
|
333
|
+
- `GOOGLE_API_KEY` - API key for standard mode
|
|
334
|
+
- `GOOGLE_CLOUD_PROJECT` - Project ID for Vertex AI mode
|
|
335
|
+
- `GOOGLE_CLOUD_LOCATION` - Location for Vertex AI mode (defaults to 'us-central1')
|
|
336
|
+
- `GOOGLE_APPLICATION_CREDENTIALS` - Path to service account key file
|
|
337
|
+
3. The default voice is set to `'en-US-Casual-K'`.
|
|
338
|
+
4. Both text-to-speech and speech-to-text services use LINEAR16 as the default audio encoding.
|
|
339
|
+
5. The `speak()` method supports advanced audio configuration through the Google Cloud Text-to-Speech API.
|
|
340
|
+
6. The `listen()` method supports various recognition configurations through the Google Cloud Speech-to-Text API.
|
|
341
|
+
7. Available voices can be filtered by language code using the `getSpeakers()` method.
|
|
342
|
+
8. Vertex AI mode provides enterprise features including IAM control, audit logs, and project-level billing.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: "Reference: MastraVoice | Voice
|
|
2
|
+
title: "Reference: MastraVoice | Voice"
|
|
3
3
|
description: "Documentation for the MastraVoice abstract base class, which defines the core interface for all voice services in Mastra, including speech-to-speech capabilities."
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: "Reference: OpenAI Realtime Voice | Voice
|
|
2
|
+
title: "Reference: OpenAI Realtime Voice | Voice"
|
|
3
3
|
description: "Documentation for the OpenAIRealtimeVoice class, providing real-time text-to-speech and speech-to-text capabilities via WebSockets."
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -19,7 +19,7 @@ const voice = new OpenAIRealtimeVoice();
|
|
|
19
19
|
// Or initialize with specific configuration
|
|
20
20
|
const voiceWithConfig = new OpenAIRealtimeVoice({
|
|
21
21
|
apiKey: "your-openai-api-key",
|
|
22
|
-
model: "gpt-
|
|
22
|
+
model: "gpt-5.1-realtime-preview-2024-12-17",
|
|
23
23
|
speaker: "alloy", // Default voice
|
|
24
24
|
});
|
|
25
25
|
|
|
@@ -69,7 +69,7 @@ voice.connect();
|
|
|
69
69
|
type: "string",
|
|
70
70
|
description: "The model ID to use for real-time voice interactions.",
|
|
71
71
|
isOptional: true,
|
|
72
|
-
defaultValue: "'gpt-
|
|
72
|
+
defaultValue: "'gpt-5.1-realtime-preview-2024-12-17'",
|
|
73
73
|
},
|
|
74
74
|
{
|
|
75
75
|
name: "apiKey",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: "Reference: voice.addInstructions() | Voice
|
|
2
|
+
title: "Reference: voice.addInstructions() | Voice"
|
|
3
3
|
description: "Documentation for the addInstructions() method available in voice providers, which adds instructions to guide the voice model's behavior."
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -12,12 +12,11 @@ The `addInstructions()` method equips a voice provider with instructions that gu
|
|
|
12
12
|
```typescript
|
|
13
13
|
import { OpenAIRealtimeVoice } from "@mastra/voice-openai-realtime";
|
|
14
14
|
import { Agent } from "@mastra/core/agent";
|
|
15
|
-
import { openai } from "@ai-sdk/openai";
|
|
16
15
|
|
|
17
16
|
// Initialize a real-time voice provider
|
|
18
17
|
const voice = new OpenAIRealtimeVoice({
|
|
19
18
|
realtimeConfig: {
|
|
20
|
-
model: "gpt-
|
|
19
|
+
model: "gpt-5.1-realtime",
|
|
21
20
|
apiKey: process.env.OPENAI_API_KEY,
|
|
22
21
|
},
|
|
23
22
|
});
|
|
@@ -27,7 +26,7 @@ const agent = new Agent({
|
|
|
27
26
|
name: "Customer Support Agent",
|
|
28
27
|
instructions:
|
|
29
28
|
"You are a helpful customer support agent for a software company.",
|
|
30
|
-
model: openai
|
|
29
|
+
model: "openai/gpt-5.1",
|
|
31
30
|
voice,
|
|
32
31
|
});
|
|
33
32
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: "Reference: voice.addTools() | Voice
|
|
2
|
+
title: "Reference: voice.addTools() | Voice"
|
|
3
3
|
description: "Documentation for the addTools() method available in voice providers, which equips voice models with function calling capabilities."
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -39,7 +39,7 @@ const weatherTool = createTool({
|
|
|
39
39
|
// Initialize a real-time voice provider
|
|
40
40
|
const voice = new OpenAIRealtimeVoice({
|
|
41
41
|
realtimeConfig: {
|
|
42
|
-
model: "gpt-
|
|
42
|
+
model: "gpt-5.1-realtime",
|
|
43
43
|
apiKey: process.env.OPENAI_API_KEY,
|
|
44
44
|
},
|
|
45
45
|
});
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: "Reference: voice.answer() | Voice
|
|
2
|
+
title: "Reference: voice.answer() | Voice"
|
|
3
3
|
description: "Documentation for the answer() method available in real-time voice providers, which triggers the voice provider to generate a response."
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -23,7 +23,7 @@ const speaker = new Speaker({
|
|
|
23
23
|
// Initialize a real-time voice provider
|
|
24
24
|
const voice = new OpenAIRealtimeVoice({
|
|
25
25
|
realtimeConfig: {
|
|
26
|
-
model: "gpt-
|
|
26
|
+
model: "gpt-5.1",
|
|
27
27
|
apiKey: process.env.OPENAI_API_KEY,
|
|
28
28
|
},
|
|
29
29
|
speaker: "alloy", // Default voice
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: "Reference: voice.close() | Voice
|
|
2
|
+
title: "Reference: voice.close() | Voice"
|
|
3
3
|
description: "Documentation for the close() method available in voice providers, which disconnects from real-time voice services."
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -16,7 +16,7 @@ import { getMicrophoneStream } from "@mastra/node-audio";
|
|
|
16
16
|
// Initialize a real-time voice provider
|
|
17
17
|
const voice = new OpenAIRealtimeVoice({
|
|
18
18
|
realtimeConfig: {
|
|
19
|
-
model: "gpt-
|
|
19
|
+
model: "gpt-5.1-realtime",
|
|
20
20
|
apiKey: process.env.OPENAI_API_KEY,
|
|
21
21
|
},
|
|
22
22
|
});
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: "Reference: voice.connect() | Voice
|
|
2
|
+
title: "Reference: voice.connect() | Voice"
|
|
3
3
|
description: "Documentation for the connect() method available in real-time voice providers, which establishes a connection for speech-to-speech communication."
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -22,7 +22,7 @@ const speaker = new Speaker({
|
|
|
22
22
|
// Initialize a real-time voice provider
|
|
23
23
|
const voice = new OpenAIRealtimeVoice({
|
|
24
24
|
realtimeConfig: {
|
|
25
|
-
model: "gpt-
|
|
25
|
+
model: "gpt-5.1-realtime",
|
|
26
26
|
apiKey: process.env.OPENAI_API_KEY,
|
|
27
27
|
options: {
|
|
28
28
|
sessionConfig: {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: "Reference: voice.getSpeakers() | Voice Providers
|
|
2
|
+
title: "Reference: voice.getSpeakers() | Voice Providers"
|
|
3
3
|
description: "Documentation for the getSpeakers() method available in voice providers, which retrieves available voice options."
|
|
4
4
|
---
|
|
5
5
|
|