@mastra/mcp-docs-server 0.13.39 → 1.0.0-beta.0
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%2Fai-sdk-v4.md +1 -0
- package/.docs/organized/changelogs/%40internal%2Fchangeset-cli.md +0 -10
- package/.docs/organized/changelogs/%40internal%2Fexternal-types.md +0 -10
- package/.docs/organized/changelogs/%40internal%2Fstorage-test-utils.md +36 -36
- package/.docs/organized/changelogs/%40internal%2Ftypes-builder.md +0 -10
- package/.docs/organized/changelogs/%40mastra%2Fagent-builder.md +70 -70
- package/.docs/organized/changelogs/%40mastra%2Fai-sdk.md +40 -40
- package/.docs/organized/changelogs/%40mastra%2Fastra.md +19 -19
- package/.docs/organized/changelogs/%40mastra%2Fauth.md +4 -14
- package/.docs/organized/changelogs/%40mastra%2Fchroma.md +18 -18
- package/.docs/organized/changelogs/%40mastra%2Fclickhouse.md +199 -199
- package/.docs/organized/changelogs/%40mastra%2Fclient-js.md +223 -223
- package/.docs/organized/changelogs/%40mastra%2Fcloudflare-d1.md +190 -190
- package/.docs/organized/changelogs/%40mastra%2Fcloudflare.md +199 -199
- package/.docs/organized/changelogs/%40mastra%2Fcodemod.md +7 -0
- package/.docs/organized/changelogs/%40mastra%2Fcore.md +214 -214
- package/.docs/organized/changelogs/%40mastra%2Fcouchbase.md +16 -16
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloud.md +74 -74
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloudflare.md +67 -67
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-netlify.md +70 -70
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-vercel.md +67 -67
- package/.docs/organized/changelogs/%40mastra%2Fdeployer.md +209 -209
- package/.docs/organized/changelogs/%40mastra%2Fdynamodb.md +191 -191
- package/.docs/organized/changelogs/%40mastra%2Fevals.md +34 -34
- package/.docs/organized/changelogs/%40mastra%2Ffastembed.md +5 -13
- package/.docs/organized/changelogs/%40mastra%2Flance.md +182 -182
- package/.docs/organized/changelogs/%40mastra%2Flibsql.md +199 -199
- package/.docs/organized/changelogs/%40mastra%2Floggers.md +20 -20
- package/.docs/organized/changelogs/%40mastra%2Fmcp-docs-server.md +58 -58
- package/.docs/organized/changelogs/%40mastra%2Fmcp-registry-registry.md +20 -20
- package/.docs/organized/changelogs/%40mastra%2Fmcp.md +65 -65
- package/.docs/organized/changelogs/%40mastra%2Fmemory.md +228 -228
- package/.docs/organized/changelogs/%40mastra%2Fmongodb.md +199 -199
- package/.docs/organized/changelogs/%40mastra%2Fmssql.md +206 -206
- package/.docs/organized/changelogs/%40mastra%2Fopensearch.md +19 -19
- package/.docs/organized/changelogs/%40mastra%2Fpg.md +197 -197
- package/.docs/organized/changelogs/%40mastra%2Fpinecone.md +16 -16
- package/.docs/organized/changelogs/%40mastra%2Fplayground-ui.md +217 -217
- package/.docs/organized/changelogs/%40mastra%2Fqdrant.md +16 -16
- package/.docs/organized/changelogs/%40mastra%2Frag.md +61 -61
- package/.docs/organized/changelogs/%40mastra%2Freact.md +70 -70
- package/.docs/organized/changelogs/%40mastra%2Fs3vectors.md +9 -17
- package/.docs/organized/changelogs/%40mastra%2Fschema-compat.md +6 -30
- package/.docs/organized/changelogs/%40mastra%2Fserver.md +206 -206
- package/.docs/organized/changelogs/%40mastra%2Fturbopuffer.md +16 -16
- package/.docs/organized/changelogs/%40mastra%2Fupstash.md +190 -190
- package/.docs/organized/changelogs/%40mastra%2Fvectorize.md +18 -18
- package/.docs/organized/changelogs/%40mastra%2Fvoice-azure.md +21 -21
- package/.docs/organized/changelogs/%40mastra%2Fvoice-cloudflare.md +20 -20
- package/.docs/organized/changelogs/%40mastra%2Fvoice-deepgram.md +20 -20
- package/.docs/organized/changelogs/%40mastra%2Fvoice-elevenlabs.md +20 -20
- package/.docs/organized/changelogs/%40mastra%2Fvoice-gladia.md +20 -20
- package/.docs/organized/changelogs/%40mastra%2Fvoice-google-gemini-live.md +56 -56
- package/.docs/organized/changelogs/%40mastra%2Fvoice-google.md +20 -20
- package/.docs/organized/changelogs/%40mastra%2Fvoice-murf.md +20 -20
- package/.docs/organized/changelogs/%40mastra%2Fvoice-openai-realtime.md +56 -56
- package/.docs/organized/changelogs/%40mastra%2Fvoice-openai.md +20 -20
- package/.docs/organized/changelogs/%40mastra%2Fvoice-playai.md +20 -20
- package/.docs/organized/changelogs/%40mastra%2Fvoice-sarvam.md +20 -20
- package/.docs/organized/changelogs/%40mastra%2Fvoice-speechify.md +20 -20
- package/.docs/organized/changelogs/create-mastra.md +33 -33
- package/.docs/organized/changelogs/mastra.md +86 -86
- package/.docs/organized/code-examples/a2a.md +4 -2
- package/.docs/organized/code-examples/agui.md +12 -9
- package/.docs/organized/code-examples/ai-sdk-useChat.md +12 -18
- package/.docs/organized/code-examples/ai-sdk-v5.md +4 -2
- package/.docs/organized/code-examples/bird-checker-with-express.md +5 -4
- package/.docs/organized/code-examples/bird-checker-with-nextjs-and-eval.md +4 -3
- package/.docs/organized/code-examples/bird-checker-with-nextjs.md +4 -3
- package/.docs/organized/code-examples/client-side-tools.md +1 -0
- package/.docs/organized/code-examples/crypto-chatbot.md +1 -1
- package/.docs/organized/code-examples/experimental-auth-weather-agent.md +8 -177
- package/.docs/organized/code-examples/fireworks-r1.md +2 -2
- package/.docs/organized/code-examples/heads-up-game.md +10 -7
- package/.docs/organized/code-examples/mcp-configuration.md +5 -3
- package/.docs/organized/code-examples/mcp-registry-registry.md +3 -2
- package/.docs/organized/code-examples/memory-per-resource-example.md +4 -2
- package/.docs/organized/code-examples/memory-todo-agent.md +1 -0
- package/.docs/organized/code-examples/memory-with-context.md +2 -1
- package/.docs/organized/code-examples/memory-with-libsql.md +4 -2
- package/.docs/organized/code-examples/memory-with-mongodb.md +4 -2
- package/.docs/organized/code-examples/memory-with-pg.md +4 -2
- package/.docs/organized/code-examples/memory-with-processors.md +13 -8
- package/.docs/organized/code-examples/memory-with-upstash.md +5 -3
- package/.docs/organized/code-examples/openapi-spec-writer.md +32 -41
- package/.docs/organized/code-examples/quick-start.md +5 -32
- package/.docs/organized/code-examples/stock-price-tool.md +6 -5
- package/.docs/organized/code-examples/weather-agent.md +21 -16
- package/.docs/organized/code-examples/workflow-ai-recruiter.md +3 -2
- package/.docs/organized/code-examples/workflow-with-inline-steps.md +9 -12
- package/.docs/organized/code-examples/workflow-with-memory.md +16 -15
- package/.docs/organized/code-examples/workflow-with-separate-steps.md +2 -2
- package/.docs/organized/code-examples/workflow-with-suspend-resume.md +3 -2
- package/.docs/raw/agents/adding-voice.mdx +27 -22
- package/.docs/raw/agents/agent-memory.mdx +23 -15
- package/.docs/raw/agents/guardrails.mdx +33 -12
- package/.docs/raw/agents/networks.mdx +8 -4
- package/.docs/raw/agents/overview.mdx +21 -15
- package/.docs/raw/agents/using-tools.mdx +11 -8
- package/.docs/raw/auth/auth0.mdx +8 -8
- package/.docs/raw/auth/clerk.mdx +6 -6
- package/.docs/raw/auth/firebase.mdx +8 -8
- package/.docs/raw/auth/index.mdx +6 -6
- package/.docs/raw/auth/jwt.mdx +6 -6
- package/.docs/raw/auth/supabase.mdx +7 -7
- package/.docs/raw/auth/workos.mdx +8 -8
- package/.docs/raw/community/contributing-templates.mdx +3 -3
- package/.docs/raw/community/discord.mdx +1 -1
- package/.docs/raw/course/01-first-agent/08-exporting-your-agent.md +2 -1
- package/.docs/raw/course/01-first-agent/16-adding-memory-to-agent.md +2 -1
- package/.docs/raw/course/02-agent-tools-mcp/31-enhancing-memory-configuration.md +2 -0
- package/.docs/raw/course/03-agent-memory/04-creating-basic-memory-agent.md +1 -0
- package/.docs/raw/course/03-agent-memory/10-storage-configuration.md +2 -3
- package/.docs/raw/course/03-agent-memory/13-vector-store-configuration.md +2 -0
- package/.docs/raw/course/03-agent-memory/16-configuring-semantic-recall.md +2 -0
- package/.docs/raw/course/03-agent-memory/18-advanced-configuration-semantic-recall.md +1 -0
- package/.docs/raw/course/03-agent-memory/21-configuring-working-memory.md +2 -0
- package/.docs/raw/course/03-agent-memory/22-custom-working-memory-templates.md +1 -0
- package/.docs/raw/course/03-agent-memory/25-combining-memory-features.md +1 -0
- package/.docs/raw/course/03-agent-memory/27-creating-learning-assistant.md +1 -0
- package/.docs/raw/course/04-workflows/08-running-workflows-programmatically.md +2 -2
- package/.docs/raw/deployment/cloud-providers/amazon-ec2.mdx +5 -5
- package/.docs/raw/deployment/cloud-providers/aws-lambda.mdx +7 -5
- package/.docs/raw/deployment/cloud-providers/azure-app-services.mdx +3 -3
- package/.docs/raw/deployment/cloud-providers/digital-ocean.mdx +4 -4
- package/.docs/raw/deployment/cloud-providers/index.mdx +11 -8
- package/.docs/raw/deployment/monorepo.mdx +2 -2
- package/.docs/raw/deployment/overview.mdx +2 -2
- package/.docs/raw/deployment/server-deployment.mdx +2 -10
- package/.docs/raw/deployment/serverless-platforms/cloudflare-deployer.mdx +4 -4
- package/.docs/raw/deployment/serverless-platforms/index.mdx +10 -7
- package/.docs/raw/deployment/serverless-platforms/netlify-deployer.mdx +4 -4
- package/.docs/raw/deployment/serverless-platforms/vercel-deployer.mdx +4 -4
- package/.docs/raw/deployment/web-framework.mdx +8 -8
- package/.docs/raw/{scorers → evals}/custom-scorers.mdx +6 -6
- package/.docs/raw/evals/off-the-shelf-scorers.mdx +50 -0
- package/.docs/raw/{scorers → evals}/overview.mdx +8 -8
- package/.docs/raw/evals/running-in-ci.mdx +113 -0
- package/.docs/raw/frameworks/agentic-uis/ai-sdk.mdx +22 -21
- package/.docs/raw/frameworks/agentic-uis/copilotkit.mdx +8 -8
- package/.docs/raw/frameworks/agentic-uis/openrouter.mdx +3 -0
- package/.docs/raw/frameworks/servers/express.mdx +10 -9
- package/.docs/raw/frameworks/web-frameworks/astro.mdx +6 -6
- package/.docs/raw/frameworks/web-frameworks/next-js.mdx +3 -3
- package/.docs/raw/frameworks/web-frameworks/sveltekit.mdx +4 -4
- package/.docs/raw/frameworks/web-frameworks/vite-react.mdx +2 -2
- package/.docs/raw/getting-started/installation.mdx +13 -12
- package/.docs/raw/getting-started/mcp-docs-server.mdx +1 -1
- package/.docs/raw/getting-started/project-structure.mdx +4 -4
- package/.docs/raw/getting-started/studio.mdx +8 -8
- package/.docs/raw/getting-started/templates.mdx +1 -1
- package/.docs/raw/guides/guide/ai-recruiter.mdx +264 -0
- package/.docs/raw/guides/guide/chef-michel.mdx +271 -0
- package/.docs/raw/guides/guide/notes-mcp-server.mdx +450 -0
- package/.docs/raw/guides/guide/research-assistant.mdx +389 -0
- package/.docs/raw/guides/guide/stock-agent.mdx +185 -0
- package/.docs/raw/guides/guide/web-search.mdx +291 -0
- package/.docs/raw/guides/index.mdx +43 -0
- package/.docs/raw/guides/migrations/agentnetwork.mdx +114 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/_template.mdx +50 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/agent.mdx +265 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/cli.mdx +48 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/client.mdx +153 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/evals.mdx +230 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/mastra.mdx +171 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/mcp.mdx +114 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/memory.mdx +241 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/overview.mdx +83 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/processors.mdx +62 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/storage.mdx +270 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/tools.mdx +115 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/tracing.mdx +280 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/vectors.mdx +23 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/voice.mdx +39 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/workflows.mdx +178 -0
- package/.docs/raw/guides/migrations/vnext-to-standard-apis.mdx +367 -0
- package/.docs/raw/index.mdx +9 -9
- package/.docs/raw/{observability/logging.mdx → logging.mdx} +4 -4
- package/.docs/raw/mastra-cloud/dashboard.mdx +2 -2
- package/.docs/raw/mastra-cloud/observability.mdx +6 -6
- package/.docs/raw/mastra-cloud/overview.mdx +2 -2
- package/.docs/raw/mastra-cloud/setting-up.mdx +4 -4
- package/.docs/raw/memory/conversation-history.mdx +1 -0
- package/.docs/raw/memory/memory-processors.mdx +4 -3
- package/.docs/raw/memory/overview.mdx +9 -5
- package/.docs/raw/memory/semantic-recall.mdx +12 -7
- package/.docs/raw/memory/storage/memory-with-libsql.mdx +10 -5
- package/.docs/raw/memory/storage/memory-with-pg.mdx +9 -4
- package/.docs/raw/memory/storage/memory-with-upstash.mdx +9 -4
- package/.docs/raw/memory/threads-and-resources.mdx +11 -13
- package/.docs/raw/memory/working-memory.mdx +30 -14
- package/.docs/raw/observability/overview.mdx +13 -30
- package/.docs/raw/observability/{ai-tracing → tracing}/exporters/arize.mdx +10 -18
- package/.docs/raw/observability/{ai-tracing → tracing}/exporters/braintrust.mdx +7 -16
- package/.docs/raw/observability/{ai-tracing → tracing}/exporters/cloud.mdx +11 -17
- package/.docs/raw/observability/{ai-tracing → tracing}/exporters/default.mdx +16 -20
- package/.docs/raw/observability/{ai-tracing → tracing}/exporters/langfuse.mdx +7 -16
- package/.docs/raw/observability/{ai-tracing → tracing}/exporters/langsmith.mdx +7 -16
- package/.docs/raw/observability/{ai-tracing → tracing}/exporters/otel.mdx +9 -18
- package/.docs/raw/observability/{ai-tracing → tracing}/overview.mdx +107 -142
- package/.docs/raw/observability/{ai-tracing → tracing}/processors/sensitive-data-filter.mdx +14 -13
- package/.docs/raw/rag/chunking-and-embedding.mdx +5 -5
- package/.docs/raw/rag/overview.mdx +3 -13
- package/.docs/raw/rag/retrieval.mdx +24 -12
- package/.docs/raw/rag/vector-databases.mdx +7 -1
- package/.docs/raw/reference/agents/agent.mdx +33 -28
- package/.docs/raw/reference/agents/generate.mdx +10 -10
- package/.docs/raw/reference/agents/generateLegacy.mdx +8 -8
- package/.docs/raw/reference/agents/getDefaultGenerateOptions.mdx +21 -15
- package/.docs/raw/reference/agents/getDefaultOptions.mdx +69 -0
- package/.docs/raw/reference/agents/getDefaultStreamOptions.mdx +22 -16
- package/.docs/raw/reference/agents/getDescription.mdx +1 -1
- package/.docs/raw/reference/agents/getInstructions.mdx +8 -8
- package/.docs/raw/reference/agents/getLLM.mdx +9 -9
- package/.docs/raw/reference/agents/getMemory.mdx +9 -9
- package/.docs/raw/reference/agents/getModel.mdx +10 -10
- package/.docs/raw/reference/agents/getVoice.mdx +8 -8
- package/.docs/raw/reference/agents/listAgents.mdx +9 -9
- package/.docs/raw/reference/agents/listScorers.mdx +7 -7
- package/.docs/raw/reference/agents/listTools.mdx +7 -7
- package/.docs/raw/reference/agents/listWorkflows.mdx +7 -7
- package/.docs/raw/reference/agents/network.mdx +11 -10
- package/.docs/raw/reference/auth/auth0.mdx +4 -4
- package/.docs/raw/reference/auth/clerk.mdx +4 -4
- package/.docs/raw/reference/auth/firebase.mdx +6 -6
- package/.docs/raw/reference/auth/jwt.mdx +4 -4
- package/.docs/raw/reference/auth/supabase.mdx +4 -4
- package/.docs/raw/reference/auth/workos.mdx +4 -4
- package/.docs/raw/reference/cli/mastra.mdx +7 -7
- package/.docs/raw/reference/client-js/agents.mdx +6 -2
- package/.docs/raw/reference/client-js/mastra-client.mdx +7 -7
- package/.docs/raw/reference/client-js/memory.mdx +24 -16
- package/.docs/raw/reference/client-js/observability.mdx +11 -11
- package/.docs/raw/reference/client-js/workflows.mdx +6 -34
- 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 +2 -2
- package/.docs/raw/reference/core/getLogger.mdx +2 -2
- package/.docs/raw/reference/core/getMCPServer.mdx +31 -15
- package/.docs/raw/reference/core/getMCPServerById.mdx +81 -0
- package/.docs/raw/reference/core/getScorer.mdx +3 -3
- package/.docs/raw/reference/core/getScorerById.mdx +79 -0
- package/.docs/raw/reference/core/getServer.mdx +2 -2
- package/.docs/raw/reference/core/getStorage.mdx +2 -2
- package/.docs/raw/reference/core/getTelemetry.mdx +2 -2
- package/.docs/raw/reference/core/getVector.mdx +2 -2
- 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 +2 -2
- package/.docs/raw/reference/core/listLogsByRunId.mdx +2 -2
- package/.docs/raw/reference/core/listMCPServers.mdx +65 -0
- package/.docs/raw/reference/core/listScorers.mdx +3 -3
- package/.docs/raw/reference/core/listVectors.mdx +36 -0
- package/.docs/raw/reference/core/listWorkflows.mdx +6 -6
- package/.docs/raw/reference/core/mastra-class.mdx +3 -2
- package/.docs/raw/reference/core/setLogger.mdx +2 -2
- package/.docs/raw/reference/core/setStorage.mdx +3 -2
- package/.docs/raw/reference/core/setTelemetry.mdx +2 -2
- package/.docs/raw/reference/deployer/cloudflare.mdx +2 -2
- package/.docs/raw/reference/deployer/deployer.mdx +0 -6
- package/.docs/raw/reference/deployer/netlify.mdx +2 -2
- package/.docs/raw/reference/deployer/vercel.mdx +3 -3
- package/.docs/raw/reference/evals/answer-relevancy.mdx +164 -126
- package/.docs/raw/reference/{scorers → evals}/answer-similarity.mdx +27 -27
- package/.docs/raw/reference/evals/bias.mdx +149 -115
- package/.docs/raw/reference/evals/completeness.mdx +148 -117
- package/.docs/raw/reference/evals/content-similarity.mdx +126 -113
- package/.docs/raw/reference/evals/context-precision.mdx +290 -133
- package/.docs/raw/reference/{scorers → evals}/context-relevance.mdx +6 -6
- package/.docs/raw/reference/{scorers → evals}/create-scorer.mdx +11 -11
- package/.docs/raw/reference/evals/faithfulness.mdx +163 -121
- package/.docs/raw/reference/evals/hallucination.mdx +159 -132
- package/.docs/raw/reference/evals/keyword-coverage.mdx +169 -125
- package/.docs/raw/reference/{scorers → evals}/mastra-scorer.mdx +5 -5
- package/.docs/raw/reference/{scorers → evals}/noise-sensitivity.mdx +9 -9
- package/.docs/raw/reference/evals/prompt-alignment.mdx +604 -182
- package/.docs/raw/reference/{scorers/run-experiment.mdx → evals/run-evals.mdx} +17 -18
- package/.docs/raw/reference/evals/textual-difference.mdx +149 -117
- package/.docs/raw/reference/evals/tone-consistency.mdx +149 -125
- package/.docs/raw/reference/{scorers → evals}/tool-call-accuracy.mdx +8 -6
- package/.docs/raw/reference/evals/toxicity.mdx +152 -96
- package/.docs/raw/reference/{observability/logging → logging}/pino-logger.mdx +2 -2
- package/.docs/raw/reference/memory/createThread.mdx +5 -5
- package/.docs/raw/reference/memory/deleteMessages.mdx +7 -7
- package/.docs/raw/reference/memory/getThreadById.mdx +4 -4
- package/.docs/raw/reference/memory/listThreadsByResourceId.mdx +110 -0
- package/.docs/raw/reference/memory/memory-class.mdx +13 -9
- package/.docs/raw/reference/memory/query.mdx +58 -57
- package/.docs/raw/reference/memory/recall.mdx +185 -0
- package/.docs/raw/reference/observability/tracing/configuration.mdx +245 -0
- package/.docs/raw/reference/observability/{ai-tracing → tracing}/exporters/arize.mdx +13 -13
- package/.docs/raw/reference/observability/{ai-tracing → tracing}/exporters/braintrust.mdx +11 -8
- package/.docs/raw/reference/observability/{ai-tracing → tracing}/exporters/cloud-exporter.mdx +21 -19
- package/.docs/raw/reference/observability/{ai-tracing → tracing}/exporters/console-exporter.mdx +49 -17
- package/.docs/raw/reference/observability/{ai-tracing → tracing}/exporters/default-exporter.mdx +42 -41
- package/.docs/raw/reference/observability/{ai-tracing → tracing}/exporters/langfuse.mdx +10 -7
- package/.docs/raw/reference/observability/{ai-tracing → tracing}/exporters/langsmith.mdx +10 -7
- package/.docs/raw/reference/observability/{ai-tracing → tracing}/exporters/otel.mdx +5 -5
- package/.docs/raw/reference/observability/tracing/instances.mdx +168 -0
- package/.docs/raw/reference/observability/{ai-tracing → tracing}/interfaces.mdx +115 -89
- package/.docs/raw/reference/observability/{ai-tracing → tracing}/processors/sensitive-data-filter.mdx +3 -3
- package/.docs/raw/reference/observability/{ai-tracing/span.mdx → tracing/spans.mdx} +59 -41
- package/.docs/raw/reference/processors/batch-parts-processor.mdx +1 -1
- package/.docs/raw/reference/processors/language-detector.mdx +1 -1
- package/.docs/raw/reference/processors/moderation-processor.mdx +1 -1
- package/.docs/raw/reference/processors/pii-detector.mdx +1 -1
- package/.docs/raw/reference/processors/prompt-injection-detector.mdx +1 -1
- package/.docs/raw/reference/processors/system-prompt-scrubber.mdx +1 -1
- package/.docs/raw/reference/processors/token-limiter-processor.mdx +1 -1
- package/.docs/raw/reference/processors/unicode-normalizer.mdx +1 -1
- package/.docs/raw/reference/rag/chunk.mdx +1 -8
- package/.docs/raw/reference/rag/database-config.mdx +7 -7
- package/.docs/raw/reference/rag/metadata-filters.mdx +14 -11
- package/.docs/raw/reference/storage/libsql.mdx +2 -0
- package/.docs/raw/reference/storage/mssql.mdx +5 -0
- package/.docs/raw/reference/storage/postgresql.mdx +6 -0
- package/.docs/raw/reference/storage/upstash.mdx +1 -0
- package/.docs/raw/reference/streaming/agents/stream.mdx +12 -12
- package/.docs/raw/reference/streaming/agents/streamLegacy.mdx +8 -8
- package/.docs/raw/reference/streaming/workflows/observeStream.mdx +3 -3
- package/.docs/raw/reference/streaming/workflows/observeStreamVNext.mdx +3 -3
- package/.docs/raw/reference/streaming/workflows/resumeStreamVNext.mdx +6 -6
- package/.docs/raw/reference/streaming/workflows/stream.mdx +10 -10
- package/.docs/raw/reference/streaming/workflows/streamVNext.mdx +11 -11
- package/.docs/raw/reference/templates/overview.mdx +2 -2
- package/.docs/raw/reference/tools/create-tool.mdx +52 -35
- package/.docs/raw/reference/tools/graph-rag-tool.mdx +15 -15
- package/.docs/raw/reference/tools/mcp-client.mdx +1 -1
- package/.docs/raw/reference/tools/mcp-server.mdx +119 -35
- package/.docs/raw/reference/tools/vector-query-tool.mdx +27 -26
- package/.docs/raw/reference/vectors/libsql.mdx +1 -0
- package/.docs/raw/reference/vectors/pg.mdx +3 -0
- package/.docs/raw/reference/vectors/upstash.mdx +1 -0
- package/.docs/raw/reference/voice/google-gemini-live.mdx +1 -1
- package/.docs/raw/reference/voice/voice.addTools.mdx +3 -3
- package/.docs/raw/reference/workflows/run-methods/cancel.mdx +4 -4
- package/.docs/raw/reference/workflows/run-methods/resume.mdx +14 -14
- package/.docs/raw/reference/workflows/run-methods/start.mdx +17 -17
- package/.docs/raw/reference/workflows/run.mdx +1 -8
- package/.docs/raw/reference/workflows/step.mdx +5 -5
- package/.docs/raw/reference/workflows/workflow-methods/branch.mdx +2 -2
- package/.docs/raw/reference/workflows/workflow-methods/commit.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/create-run.mdx +7 -13
- 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 +5 -0
- 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 +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 +1 -1
- package/.docs/raw/server-db/custom-api-routes.mdx +2 -2
- package/.docs/raw/server-db/mastra-client.mdx +19 -18
- package/.docs/raw/server-db/middleware.mdx +7 -7
- package/.docs/raw/server-db/production-server.mdx +4 -4
- package/.docs/raw/server-db/{runtime-context.mdx → request-context.mdx} +46 -45
- package/.docs/raw/server-db/storage.mdx +29 -21
- package/.docs/raw/streaming/events.mdx +3 -3
- package/.docs/raw/streaming/overview.mdx +5 -5
- package/.docs/raw/streaming/tool-streaming.mdx +18 -17
- package/.docs/raw/streaming/workflow-streaming.mdx +1 -1
- package/.docs/raw/tools-mcp/advanced-usage.mdx +5 -4
- package/.docs/raw/tools-mcp/mcp-overview.mdx +32 -19
- package/.docs/raw/tools-mcp/overview.mdx +11 -11
- package/.docs/raw/voice/overview.mdx +63 -43
- package/.docs/raw/voice/speech-to-speech.mdx +5 -3
- package/.docs/raw/voice/speech-to-text.mdx +9 -8
- package/.docs/raw/voice/text-to-speech.mdx +12 -11
- package/.docs/raw/workflows/agents-and-tools.mdx +9 -5
- package/.docs/raw/workflows/control-flow.mdx +3 -3
- package/.docs/raw/workflows/error-handling.mdx +2 -21
- package/.docs/raw/workflows/human-in-the-loop.mdx +7 -4
- package/.docs/raw/workflows/inngest-workflow.mdx +2 -2
- package/.docs/raw/workflows/input-data-mapping.mdx +107 -0
- package/.docs/raw/workflows/overview.mdx +17 -16
- package/.docs/raw/workflows/snapshots.mdx +13 -11
- package/.docs/raw/workflows/suspend-and-resume.mdx +23 -15
- package/CHANGELOG.md +52 -57
- package/README.md +11 -2
- package/dist/{chunk-TUAHUTTB.js → chunk-5NJC7NRO.js} +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/prepare-docs/copy-raw.d.ts.map +1 -1
- package/dist/prepare-docs/prepare.js +1 -1
- package/dist/prompts/migration.d.ts +6 -0
- package/dist/prompts/migration.d.ts.map +1 -0
- package/dist/stdio.js +402 -30
- package/dist/tools/migration.d.ts +40 -0
- package/dist/tools/migration.d.ts.map +1 -0
- package/package.json +8 -12
- package/.docs/organized/changelogs/%40mastra%2Fcloud.md +0 -302
- package/.docs/raw/observability/nextjs-tracing.mdx +0 -109
- package/.docs/raw/observability/otel-tracing.mdx +0 -189
- package/.docs/raw/reference/agents/getScorers.mdx +0 -69
- package/.docs/raw/reference/agents/getTools.mdx +0 -69
- package/.docs/raw/reference/agents/getWorkflows.mdx +0 -69
- package/.docs/raw/reference/client-js/workflows-legacy.mdx +0 -143
- package/.docs/raw/reference/core/getAgents.mdx +0 -35
- package/.docs/raw/reference/core/getLogs.mdx +0 -96
- package/.docs/raw/reference/core/getLogsByRunId.mdx +0 -87
- package/.docs/raw/reference/core/getMCPServers.mdx +0 -36
- package/.docs/raw/reference/core/getMemory.mdx +0 -36
- package/.docs/raw/reference/core/getScorerByName.mdx +0 -78
- package/.docs/raw/reference/core/getScorers.mdx +0 -43
- package/.docs/raw/reference/core/getVectors.mdx +0 -36
- package/.docs/raw/reference/core/getWorkflows.mdx +0 -45
- package/.docs/raw/reference/evals/context-position.mdx +0 -197
- package/.docs/raw/reference/evals/context-relevancy.mdx +0 -196
- package/.docs/raw/reference/evals/contextual-recall.mdx +0 -196
- package/.docs/raw/reference/evals/summarization.mdx +0 -212
- package/.docs/raw/reference/legacyWorkflows/after.mdx +0 -89
- package/.docs/raw/reference/legacyWorkflows/afterEvent.mdx +0 -79
- package/.docs/raw/reference/legacyWorkflows/commit.mdx +0 -33
- package/.docs/raw/reference/legacyWorkflows/createRun.mdx +0 -76
- package/.docs/raw/reference/legacyWorkflows/else.mdx +0 -68
- package/.docs/raw/reference/legacyWorkflows/events.mdx +0 -305
- package/.docs/raw/reference/legacyWorkflows/execute.mdx +0 -110
- package/.docs/raw/reference/legacyWorkflows/if.mdx +0 -108
- package/.docs/raw/reference/legacyWorkflows/resume.mdx +0 -158
- package/.docs/raw/reference/legacyWorkflows/resumeWithEvent.mdx +0 -133
- package/.docs/raw/reference/legacyWorkflows/snapshots.mdx +0 -207
- package/.docs/raw/reference/legacyWorkflows/start.mdx +0 -87
- package/.docs/raw/reference/legacyWorkflows/step-class.mdx +0 -100
- package/.docs/raw/reference/legacyWorkflows/step-condition.mdx +0 -137
- package/.docs/raw/reference/legacyWorkflows/step-function.mdx +0 -93
- package/.docs/raw/reference/legacyWorkflows/step-options.mdx +0 -69
- package/.docs/raw/reference/legacyWorkflows/step-retries.mdx +0 -196
- package/.docs/raw/reference/legacyWorkflows/suspend.mdx +0 -70
- package/.docs/raw/reference/legacyWorkflows/then.mdx +0 -72
- package/.docs/raw/reference/legacyWorkflows/until.mdx +0 -168
- package/.docs/raw/reference/legacyWorkflows/watch.mdx +0 -124
- package/.docs/raw/reference/legacyWorkflows/while.mdx +0 -168
- package/.docs/raw/reference/legacyWorkflows/workflow.mdx +0 -234
- package/.docs/raw/reference/memory/getThreadsByResourceId.mdx +0 -79
- package/.docs/raw/reference/memory/getThreadsByResourceIdPaginated.mdx +0 -110
- package/.docs/raw/reference/observability/ai-tracing/ai-tracing.mdx +0 -185
- package/.docs/raw/reference/observability/ai-tracing/configuration.mdx +0 -238
- package/.docs/raw/reference/observability/otel-tracing/otel-config.mdx +0 -117
- package/.docs/raw/reference/observability/otel-tracing/providers/arize-ax.mdx +0 -81
- package/.docs/raw/reference/observability/otel-tracing/providers/arize-phoenix.mdx +0 -121
- package/.docs/raw/reference/observability/otel-tracing/providers/braintrust.mdx +0 -40
- package/.docs/raw/reference/observability/otel-tracing/providers/dash0.mdx +0 -40
- package/.docs/raw/reference/observability/otel-tracing/providers/index.mdx +0 -20
- package/.docs/raw/reference/observability/otel-tracing/providers/keywordsai.mdx +0 -73
- package/.docs/raw/reference/observability/otel-tracing/providers/laminar.mdx +0 -41
- package/.docs/raw/reference/observability/otel-tracing/providers/langfuse.mdx +0 -84
- package/.docs/raw/reference/observability/otel-tracing/providers/langsmith.mdx +0 -48
- package/.docs/raw/reference/observability/otel-tracing/providers/langwatch.mdx +0 -43
- package/.docs/raw/reference/observability/otel-tracing/providers/new-relic.mdx +0 -40
- package/.docs/raw/reference/observability/otel-tracing/providers/signoz.mdx +0 -40
- package/.docs/raw/reference/observability/otel-tracing/providers/traceloop.mdx +0 -40
- package/.docs/raw/reference/scorers/answer-relevancy.mdx +0 -227
- package/.docs/raw/reference/scorers/bias.mdx +0 -228
- package/.docs/raw/reference/scorers/completeness.mdx +0 -214
- package/.docs/raw/reference/scorers/content-similarity.mdx +0 -197
- package/.docs/raw/reference/scorers/context-precision.mdx +0 -352
- package/.docs/raw/reference/scorers/faithfulness.mdx +0 -241
- package/.docs/raw/reference/scorers/hallucination.mdx +0 -252
- package/.docs/raw/reference/scorers/keyword-coverage.mdx +0 -229
- package/.docs/raw/reference/scorers/prompt-alignment.mdx +0 -668
- package/.docs/raw/reference/scorers/textual-difference.mdx +0 -203
- package/.docs/raw/reference/scorers/tone-consistency.mdx +0 -211
- package/.docs/raw/reference/scorers/toxicity.mdx +0 -228
- package/.docs/raw/reference/workflows/run-methods/watch.mdx +0 -73
- package/.docs/raw/scorers/evals-old-api/custom-eval.mdx +0 -24
- package/.docs/raw/scorers/evals-old-api/overview.mdx +0 -106
- package/.docs/raw/scorers/evals-old-api/running-in-ci.mdx +0 -85
- package/.docs/raw/scorers/evals-old-api/textual-evals.mdx +0 -58
- package/.docs/raw/scorers/off-the-shelf-scorers.mdx +0 -50
- package/.docs/raw/workflows-legacy/control-flow.mdx +0 -774
- package/.docs/raw/workflows-legacy/dynamic-workflows.mdx +0 -239
- package/.docs/raw/workflows-legacy/error-handling.mdx +0 -187
- package/.docs/raw/workflows-legacy/nested-workflows.mdx +0 -360
- package/.docs/raw/workflows-legacy/overview.mdx +0 -182
- package/.docs/raw/workflows-legacy/runtime-variables.mdx +0 -156
- package/.docs/raw/workflows-legacy/steps.mdx +0 -115
- package/.docs/raw/workflows-legacy/suspend-and-resume.mdx +0 -406
- package/.docs/raw/workflows-legacy/variables.mdx +0 -318
|
@@ -48,11 +48,11 @@ export const testMcpClient = new MCPClient({
|
|
|
48
48
|
});
|
|
49
49
|
```
|
|
50
50
|
|
|
51
|
-
> See [MCPClient](/reference/tools/mcp-client) for a full list of configuration options.
|
|
51
|
+
> See [MCPClient](/reference/v1/tools/mcp-client) for a full list of configuration options.
|
|
52
52
|
|
|
53
53
|
## Using `MCPClient` with an agent
|
|
54
54
|
|
|
55
|
-
To use tools from an MCP server in an agent, import your `MCPClient` and call `.
|
|
55
|
+
To use tools from an MCP server in an agent, import your `MCPClient` and call `.listTools()` in the `tools` parameter. This loads from the defined MCP servers, making them available to the agent.
|
|
56
56
|
|
|
57
57
|
```typescript {4,16} title="src/mastra/agents/test-agent.ts" showLineNumbers copy
|
|
58
58
|
import { openai } from "@ai-sdk/openai";
|
|
@@ -61,6 +61,7 @@ import { Agent } from "@mastra/core/agent";
|
|
|
61
61
|
import { testMcpClient } from "../mcp/test-mcp-client";
|
|
62
62
|
|
|
63
63
|
export const testAgent = new Agent({
|
|
64
|
+
id: "test-agent",
|
|
64
65
|
name: "Test Agent",
|
|
65
66
|
description: "You are a helpful AI assistant",
|
|
66
67
|
instructions: `
|
|
@@ -70,11 +71,11 @@ export const testAgent = new Agent({
|
|
|
70
71
|
|
|
71
72
|
Answer questions using the information you find using the MCP Servers.`,
|
|
72
73
|
model: openai("gpt-4o-mini"),
|
|
73
|
-
tools: await testMcpClient.
|
|
74
|
+
tools: await testMcpClient.listTools(),
|
|
74
75
|
});
|
|
75
76
|
```
|
|
76
77
|
|
|
77
|
-
> See the [Agent Class](/reference/agents/agent) for a full list of configuration options.
|
|
78
|
+
> See the [Agent Class](/reference/v1/agents/agent) for a full list of configuration options.
|
|
78
79
|
|
|
79
80
|
## Configuring `MCPServer`
|
|
80
81
|
|
|
@@ -88,8 +89,8 @@ import { testWorkflow } from "../workflows/test-workflow";
|
|
|
88
89
|
import { testTool } from "../tools/test-tool";
|
|
89
90
|
|
|
90
91
|
export const testMcpServer = new MCPServer({
|
|
91
|
-
id: "test-mcp-server",
|
|
92
|
-
name: "Test Server",
|
|
92
|
+
id: "test-mcp-server", // Required: unique identifier for the server
|
|
93
|
+
name: "Test MCP Server",
|
|
93
94
|
version: "1.0.0",
|
|
94
95
|
agents: { testAgent },
|
|
95
96
|
tools: { testTool },
|
|
@@ -97,28 +98,40 @@ export const testMcpServer = new MCPServer({
|
|
|
97
98
|
});
|
|
98
99
|
```
|
|
99
100
|
|
|
100
|
-
> See [MCPServer](/reference/tools/mcp-server) for a full list of configuration options.
|
|
101
|
+
> See [MCPServer](/reference/v1/tools/mcp-server) for a full list of configuration options.
|
|
102
|
+
|
|
103
|
+
### Serverless deployments
|
|
104
|
+
|
|
105
|
+
`MCPServer` can be deployed in serverless environments (Cloudflare Workers, Vercel Edge Functions, AWS Lambda, etc.) by enabling the `serverless: true` option in `startHTTP()`. This runs the server in stateless mode, where each request is handled independently without session management.
|
|
106
|
+
|
|
107
|
+
**Note:** Some MCP features require persistent connections and won't work in serverless mode, including elicitation, resource subscriptions, and update notifications. See the [serverless section](/reference/v1/tools/mcp-server#starthttp) in the API reference for full details and limitations.
|
|
101
108
|
|
|
102
109
|
## Registering an `MCPServer`
|
|
103
110
|
|
|
104
111
|
To make an MCP server available to other systems or agents that support the protocol, register it in the main `Mastra` instance using `mcpServers`.
|
|
105
112
|
|
|
106
113
|
```typescript title="src/mastra/index.ts" showLineNumbers copy
|
|
107
|
-
import { Mastra } from "@mastra/core
|
|
114
|
+
import { Mastra } from "@mastra/core";
|
|
108
115
|
|
|
109
116
|
import { testMcpServer } from "./mcp/test-mcp-server";
|
|
110
117
|
|
|
111
118
|
export const mastra = new Mastra({
|
|
112
119
|
// ...
|
|
113
|
-
mcpServers: {
|
|
120
|
+
mcpServers: {
|
|
121
|
+
testMcpServer, // Registry key: 'testMcpServer'
|
|
122
|
+
},
|
|
114
123
|
});
|
|
124
|
+
|
|
125
|
+
// Both retrieval methods work:
|
|
126
|
+
mastra.getMCPServer('testMcpServer'); // By registry key
|
|
127
|
+
mastra.getMCPServerById('test-mcp-server'); // By intrinsic ID
|
|
115
128
|
```
|
|
116
129
|
|
|
117
130
|
## Static and dynamic tools
|
|
118
131
|
|
|
119
132
|
`MCPClient` offers two approaches to retrieving tools from connected servers, suitable for different application architectures:
|
|
120
133
|
|
|
121
|
-
| Feature | Static Configuration (`await mcp.
|
|
134
|
+
| Feature | Static Configuration (`await mcp.listTools()`) | Dynamic Configuration (`await mcp.listToolsets()`) |
|
|
122
135
|
| :---------------- | :-------------------------------------------- | :--------------------------------------------------- |
|
|
123
136
|
| **Use Case** | Single-user, static config (e.g., CLI tool) | Multi-user, dynamic config (e.g., SaaS app) |
|
|
124
137
|
| **Configuration** | Fixed at agent initialization | Per-request, dynamic |
|
|
@@ -127,9 +140,9 @@ export const mastra = new Mastra({
|
|
|
127
140
|
|
|
128
141
|
### Static tools
|
|
129
142
|
|
|
130
|
-
Use the `.
|
|
143
|
+
Use the `.listTools()` method to fetch tools from all configured MCP servers. This is suitable when configuration (such as API keys) is static and consistent across users or requests. Call it once and pass the result to the `tools` property when defining your agent.
|
|
131
144
|
|
|
132
|
-
> See [
|
|
145
|
+
> See [listTools()](/reference/v1/tools/mcp-client#listtools) for more information.
|
|
133
146
|
|
|
134
147
|
```typescript {8} title="src/mastra/agents/test-agent.ts" showLineNumbers copy
|
|
135
148
|
import { openai } from "@ai-sdk/openai";
|
|
@@ -139,13 +152,13 @@ import { testMcpClient } from "../mcp/test-mcp-client";
|
|
|
139
152
|
|
|
140
153
|
export const testAgent = new Agent({
|
|
141
154
|
// ...
|
|
142
|
-
tools: await testMcpClient.
|
|
155
|
+
tools: await testMcpClient.listTools(),
|
|
143
156
|
});
|
|
144
157
|
```
|
|
145
158
|
|
|
146
159
|
### Dynamic tools
|
|
147
160
|
|
|
148
|
-
Use the `.
|
|
161
|
+
Use the `.listToolsets()` method when tool configuration may vary by request or user, such as in a multi-tenant system where each user provides their own API key. This method returns toolsets that can be passed to the `toolsets` option in the agent's `.generate()` or `.stream()` calls.
|
|
149
162
|
|
|
150
163
|
```typescript {5-16,21} showLineNumbers copy
|
|
151
164
|
import { MCPClient } from "@mastra/mcp";
|
|
@@ -168,7 +181,7 @@ async function handleRequest(userPrompt: string, userApiKey: string) {
|
|
|
168
181
|
const agent = mastra.getAgent("testAgent");
|
|
169
182
|
|
|
170
183
|
const response = await agent.generate(userPrompt, {
|
|
171
|
-
toolsets: await userMcp.
|
|
184
|
+
toolsets: await userMcp.listToolsets(),
|
|
172
185
|
});
|
|
173
186
|
|
|
174
187
|
await userMcp.disconnect();
|
|
@@ -179,7 +192,7 @@ async function handleRequest(userPrompt: string, userApiKey: string) {
|
|
|
179
192
|
}
|
|
180
193
|
```
|
|
181
194
|
|
|
182
|
-
> See [
|
|
195
|
+
> See [listToolsets()](/reference/v1/tools/mcp-client#listtoolsets) for more information.
|
|
183
196
|
|
|
184
197
|
## Connecting to an MCP registry
|
|
185
198
|
|
|
@@ -355,6 +368,6 @@ As an alternative to MCP, Ampersand's AI SDK also has an adapter for Mastra, so
|
|
|
355
368
|
|
|
356
369
|
## Related
|
|
357
370
|
|
|
358
|
-
- [Using Tools](/docs/agents/using-tools)
|
|
359
|
-
- [MCPClient](/reference/tools/mcp-client)
|
|
360
|
-
- [MCPServer](/reference/tools/mcp-server)
|
|
371
|
+
- [Using Tools](/docs/v1/agents/using-tools)
|
|
372
|
+
- [MCPClient](/reference/v1/tools/mcp-client)
|
|
373
|
+
- [MCPServer](/reference/v1/tools/mcp-server)
|
|
@@ -16,7 +16,7 @@ Each tool typically defines:
|
|
|
16
16
|
|
|
17
17
|
## Creating Tools
|
|
18
18
|
|
|
19
|
-
In Mastra, you create tools using the [`createTool`](/reference/tools/create-tool) function from the `@mastra/core/tools` package.
|
|
19
|
+
In Mastra, you create tools using the [`createTool`](/reference/v1/tools/create-tool) function from the `@mastra/core/tools` package.
|
|
20
20
|
|
|
21
21
|
```typescript title="src/mastra/tools/weatherInfo.ts" copy
|
|
22
22
|
import { createTool } from "@mastra/core/tools";
|
|
@@ -39,9 +39,9 @@ export const weatherTool = createTool({
|
|
|
39
39
|
temperature: z.number(),
|
|
40
40
|
conditions: z.string(),
|
|
41
41
|
}),
|
|
42
|
-
execute: async (
|
|
43
|
-
console.log("Using tool to fetch weather information for", city);
|
|
44
|
-
return await getWeatherInfo(city);
|
|
42
|
+
execute: async (inputData) => {
|
|
43
|
+
console.log("Using tool to fetch weather information for", inputData.city);
|
|
44
|
+
return await getWeatherInfo(inputData.city);
|
|
45
45
|
},
|
|
46
46
|
});
|
|
47
47
|
```
|
|
@@ -52,11 +52,11 @@ When creating tools, keep tool descriptions simple and focused on **what** the t
|
|
|
52
52
|
|
|
53
53
|
## Adding Tools to an Agent
|
|
54
54
|
|
|
55
|
-
To make tools available to an agent, you configure them in the agent's definition. Mentioning available tools and their general purpose in the agent's system prompt can also improve tool usage. For detailed steps and examples, see the guide on [Using Tools with Agents](/docs/agents/using-tools#adding-tools-to-an-agent).
|
|
55
|
+
To make tools available to an agent, you configure them in the agent's definition. Mentioning available tools and their general purpose in the agent's system prompt can also improve tool usage. For detailed steps and examples, see the guide on [Using Tools with Agents](/docs/v1/agents/using-tools#adding-tools-to-an-agent).
|
|
56
56
|
|
|
57
|
-
## Using `
|
|
57
|
+
## Using `RequestContext`
|
|
58
58
|
|
|
59
|
-
Use [
|
|
59
|
+
Use [RequestContext](/docs/v1/server-db/request-context) to access request-specific values. This lets you conditionally adjust behavior based on the context of the request.
|
|
60
60
|
|
|
61
61
|
```typescript title="src/mastra/tools/test-tool.ts" showLineNumbers
|
|
62
62
|
export type UserTier = {
|
|
@@ -73,16 +73,16 @@ const baseTools = () => {
|
|
|
73
73
|
|
|
74
74
|
export const testTool = createTool({
|
|
75
75
|
// ...
|
|
76
|
-
execute: async ({
|
|
77
|
-
const userTier =
|
|
76
|
+
execute: async ({ requestContext }) => {
|
|
77
|
+
const userTier = requestContext.get("user-tier") as UserTier["user-tier"];
|
|
78
78
|
|
|
79
79
|
return userTier === "enterprise" ? advancedTools : baseTools;
|
|
80
80
|
},
|
|
81
81
|
});
|
|
82
82
|
```
|
|
83
83
|
|
|
84
|
-
> See [
|
|
84
|
+
> See [Request Context](/docs/v1/server-db/request-context) for more information.
|
|
85
85
|
|
|
86
86
|
## Testing with Studio
|
|
87
87
|
|
|
88
|
-
Use [Studio](/docs/getting-started/studio) to test tools with different inputs, inspect execution results, and verify tool behavior.
|
|
88
|
+
Use [Studio](/docs/v1/getting-started/studio) to test tools with different inputs, inspect execution results, and verify tool behavior.
|
|
@@ -13,7 +13,7 @@ Mastra's Voice system provides a unified interface for voice interactions, enabl
|
|
|
13
13
|
|
|
14
14
|
## Adding Voice to Agents
|
|
15
15
|
|
|
16
|
-
To learn how to integrate voice capabilities into your agents, check out the [Adding Voice to Agents](/docs/agents/adding-voice) documentation. This section covers how to use both single and multiple voice providers, as well as real-time interactions.
|
|
16
|
+
To learn how to integrate voice capabilities into your agents, check out the [Adding Voice to Agents](/docs/v1/agents/adding-voice) documentation. This section covers how to use both single and multiple voice providers, as well as real-time interactions.
|
|
17
17
|
|
|
18
18
|
```typescript
|
|
19
19
|
import { Agent } from "@mastra/core/agent";
|
|
@@ -23,6 +23,7 @@ import { OpenAIVoice } from "@mastra/voice-openai";
|
|
|
23
23
|
// Initialize OpenAI voice for TTS
|
|
24
24
|
|
|
25
25
|
const voiceAgent = new Agent({
|
|
26
|
+
id: "voice-agent",
|
|
26
27
|
name: "Voice Agent",
|
|
27
28
|
instructions:
|
|
28
29
|
"You are a voice assistant that can help users with their tasks.",
|
|
@@ -50,6 +51,7 @@ import { OpenAIVoice } from "@mastra/voice-openai";
|
|
|
50
51
|
import { playAudio } from "@mastra/node-audio";
|
|
51
52
|
|
|
52
53
|
const voiceAgent = new Agent({
|
|
54
|
+
id: "voice-agent",
|
|
53
55
|
name: "Voice Agent",
|
|
54
56
|
instructions:
|
|
55
57
|
"You are a voice assistant that can help users with their tasks.",
|
|
@@ -68,7 +70,7 @@ const audioStream = await voiceAgent.voice.speak(text, {
|
|
|
68
70
|
playAudio(audioStream);
|
|
69
71
|
```
|
|
70
72
|
|
|
71
|
-
Visit the [OpenAI Voice Reference](/reference/voice/openai) for more information on the OpenAI voice provider.
|
|
73
|
+
Visit the [OpenAI Voice Reference](/reference/v1/voice/openai) for more information on the OpenAI voice provider.
|
|
72
74
|
|
|
73
75
|
</TabItem>
|
|
74
76
|
<TabItem value="azure" label="Azure">
|
|
@@ -80,6 +82,7 @@ import { AzureVoice } from "@mastra/voice-azure";
|
|
|
80
82
|
import { playAudio } from "@mastra/node-audio";
|
|
81
83
|
|
|
82
84
|
const voiceAgent = new Agent({
|
|
85
|
+
id: "voice-agent",
|
|
83
86
|
name: "Voice Agent",
|
|
84
87
|
instructions:
|
|
85
88
|
"You are a voice assistant that can help users with their tasks.",
|
|
@@ -97,7 +100,7 @@ const audioStream = await voiceAgent.voice.speak(text, {
|
|
|
97
100
|
playAudio(audioStream);
|
|
98
101
|
```
|
|
99
102
|
|
|
100
|
-
Visit the [Azure Voice Reference](/reference/voice/azure) for more information on the Azure voice provider.
|
|
103
|
+
Visit the [Azure Voice Reference](/reference/v1/voice/azure) for more information on the Azure voice provider.
|
|
101
104
|
|
|
102
105
|
</TabItem>
|
|
103
106
|
<TabItem value="elevenlabs" label="ElevenLabs">
|
|
@@ -109,6 +112,7 @@ import { ElevenLabsVoice } from "@mastra/voice-elevenlabs";
|
|
|
109
112
|
import { playAudio } from "@mastra/node-audio";
|
|
110
113
|
|
|
111
114
|
const voiceAgent = new Agent({
|
|
115
|
+
id: "voice-agent",
|
|
112
116
|
name: "Voice Agent",
|
|
113
117
|
instructions:
|
|
114
118
|
"You are a voice assistant that can help users with their tasks.",
|
|
@@ -126,7 +130,7 @@ const audioStream = await voiceAgent.voice.speak(text, {
|
|
|
126
130
|
playAudio(audioStream);
|
|
127
131
|
```
|
|
128
132
|
|
|
129
|
-
Visit the [ElevenLabs Voice Reference](/reference/voice/elevenlabs) for more information on the ElevenLabs voice provider.
|
|
133
|
+
Visit the [ElevenLabs Voice Reference](/reference/v1/voice/elevenlabs) for more information on the ElevenLabs voice provider.
|
|
130
134
|
|
|
131
135
|
</TabItem>
|
|
132
136
|
<TabItem value="playai" label="PlayAI">
|
|
@@ -138,6 +142,7 @@ import { PlayAIVoice } from "@mastra/voice-playai";
|
|
|
138
142
|
import { playAudio } from "@mastra/node-audio";
|
|
139
143
|
|
|
140
144
|
const voiceAgent = new Agent({
|
|
145
|
+
id: "voice-agent",
|
|
141
146
|
name: "Voice Agent",
|
|
142
147
|
instructions:
|
|
143
148
|
"You are a voice assistant that can help users with their tasks.",
|
|
@@ -155,7 +160,7 @@ const audioStream = await voiceAgent.voice.speak(text, {
|
|
|
155
160
|
playAudio(audioStream);
|
|
156
161
|
```
|
|
157
162
|
|
|
158
|
-
Visit the [PlayAI Voice Reference](/reference/voice/playai) for more information on the PlayAI voice provider.
|
|
163
|
+
Visit the [PlayAI Voice Reference](/reference/v1/voice/playai) for more information on the PlayAI voice provider.
|
|
159
164
|
|
|
160
165
|
</TabItem>
|
|
161
166
|
<TabItem value="google" label="Google">
|
|
@@ -167,6 +172,7 @@ import { GoogleVoice } from "@mastra/voice-google";
|
|
|
167
172
|
import { playAudio } from "@mastra/node-audio";
|
|
168
173
|
|
|
169
174
|
const voiceAgent = new Agent({
|
|
175
|
+
id: "voice-agent",
|
|
170
176
|
name: "Voice Agent",
|
|
171
177
|
instructions:
|
|
172
178
|
"You are a voice assistant that can help users with their tasks.",
|
|
@@ -184,7 +190,7 @@ const audioStream = await voiceAgent.voice.speak(text, {
|
|
|
184
190
|
playAudio(audioStream);
|
|
185
191
|
```
|
|
186
192
|
|
|
187
|
-
Visit the [Google Voice Reference](/reference/voice/google) for more information on the Google voice provider.
|
|
193
|
+
Visit the [Google Voice Reference](/reference/v1/voice/google) for more information on the Google voice provider.
|
|
188
194
|
|
|
189
195
|
</TabItem>
|
|
190
196
|
<TabItem value="cloudflare" label="Cloudflare">
|
|
@@ -196,6 +202,7 @@ import { CloudflareVoice } from "@mastra/voice-cloudflare";
|
|
|
196
202
|
import { playAudio } from "@mastra/node-audio";
|
|
197
203
|
|
|
198
204
|
const voiceAgent = new Agent({
|
|
205
|
+
id: "voice-agent",
|
|
199
206
|
name: "Voice Agent",
|
|
200
207
|
instructions:
|
|
201
208
|
"You are a voice assistant that can help users with their tasks.",
|
|
@@ -213,7 +220,7 @@ const audioStream = await voiceAgent.voice.speak(text, {
|
|
|
213
220
|
playAudio(audioStream);
|
|
214
221
|
```
|
|
215
222
|
|
|
216
|
-
Visit the [Cloudflare Voice Reference](/reference/voice/cloudflare) for more information on the Cloudflare voice provider.
|
|
223
|
+
Visit the [Cloudflare Voice Reference](/reference/v1/voice/cloudflare) for more information on the Cloudflare voice provider.
|
|
217
224
|
|
|
218
225
|
</TabItem>
|
|
219
226
|
<TabItem value="deepgram" label="Deepgram">
|
|
@@ -225,6 +232,7 @@ import { DeepgramVoice } from "@mastra/voice-deepgram";
|
|
|
225
232
|
import { playAudio } from "@mastra/node-audio";
|
|
226
233
|
|
|
227
234
|
const voiceAgent = new Agent({
|
|
235
|
+
id: "voice-agent",
|
|
228
236
|
name: "Voice Agent",
|
|
229
237
|
instructions:
|
|
230
238
|
"You are a voice assistant that can help users with their tasks.",
|
|
@@ -242,7 +250,7 @@ const audioStream = await voiceAgent.voice.speak(text, {
|
|
|
242
250
|
playAudio(audioStream);
|
|
243
251
|
```
|
|
244
252
|
|
|
245
|
-
Visit the [Deepgram Voice Reference](/reference/voice/deepgram) for more information on the Deepgram voice provider.
|
|
253
|
+
Visit the [Deepgram Voice Reference](/reference/v1/voice/deepgram) for more information on the Deepgram voice provider.
|
|
246
254
|
|
|
247
255
|
</TabItem>
|
|
248
256
|
<TabItem value="speechify" label="Speechify">
|
|
@@ -254,6 +262,7 @@ import { SpeechifyVoice } from "@mastra/voice-speechify";
|
|
|
254
262
|
import { playAudio } from "@mastra/node-audio";
|
|
255
263
|
|
|
256
264
|
const voiceAgent = new Agent({
|
|
265
|
+
id: "voice-agent",
|
|
257
266
|
name: "Voice Agent",
|
|
258
267
|
instructions:
|
|
259
268
|
"You are a voice assistant that can help users with their tasks.",
|
|
@@ -271,7 +280,7 @@ const audioStream = await voiceAgent.voice.speak(text, {
|
|
|
271
280
|
playAudio(audioStream);
|
|
272
281
|
```
|
|
273
282
|
|
|
274
|
-
Visit the [Speechify Voice Reference](/reference/voice/speechify) for more information on the Speechify voice provider.
|
|
283
|
+
Visit the [Speechify Voice Reference](/reference/v1/voice/speechify) for more information on the Speechify voice provider.
|
|
275
284
|
|
|
276
285
|
</TabItem>
|
|
277
286
|
<TabItem value="sarvam" label="Sarvam">
|
|
@@ -283,6 +292,7 @@ import { SarvamVoice } from "@mastra/voice-sarvam";
|
|
|
283
292
|
import { playAudio } from "@mastra/node-audio";
|
|
284
293
|
|
|
285
294
|
const voiceAgent = new Agent({
|
|
295
|
+
id: "voice-agent",
|
|
286
296
|
name: "Voice Agent",
|
|
287
297
|
instructions:
|
|
288
298
|
"You are a voice assistant that can help users with their tasks.",
|
|
@@ -300,7 +310,7 @@ const audioStream = await voiceAgent.voice.speak(text, {
|
|
|
300
310
|
playAudio(audioStream);
|
|
301
311
|
```
|
|
302
312
|
|
|
303
|
-
Visit the [Sarvam Voice Reference](/reference/voice/sarvam) for more information on the Sarvam voice provider.
|
|
313
|
+
Visit the [Sarvam Voice Reference](/reference/v1/voice/sarvam) for more information on the Sarvam voice provider.
|
|
304
314
|
|
|
305
315
|
</TabItem>
|
|
306
316
|
<TabItem value="murf" label="Murf">
|
|
@@ -312,6 +322,7 @@ import { MurfVoice } from "@mastra/voice-murf";
|
|
|
312
322
|
import { playAudio } from "@mastra/node-audio";
|
|
313
323
|
|
|
314
324
|
const voiceAgent = new Agent({
|
|
325
|
+
id: "voice-agent",
|
|
315
326
|
name: "Voice Agent",
|
|
316
327
|
instructions:
|
|
317
328
|
"You are a voice assistant that can help users with their tasks.",
|
|
@@ -329,7 +340,7 @@ const audioStream = await voiceAgent.voice.speak(text, {
|
|
|
329
340
|
playAudio(audioStream);
|
|
330
341
|
```
|
|
331
342
|
|
|
332
|
-
Visit the [Murf Voice Reference](/reference/voice/murf) for more information on the Murf voice provider.
|
|
343
|
+
Visit the [Murf Voice Reference](/reference/v1/voice/murf) for more information on the Murf voice provider.
|
|
333
344
|
|
|
334
345
|
</TabItem>
|
|
335
346
|
</Tabs>
|
|
@@ -353,6 +364,7 @@ import { OpenAIVoice } from "@mastra/voice-openai";
|
|
|
353
364
|
import { createReadStream } from "fs";
|
|
354
365
|
|
|
355
366
|
const voiceAgent = new Agent({
|
|
367
|
+
id: "voice-agent",
|
|
356
368
|
name: "Voice Agent",
|
|
357
369
|
instructions:
|
|
358
370
|
"You are a voice assistant that can help users with their tasks.",
|
|
@@ -371,7 +383,7 @@ console.log(`User said: ${transcript}`);
|
|
|
371
383
|
const { text } = await voiceAgent.generate(transcript);
|
|
372
384
|
```
|
|
373
385
|
|
|
374
|
-
Visit the [OpenAI Voice Reference](/reference/voice/openai) for more information on the OpenAI voice provider.
|
|
386
|
+
Visit the [OpenAI Voice Reference](/reference/v1/voice/openai) for more information on the OpenAI voice provider.
|
|
375
387
|
|
|
376
388
|
</TabItem>
|
|
377
389
|
<TabItem value="azure" label="Azure">
|
|
@@ -384,6 +396,7 @@ import { AzureVoice } from "@mastra/voice-azure";
|
|
|
384
396
|
import { createReadStream } from "fs";
|
|
385
397
|
|
|
386
398
|
const voiceAgent = new Agent({
|
|
399
|
+
id: "voice-agent",
|
|
387
400
|
name: "Voice Agent",
|
|
388
401
|
instructions:
|
|
389
402
|
"You are a voice assistant that can help users with their tasks.",
|
|
@@ -402,7 +415,7 @@ console.log(`User said: ${transcript}`);
|
|
|
402
415
|
const { text } = await voiceAgent.generate(transcript);
|
|
403
416
|
```
|
|
404
417
|
|
|
405
|
-
Visit the [Azure Voice Reference](/reference/voice/azure) for more information on the Azure voice provider.
|
|
418
|
+
Visit the [Azure Voice Reference](/reference/v1/voice/azure) for more information on the Azure voice provider.
|
|
406
419
|
|
|
407
420
|
</TabItem>
|
|
408
421
|
<TabItem value="elevenlabs" label="ElevenLabs">
|
|
@@ -414,6 +427,7 @@ import { ElevenLabsVoice } from "@mastra/voice-elevenlabs";
|
|
|
414
427
|
import { createReadStream } from "fs";
|
|
415
428
|
|
|
416
429
|
const voiceAgent = new Agent({
|
|
430
|
+
id: "voice-agent",
|
|
417
431
|
name: "Voice Agent",
|
|
418
432
|
instructions:
|
|
419
433
|
"You are a voice assistant that can help users with their tasks.",
|
|
@@ -432,7 +446,7 @@ console.log(`User said: ${transcript}`);
|
|
|
432
446
|
const { text } = await voiceAgent.generate(transcript);
|
|
433
447
|
```
|
|
434
448
|
|
|
435
|
-
Visit the [ElevenLabs Voice Reference](/reference/voice/elevenlabs) for more information on the ElevenLabs voice provider.
|
|
449
|
+
Visit the [ElevenLabs Voice Reference](/reference/v1/voice/elevenlabs) for more information on the ElevenLabs voice provider.
|
|
436
450
|
|
|
437
451
|
</TabItem>
|
|
438
452
|
<TabItem value="google" label="Google">
|
|
@@ -444,6 +458,7 @@ import { GoogleVoice } from "@mastra/voice-google";
|
|
|
444
458
|
import { createReadStream } from "fs";
|
|
445
459
|
|
|
446
460
|
const voiceAgent = new Agent({
|
|
461
|
+
id: "voice-agent",
|
|
447
462
|
name: "Voice Agent",
|
|
448
463
|
instructions:
|
|
449
464
|
"You are a voice assistant that can help users with their tasks.",
|
|
@@ -462,7 +477,7 @@ console.log(`User said: ${transcript}`);
|
|
|
462
477
|
const { text } = await voiceAgent.generate(transcript);
|
|
463
478
|
```
|
|
464
479
|
|
|
465
|
-
Visit the [Google Voice Reference](/reference/voice/google) for more information on the Google voice provider.
|
|
480
|
+
Visit the [Google Voice Reference](/reference/v1/voice/google) for more information on the Google voice provider.
|
|
466
481
|
|
|
467
482
|
</TabItem>
|
|
468
483
|
<TabItem value="cloudflare" label="Cloudflare">
|
|
@@ -474,6 +489,7 @@ import { CloudflareVoice } from "@mastra/voice-cloudflare";
|
|
|
474
489
|
import { createReadStream } from "fs";
|
|
475
490
|
|
|
476
491
|
const voiceAgent = new Agent({
|
|
492
|
+
id: "voice-agent",
|
|
477
493
|
name: "Voice Agent",
|
|
478
494
|
instructions:
|
|
479
495
|
"You are a voice assistant that can help users with their tasks.",
|
|
@@ -492,7 +508,7 @@ console.log(`User said: ${transcript}`);
|
|
|
492
508
|
const { text } = await voiceAgent.generate(transcript);
|
|
493
509
|
```
|
|
494
510
|
|
|
495
|
-
Visit the [Cloudflare Voice Reference](/reference/voice/cloudflare) for more information on the Cloudflare voice provider.
|
|
511
|
+
Visit the [Cloudflare Voice Reference](/reference/v1/voice/cloudflare) for more information on the Cloudflare voice provider.
|
|
496
512
|
|
|
497
513
|
</TabItem>
|
|
498
514
|
<TabItem value="deepgram" label="Deepgram">
|
|
@@ -504,6 +520,7 @@ import { DeepgramVoice } from "@mastra/voice-deepgram";
|
|
|
504
520
|
import { createReadStream } from "fs";
|
|
505
521
|
|
|
506
522
|
const voiceAgent = new Agent({
|
|
523
|
+
id: "voice-agent",
|
|
507
524
|
name: "Voice Agent",
|
|
508
525
|
instructions:
|
|
509
526
|
"You are a voice assistant that can help users with their tasks.",
|
|
@@ -522,7 +539,7 @@ console.log(`User said: ${transcript}`);
|
|
|
522
539
|
const { text } = await voiceAgent.generate(transcript);
|
|
523
540
|
```
|
|
524
541
|
|
|
525
|
-
Visit the [Deepgram Voice Reference](/reference/voice/deepgram) for more information on the Deepgram voice provider.
|
|
542
|
+
Visit the [Deepgram Voice Reference](/reference/v1/voice/deepgram) for more information on the Deepgram voice provider.
|
|
526
543
|
|
|
527
544
|
</TabItem>
|
|
528
545
|
<TabItem value="sarvam" label="Sarvam">
|
|
@@ -534,6 +551,7 @@ import { SarvamVoice } from "@mastra/voice-sarvam";
|
|
|
534
551
|
import { createReadStream } from "fs";
|
|
535
552
|
|
|
536
553
|
const voiceAgent = new Agent({
|
|
554
|
+
id: "voice-agent",
|
|
537
555
|
name: "Voice Agent",
|
|
538
556
|
instructions:
|
|
539
557
|
"You are a voice assistant that can help users with their tasks.",
|
|
@@ -552,7 +570,7 @@ console.log(`User said: ${transcript}`);
|
|
|
552
570
|
const { text } = await voiceAgent.generate(transcript);
|
|
553
571
|
```
|
|
554
572
|
|
|
555
|
-
Visit the [Sarvam Voice Reference](/reference/voice/sarvam) for more information on the Sarvam voice provider.
|
|
573
|
+
Visit the [Sarvam Voice Reference](/reference/v1/voice/sarvam) for more information on the Sarvam voice provider.
|
|
556
574
|
|
|
557
575
|
</TabItem>
|
|
558
576
|
</Tabs>
|
|
@@ -572,6 +590,7 @@ import { playAudio, getMicrophoneStream } from "@mastra/node-audio";
|
|
|
572
590
|
import { OpenAIRealtimeVoice } from "@mastra/voice-openai-realtime";
|
|
573
591
|
|
|
574
592
|
const voiceAgent = new Agent({
|
|
593
|
+
id: "voice-agent",
|
|
575
594
|
name: "Voice Agent",
|
|
576
595
|
instructions:
|
|
577
596
|
"You are a voice assistant that can help users with their tasks.",
|
|
@@ -592,7 +611,7 @@ const micStream = getMicrophoneStream();
|
|
|
592
611
|
await voiceAgent.voice.send(micStream);
|
|
593
612
|
```
|
|
594
613
|
|
|
595
|
-
Visit the [OpenAI Voice Reference](/reference/voice/openai-realtime) for more information on the OpenAI voice provider.
|
|
614
|
+
Visit the [OpenAI Voice Reference](/reference/v1/voice/openai-realtime) for more information on the OpenAI voice provider.
|
|
596
615
|
|
|
597
616
|
</TabItem>
|
|
598
617
|
<TabItem value="google" label="Google">
|
|
@@ -604,6 +623,7 @@ import { playAudio, getMicrophoneStream } from "@mastra/node-audio";
|
|
|
604
623
|
import { GeminiLiveVoice } from "@mastra/voice-google-gemini-live";
|
|
605
624
|
|
|
606
625
|
const voiceAgent = new Agent({
|
|
626
|
+
id: "voice-agent",
|
|
607
627
|
name: "Voice Agent",
|
|
608
628
|
instructions:
|
|
609
629
|
"You are a voice assistant that can help users with their tasks.",
|
|
@@ -643,7 +663,7 @@ const micStream = getMicrophoneStream();
|
|
|
643
663
|
await voiceAgent.voice.send(micStream);
|
|
644
664
|
```
|
|
645
665
|
|
|
646
|
-
Visit the [Google Gemini Live Reference](/reference/voice/google-gemini-live) for more information on the Google Gemini Live voice provider.
|
|
666
|
+
Visit the [Google Gemini Live Reference](/reference/v1/voice/google-gemini-live) for more information on the Google Gemini Live voice provider.
|
|
647
667
|
|
|
648
668
|
</TabItem>
|
|
649
669
|
</Tabs>
|
|
@@ -674,7 +694,7 @@ const voice = new OpenAIVoice({
|
|
|
674
694
|
});
|
|
675
695
|
```
|
|
676
696
|
|
|
677
|
-
Visit the [OpenAI Voice Reference](/reference/voice/openai) for more information on the OpenAI voice provider.
|
|
697
|
+
Visit the [OpenAI Voice Reference](/reference/v1/voice/openai) for more information on the OpenAI voice provider.
|
|
678
698
|
|
|
679
699
|
</TabItem>
|
|
680
700
|
<TabItem value="azure" label="Azure">
|
|
@@ -700,7 +720,7 @@ const voice = new AzureVoice({
|
|
|
700
720
|
});
|
|
701
721
|
```
|
|
702
722
|
|
|
703
|
-
Visit the [Azure Voice Reference](/reference/voice/azure) for more information on the Azure voice provider.
|
|
723
|
+
Visit the [Azure Voice Reference](/reference/v1/voice/azure) for more information on the Azure voice provider.
|
|
704
724
|
|
|
705
725
|
</TabItem>
|
|
706
726
|
<TabItem value="elevenlabs" label="ElevenLabs">
|
|
@@ -719,7 +739,7 @@ const voice = new ElevenLabsVoice({
|
|
|
719
739
|
});
|
|
720
740
|
```
|
|
721
741
|
|
|
722
|
-
Visit the [ElevenLabs Voice Reference](/reference/voice/elevenlabs) for more information on the ElevenLabs voice provider.
|
|
742
|
+
Visit the [ElevenLabs Voice Reference](/reference/v1/voice/elevenlabs) for more information on the ElevenLabs voice provider.
|
|
723
743
|
|
|
724
744
|
</TabItem>
|
|
725
745
|
<TabItem value="playai" label="PlayAI">
|
|
@@ -738,7 +758,7 @@ const voice = new PlayAIVoice({
|
|
|
738
758
|
});
|
|
739
759
|
```
|
|
740
760
|
|
|
741
|
-
Visit the [PlayAI Voice Reference](/reference/voice/playai) for more information on the PlayAI voice provider.
|
|
761
|
+
Visit the [PlayAI Voice Reference](/reference/v1/voice/playai) for more information on the PlayAI voice provider.
|
|
742
762
|
|
|
743
763
|
</TabItem>
|
|
744
764
|
<TabItem value="google" label="Google">
|
|
@@ -760,7 +780,7 @@ const voice = new GoogleVoice({
|
|
|
760
780
|
});
|
|
761
781
|
```
|
|
762
782
|
|
|
763
|
-
Visit the [Google Voice Reference](/reference/voice/google) for more information on the Google voice provider.
|
|
783
|
+
Visit the [Google Voice Reference](/reference/v1/voice/google) for more information on the Google voice provider.
|
|
764
784
|
|
|
765
785
|
</TabItem>
|
|
766
786
|
<TabItem value="cloudflare" label="Cloudflare">
|
|
@@ -779,7 +799,7 @@ const voice = new CloudflareVoice({
|
|
|
779
799
|
});
|
|
780
800
|
```
|
|
781
801
|
|
|
782
|
-
Visit the [Cloudflare Voice Reference](/reference/voice/cloudflare) for more information on the Cloudflare voice provider.
|
|
802
|
+
Visit the [Cloudflare Voice Reference](/reference/v1/voice/cloudflare) for more information on the Cloudflare voice provider.
|
|
783
803
|
|
|
784
804
|
</TabItem>
|
|
785
805
|
<TabItem value="deepgram" label="Deepgram">
|
|
@@ -801,7 +821,7 @@ const voice = new DeepgramVoice({
|
|
|
801
821
|
});
|
|
802
822
|
```
|
|
803
823
|
|
|
804
|
-
Visit the [Deepgram Voice Reference](/reference/voice/deepgram) for more information on the Deepgram voice provider.
|
|
824
|
+
Visit the [Deepgram Voice Reference](/reference/v1/voice/deepgram) for more information on the Deepgram voice provider.
|
|
805
825
|
|
|
806
826
|
</TabItem>
|
|
807
827
|
<TabItem value="speechify" label="Speechify">
|
|
@@ -820,7 +840,7 @@ const voice = new SpeechifyVoice({
|
|
|
820
840
|
});
|
|
821
841
|
```
|
|
822
842
|
|
|
823
|
-
Visit the [Speechify Voice Reference](/reference/voice/speechify) for more information on the Speechify voice provider.
|
|
843
|
+
Visit the [Speechify Voice Reference](/reference/v1/voice/speechify) for more information on the Speechify voice provider.
|
|
824
844
|
|
|
825
845
|
</TabItem>
|
|
826
846
|
<TabItem value="sarvam" label="Sarvam">
|
|
@@ -838,7 +858,7 @@ const voice = new SarvamVoice({
|
|
|
838
858
|
});
|
|
839
859
|
```
|
|
840
860
|
|
|
841
|
-
Visit the [Sarvam Voice Reference](/reference/voice/sarvam) for more information on the Sarvam voice provider.
|
|
861
|
+
Visit the [Sarvam Voice Reference](/reference/v1/voice/sarvam) for more information on the Sarvam voice provider.
|
|
842
862
|
|
|
843
863
|
</TabItem>
|
|
844
864
|
<TabItem value="murf" label="Murf">
|
|
@@ -856,7 +876,7 @@ const voice = new MurfVoice({
|
|
|
856
876
|
});
|
|
857
877
|
```
|
|
858
878
|
|
|
859
|
-
Visit the [Murf Voice Reference](/reference/voice/murf) for more information on the Murf voice provider.
|
|
879
|
+
Visit the [Murf Voice Reference](/reference/v1/voice/murf) for more information on the Murf voice provider.
|
|
860
880
|
|
|
861
881
|
</TabItem>
|
|
862
882
|
<TabItem value="openai-realtime" label="OpenAI Realtime">
|
|
@@ -878,7 +898,7 @@ const voice = new OpenAIRealtimeVoice({
|
|
|
878
898
|
});
|
|
879
899
|
```
|
|
880
900
|
|
|
881
|
-
For more information on the OpenAI Realtime voice provider, refer to the [OpenAI Realtime Voice Reference](/reference/voice/openai-realtime).
|
|
901
|
+
For more information on the OpenAI Realtime voice provider, refer to the [OpenAI Realtime Voice Reference](/reference/v1/voice/openai-realtime).
|
|
882
902
|
|
|
883
903
|
</TabItem>
|
|
884
904
|
<TabItem value="google-gemini-live" label="Google Gemini Live">
|
|
@@ -895,7 +915,7 @@ const voice = new GeminiLiveVoice({
|
|
|
895
915
|
});
|
|
896
916
|
```
|
|
897
917
|
|
|
898
|
-
Visit the [Google Gemini Live Reference](/reference/voice/google-gemini-live) for more information on the Google Gemini Live voice provider.
|
|
918
|
+
Visit the [Google Gemini Live Reference](/reference/v1/voice/google-gemini-live) for more information on the Google Gemini Live voice provider.
|
|
899
919
|
|
|
900
920
|
</TabItem>
|
|
901
921
|
</Tabs>
|
|
@@ -951,17 +971,17 @@ const responseAudio = await voice.speak(`You said: ${transcript}`, {
|
|
|
951
971
|
playAudio(responseAudio);
|
|
952
972
|
```
|
|
953
973
|
|
|
954
|
-
For more information on the CompositeVoice, refer to the [CompositeVoice Reference](/reference/voice/composite-voice).
|
|
974
|
+
For more information on the CompositeVoice, refer to the [CompositeVoice Reference](/reference/v1/voice/composite-voice).
|
|
955
975
|
|
|
956
976
|
## More Resources
|
|
957
977
|
|
|
958
|
-
- [CompositeVoice](/reference/voice/composite-voice)
|
|
959
|
-
- [MastraVoice](/reference/voice/mastra-voice)
|
|
960
|
-
- [OpenAI Voice](/reference/voice/openai)
|
|
961
|
-
- [OpenAI Realtime Voice](/reference/voice/openai-realtime)
|
|
962
|
-
- [Azure Voice](/reference/voice/azure)
|
|
963
|
-
- [Google Voice](/reference/voice/google)
|
|
964
|
-
- [Google Gemini Live Voice](/reference/voice/google-gemini-live)
|
|
965
|
-
- [Deepgram Voice](/reference/voice/deepgram)
|
|
966
|
-
- [PlayAI Voice](/reference/voice/playai)
|
|
967
|
-
- [Voice Examples](/examples/voice/text-to-speech)
|
|
978
|
+
- [CompositeVoice](/reference/v1/voice/composite-voice)
|
|
979
|
+
- [MastraVoice](/reference/v1/voice/mastra-voice)
|
|
980
|
+
- [OpenAI Voice](/reference/v1/voice/openai)
|
|
981
|
+
- [OpenAI Realtime Voice](/reference/v1/voice/openai-realtime)
|
|
982
|
+
- [Azure Voice](/reference/v1/voice/azure)
|
|
983
|
+
- [Google Voice](/reference/v1/voice/google)
|
|
984
|
+
- [Google Gemini Live Voice](/reference/v1/voice/google-gemini-live)
|
|
985
|
+
- [Deepgram Voice](/reference/v1/voice/deepgram)
|
|
986
|
+
- [PlayAI Voice](/reference/v1/voice/playai)
|
|
987
|
+
- [Voice Examples](/examples/v1/voice/text-to-speech)
|