@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: "Arize Exporter | Tracing | Observability
|
|
2
|
+
title: "Arize Exporter | Tracing | Observability"
|
|
3
3
|
description: "Send traces to Arize Phoenix or Arize AX using OpenTelemetry and OpenInference"
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -182,10 +182,46 @@ new ArizeExporter({
|
|
|
182
182
|
});
|
|
183
183
|
```
|
|
184
184
|
|
|
185
|
+
### Custom metadata
|
|
186
|
+
|
|
187
|
+
Non-reserved span attributes are serialized into the OpenInference `metadata` payload and surface in Arize/Phoenix. You can add them via `tracingOptions.metadata`:
|
|
188
|
+
|
|
189
|
+
```ts
|
|
190
|
+
await agent.generate(input, {
|
|
191
|
+
tracingOptions: {
|
|
192
|
+
metadata: {
|
|
193
|
+
companyId: "acme-co",
|
|
194
|
+
tier: "enterprise",
|
|
195
|
+
},
|
|
196
|
+
},
|
|
197
|
+
});
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
Reserved fields such as `input`, `output`, `sessionId`, thread/user IDs, and OpenInference IDs are excluded automatically.
|
|
201
|
+
|
|
185
202
|
## OpenInference Semantic Conventions
|
|
186
203
|
|
|
187
204
|
This exporter implements the [OpenInference Semantic Conventions](https://github.com/Arize-ai/openinference/tree/main/spec) for generative AI applications, providing standardized trace structure across different observability platforms.
|
|
188
205
|
|
|
206
|
+
## Using Tags
|
|
207
|
+
|
|
208
|
+
Tags help you categorize and filter traces in Phoenix and Arize AX. Add tags when executing agents or workflows:
|
|
209
|
+
|
|
210
|
+
```typescript
|
|
211
|
+
const result = await agent.generate({
|
|
212
|
+
messages: [{ role: "user", content: "Hello" }],
|
|
213
|
+
tracingOptions: {
|
|
214
|
+
tags: ["production", "experiment-v2", "user-request"],
|
|
215
|
+
},
|
|
216
|
+
});
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
Tags appear as the `tag.tags` attribute following OpenInference conventions and can be used to filter and search traces. Common use cases include:
|
|
220
|
+
|
|
221
|
+
- Environment labels: `"production"`, `"staging"`
|
|
222
|
+
- Experiment tracking: `"experiment-v1"`, `"control-group"`
|
|
223
|
+
- Priority levels: `"priority-high"`, `"batch-job"`
|
|
224
|
+
|
|
189
225
|
## Related
|
|
190
226
|
|
|
191
227
|
- [Tracing Overview](/docs/v1/observability/tracing/overview)
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: "Braintrust Exporter | Tracing | Observability
|
|
2
|
+
title: "Braintrust Exporter | Tracing | Observability"
|
|
3
3
|
description: "Send traces to Braintrust for evaluation and monitoring"
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -65,6 +65,25 @@ new BraintrustExporter({
|
|
|
65
65
|
});
|
|
66
66
|
```
|
|
67
67
|
|
|
68
|
+
## Using Tags
|
|
69
|
+
|
|
70
|
+
Tags help you categorize and filter traces in the Braintrust dashboard. Add tags when executing agents or workflows:
|
|
71
|
+
|
|
72
|
+
```typescript
|
|
73
|
+
const result = await agent.generate({
|
|
74
|
+
messages: [{ role: "user", content: "Hello" }],
|
|
75
|
+
tracingOptions: {
|
|
76
|
+
tags: ["production", "experiment-v2", "user-request"],
|
|
77
|
+
},
|
|
78
|
+
});
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
Tags appear in Braintrust's trace view and can be used to filter and search traces. Common use cases include:
|
|
82
|
+
|
|
83
|
+
- Environment labels: `"production"`, `"staging"`
|
|
84
|
+
- Experiment tracking: `"experiment-v1"`, `"control-group"`
|
|
85
|
+
- Priority levels: `"priority-high"`, `"batch-job"`
|
|
86
|
+
|
|
68
87
|
## Related
|
|
69
88
|
|
|
70
89
|
- [Tracing Overview](/docs/v1/observability/tracing/overview)
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: "Cloud Exporter | Tracing | Observability
|
|
2
|
+
title: "Cloud Exporter | Tracing | Observability"
|
|
3
3
|
description: "Send traces to Mastra Cloud for production monitoring"
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -112,4 +112,4 @@ CloudExporter uses intelligent batching to optimize network usage. Traces are bu
|
|
|
112
112
|
|
|
113
113
|
- [Tracing Overview](/docs/v1/observability/tracing/overview)
|
|
114
114
|
- [DefaultExporter](/docs/v1/observability/tracing/exporters/default)
|
|
115
|
-
- [Mastra Cloud Documentation](
|
|
115
|
+
- [Mastra Cloud Documentation](/docs/v1/deployment/mastra-cloud/overview)
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: "Langfuse Exporter | Tracing | Observability
|
|
2
|
+
title: "Langfuse Exporter | Tracing | Observability"
|
|
3
3
|
description: "Send traces to Langfuse for LLM observability and analytics"
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -107,7 +107,90 @@ new LangfuseExporter({
|
|
|
107
107
|
});
|
|
108
108
|
```
|
|
109
109
|
|
|
110
|
+
## Prompt Linking
|
|
111
|
+
|
|
112
|
+
You can link LLM generations to prompts stored in [Langfuse Prompt Management](https://langfuse.com/docs/prompt-management). This enables version tracking and metrics for your prompts.
|
|
113
|
+
|
|
114
|
+
### Using the Helper (Recommended)
|
|
115
|
+
|
|
116
|
+
Use `withLangfusePrompt` with `buildTracingOptions` for the cleanest API:
|
|
117
|
+
|
|
118
|
+
```typescript title="src/agents/support-agent.ts"
|
|
119
|
+
import { Agent } from "@mastra/core/agent";
|
|
120
|
+
import { openai } from "@ai-sdk/openai";
|
|
121
|
+
import { buildTracingOptions } from "@mastra/observability";
|
|
122
|
+
import { withLangfusePrompt } from "@mastra/langfuse";
|
|
123
|
+
import { Langfuse } from "langfuse";
|
|
124
|
+
|
|
125
|
+
const langfuse = new Langfuse({
|
|
126
|
+
publicKey: process.env.LANGFUSE_PUBLIC_KEY!,
|
|
127
|
+
secretKey: process.env.LANGFUSE_SECRET_KEY!,
|
|
128
|
+
});
|
|
129
|
+
|
|
130
|
+
// Fetch the prompt from Langfuse Prompt Management
|
|
131
|
+
const prompt = await langfuse.getPrompt("customer-support");
|
|
132
|
+
|
|
133
|
+
export const supportAgent = new Agent({
|
|
134
|
+
name: "support-agent",
|
|
135
|
+
instructions: prompt.prompt, // Use the prompt text from Langfuse
|
|
136
|
+
model: openai("gpt-4o"),
|
|
137
|
+
defaultGenerateOptions: {
|
|
138
|
+
tracingOptions: buildTracingOptions(withLangfusePrompt(prompt)),
|
|
139
|
+
## Using Tags
|
|
140
|
+
|
|
141
|
+
Tags help you categorize and filter traces in the Langfuse dashboard. Add tags when executing agents or workflows:
|
|
142
|
+
|
|
143
|
+
```typescript
|
|
144
|
+
const result = await agent.generate({
|
|
145
|
+
messages: [{ role: "user", content: "Hello" }],
|
|
146
|
+
tracingOptions: {
|
|
147
|
+
tags: ["production", "experiment-v2", "user-request"],
|
|
148
|
+
},
|
|
149
|
+
});
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
The `withLangfusePrompt` helper automatically extracts `name`, `version`, and `id` from the Langfuse prompt object.
|
|
153
|
+
|
|
154
|
+
### Manual Fields
|
|
155
|
+
|
|
156
|
+
You can also pass manual fields if you're not using the Langfuse SDK:
|
|
157
|
+
|
|
158
|
+
```typescript
|
|
159
|
+
const tracingOptions = buildTracingOptions(
|
|
160
|
+
withLangfusePrompt({ name: "my-prompt", version: 1 }),
|
|
161
|
+
);
|
|
162
|
+
|
|
163
|
+
// Or with just an ID
|
|
164
|
+
const tracingOptions = buildTracingOptions(
|
|
165
|
+
withLangfusePrompt({ id: "prompt-uuid-12345" }),
|
|
166
|
+
);
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
### Prompt Object Fields
|
|
170
|
+
|
|
171
|
+
The prompt object supports these fields:
|
|
172
|
+
|
|
173
|
+
| Field | Type | Description |
|
|
174
|
+
|-------|------|-------------|
|
|
175
|
+
| `name` | string | The prompt name in Langfuse |
|
|
176
|
+
| `version` | number | The prompt version number |
|
|
177
|
+
| `id` | string | The prompt UUID for direct linking |
|
|
178
|
+
|
|
179
|
+
You can link prompts using either:
|
|
180
|
+
- `id` alone (the UUID uniquely identifies a prompt version)
|
|
181
|
+
- `name` + `version` together
|
|
182
|
+
- All three fields
|
|
183
|
+
|
|
184
|
+
When set on a `MODEL_GENERATION` span, the Langfuse exporter automatically links the generation to the corresponding prompt.
|
|
185
|
+
Tags appear in Langfuse's trace view and can be used to filter and search traces. Common use cases include:
|
|
186
|
+
|
|
187
|
+
- Environment labels: `"production"`, `"staging"`
|
|
188
|
+
- Experiment tracking: `"experiment-v1"`, `"control-group"`
|
|
189
|
+
- Priority levels: `"priority-high"`, `"batch-job"`
|
|
190
|
+
- User segments: `"beta-user"`, `"enterprise"`
|
|
191
|
+
|
|
110
192
|
## Related
|
|
111
193
|
|
|
112
194
|
- [Tracing Overview](/docs/v1/observability/tracing/overview)
|
|
113
195
|
- [Langfuse Documentation](https://langfuse.com/docs)
|
|
196
|
+
- [Langfuse Prompt Management](https://langfuse.com/docs/prompt-management)
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: "LangSmith Exporter | Tracing | Observability
|
|
2
|
+
title: "LangSmith Exporter | Tracing | Observability"
|
|
3
3
|
description: "Send traces to LangSmith for LLM observability and evaluation"
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -23,6 +23,7 @@ npm install @mastra/langsmith@beta
|
|
|
23
23
|
|
|
24
24
|
```bash title=".env"
|
|
25
25
|
LANGSMITH_API_KEY=ls-xxxxxxxxxxxx
|
|
26
|
+
LANGCHAIN_PROJECT=my-project # Optional: default project for traces
|
|
26
27
|
LANGSMITH_BASE_URL=https://api.smith.langchain.com # Optional for self-hosted
|
|
27
28
|
```
|
|
28
29
|
|
|
@@ -60,6 +61,7 @@ new LangSmithExporter({
|
|
|
60
61
|
|
|
61
62
|
// Optional settings
|
|
62
63
|
apiUrl: process.env.LANGSMITH_BASE_URL, // Default: https://api.smith.langchain.com
|
|
64
|
+
projectName: "my-project", // Project to send traces to (overrides LANGCHAIN_PROJECT env var)
|
|
63
65
|
callerOptions: {
|
|
64
66
|
// HTTP client options
|
|
65
67
|
timeout: 30000, // Request timeout in ms
|
|
@@ -73,6 +75,16 @@ new LangSmithExporter({
|
|
|
73
75
|
});
|
|
74
76
|
```
|
|
75
77
|
|
|
78
|
+
### Environment Variables
|
|
79
|
+
|
|
80
|
+
| Variable | Description |
|
|
81
|
+
|----------|-------------|
|
|
82
|
+
| `LANGSMITH_API_KEY` | Your LangSmith API key (required) |
|
|
83
|
+
| `LANGCHAIN_PROJECT` | Default project name for traces (optional, defaults to "default") |
|
|
84
|
+
| `LANGSMITH_BASE_URL` | API URL for self-hosted instances (optional) |
|
|
85
|
+
|
|
86
|
+
The `projectName` config option takes precedence over the `LANGCHAIN_PROJECT` environment variable, allowing you to programmatically route traces to different projects.
|
|
87
|
+
|
|
76
88
|
## Related
|
|
77
89
|
|
|
78
90
|
- [Tracing Overview](/docs/v1/observability/tracing/overview)
|
|
@@ -1,29 +1,29 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: "OpenTelemetry Exporter | Tracing | Observability
|
|
2
|
+
title: "OpenTelemetry Exporter | Tracing | Observability"
|
|
3
3
|
description: "Send traces to any OpenTelemetry-compatible observability platform"
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# OpenTelemetry Exporter
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
The OpenTelemetry (OTEL) exporter sends your traces to any OTEL-compatible observability platform using standardized [OpenTelemetry Semantic Conventions for GenAI](https://opentelemetry.io/docs/specs/semconv/gen-ai/). This ensures broad compatibility with platforms like Datadog, New Relic, SigNoz, MLflow, Dash0, Traceloop, Laminar, and more.
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
:::info Looking for bidirectional OTEL integration?
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
If you have existing OpenTelemetry instrumentation and want Mastra traces to inherit context from active OTEL spans, see the [OpenTelemetry Bridge](/docs/v1/observability/tracing/bridges/otel) instead.
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
:::
|
|
15
15
|
|
|
16
16
|
## Installation
|
|
17
17
|
|
|
18
18
|
Each provider requires specific protocol packages. Install the base exporter plus the protocol package for your provider:
|
|
19
19
|
|
|
20
|
-
### For HTTP/Protobuf Providers (SigNoz, New Relic, Laminar)
|
|
20
|
+
### For HTTP/Protobuf Providers (SigNoz, New Relic, Laminar, MLflow)
|
|
21
21
|
|
|
22
22
|
```bash npm2yarn
|
|
23
23
|
npm install @mastra/otel-exporter@beta @opentelemetry/exporter-trace-otlp-proto
|
|
24
24
|
```
|
|
25
25
|
|
|
26
|
-
### For gRPC Providers (Dash0)
|
|
26
|
+
### For gRPC Providers (Dash0, Datadog)
|
|
27
27
|
|
|
28
28
|
```bash npm2yarn
|
|
29
29
|
npm install @mastra/otel-exporter@beta @opentelemetry/exporter-trace-otlp-grpc @grpc/grpc-js
|
|
@@ -37,6 +37,25 @@ npm install @mastra/otel-exporter@beta @opentelemetry/exporter-trace-otlp-http
|
|
|
37
37
|
|
|
38
38
|
## Provider Configurations
|
|
39
39
|
|
|
40
|
+
|
|
41
|
+
### MLflow
|
|
42
|
+
|
|
43
|
+
[MLflow](https://mlflow.org/docs/latest/genai/tracing/integrations/listing/mastra) supports native Mastra tracing through its OTLP endpoint at `/v1/traces`. Use the `custom` provider with HTTP/Protobuf and include the experiment header so traces land in the correct MLflow experiment:
|
|
44
|
+
|
|
45
|
+
```typescript title="src/mastra/index.ts"
|
|
46
|
+
new OtelExporter({
|
|
47
|
+
provider: {
|
|
48
|
+
custom: {
|
|
49
|
+
endpoint: `${process.env.MLFLOW_TRACKING_URI}/v1/traces`,
|
|
50
|
+
protocol: "http/protobuf",
|
|
51
|
+
headers: {
|
|
52
|
+
"x-mlflow-experiment-id": process.env.MLFLOW_EXPERIMENT_ID,
|
|
53
|
+
},
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
})
|
|
57
|
+
```
|
|
58
|
+
|
|
40
59
|
### Dash0
|
|
41
60
|
|
|
42
61
|
[Dash0](https://www.dash0.com/) provides real-time observability with automatic insights.
|
|
@@ -139,6 +158,72 @@ new OtelExporter({
|
|
|
139
158
|
});
|
|
140
159
|
```
|
|
141
160
|
|
|
161
|
+
### Datadog
|
|
162
|
+
|
|
163
|
+
[Datadog](https://www.datadoghq.com/) APM provides application performance monitoring with distributed tracing. To send traces to Datadog via OTLP, you need the Datadog Agent running with OTLP ingestion enabled.
|
|
164
|
+
|
|
165
|
+
Datadog uses gRPC for OTLP ingestion, which requires explicit imports and bundler configuration to work correctly:
|
|
166
|
+
|
|
167
|
+
```typescript title="src/mastra/index.ts"
|
|
168
|
+
// Explicitly import gRPC dependencies for the bundler
|
|
169
|
+
import "@grpc/grpc-js";
|
|
170
|
+
import "@opentelemetry/exporter-trace-otlp-grpc";
|
|
171
|
+
import { Mastra } from "@mastra/core";
|
|
172
|
+
import { Observability } from "@mastra/observability";
|
|
173
|
+
import { OtelExporter, type ExportProtocol } from "@mastra/otel-exporter";
|
|
174
|
+
|
|
175
|
+
export const mastra = new Mastra({
|
|
176
|
+
// Add grpc-js to externals so it's handled at runtime
|
|
177
|
+
bundler: {
|
|
178
|
+
externals: ["@grpc/grpc-js"],
|
|
179
|
+
},
|
|
180
|
+
|
|
181
|
+
observability: new Observability({
|
|
182
|
+
configs: {
|
|
183
|
+
default: {
|
|
184
|
+
serviceName: "my-service",
|
|
185
|
+
exporters: [
|
|
186
|
+
new OtelExporter({
|
|
187
|
+
provider: {
|
|
188
|
+
custom: {
|
|
189
|
+
endpoint:
|
|
190
|
+
process.env.OTEL_EXPORTER_OTLP_ENDPOINT ||
|
|
191
|
+
"http://localhost:4317",
|
|
192
|
+
protocol: (process.env.OTEL_EXPORTER_OTLP_PROTOCOL ||
|
|
193
|
+
"grpc") as ExportProtocol,
|
|
194
|
+
headers: {},
|
|
195
|
+
},
|
|
196
|
+
},
|
|
197
|
+
}),
|
|
198
|
+
],
|
|
199
|
+
},
|
|
200
|
+
},
|
|
201
|
+
}),
|
|
202
|
+
});
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
:::info
|
|
206
|
+
|
|
207
|
+
The Datadog Agent must be configured with OTLP ingestion enabled. Add the following to your `datadog.yaml`:
|
|
208
|
+
|
|
209
|
+
```yaml
|
|
210
|
+
otlp_config:
|
|
211
|
+
receiver:
|
|
212
|
+
protocols:
|
|
213
|
+
grpc:
|
|
214
|
+
endpoint: 0.0.0.0:4317
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
The default OTLP endpoint is `http://localhost:4317` when running the Datadog Agent locally.
|
|
218
|
+
|
|
219
|
+
:::
|
|
220
|
+
|
|
221
|
+
:::warning
|
|
222
|
+
|
|
223
|
+
The explicit imports of `@grpc/grpc-js` and `@opentelemetry/exporter-trace-otlp-grpc` at the top of the file, along with the `bundler.externals` configuration, are required for the gRPC transport to work correctly. Without these, you may encounter connection issues.
|
|
224
|
+
|
|
225
|
+
:::
|
|
226
|
+
|
|
142
227
|
### Custom/Generic OTEL Endpoints
|
|
143
228
|
|
|
144
229
|
For other OTEL-compatible platforms or custom collectors:
|
|
@@ -179,33 +264,26 @@ new OtelExporter({
|
|
|
179
264
|
|
|
180
265
|
## OpenTelemetry Semantic Conventions
|
|
181
266
|
|
|
182
|
-
The exporter follows [OpenTelemetry Semantic Conventions for GenAI](https://
|
|
267
|
+
The exporter follows [OpenTelemetry Semantic Conventions for GenAI v1.38.0](https://github.com/open-telemetry/semantic-conventions/tree/v1.38.0/docs/gen-ai), ensuring compatibility with observability platforms:
|
|
183
268
|
|
|
184
269
|
### Span Naming
|
|
185
270
|
|
|
186
|
-
- **LLM Operations**: `chat {model}`
|
|
187
|
-
- **Tool Execution**: `
|
|
188
|
-
- **Agent Runs**: `
|
|
189
|
-
- **Workflow Runs**: `
|
|
271
|
+
- **LLM Operations**: `chat {model}`
|
|
272
|
+
- **Tool Execution**: `execute_tool {tool_name}`
|
|
273
|
+
- **Agent Runs**: `invoke_agent {agent_id}`
|
|
274
|
+
- **Workflow Runs**: `invoke_workflow {workflow_id}`
|
|
190
275
|
|
|
191
276
|
### Key Attributes
|
|
192
277
|
|
|
193
278
|
- `gen_ai.operation.name` - Operation type (chat, tool.execute, etc.)
|
|
194
|
-
- `gen_ai.
|
|
279
|
+
- `gen_ai.provider.name` - AI provider (openai, anthropic, etc.)
|
|
195
280
|
- `gen_ai.request.model` - Model identifier
|
|
281
|
+
- `gen_ai.input.messages` - Chat history provided to the model
|
|
282
|
+
- `gen_ai.output.messages` - Messages returned by the model
|
|
196
283
|
- `gen_ai.usage.input_tokens` - Number of input tokens
|
|
197
284
|
- `gen_ai.usage.output_tokens` - Number of output tokens
|
|
198
285
|
- `gen_ai.request.temperature` - Sampling temperature
|
|
199
|
-
- `gen_ai.response.finish_reasons` - Completion
|
|
200
|
-
|
|
201
|
-
## Buffering Strategy
|
|
202
|
-
|
|
203
|
-
The exporter buffers spans until a trace is complete:
|
|
204
|
-
|
|
205
|
-
1. Collects all spans for a trace
|
|
206
|
-
2. Waits 5 seconds after root span completes
|
|
207
|
-
3. Exports complete trace with preserved parent-child relationships
|
|
208
|
-
4. Ensures no orphaned spans
|
|
286
|
+
- `gen_ai.response.finish_reasons` - Completion reasons
|
|
209
287
|
|
|
210
288
|
## Protocol Selection Guide
|
|
211
289
|
|
|
@@ -214,6 +292,7 @@ Choose the right protocol package based on your provider:
|
|
|
214
292
|
| Provider | Protocol | Required Package |
|
|
215
293
|
| --------- | ------------- | ------------------------------------------ |
|
|
216
294
|
| Dash0 | gRPC | `@opentelemetry/exporter-trace-otlp-grpc` |
|
|
295
|
+
| Datadog | gRPC | `@opentelemetry/exporter-trace-otlp-grpc` |
|
|
217
296
|
| SigNoz | HTTP/Protobuf | `@opentelemetry/exporter-trace-otlp-proto` |
|
|
218
297
|
| New Relic | HTTP/Protobuf | `@opentelemetry/exporter-trace-otlp-proto` |
|
|
219
298
|
| Traceloop | HTTP/JSON | `@opentelemetry/exporter-trace-otlp-http` |
|
|
@@ -245,10 +324,29 @@ Install the suggested package for your provider.
|
|
|
245
324
|
1. **Wrong protocol package**: Verify you installed the correct exporter for your provider
|
|
246
325
|
2. **Invalid endpoint**: Check endpoint format matches provider requirements
|
|
247
326
|
3. **Authentication failures**: Verify API keys and headers are correct
|
|
248
|
-
|
|
327
|
+
|
|
328
|
+
## Using Tags
|
|
329
|
+
|
|
330
|
+
Tags help you categorize and filter traces in your observability platform. Add tags when executing agents or workflows:
|
|
331
|
+
|
|
332
|
+
```typescript
|
|
333
|
+
const result = await agent.generate({
|
|
334
|
+
messages: [{ role: "user", content: "Hello" }],
|
|
335
|
+
tracingOptions: {
|
|
336
|
+
tags: ["production", "experiment-v2", "user-request"],
|
|
337
|
+
},
|
|
338
|
+
});
|
|
339
|
+
```
|
|
340
|
+
|
|
341
|
+
Tags are exported as a JSON string in the `mastra.tags` span attribute for broad backend compatibility. Common use cases include:
|
|
342
|
+
|
|
343
|
+
- Environment labels: `"production"`, `"staging"`
|
|
344
|
+
- Experiment tracking: `"experiment-v1"`, `"control-group"`
|
|
345
|
+
- Priority levels: `"priority-high"`, `"batch-job"`
|
|
249
346
|
|
|
250
347
|
## Related
|
|
251
348
|
|
|
252
349
|
- [Tracing Overview](/docs/v1/observability/tracing/overview)
|
|
253
|
-
- [OpenTelemetry
|
|
350
|
+
- [OpenTelemetry Bridge](/docs/v1/observability/tracing/bridges/otel)
|
|
351
|
+
- [OpenTelemetry Semantic Conventions for GenAI v1.38.0](https://github.com/open-telemetry/semantic-conventions/tree/v1.38.0/docs/gen-ai)
|
|
254
352
|
- [OTEL Exporter Reference](/reference/v1/observability/tracing/exporters/otel)
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "PostHog Exporter | Tracing | Observability"
|
|
3
|
+
description: "Send traces to PostHog for AI observability and analytics"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# PostHog Exporter
|
|
7
|
+
|
|
8
|
+
[PostHog](https://posthog.com/) is an analytics platform with AI observability features for monitoring LLM applications. The PostHog exporter sends your traces to PostHog as structured events, providing insights into token usage, costs, latency, and conversation flows.
|
|
9
|
+
|
|
10
|
+
## Installation
|
|
11
|
+
|
|
12
|
+
```bash npm2yarn
|
|
13
|
+
npm install @mastra/posthog@beta
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Configuration
|
|
17
|
+
|
|
18
|
+
### Prerequisites
|
|
19
|
+
|
|
20
|
+
1. **PostHog Account**: Sign up at [posthog.com](https://posthog.com/)
|
|
21
|
+
2. **Project API Key**: Get your project API key from PostHog Settings → Project API Key
|
|
22
|
+
3. **Environment Variables**: Set your credentials
|
|
23
|
+
|
|
24
|
+
```bash title=".env"
|
|
25
|
+
POSTHOG_API_KEY=phc_xxxxxxxxxxxxxxxx
|
|
26
|
+
POSTHOG_HOST=https://us.i.posthog.com # Optional: EU region or self-hosted URL
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
### Basic Setup
|
|
30
|
+
|
|
31
|
+
```typescript title="src/mastra/index.ts"
|
|
32
|
+
import { Mastra } from "@mastra/core";
|
|
33
|
+
import { Observability } from "@mastra/observability";
|
|
34
|
+
import { PosthogExporter } from "@mastra/posthog";
|
|
35
|
+
|
|
36
|
+
export const mastra = new Mastra({
|
|
37
|
+
observability: new Observability({
|
|
38
|
+
configs: {
|
|
39
|
+
posthog: {
|
|
40
|
+
serviceName: "my-service",
|
|
41
|
+
exporters: [
|
|
42
|
+
new PosthogExporter({
|
|
43
|
+
apiKey: process.env.POSTHOG_API_KEY,
|
|
44
|
+
}),
|
|
45
|
+
],
|
|
46
|
+
},
|
|
47
|
+
},
|
|
48
|
+
}),
|
|
49
|
+
});
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
## Configuration Options
|
|
53
|
+
|
|
54
|
+
### Complete Configuration
|
|
55
|
+
|
|
56
|
+
```typescript
|
|
57
|
+
new PosthogExporter({
|
|
58
|
+
// Required credentials
|
|
59
|
+
apiKey: process.env.POSTHOG_API_KEY!,
|
|
60
|
+
|
|
61
|
+
// Optional settings
|
|
62
|
+
host: "https://us.i.posthog.com", // Default: US region
|
|
63
|
+
// or "https://eu.i.posthog.com" for EU region
|
|
64
|
+
// or your self-hosted URL
|
|
65
|
+
|
|
66
|
+
// Batching configuration
|
|
67
|
+
flushAt: 20, // Batch size (default: 20)
|
|
68
|
+
flushInterval: 10000, // Flush interval in ms (default: 10000)
|
|
69
|
+
serverless: false, // Serverless mode: flushAt=10, flushInterval=2000
|
|
70
|
+
|
|
71
|
+
// User identification
|
|
72
|
+
defaultDistinctId: "anonymous", // Fallback if no userId in metadata
|
|
73
|
+
|
|
74
|
+
// Privacy settings
|
|
75
|
+
enablePrivacyMode: false, // Excludes input/output from generation events
|
|
76
|
+
|
|
77
|
+
// Diagnostic logging
|
|
78
|
+
logLevel: "info", // debug | info | warn | error
|
|
79
|
+
});
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
### Serverless Mode
|
|
83
|
+
|
|
84
|
+
Optimized batching for serverless environments:
|
|
85
|
+
|
|
86
|
+
```typescript
|
|
87
|
+
new PosthogExporter({
|
|
88
|
+
apiKey: process.env.POSTHOG_API_KEY!,
|
|
89
|
+
serverless: true, // Configures smaller batches for faster flushing
|
|
90
|
+
});
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### Privacy Mode
|
|
94
|
+
|
|
95
|
+
Exclude input/output data from generation events while preserving token metrics:
|
|
96
|
+
|
|
97
|
+
```typescript
|
|
98
|
+
new PosthogExporter({
|
|
99
|
+
apiKey: process.env.POSTHOG_API_KEY!,
|
|
100
|
+
enablePrivacyMode: true, // Removes $ai_input and $ai_output_choices
|
|
101
|
+
});
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
## Using Tags
|
|
105
|
+
|
|
106
|
+
Tags help you categorize and filter traces in PostHog's AI analytics. Add tags when executing agents or workflows:
|
|
107
|
+
|
|
108
|
+
```typescript
|
|
109
|
+
const result = await agent.generate({
|
|
110
|
+
messages: [{ role: "user", content: "Hello" }],
|
|
111
|
+
tracingOptions: {
|
|
112
|
+
tags: ["production", "experiment-v2", "user-request"],
|
|
113
|
+
},
|
|
114
|
+
});
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
Tags are added as event properties where the tag name is the key and the value is set to `true`. In PostHog's trace view, filter by a tag using the `is set` filter (e.g., "production is set" shows all traces with the production tag). Common use cases include:
|
|
118
|
+
|
|
119
|
+
- Environment labels: `"production"`, `"staging"`
|
|
120
|
+
- Experiment tracking: `"experiment-v1"`, `"control-group"`
|
|
121
|
+
- Priority levels: `"priority-high"`, `"batch-job"`
|
|
122
|
+
- User segments: `"beta-user"`, `"enterprise"`
|
|
123
|
+
|
|
124
|
+
## Related
|
|
125
|
+
|
|
126
|
+
- [Tracing Overview](/docs/v1/observability/tracing/overview)
|
|
127
|
+
- [PostHog Documentation](https://posthog.com/docs)
|