@mastra/mcp-docs-server 0.13.37 → 0.13.38

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.
Files changed (397) hide show
  1. package/.docs/organized/changelogs/%40internal%2Fchangeset-cli.md +2 -0
  2. package/.docs/organized/changelogs/%40internal%2Fexternal-types.md +2 -0
  3. package/.docs/organized/changelogs/%40internal%2Fstorage-test-utils.md +8 -8
  4. package/.docs/organized/changelogs/%40internal%2Ftypes-builder.md +2 -0
  5. package/.docs/organized/changelogs/%40mastra%2Fclient-js.md +23 -23
  6. package/.docs/organized/changelogs/%40mastra%2Fcore.md +69 -69
  7. package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloud.md +17 -17
  8. package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloudflare.md +17 -17
  9. package/.docs/organized/changelogs/%40mastra%2Fdeployer-netlify.md +17 -17
  10. package/.docs/organized/changelogs/%40mastra%2Fdeployer-vercel.md +17 -17
  11. package/.docs/organized/changelogs/%40mastra%2Fdeployer.md +25 -25
  12. package/.docs/organized/changelogs/%40mastra%2Fmcp-docs-server.md +15 -15
  13. package/.docs/organized/changelogs/%40mastra%2Fplayground-ui.md +27 -27
  14. package/.docs/organized/changelogs/%40mastra%2Freact.md +15 -15
  15. package/.docs/organized/changelogs/%40mastra%2Fserver.md +23 -23
  16. package/.docs/organized/changelogs/create-mastra.md +5 -5
  17. package/.docs/organized/changelogs/mastra.md +17 -17
  18. package/.docs/raw/agents/adding-voice.mdx +20 -9
  19. package/.docs/raw/agents/agent-memory.mdx +55 -39
  20. package/.docs/raw/agents/guardrails.mdx +68 -61
  21. package/.docs/raw/agents/networks.mdx +50 -46
  22. package/.docs/raw/agents/overview.mdx +125 -88
  23. package/.docs/raw/agents/using-tools.mdx +14 -15
  24. package/.docs/raw/auth/auth0.mdx +28 -27
  25. package/.docs/raw/auth/clerk.mdx +22 -20
  26. package/.docs/raw/auth/firebase.mdx +42 -39
  27. package/.docs/raw/auth/index.mdx +1 -1
  28. package/.docs/raw/auth/jwt.mdx +18 -16
  29. package/.docs/raw/auth/supabase.mdx +20 -18
  30. package/.docs/raw/auth/workos.mdx +32 -26
  31. package/.docs/raw/community/contributing-templates.mdx +7 -7
  32. package/.docs/raw/community/discord.mdx +2 -2
  33. package/.docs/raw/community/licensing.mdx +1 -1
  34. package/.docs/raw/course/03-agent-memory/26-updating-mastra-export-comprehensive.md +0 -32
  35. package/.docs/raw/deployment/cloud-providers/amazon-ec2.mdx +41 -22
  36. package/.docs/raw/deployment/cloud-providers/aws-lambda.mdx +48 -29
  37. package/.docs/raw/deployment/cloud-providers/azure-app-services.mdx +52 -24
  38. package/.docs/raw/deployment/cloud-providers/digital-ocean.mdx +86 -55
  39. package/.docs/raw/deployment/cloud-providers/index.mdx +16 -13
  40. package/.docs/raw/deployment/monorepo.mdx +32 -42
  41. package/.docs/raw/deployment/overview.mdx +15 -15
  42. package/.docs/raw/deployment/server-deployment.mdx +18 -23
  43. package/.docs/raw/deployment/serverless-platforms/cloudflare-deployer.mdx +16 -17
  44. package/.docs/raw/deployment/serverless-platforms/index.mdx +15 -12
  45. package/.docs/raw/deployment/serverless-platforms/netlify-deployer.mdx +14 -23
  46. package/.docs/raw/deployment/serverless-platforms/vercel-deployer.mdx +16 -23
  47. package/.docs/raw/deployment/web-framework.mdx +14 -14
  48. package/.docs/raw/frameworks/agentic-uis/ai-sdk.mdx +138 -145
  49. package/.docs/raw/frameworks/agentic-uis/assistant-ui.mdx +54 -43
  50. package/.docs/raw/frameworks/agentic-uis/cedar-os.mdx +51 -36
  51. package/.docs/raw/frameworks/agentic-uis/copilotkit.mdx +161 -120
  52. package/.docs/raw/frameworks/agentic-uis/openrouter.mdx +59 -48
  53. package/.docs/raw/frameworks/servers/express.mdx +45 -44
  54. package/.docs/raw/frameworks/web-frameworks/astro.mdx +245 -162
  55. package/.docs/raw/frameworks/web-frameworks/next-js.mdx +112 -69
  56. package/.docs/raw/frameworks/web-frameworks/sveltekit.mdx +189 -164
  57. package/.docs/raw/frameworks/web-frameworks/vite-react.mdx +94 -81
  58. package/.docs/raw/getting-started/installation.mdx +164 -133
  59. package/.docs/raw/getting-started/mcp-docs-server.mdx +36 -39
  60. package/.docs/raw/getting-started/project-structure.mdx +34 -42
  61. package/.docs/raw/getting-started/studio.mdx +40 -58
  62. package/.docs/raw/getting-started/templates.mdx +22 -27
  63. package/.docs/raw/index.mdx +9 -9
  64. package/.docs/raw/mastra-cloud/dashboard.mdx +10 -10
  65. package/.docs/raw/mastra-cloud/observability.mdx +7 -8
  66. package/.docs/raw/mastra-cloud/overview.mdx +16 -22
  67. package/.docs/raw/mastra-cloud/setting-up.mdx +33 -20
  68. package/.docs/raw/memory/conversation-history.mdx +2 -2
  69. package/.docs/raw/memory/overview.mdx +21 -23
  70. package/.docs/raw/memory/semantic-recall.mdx +14 -13
  71. package/.docs/raw/memory/storage/memory-with-libsql.mdx +27 -28
  72. package/.docs/raw/memory/storage/memory-with-pg.mdx +26 -26
  73. package/.docs/raw/memory/storage/memory-with-upstash.mdx +26 -27
  74. package/.docs/raw/memory/threads-and-resources.mdx +23 -20
  75. package/.docs/raw/memory/working-memory.mdx +27 -38
  76. package/.docs/raw/observability/ai-tracing/exporters/arize.mdx +30 -29
  77. package/.docs/raw/observability/ai-tracing/exporters/braintrust.mdx +8 -9
  78. package/.docs/raw/observability/ai-tracing/exporters/cloud.mdx +17 -16
  79. package/.docs/raw/observability/ai-tracing/exporters/default.mdx +31 -32
  80. package/.docs/raw/observability/ai-tracing/exporters/langfuse.mdx +18 -17
  81. package/.docs/raw/observability/ai-tracing/exporters/langsmith.mdx +14 -14
  82. package/.docs/raw/observability/ai-tracing/exporters/otel.mdx +56 -46
  83. package/.docs/raw/observability/ai-tracing/overview.mdx +145 -122
  84. package/.docs/raw/observability/ai-tracing/processors/sensitive-data-filter.mdx +57 -36
  85. package/.docs/raw/observability/logging.mdx +14 -17
  86. package/.docs/raw/observability/nextjs-tracing.mdx +5 -5
  87. package/.docs/raw/observability/otel-tracing.mdx +17 -18
  88. package/.docs/raw/observability/overview.mdx +14 -10
  89. package/.docs/raw/rag/chunking-and-embedding.mdx +10 -8
  90. package/.docs/raw/rag/overview.mdx +5 -5
  91. package/.docs/raw/rag/retrieval.mdx +125 -107
  92. package/.docs/raw/rag/vector-databases.mdx +232 -223
  93. package/.docs/raw/reference/agents/agent.mdx +54 -41
  94. package/.docs/raw/reference/agents/generate.mdx +367 -261
  95. package/.docs/raw/reference/agents/generateLegacy.mdx +260 -178
  96. package/.docs/raw/reference/agents/getDefaultGenerateOptions.mdx +7 -5
  97. package/.docs/raw/reference/agents/getDefaultStreamOptions.mdx +7 -5
  98. package/.docs/raw/reference/agents/getDescription.mdx +3 -2
  99. package/.docs/raw/reference/agents/getInstructions.mdx +7 -5
  100. package/.docs/raw/reference/agents/getLLM.mdx +11 -7
  101. package/.docs/raw/reference/agents/getMemory.mdx +7 -5
  102. package/.docs/raw/reference/agents/getModel.mdx +7 -5
  103. package/.docs/raw/reference/agents/getScorers.mdx +7 -5
  104. package/.docs/raw/reference/agents/getTools.mdx +7 -5
  105. package/.docs/raw/reference/agents/getVoice.mdx +7 -5
  106. package/.docs/raw/reference/agents/getWorkflows.mdx +7 -5
  107. package/.docs/raw/reference/agents/listAgents.mdx +6 -4
  108. package/.docs/raw/reference/agents/network.mdx +171 -116
  109. package/.docs/raw/reference/auth/auth0.mdx +18 -14
  110. package/.docs/raw/reference/auth/clerk.mdx +15 -12
  111. package/.docs/raw/reference/auth/firebase.mdx +23 -16
  112. package/.docs/raw/reference/auth/jwt.mdx +7 -6
  113. package/.docs/raw/reference/auth/supabase.mdx +13 -10
  114. package/.docs/raw/reference/auth/workos.mdx +17 -13
  115. package/.docs/raw/reference/cli/create-mastra.mdx +61 -44
  116. package/.docs/raw/reference/cli/mastra.mdx +11 -11
  117. package/.docs/raw/reference/client-js/agents.mdx +40 -43
  118. package/.docs/raw/reference/client-js/error-handling.mdx +1 -1
  119. package/.docs/raw/reference/client-js/logs.mdx +1 -1
  120. package/.docs/raw/reference/client-js/mastra-client.mdx +21 -13
  121. package/.docs/raw/reference/client-js/memory.mdx +6 -2
  122. package/.docs/raw/reference/client-js/observability.mdx +10 -9
  123. package/.docs/raw/reference/client-js/telemetry.mdx +1 -1
  124. package/.docs/raw/reference/client-js/tools.mdx +1 -1
  125. package/.docs/raw/reference/client-js/vectors.mdx +1 -1
  126. package/.docs/raw/reference/client-js/workflows-legacy.mdx +1 -1
  127. package/.docs/raw/reference/client-js/workflows.mdx +7 -7
  128. package/.docs/raw/reference/core/getAgent.mdx +6 -5
  129. package/.docs/raw/reference/core/getAgentById.mdx +5 -4
  130. package/.docs/raw/reference/core/getAgents.mdx +3 -3
  131. package/.docs/raw/reference/core/getDeployer.mdx +4 -3
  132. package/.docs/raw/reference/core/getLogger.mdx +4 -3
  133. package/.docs/raw/reference/core/getLogs.mdx +10 -6
  134. package/.docs/raw/reference/core/getLogsByRunId.mdx +8 -5
  135. package/.docs/raw/reference/core/getMCPServer.mdx +8 -5
  136. package/.docs/raw/reference/core/getMCPServers.mdx +4 -3
  137. package/.docs/raw/reference/core/getMemory.mdx +4 -3
  138. package/.docs/raw/reference/core/getScorer.mdx +15 -12
  139. package/.docs/raw/reference/core/getScorerByName.mdx +12 -9
  140. package/.docs/raw/reference/core/getScorers.mdx +3 -2
  141. package/.docs/raw/reference/core/getServer.mdx +4 -3
  142. package/.docs/raw/reference/core/getStorage.mdx +4 -3
  143. package/.docs/raw/reference/core/getTelemetry.mdx +4 -3
  144. package/.docs/raw/reference/core/getVector.mdx +6 -4
  145. package/.docs/raw/reference/core/getVectors.mdx +4 -3
  146. package/.docs/raw/reference/core/getWorkflow.mdx +7 -4
  147. package/.docs/raw/reference/core/getWorkflows.mdx +5 -3
  148. package/.docs/raw/reference/core/mastra-class.mdx +16 -16
  149. package/.docs/raw/reference/core/setLogger.mdx +6 -4
  150. package/.docs/raw/reference/core/setStorage.mdx +4 -4
  151. package/.docs/raw/reference/core/setTelemetry.mdx +4 -3
  152. package/.docs/raw/reference/deployer/cloudflare.mdx +11 -7
  153. package/.docs/raw/reference/deployer/deployer.mdx +2 -1
  154. package/.docs/raw/reference/deployer/netlify.mdx +4 -4
  155. package/.docs/raw/reference/deployer/vercel.mdx +6 -6
  156. package/.docs/raw/reference/evals/answer-relevancy.mdx +4 -5
  157. package/.docs/raw/reference/evals/bias.mdx +4 -5
  158. package/.docs/raw/reference/evals/completeness.mdx +4 -5
  159. package/.docs/raw/reference/evals/content-similarity.mdx +4 -5
  160. package/.docs/raw/reference/evals/context-position.mdx +4 -5
  161. package/.docs/raw/reference/evals/context-precision.mdx +4 -5
  162. package/.docs/raw/reference/evals/context-relevancy.mdx +4 -5
  163. package/.docs/raw/reference/evals/contextual-recall.mdx +4 -5
  164. package/.docs/raw/reference/evals/faithfulness.mdx +4 -5
  165. package/.docs/raw/reference/evals/hallucination.mdx +4 -6
  166. package/.docs/raw/reference/evals/keyword-coverage.mdx +4 -5
  167. package/.docs/raw/reference/evals/prompt-alignment.mdx +4 -6
  168. package/.docs/raw/reference/evals/summarization.mdx +4 -6
  169. package/.docs/raw/reference/evals/textual-difference.mdx +4 -5
  170. package/.docs/raw/reference/evals/tone-consistency.mdx +4 -7
  171. package/.docs/raw/reference/evals/toxicity.mdx +4 -5
  172. package/.docs/raw/reference/index.mdx +3 -3
  173. package/.docs/raw/reference/legacyWorkflows/after.mdx +5 -5
  174. package/.docs/raw/reference/legacyWorkflows/afterEvent.mdx +5 -5
  175. package/.docs/raw/reference/legacyWorkflows/commit.mdx +5 -5
  176. package/.docs/raw/reference/legacyWorkflows/createRun.mdx +4 -4
  177. package/.docs/raw/reference/legacyWorkflows/else.mdx +5 -5
  178. package/.docs/raw/reference/legacyWorkflows/events.mdx +7 -7
  179. package/.docs/raw/reference/legacyWorkflows/execute.mdx +4 -4
  180. package/.docs/raw/reference/legacyWorkflows/if.mdx +5 -5
  181. package/.docs/raw/reference/legacyWorkflows/resume.mdx +5 -5
  182. package/.docs/raw/reference/legacyWorkflows/resumeWithEvent.mdx +6 -6
  183. package/.docs/raw/reference/legacyWorkflows/snapshots.mdx +6 -6
  184. package/.docs/raw/reference/legacyWorkflows/start.mdx +6 -6
  185. package/.docs/raw/reference/legacyWorkflows/step-class.mdx +4 -4
  186. package/.docs/raw/reference/legacyWorkflows/step-condition.mdx +4 -4
  187. package/.docs/raw/reference/legacyWorkflows/step-function.mdx +5 -5
  188. package/.docs/raw/reference/legacyWorkflows/step-options.mdx +6 -6
  189. package/.docs/raw/reference/legacyWorkflows/step-retries.mdx +4 -4
  190. package/.docs/raw/reference/legacyWorkflows/suspend.mdx +4 -4
  191. package/.docs/raw/reference/legacyWorkflows/then.mdx +5 -5
  192. package/.docs/raw/reference/legacyWorkflows/until.mdx +4 -4
  193. package/.docs/raw/reference/legacyWorkflows/watch.mdx +3 -3
  194. package/.docs/raw/reference/legacyWorkflows/while.mdx +4 -4
  195. package/.docs/raw/reference/legacyWorkflows/workflow.mdx +7 -7
  196. package/.docs/raw/reference/memory/createThread.mdx +10 -10
  197. package/.docs/raw/reference/memory/deleteMessages.mdx +7 -5
  198. package/.docs/raw/reference/memory/getThreadById.mdx +6 -5
  199. package/.docs/raw/reference/memory/getThreadsByResourceId.mdx +11 -10
  200. package/.docs/raw/reference/memory/getThreadsByResourceIdPaginated.mdx +10 -9
  201. package/.docs/raw/reference/memory/{Memory.mdx → memory-class.mdx} +53 -46
  202. package/.docs/raw/reference/memory/query.mdx +39 -25
  203. package/.docs/raw/reference/observability/ai-tracing/ai-tracing.mdx +9 -5
  204. package/.docs/raw/reference/observability/ai-tracing/configuration.mdx +26 -22
  205. package/.docs/raw/reference/observability/ai-tracing/exporters/arize.mdx +16 -12
  206. package/.docs/raw/reference/observability/ai-tracing/exporters/braintrust.mdx +14 -14
  207. package/.docs/raw/reference/observability/ai-tracing/exporters/cloud-exporter.mdx +16 -11
  208. package/.docs/raw/reference/observability/ai-tracing/exporters/console-exporter.mdx +10 -6
  209. package/.docs/raw/reference/observability/ai-tracing/exporters/default-exporter.mdx +23 -15
  210. package/.docs/raw/reference/observability/ai-tracing/exporters/langfuse.mdx +6 -6
  211. package/.docs/raw/reference/observability/ai-tracing/exporters/langsmith.mdx +13 -13
  212. package/.docs/raw/reference/observability/ai-tracing/exporters/otel.mdx +44 -36
  213. package/.docs/raw/reference/observability/ai-tracing/interfaces.mdx +115 -106
  214. package/.docs/raw/reference/observability/ai-tracing/processors/sensitive-data-filter.mdx +37 -32
  215. package/.docs/raw/reference/observability/ai-tracing/span.mdx +29 -26
  216. package/.docs/raw/reference/observability/logging/pino-logger.mdx +13 -15
  217. package/.docs/raw/reference/observability/otel-tracing/otel-config.mdx +2 -2
  218. package/.docs/raw/reference/observability/otel-tracing/providers/arize-ax.mdx +3 -3
  219. package/.docs/raw/reference/observability/otel-tracing/providers/arize-phoenix.mdx +2 -1
  220. package/.docs/raw/reference/observability/otel-tracing/providers/dash0.mdx +1 -1
  221. package/.docs/raw/reference/observability/otel-tracing/providers/index.mdx +12 -14
  222. package/.docs/raw/reference/observability/otel-tracing/providers/keywordsai.mdx +3 -3
  223. package/.docs/raw/reference/observability/otel-tracing/providers/laminar.mdx +1 -1
  224. package/.docs/raw/reference/observability/otel-tracing/providers/langfuse.mdx +4 -4
  225. package/.docs/raw/reference/observability/otel-tracing/providers/langsmith.mdx +1 -1
  226. package/.docs/raw/reference/observability/otel-tracing/providers/langwatch.mdx +2 -2
  227. package/.docs/raw/reference/observability/otel-tracing/providers/new-relic.mdx +1 -1
  228. package/.docs/raw/reference/observability/otel-tracing/providers/signoz.mdx +1 -1
  229. package/.docs/raw/reference/observability/otel-tracing/providers/traceloop.mdx +1 -1
  230. package/.docs/raw/reference/processors/batch-parts-processor.mdx +13 -10
  231. package/.docs/raw/reference/processors/language-detector.mdx +27 -17
  232. package/.docs/raw/reference/processors/moderation-processor.mdx +26 -17
  233. package/.docs/raw/reference/processors/pii-detector.mdx +28 -18
  234. package/.docs/raw/reference/processors/prompt-injection-detector.mdx +25 -17
  235. package/.docs/raw/reference/processors/system-prompt-scrubber.mdx +26 -17
  236. package/.docs/raw/reference/processors/token-limiter-processor.mdx +22 -15
  237. package/.docs/raw/reference/processors/unicode-normalizer.mdx +13 -12
  238. package/.docs/raw/reference/rag/chunk.mdx +41 -23
  239. package/.docs/raw/reference/rag/database-config.mdx +56 -38
  240. package/.docs/raw/reference/rag/document.mdx +1 -1
  241. package/.docs/raw/reference/rag/embeddings.mdx +1 -1
  242. package/.docs/raw/reference/rag/extract-params.mdx +1 -1
  243. package/.docs/raw/reference/rag/graph-rag.mdx +1 -1
  244. package/.docs/raw/reference/rag/metadata-filters.mdx +23 -26
  245. package/.docs/raw/reference/rag/rerank.mdx +1 -1
  246. package/.docs/raw/reference/rag/rerankWithScorer.mdx +2 -2
  247. package/.docs/raw/reference/scorers/answer-relevancy.mdx +35 -17
  248. package/.docs/raw/reference/scorers/answer-similarity.mdx +84 -68
  249. package/.docs/raw/reference/scorers/bias.mdx +22 -19
  250. package/.docs/raw/reference/scorers/completeness.mdx +21 -16
  251. package/.docs/raw/reference/scorers/content-similarity.mdx +12 -10
  252. package/.docs/raw/reference/scorers/context-precision.mdx +73 -64
  253. package/.docs/raw/reference/scorers/context-relevance.mdx +142 -126
  254. package/.docs/raw/reference/scorers/create-scorer.mdx +93 -61
  255. package/.docs/raw/reference/scorers/faithfulness.mdx +21 -13
  256. package/.docs/raw/reference/scorers/hallucination.mdx +17 -12
  257. package/.docs/raw/reference/scorers/keyword-coverage.mdx +32 -27
  258. package/.docs/raw/reference/scorers/mastra-scorer.mdx +39 -33
  259. package/.docs/raw/reference/scorers/noise-sensitivity.mdx +203 -152
  260. package/.docs/raw/reference/scorers/prompt-alignment.mdx +186 -132
  261. package/.docs/raw/reference/scorers/run-experiment.mdx +40 -31
  262. package/.docs/raw/reference/scorers/textual-difference.mdx +25 -26
  263. package/.docs/raw/reference/scorers/tone-consistency.mdx +29 -26
  264. package/.docs/raw/reference/scorers/tool-call-accuracy.mdx +180 -176
  265. package/.docs/raw/reference/scorers/toxicity.mdx +35 -31
  266. package/.docs/raw/reference/storage/cloudflare-d1.mdx +1 -1
  267. package/.docs/raw/reference/storage/cloudflare.mdx +1 -1
  268. package/.docs/raw/reference/storage/dynamodb.mdx +1 -1
  269. package/.docs/raw/reference/storage/lance.mdx +1 -1
  270. package/.docs/raw/reference/storage/libsql.mdx +2 -2
  271. package/.docs/raw/reference/storage/mongodb.mdx +4 -5
  272. package/.docs/raw/reference/storage/mssql.mdx +5 -4
  273. package/.docs/raw/reference/storage/postgresql.mdx +35 -33
  274. package/.docs/raw/reference/storage/upstash.mdx +6 -5
  275. package/.docs/raw/reference/streaming/ChunkType.mdx +788 -314
  276. package/.docs/raw/reference/streaming/agents/MastraModelOutput.mdx +265 -109
  277. package/.docs/raw/reference/streaming/agents/stream.mdx +375 -266
  278. package/.docs/raw/reference/streaming/agents/streamLegacy.mdx +233 -162
  279. package/.docs/raw/reference/streaming/workflows/observeStream.mdx +4 -4
  280. package/.docs/raw/reference/streaming/workflows/observeStreamVNext.mdx +5 -5
  281. package/.docs/raw/reference/streaming/workflows/resumeStreamVNext.mdx +24 -20
  282. package/.docs/raw/reference/streaming/workflows/stream.mdx +35 -26
  283. package/.docs/raw/reference/streaming/workflows/streamVNext.mdx +36 -27
  284. package/.docs/raw/reference/templates/overview.mdx +16 -39
  285. package/.docs/raw/reference/tools/client.mdx +1 -1
  286. package/.docs/raw/reference/tools/create-tool.mdx +45 -35
  287. package/.docs/raw/reference/tools/document-chunker-tool.mdx +2 -2
  288. package/.docs/raw/reference/tools/graph-rag-tool.mdx +12 -12
  289. package/.docs/raw/reference/tools/mcp-client.mdx +70 -64
  290. package/.docs/raw/reference/tools/mcp-server.mdx +91 -78
  291. package/.docs/raw/reference/tools/vector-query-tool.mdx +48 -38
  292. package/.docs/raw/reference/vectors/astra.mdx +1 -1
  293. package/.docs/raw/reference/vectors/chroma.mdx +25 -19
  294. package/.docs/raw/reference/vectors/couchbase.mdx +4 -4
  295. package/.docs/raw/reference/vectors/lance.mdx +5 -6
  296. package/.docs/raw/reference/vectors/libsql.mdx +1 -1
  297. package/.docs/raw/reference/vectors/mongodb.mdx +1 -1
  298. package/.docs/raw/reference/vectors/opensearch.mdx +1 -1
  299. package/.docs/raw/reference/vectors/pg.mdx +8 -4
  300. package/.docs/raw/reference/vectors/pinecone.mdx +1 -1
  301. package/.docs/raw/reference/vectors/qdrant.mdx +1 -1
  302. package/.docs/raw/reference/vectors/s3vectors.mdx +35 -27
  303. package/.docs/raw/reference/vectors/turbopuffer.mdx +1 -1
  304. package/.docs/raw/reference/vectors/upstash.mdx +33 -25
  305. package/.docs/raw/reference/vectors/vectorize.mdx +1 -1
  306. package/.docs/raw/reference/voice/azure.mdx +1 -1
  307. package/.docs/raw/reference/voice/cloudflare.mdx +1 -1
  308. package/.docs/raw/reference/voice/composite-voice.mdx +1 -1
  309. package/.docs/raw/reference/voice/deepgram.mdx +1 -1
  310. package/.docs/raw/reference/voice/elevenlabs.mdx +1 -1
  311. package/.docs/raw/reference/voice/google-gemini-live.mdx +6 -4
  312. package/.docs/raw/reference/voice/google.mdx +1 -1
  313. package/.docs/raw/reference/voice/mastra-voice.mdx +1 -1
  314. package/.docs/raw/reference/voice/murf.mdx +1 -1
  315. package/.docs/raw/reference/voice/openai-realtime.mdx +1 -1
  316. package/.docs/raw/reference/voice/openai.mdx +1 -1
  317. package/.docs/raw/reference/voice/playai.mdx +1 -1
  318. package/.docs/raw/reference/voice/sarvam.mdx +1 -1
  319. package/.docs/raw/reference/voice/speechify.mdx +1 -1
  320. package/.docs/raw/reference/voice/voice.addInstructions.mdx +1 -1
  321. package/.docs/raw/reference/voice/voice.addTools.mdx +1 -1
  322. package/.docs/raw/reference/voice/voice.answer.mdx +1 -1
  323. package/.docs/raw/reference/voice/voice.close.mdx +1 -1
  324. package/.docs/raw/reference/voice/voice.connect.mdx +1 -1
  325. package/.docs/raw/reference/voice/voice.events.mdx +1 -1
  326. package/.docs/raw/reference/voice/voice.getSpeakers.mdx +23 -30
  327. package/.docs/raw/reference/voice/voice.listen.mdx +1 -1
  328. package/.docs/raw/reference/voice/voice.off.mdx +1 -1
  329. package/.docs/raw/reference/voice/voice.on.mdx +1 -1
  330. package/.docs/raw/reference/voice/voice.send.mdx +1 -1
  331. package/.docs/raw/reference/voice/voice.speak.mdx +1 -1
  332. package/.docs/raw/reference/voice/voice.updateConfig.mdx +1 -1
  333. package/.docs/raw/reference/workflows/run-methods/cancel.mdx +4 -3
  334. package/.docs/raw/reference/workflows/run-methods/resume.mdx +49 -34
  335. package/.docs/raw/reference/workflows/run-methods/start.mdx +43 -31
  336. package/.docs/raw/reference/workflows/run-methods/watch.mdx +7 -8
  337. package/.docs/raw/reference/workflows/run.mdx +7 -10
  338. package/.docs/raw/reference/workflows/step.mdx +15 -12
  339. package/.docs/raw/reference/workflows/workflow-methods/branch.mdx +2 -2
  340. package/.docs/raw/reference/workflows/workflow-methods/commit.mdx +1 -1
  341. package/.docs/raw/reference/workflows/workflow-methods/create-run.mdx +7 -7
  342. package/.docs/raw/reference/workflows/workflow-methods/dountil.mdx +2 -2
  343. package/.docs/raw/reference/workflows/workflow-methods/dowhile.mdx +2 -2
  344. package/.docs/raw/reference/workflows/workflow-methods/foreach.mdx +1 -1
  345. package/.docs/raw/reference/workflows/workflow-methods/map.mdx +3 -2
  346. package/.docs/raw/reference/workflows/workflow-methods/parallel.mdx +1 -1
  347. package/.docs/raw/reference/workflows/workflow-methods/sendEvent.mdx +5 -5
  348. package/.docs/raw/reference/workflows/workflow-methods/sleep.mdx +3 -2
  349. package/.docs/raw/reference/workflows/workflow-methods/sleepUntil.mdx +3 -2
  350. package/.docs/raw/reference/workflows/workflow-methods/then.mdx +1 -1
  351. package/.docs/raw/reference/workflows/workflow-methods/waitForEvent.mdx +3 -3
  352. package/.docs/raw/reference/workflows/workflow.mdx +13 -10
  353. package/.docs/raw/scorers/custom-scorers.mdx +58 -48
  354. package/.docs/raw/scorers/evals-old-api/custom-eval.mdx +6 -8
  355. package/.docs/raw/scorers/evals-old-api/overview.mdx +8 -8
  356. package/.docs/raw/scorers/evals-old-api/running-in-ci.mdx +9 -9
  357. package/.docs/raw/scorers/evals-old-api/textual-evals.mdx +5 -5
  358. package/.docs/raw/scorers/off-the-shelf-scorers.mdx +3 -1
  359. package/.docs/raw/scorers/overview.mdx +20 -19
  360. package/.docs/raw/server-db/custom-api-routes.mdx +8 -8
  361. package/.docs/raw/server-db/mastra-client.mdx +56 -54
  362. package/.docs/raw/server-db/middleware.mdx +11 -7
  363. package/.docs/raw/server-db/production-server.mdx +5 -7
  364. package/.docs/raw/server-db/runtime-context.mdx +41 -38
  365. package/.docs/raw/server-db/storage.mdx +82 -87
  366. package/.docs/raw/streaming/events.mdx +24 -16
  367. package/.docs/raw/streaming/overview.mdx +17 -18
  368. package/.docs/raw/streaming/tool-streaming.mdx +9 -10
  369. package/.docs/raw/streaming/workflow-streaming.mdx +14 -12
  370. package/.docs/raw/tools-mcp/advanced-usage.mdx +2 -2
  371. package/.docs/raw/tools-mcp/mcp-overview.mdx +92 -102
  372. package/.docs/raw/tools-mcp/overview.mdx +9 -14
  373. package/.docs/raw/voice/overview.mdx +273 -250
  374. package/.docs/raw/voice/speech-to-speech.mdx +14 -12
  375. package/.docs/raw/voice/speech-to-text.mdx +2 -2
  376. package/.docs/raw/voice/text-to-speech.mdx +2 -2
  377. package/.docs/raw/workflows/agents-and-tools.mdx +29 -28
  378. package/.docs/raw/workflows/control-flow.mdx +24 -24
  379. package/.docs/raw/workflows/error-handling.mdx +15 -17
  380. package/.docs/raw/workflows/human-in-the-loop.mdx +39 -39
  381. package/.docs/raw/workflows/inngest-workflow.mdx +33 -29
  382. package/.docs/raw/workflows/input-data-mapping.mdx +9 -9
  383. package/.docs/raw/workflows/overview.mdx +60 -60
  384. package/.docs/raw/workflows/snapshots.mdx +54 -36
  385. package/.docs/raw/workflows/suspend-and-resume.mdx +52 -57
  386. package/.docs/raw/workflows-legacy/control-flow.mdx +15 -17
  387. package/.docs/raw/workflows-legacy/dynamic-workflows.mdx +3 -1
  388. package/.docs/raw/workflows-legacy/error-handling.mdx +8 -6
  389. package/.docs/raw/workflows-legacy/nested-workflows.mdx +6 -0
  390. package/.docs/raw/workflows-legacy/overview.mdx +28 -26
  391. package/.docs/raw/workflows-legacy/runtime-variables.mdx +4 -2
  392. package/.docs/raw/workflows-legacy/steps.mdx +5 -3
  393. package/.docs/raw/workflows-legacy/suspend-and-resume.mdx +10 -8
  394. package/.docs/raw/workflows-legacy/variables.mdx +10 -8
  395. package/CHANGELOG.md +14 -0
  396. package/package.json +5 -5
  397. package/.docs/raw/memory/storage/memory-with-mongodb.mdx +0 -148
@@ -1,5 +1,5 @@
1
1
  ---
2
- title: "Reference: Moderation Processor | Processors | Mastra Docs"
2
+ title: "Reference: ModerationProcessor | Processors | Mastra Docs"
3
3
  description: "Documentation for the ModerationProcessor in Mastra, which provides content moderation using LLM to detect inappropriate content across multiple categories."
4
4
  ---
5
5
 
@@ -17,7 +17,7 @@ const processor = new ModerationProcessor({
17
17
  model: openai("gpt-4.1-nano"),
18
18
  threshold: 0.7,
19
19
  strategy: "block",
20
- categories: ["hate", "harassment", "violence"]
20
+ categories: ["hate", "harassment", "violence"],
21
21
  });
22
22
  ```
23
23
 
@@ -47,42 +47,49 @@ const processor = new ModerationProcessor({
47
47
  {
48
48
  name: "categories",
49
49
  type: "string[]",
50
- description: "Categories to check for moderation. If not specified, uses default OpenAI categories",
50
+ description:
51
+ "Categories to check for moderation. If not specified, uses default OpenAI categories",
51
52
  isOptional: true,
52
- default: "['hate', 'hate/threatening', 'harassment', 'harassment/threatening', 'self-harm', 'self-harm/intent', 'self-harm/instructions', 'sexual', 'sexual/minors', 'violence', 'violence/graphic']",
53
+ default:
54
+ "['hate', 'hate/threatening', 'harassment', 'harassment/threatening', 'self-harm', 'self-harm/intent', 'self-harm/instructions', 'sexual', 'sexual/minors', 'violence', 'violence/graphic']",
53
55
  },
54
56
  {
55
57
  name: "threshold",
56
58
  type: "number",
57
- description: "Confidence threshold for flagging (0-1). Content is flagged if any category score exceeds this threshold",
59
+ description:
60
+ "Confidence threshold for flagging (0-1). Content is flagged if any category score exceeds this threshold",
58
61
  isOptional: true,
59
62
  default: "0.5",
60
63
  },
61
64
  {
62
65
  name: "strategy",
63
66
  type: "'block' | 'warn' | 'filter'",
64
- description: "Strategy when content is flagged: 'block' rejects with error, 'warn' logs warning but allows through, 'filter' removes flagged messages",
67
+ description:
68
+ "Strategy when content is flagged: 'block' rejects with error, 'warn' logs warning but allows through, 'filter' removes flagged messages",
65
69
  isOptional: true,
66
70
  default: "'block'",
67
71
  },
68
72
  {
69
73
  name: "instructions",
70
74
  type: "string",
71
- description: "Custom moderation instructions for the agent. If not provided, uses default instructions based on categories",
75
+ description:
76
+ "Custom moderation instructions for the agent. If not provided, uses default instructions based on categories",
72
77
  isOptional: true,
73
78
  default: "undefined",
74
79
  },
75
80
  {
76
81
  name: "includeScores",
77
82
  type: "boolean",
78
- description: "Whether to include confidence scores in logs. Useful for tuning thresholds and debugging",
83
+ description:
84
+ "Whether to include confidence scores in logs. Useful for tuning thresholds and debugging",
79
85
  isOptional: true,
80
86
  default: "false",
81
87
  },
82
88
  {
83
89
  name: "chunkWindow",
84
90
  type: "number",
85
- description: "Number of previous chunks to include for context when moderating stream chunks. If set to 1, includes the previous part, etc.",
91
+ description:
92
+ "Number of previous chunks to include for context when moderating stream chunks. If set to 1, includes the previous part, etc.",
86
93
  isOptional: true,
87
94
  default: "0 (no context window)",
88
95
  },
@@ -102,13 +109,15 @@ const processor = new ModerationProcessor({
102
109
  {
103
110
  name: "processInput",
104
111
  type: "(args: { messages: MastraMessageV2[]; abort: (reason?: string) => never; tracingContext?: TracingContext }) => Promise<MastraMessageV2[]>",
105
- description: "Processes input messages to moderate content before sending to LLM",
112
+ description:
113
+ "Processes input messages to moderate content before sending to LLM",
106
114
  isOptional: false,
107
115
  },
108
116
  {
109
117
  name: "processOutputStream",
110
118
  type: "(args: { part: ChunkType; streamParts: ChunkType[]; state: Record<string, any>; abort: (reason?: string) => never; tracingContext?: TracingContext }) => Promise<ChunkType | null | undefined>",
111
- description: "Processes streaming output parts to moderate content during streaming",
119
+ description:
120
+ "Processes streaming output parts to moderate content during streaming",
112
121
  isOptional: false,
113
122
  },
114
123
  ]}
@@ -116,7 +125,7 @@ const processor = new ModerationProcessor({
116
125
 
117
126
  ## Extended usage example
118
127
 
119
- ```typescript filename="src/mastra/agents/moderated-agent.ts" showLineNumbers copy
128
+ ```typescript title="src/mastra/agents/moderated-agent.ts" showLineNumbers copy
120
129
  import { openai } from "@ai-sdk/openai";
121
130
  import { Agent } from "@mastra/core/agent";
122
131
  import { ModerationProcessor } from "@mastra/core/processors";
@@ -133,13 +142,13 @@ export const agent = new Agent({
133
142
  strategy: "block",
134
143
  instructions: "Detect and flag inappropriate content in user messages",
135
144
  includeScores: true,
136
- chunkWindow: 1
137
- })
138
- ]
145
+ chunkWindow: 1,
146
+ }),
147
+ ],
139
148
  });
140
149
  ```
141
150
 
142
151
  ## Related
143
152
 
144
- - [Input Processors](/docs/agents/input-processors)
145
- - [Output Processors](/docs/agents/output-processors)
153
+ - [Input Processors](/docs/agents/guardrails)
154
+ - [Output Processors](/docs/agents/guardrails)
@@ -1,5 +1,5 @@
1
1
  ---
2
- title: "Reference: PII Detector | Processors | Mastra Docs"
2
+ title: "Reference: PIIDetector | Processors | Mastra Docs"
3
3
  description: "Documentation for the PIIDetector in Mastra, which detects and redacts personally identifiable information (PII) from AI responses."
4
4
  ---
5
5
 
@@ -17,7 +17,7 @@ const processor = new PIIDetector({
17
17
  model: openai("gpt-4.1-nano"),
18
18
  threshold: 0.6,
19
19
  strategy: "redact",
20
- detectionTypes: ["email", "phone", "credit-card", "ssn"]
20
+ detectionTypes: ["email", "phone", "credit-card", "ssn"],
21
21
  });
22
22
  ```
23
23
 
@@ -49,47 +49,54 @@ const processor = new PIIDetector({
49
49
  type: "string[]",
50
50
  description: "PII types to detect. If not specified, uses default types",
51
51
  isOptional: true,
52
- default: "['email', 'phone', 'credit-card', 'ssn', 'api-key', 'ip-address', 'name', 'address', 'date-of-birth', 'url', 'uuid', 'crypto-wallet', 'iban']",
52
+ default:
53
+ "['email', 'phone', 'credit-card', 'ssn', 'api-key', 'ip-address', 'name', 'address', 'date-of-birth', 'url', 'uuid', 'crypto-wallet', 'iban']",
53
54
  },
54
55
  {
55
56
  name: "threshold",
56
57
  type: "number",
57
- description: "Confidence threshold for flagging (0-1). PII is flagged if any category score exceeds this threshold",
58
+ description:
59
+ "Confidence threshold for flagging (0-1). PII is flagged if any category score exceeds this threshold",
58
60
  isOptional: true,
59
61
  default: "0.6",
60
62
  },
61
63
  {
62
64
  name: "strategy",
63
65
  type: "'block' | 'warn' | 'filter' | 'redact'",
64
- description: "Strategy when PII is detected: 'block' rejects with error, 'warn' logs warning but allows through, 'filter' removes flagged messages, 'redact' replaces PII with redacted versions",
66
+ description:
67
+ "Strategy when PII is detected: 'block' rejects with error, 'warn' logs warning but allows through, 'filter' removes flagged messages, 'redact' replaces PII with redacted versions",
65
68
  isOptional: true,
66
69
  default: "'redact'",
67
70
  },
68
71
  {
69
72
  name: "redactionMethod",
70
73
  type: "'mask' | 'hash' | 'remove' | 'placeholder'",
71
- description: "Redaction method for PII: 'mask' replaces with asterisks, 'hash' replaces with SHA256 hash, 'remove' removes entirely, 'placeholder' replaces with type placeholder",
74
+ description:
75
+ "Redaction method for PII: 'mask' replaces with asterisks, 'hash' replaces with SHA256 hash, 'remove' removes entirely, 'placeholder' replaces with type placeholder",
72
76
  isOptional: true,
73
77
  default: "'mask'",
74
78
  },
75
79
  {
76
80
  name: "instructions",
77
81
  type: "string",
78
- description: "Custom detection instructions for the agent. If not provided, uses default instructions based on detection types",
82
+ description:
83
+ "Custom detection instructions for the agent. If not provided, uses default instructions based on detection types",
79
84
  isOptional: true,
80
85
  default: "undefined",
81
86
  },
82
87
  {
83
88
  name: "includeDetections",
84
89
  type: "boolean",
85
- description: "Whether to include detection details in logs. Useful for compliance auditing and debugging",
90
+ description:
91
+ "Whether to include detection details in logs. Useful for compliance auditing and debugging",
86
92
  isOptional: true,
87
93
  default: "false",
88
94
  },
89
95
  {
90
96
  name: "preserveFormat",
91
97
  type: "boolean",
92
- description: "Whether to preserve PII format during redaction. When true, maintains structure like ***-**-1234 for phone numbers",
98
+ description:
99
+ "Whether to preserve PII format during redaction. When true, maintains structure like ***-**-1234 for phone numbers",
93
100
  isOptional: true,
94
101
  default: "true",
95
102
  },
@@ -109,13 +116,15 @@ const processor = new PIIDetector({
109
116
  {
110
117
  name: "processInput",
111
118
  type: "(args: { messages: MastraMessageV2[]; abort: (reason?: string) => never; tracingContext?: TracingContext }) => Promise<MastraMessageV2[]>",
112
- description: "Processes input messages to detect and redact PII before sending to LLM",
119
+ description:
120
+ "Processes input messages to detect and redact PII before sending to LLM",
113
121
  isOptional: false,
114
122
  },
115
123
  {
116
124
  name: "processOutputStream",
117
125
  type: "(args: { part: ChunkType; streamParts: ChunkType[]; state: Record<string, any>; abort: (reason?: string) => never; tracingContext?: TracingContext }) => Promise<ChunkType | null | undefined>",
118
- description: "Processes streaming output parts to detect and redact PII during streaming",
126
+ description:
127
+ "Processes streaming output parts to detect and redact PII during streaming",
119
128
  isOptional: false,
120
129
  },
121
130
  ]}
@@ -123,7 +132,7 @@ const processor = new PIIDetector({
123
132
 
124
133
  ## Extended usage example
125
134
 
126
- ```typescript filename="src/mastra/agents/private-agent.ts" showLineNumbers copy
135
+ ```typescript title="src/mastra/agents/private-agent.ts" showLineNumbers copy
127
136
  import { openai } from "@ai-sdk/openai";
128
137
  import { Agent } from "@mastra/core/agent";
129
138
  import { PIIDetector } from "@mastra/core/processors";
@@ -139,15 +148,16 @@ export const agent = new Agent({
139
148
  threshold: 0.6,
140
149
  strategy: "redact",
141
150
  redactionMethod: "mask",
142
- instructions: "Detect and redact personally identifiable information while preserving message intent",
151
+ instructions:
152
+ "Detect and redact personally identifiable information while preserving message intent",
143
153
  includeDetections: true,
144
- preserveFormat: true
145
- })
146
- ]
154
+ preserveFormat: true,
155
+ }),
156
+ ],
147
157
  });
148
158
  ```
149
159
 
150
160
  ## Related
151
161
 
152
- - [Input Processors](/docs/agents/input-processors)
153
- - [Output Processors](/docs/agents/output-processors)
162
+ - [Input Processors](/docs/agents/guardrails)
163
+ - [Output Processors](/docs/agents/guardrails)
@@ -1,5 +1,5 @@
1
1
  ---
2
- title: "Reference: Prompt Injection Detector | Processors | Mastra Docs"
2
+ title: "Reference: PromptInjectionDetector | Processors | Mastra Docs"
3
3
  description: "Documentation for the PromptInjectionDetector in Mastra, which detects prompt injection attempts in user input."
4
4
  ---
5
5
 
@@ -17,7 +17,7 @@ const processor = new PromptInjectionDetector({
17
17
  model: openai("gpt-4.1-nano"),
18
18
  threshold: 0.8,
19
19
  strategy: "rewrite",
20
- detectionTypes: ["injection", "jailbreak", "system-override"]
20
+ detectionTypes: ["injection", "jailbreak", "system-override"],
21
21
  });
22
22
  ```
23
23
 
@@ -47,35 +47,41 @@ const processor = new PromptInjectionDetector({
47
47
  {
48
48
  name: "detectionTypes",
49
49
  type: "string[]",
50
- description: "Detection types to check for. If not specified, uses default categories",
50
+ description:
51
+ "Detection types to check for. If not specified, uses default categories",
51
52
  isOptional: true,
52
- default: "['injection', 'jailbreak', 'tool-exfiltration', 'data-exfiltration', 'system-override', 'role-manipulation']",
53
+ default:
54
+ "['injection', 'jailbreak', 'tool-exfiltration', 'data-exfiltration', 'system-override', 'role-manipulation']",
53
55
  },
54
56
  {
55
57
  name: "threshold",
56
58
  type: "number",
57
- description: "Confidence threshold for flagging (0-1). Higher threshold = less sensitive to avoid false positives",
59
+ description:
60
+ "Confidence threshold for flagging (0-1). Higher threshold = less sensitive to avoid false positives",
58
61
  isOptional: true,
59
62
  default: "0.7",
60
63
  },
61
64
  {
62
65
  name: "strategy",
63
66
  type: "'block' | 'warn' | 'filter' | 'rewrite'",
64
- description: "Strategy when injection is detected: 'block' rejects with error, 'warn' logs warning but allows through, 'filter' removes flagged messages, 'rewrite' attempts to neutralize the injection",
67
+ description:
68
+ "Strategy when injection is detected: 'block' rejects with error, 'warn' logs warning but allows through, 'filter' removes flagged messages, 'rewrite' attempts to neutralize the injection",
65
69
  isOptional: true,
66
70
  default: "'block'",
67
71
  },
68
72
  {
69
73
  name: "instructions",
70
74
  type: "string",
71
- description: "Custom detection instructions for the agent. If not provided, uses default instructions based on detection types",
75
+ description:
76
+ "Custom detection instructions for the agent. If not provided, uses default instructions based on detection types",
72
77
  isOptional: true,
73
78
  default: "undefined",
74
79
  },
75
80
  {
76
81
  name: "includeScores",
77
82
  type: "boolean",
78
- description: "Whether to include confidence scores in logs. Useful for tuning thresholds and debugging",
83
+ description:
84
+ "Whether to include confidence scores in logs. Useful for tuning thresholds and debugging",
79
85
  isOptional: true,
80
86
  default: "false",
81
87
  },
@@ -95,7 +101,8 @@ const processor = new PromptInjectionDetector({
95
101
  {
96
102
  name: "processInput",
97
103
  type: "(args: { messages: MastraMessageV2[]; abort: (reason?: string) => never; tracingContext?: TracingContext }) => Promise<MastraMessageV2[]>",
98
- description: "Processes input messages to detect prompt injection attempts before sending to LLM",
104
+ description:
105
+ "Processes input messages to detect prompt injection attempts before sending to LLM",
99
106
  isOptional: false,
100
107
  },
101
108
  ]}
@@ -103,7 +110,7 @@ const processor = new PromptInjectionDetector({
103
110
 
104
111
  ## Extended usage example
105
112
 
106
- ```typescript filename="src/mastra/agents/secure-agent.ts" showLineNumbers copy
113
+ ```typescript title="src/mastra/agents/secure-agent.ts" showLineNumbers copy
107
114
  import { openai } from "@ai-sdk/openai";
108
115
  import { Agent } from "@mastra/core/agent";
109
116
  import { PromptInjectionDetector } from "@mastra/core/processors";
@@ -115,16 +122,17 @@ export const agent = new Agent({
115
122
  inputProcessors: [
116
123
  new PromptInjectionDetector({
117
124
  model: openai("gpt-4.1-nano"),
118
- detectionTypes: ['injection', 'jailbreak', 'system-override'],
125
+ detectionTypes: ["injection", "jailbreak", "system-override"],
119
126
  threshold: 0.8,
120
- strategy: 'rewrite',
121
- instructions: 'Detect and neutralize prompt injection attempts while preserving legitimate user intent',
122
- includeScores: true
123
- })
124
- ]
127
+ strategy: "rewrite",
128
+ instructions:
129
+ "Detect and neutralize prompt injection attempts while preserving legitimate user intent",
130
+ includeScores: true,
131
+ }),
132
+ ],
125
133
  });
126
134
  ```
127
135
 
128
136
  ## Related
129
137
 
130
- - [Input Processors](/docs/agents/input-processors)
138
+ - [Input Processors](/docs/agents/guardrails)
@@ -1,5 +1,5 @@
1
1
  ---
2
- title: "Reference: System Prompt Scrubber | Processors | Mastra Docs"
2
+ title: "Reference: SystemPromptScrubber | Processors | Mastra Docs"
3
3
  description: "Documentation for the SystemPromptScrubber in Mastra, which detects and redacts system prompts from AI responses."
4
4
  ---
5
5
 
@@ -17,7 +17,7 @@ const processor = new SystemPromptScrubber({
17
17
  model: openai("gpt-4.1-nano"),
18
18
  strategy: "redact",
19
19
  redactionMethod: "mask",
20
- includeDetections: true
20
+ includeDetections: true,
21
21
  });
22
22
  ```
23
23
 
@@ -28,7 +28,8 @@ const processor = new SystemPromptScrubber({
28
28
  {
29
29
  name: "options",
30
30
  type: "Options",
31
- description: "Configuration options for system prompt detection and handling",
31
+ description:
32
+ "Configuration options for system prompt detection and handling",
32
33
  isOptional: false,
33
34
  },
34
35
  ]}
@@ -47,7 +48,8 @@ const processor = new SystemPromptScrubber({
47
48
  {
48
49
  name: "strategy",
49
50
  type: "'block' | 'warn' | 'filter' | 'redact'",
50
- description: "Strategy when system prompts are detected: 'block' rejects with error, 'warn' logs warning but allows through, 'filter' removes flagged messages, 'redact' replaces with redacted versions",
51
+ description:
52
+ "Strategy when system prompts are detected: 'block' rejects with error, 'warn' logs warning but allows through, 'filter' removes flagged messages, 'redact' replaces with redacted versions",
51
53
  isOptional: true,
52
54
  default: "'redact'",
53
55
  },
@@ -61,28 +63,32 @@ const processor = new SystemPromptScrubber({
61
63
  {
62
64
  name: "includeDetections",
63
65
  type: "boolean",
64
- description: "Whether to include detection details in warnings. Useful for debugging and monitoring",
66
+ description:
67
+ "Whether to include detection details in warnings. Useful for debugging and monitoring",
65
68
  isOptional: true,
66
69
  default: "false",
67
70
  },
68
71
  {
69
72
  name: "instructions",
70
73
  type: "string",
71
- description: "Custom instructions for the detection agent. If not provided, uses default instructions",
74
+ description:
75
+ "Custom instructions for the detection agent. If not provided, uses default instructions",
72
76
  isOptional: true,
73
77
  default: "undefined",
74
78
  },
75
79
  {
76
80
  name: "redactionMethod",
77
81
  type: "'mask' | 'placeholder' | 'remove'",
78
- description: "Redaction method for system prompts: 'mask' replaces with asterisks, 'placeholder' replaces with placeholder text, 'remove' removes entirely",
82
+ description:
83
+ "Redaction method for system prompts: 'mask' replaces with asterisks, 'placeholder' replaces with placeholder text, 'remove' removes entirely",
79
84
  isOptional: true,
80
85
  default: "'mask'",
81
86
  },
82
87
  {
83
88
  name: "placeholderText",
84
89
  type: "string",
85
- description: "Custom placeholder text for redaction when redactionMethod is 'placeholder'",
90
+ description:
91
+ "Custom placeholder text for redaction when redactionMethod is 'placeholder'",
86
92
  isOptional: true,
87
93
  default: "'[SYSTEM_PROMPT]'",
88
94
  },
@@ -102,13 +108,15 @@ const processor = new SystemPromptScrubber({
102
108
  {
103
109
  name: "processOutputStream",
104
110
  type: "(args: { part: ChunkType; streamParts: ChunkType[]; state: Record<string, any>; abort: (reason?: string) => never; tracingContext?: TracingContext }) => Promise<ChunkType | null>",
105
- description: "Processes streaming output parts to detect and handle system prompts during streaming",
111
+ description:
112
+ "Processes streaming output parts to detect and handle system prompts during streaming",
106
113
  isOptional: false,
107
114
  },
108
115
  {
109
116
  name: "processOutputResult",
110
117
  type: "(args: { messages: MastraMessageV2[]; abort: (reason?: string) => never }) => Promise<MastraMessageV2[]>",
111
- description: "Processes final output results to detect and handle system prompts in non-streaming scenarios",
118
+ description:
119
+ "Processes final output results to detect and handle system prompts in non-streaming scenarios",
112
120
  isOptional: false,
113
121
  },
114
122
  ]}
@@ -116,7 +124,7 @@ const processor = new SystemPromptScrubber({
116
124
 
117
125
  ## Extended usage example
118
126
 
119
- ```typescript filename="src/mastra/agents/scrubbed-agent.ts" showLineNumbers copy
127
+ ```typescript title="src/mastra/agents/scrubbed-agent.ts" showLineNumbers copy
120
128
  import { openai } from "@ai-sdk/openai";
121
129
  import { Agent } from "@mastra/core/agent";
122
130
  import { SystemPromptScrubber } from "@mastra/core/processors";
@@ -131,15 +139,16 @@ export const agent = new Agent({
131
139
  strategy: "redact",
132
140
  customPatterns: ["system prompt", "internal instructions"],
133
141
  includeDetections: true,
134
- instructions: "Detect and redact system prompts, internal instructions, and security-sensitive content",
142
+ instructions:
143
+ "Detect and redact system prompts, internal instructions, and security-sensitive content",
135
144
  redactionMethod: "placeholder",
136
- placeholderText: "[REDACTED]"
137
- })
138
- ]
145
+ placeholderText: "[REDACTED]",
146
+ }),
147
+ ],
139
148
  });
140
149
  ```
141
150
 
142
151
  ## Related
143
152
 
144
- - [Input Processors](/docs/agents/input-processors)
145
- - [Output Processors](/docs/agents/output-processors)
153
+ - [Input Processors](/docs/agents/guardrails)
154
+ - [Output Processors](/docs/agents/guardrails)
@@ -1,5 +1,5 @@
1
1
  ---
2
- title: "Reference: Token Limiter Processor | Processors | Mastra Docs"
2
+ title: "Reference: TokenLimiterProcessor | Processors | Mastra Docs"
3
3
  description: "Documentation for the TokenLimiterProcessor in Mastra, which limits the number of tokens in AI responses."
4
4
  ---
5
5
 
@@ -15,7 +15,7 @@ import { TokenLimiterProcessor } from "@mastra/core/processors";
15
15
  const processor = new TokenLimiterProcessor({
16
16
  limit: 1000,
17
17
  strategy: "truncate",
18
- countMode: "cumulative"
18
+ countMode: "cumulative",
19
19
  });
20
20
  ```
21
21
 
@@ -26,7 +26,8 @@ const processor = new TokenLimiterProcessor({
26
26
  {
27
27
  name: "options",
28
28
  type: "number | Options",
29
- description: "Either a simple number for token limit, or configuration options object",
29
+ description:
30
+ "Either a simple number for token limit, or configuration options object",
30
31
  isOptional: false,
31
32
  },
32
33
  ]}
@@ -45,21 +46,24 @@ const processor = new TokenLimiterProcessor({
45
46
  {
46
47
  name: "encoding",
47
48
  type: "TiktokenBPE",
48
- description: "Optional encoding to use. Defaults to o200k_base which is used by gpt-4o",
49
+ description:
50
+ "Optional encoding to use. Defaults to o200k_base which is used by gpt-4o",
49
51
  isOptional: true,
50
52
  default: "o200k_base",
51
53
  },
52
54
  {
53
55
  name: "strategy",
54
56
  type: "'truncate' | 'abort'",
55
- description: "Strategy when token limit is reached: 'truncate' stops emitting chunks, 'abort' calls abort() to stop the stream",
57
+ description:
58
+ "Strategy when token limit is reached: 'truncate' stops emitting chunks, 'abort' calls abort() to stop the stream",
56
59
  isOptional: true,
57
60
  default: "'truncate'",
58
61
  },
59
62
  {
60
63
  name: "countMode",
61
64
  type: "'cumulative' | 'part'",
62
- description: "Whether to count tokens from the beginning of the stream or just the current part: 'cumulative' counts all tokens from start, 'part' only counts tokens in current part",
65
+ description:
66
+ "Whether to count tokens from the beginning of the stream or just the current part: 'cumulative' counts all tokens from start, 'part' only counts tokens in current part",
63
67
  isOptional: true,
64
68
  default: "'cumulative'",
65
69
  },
@@ -79,19 +83,22 @@ const processor = new TokenLimiterProcessor({
79
83
  {
80
84
  name: "processOutputStream",
81
85
  type: "(args: { part: ChunkType; streamParts: ChunkType[]; state: Record<string, any>; abort: (reason?: string) => never }) => Promise<ChunkType | null>",
82
- description: "Processes streaming output parts to limit token count during streaming",
86
+ description:
87
+ "Processes streaming output parts to limit token count during streaming",
83
88
  isOptional: false,
84
89
  },
85
90
  {
86
91
  name: "processOutputResult",
87
92
  type: "(args: { messages: MastraMessageV2[]; abort: (reason?: string) => never }) => Promise<MastraMessageV2[]>",
88
- description: "Processes final output results to limit token count in non-streaming scenarios",
93
+ description:
94
+ "Processes final output results to limit token count in non-streaming scenarios",
89
95
  isOptional: false,
90
96
  },
91
97
  {
92
98
  name: "reset",
93
99
  type: "() => void",
94
- description: "Reset the token counter (useful for testing or reusing the processor)",
100
+ description:
101
+ "Reset the token counter (useful for testing or reusing the processor)",
95
102
  isOptional: false,
96
103
  },
97
104
  {
@@ -111,7 +118,7 @@ const processor = new TokenLimiterProcessor({
111
118
 
112
119
  ## Extended usage example
113
120
 
114
- ```typescript filename="src/mastra/agents/limited-agent.ts" showLineNumbers copy
121
+ ```typescript title="src/mastra/agents/limited-agent.ts" showLineNumbers copy
115
122
  import { openai } from "@ai-sdk/openai";
116
123
  import { Agent } from "@mastra/core/agent";
117
124
  import { TokenLimiterProcessor } from "@mastra/core/processors";
@@ -124,13 +131,13 @@ export const agent = new Agent({
124
131
  new TokenLimiterProcessor({
125
132
  limit: 1000,
126
133
  strategy: "truncate",
127
- countMode: "cumulative"
128
- })
129
- ]
134
+ countMode: "cumulative",
135
+ }),
136
+ ],
130
137
  });
131
138
  ```
132
139
 
133
140
  ## Related
134
141
 
135
- - [Input Processors](/docs/agents/input-processors)
136
- - [Output Processors](/docs/agents/output-processors)
142
+ - [Input Processors](/docs/agents/guardrails)
143
+ - [Output Processors](/docs/agents/guardrails)
@@ -1,5 +1,5 @@
1
1
  ---
2
- title: "Reference: Unicode Normalizer | Processors | Mastra Docs"
2
+ title: "Reference: UnicodeNormalizer | Processors | Mastra Docs"
3
3
  description: "Documentation for the UnicodeNormalizer in Mastra, which normalizes Unicode text to ensure consistent formatting and remove potentially problematic characters."
4
4
  ---
5
5
 
@@ -14,7 +14,7 @@ import { UnicodeNormalizer } from "@mastra/core/processors";
14
14
 
15
15
  const processor = new UnicodeNormalizer({
16
16
  stripControlChars: true,
17
- collapseWhitespace: true
17
+ collapseWhitespace: true,
18
18
  });
19
19
  ```
20
20
 
@@ -38,21 +38,24 @@ const processor = new UnicodeNormalizer({
38
38
  {
39
39
  name: "stripControlChars",
40
40
  type: "boolean",
41
- description: "Whether to strip control characters. When enabled, removes control characters except \t, \n, \r",
41
+ description:
42
+ "Whether to strip control characters. When enabled, removes control characters except \t, \n, \r",
42
43
  isOptional: true,
43
44
  default: "false",
44
45
  },
45
46
  {
46
47
  name: "preserveEmojis",
47
48
  type: "boolean",
48
- description: "Whether to preserve emojis. When disabled, emojis may be removed if they contain control characters",
49
+ description:
50
+ "Whether to preserve emojis. When disabled, emojis may be removed if they contain control characters",
49
51
  isOptional: true,
50
52
  default: "true",
51
53
  },
52
54
  {
53
55
  name: "collapseWhitespace",
54
56
  type: "boolean",
55
- description: "Whether to collapse consecutive whitespace. When enabled, multiple spaces/tabs/newlines are collapsed to single instances",
57
+ description:
58
+ "Whether to collapse consecutive whitespace. When enabled, multiple spaces/tabs/newlines are collapsed to single instances",
56
59
  isOptional: true,
57
60
  default: "true",
58
61
  },
@@ -85,10 +88,9 @@ const processor = new UnicodeNormalizer({
85
88
  ]}
86
89
  />
87
90
 
88
-
89
91
  ## Extended usage example
90
92
 
91
- ```typescript filename="src/mastra/agents/normalized-agent.ts" showLineNumbers copy
93
+ ```typescript title="src/mastra/agents/normalized-agent.ts" showLineNumbers copy
92
94
  import { openai } from "@ai-sdk/openai";
93
95
  import { Agent } from "@mastra/core/agent";
94
96
  import { UnicodeNormalizer } from "@mastra/core/processors";
@@ -102,13 +104,12 @@ export const agent = new Agent({
102
104
  stripControlChars: true,
103
105
  preserveEmojis: true,
104
106
  collapseWhitespace: true,
105
- trim: true
106
- })
107
- ]
107
+ trim: true,
108
+ }),
109
+ ],
108
110
  });
109
111
  ```
110
112
 
111
-
112
113
  ## Related
113
114
 
114
- - [Input Processors](../../docs/agents/input-processors.mdx)
115
+ - [Input Processors](/docs/agents/guardrails)