@mastra/mcp-docs-server 1.1.5 → 1.1.6

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 (556) hide show
  1. package/.docs/docs/agents/adding-voice.md +349 -0
  2. package/.docs/docs/agents/agent-approval.md +558 -0
  3. package/.docs/docs/agents/agent-memory.md +209 -0
  4. package/.docs/docs/agents/guardrails.md +374 -0
  5. package/.docs/docs/agents/network-approval.md +275 -0
  6. package/.docs/docs/agents/networks.md +299 -0
  7. package/.docs/docs/agents/overview.md +304 -0
  8. package/.docs/docs/agents/processors.md +622 -0
  9. package/.docs/docs/agents/structured-output.md +273 -0
  10. package/.docs/docs/agents/supervisor-agents.md +304 -0
  11. package/.docs/docs/agents/using-tools.md +214 -0
  12. package/.docs/docs/build-with-ai/mcp-docs-server.md +238 -0
  13. package/.docs/docs/build-with-ai/skills.md +35 -0
  14. package/.docs/docs/community/contributing-templates.md +3 -0
  15. package/.docs/docs/community/discord.md +9 -0
  16. package/.docs/docs/community/licensing.md +66 -0
  17. package/.docs/docs/deployment/cloud-providers.md +15 -0
  18. package/.docs/docs/deployment/mastra-server.md +122 -0
  19. package/.docs/docs/deployment/monorepo.md +142 -0
  20. package/.docs/docs/deployment/overview.md +62 -0
  21. package/.docs/docs/deployment/studio.md +239 -0
  22. package/.docs/docs/deployment/web-framework.md +52 -0
  23. package/.docs/docs/deployment/workflow-runners.md +9 -0
  24. package/.docs/docs/evals/built-in-scorers.md +47 -0
  25. package/.docs/docs/evals/custom-scorers.md +519 -0
  26. package/.docs/docs/evals/overview.md +141 -0
  27. package/.docs/docs/evals/running-in-ci.md +124 -0
  28. package/.docs/docs/getting-started/build-with-ai.md +68 -0
  29. package/.docs/docs/getting-started/manual-install.md +226 -0
  30. package/.docs/docs/getting-started/project-structure.md +60 -0
  31. package/.docs/docs/getting-started/start.md +28 -0
  32. package/.docs/docs/getting-started/studio.md +101 -0
  33. package/.docs/docs/index.md +43 -0
  34. package/.docs/docs/mastra-cloud/deployment.md +77 -0
  35. package/.docs/docs/mastra-cloud/observability.md +38 -0
  36. package/.docs/docs/mastra-cloud/overview.md +23 -0
  37. package/.docs/docs/mastra-cloud/setup.md +42 -0
  38. package/.docs/docs/mastra-cloud/studio.md +24 -0
  39. package/.docs/docs/mastra-code/configuration.md +299 -0
  40. package/.docs/docs/mastra-code/customization.md +228 -0
  41. package/.docs/docs/mastra-code/modes.md +104 -0
  42. package/.docs/docs/mastra-code/overview.md +135 -0
  43. package/.docs/docs/mastra-code/tools.md +229 -0
  44. package/.docs/docs/mcp/overview.md +373 -0
  45. package/.docs/docs/mcp/publishing-mcp-server.md +95 -0
  46. package/.docs/docs/memory/memory-processors.md +314 -0
  47. package/.docs/docs/memory/message-history.md +260 -0
  48. package/.docs/docs/memory/observational-memory.md +248 -0
  49. package/.docs/docs/memory/overview.md +45 -0
  50. package/.docs/docs/memory/semantic-recall.md +272 -0
  51. package/.docs/docs/memory/storage.md +261 -0
  52. package/.docs/docs/memory/working-memory.md +400 -0
  53. package/.docs/docs/observability/datasets/overview.md +198 -0
  54. package/.docs/docs/observability/datasets/running-experiments.md +274 -0
  55. package/.docs/docs/observability/logging.md +99 -0
  56. package/.docs/docs/observability/overview.md +70 -0
  57. package/.docs/docs/observability/tracing/bridges/otel.md +209 -0
  58. package/.docs/docs/observability/tracing/exporters/arize.md +272 -0
  59. package/.docs/docs/observability/tracing/exporters/braintrust.md +111 -0
  60. package/.docs/docs/observability/tracing/exporters/cloud.md +127 -0
  61. package/.docs/docs/observability/tracing/exporters/datadog.md +187 -0
  62. package/.docs/docs/observability/tracing/exporters/default.md +209 -0
  63. package/.docs/docs/observability/tracing/exporters/laminar.md +100 -0
  64. package/.docs/docs/observability/tracing/exporters/langfuse.md +213 -0
  65. package/.docs/docs/observability/tracing/exporters/langsmith.md +198 -0
  66. package/.docs/docs/observability/tracing/exporters/otel.md +476 -0
  67. package/.docs/docs/observability/tracing/exporters/posthog.md +148 -0
  68. package/.docs/docs/observability/tracing/exporters/sentry.md +208 -0
  69. package/.docs/docs/observability/tracing/overview.md +1112 -0
  70. package/.docs/docs/observability/tracing/processors/sensitive-data-filter.md +300 -0
  71. package/.docs/docs/rag/chunking-and-embedding.md +183 -0
  72. package/.docs/docs/rag/graph-rag.md +215 -0
  73. package/.docs/docs/rag/overview.md +72 -0
  74. package/.docs/docs/rag/retrieval.md +515 -0
  75. package/.docs/docs/rag/vector-databases.md +645 -0
  76. package/.docs/docs/server/auth/auth0.md +220 -0
  77. package/.docs/docs/server/auth/better-auth.md +203 -0
  78. package/.docs/docs/server/auth/clerk.md +132 -0
  79. package/.docs/docs/server/auth/composite-auth.md +234 -0
  80. package/.docs/docs/server/auth/custom-auth-provider.md +513 -0
  81. package/.docs/docs/server/auth/firebase.md +272 -0
  82. package/.docs/docs/server/auth/jwt.md +110 -0
  83. package/.docs/docs/server/auth/simple-auth.md +180 -0
  84. package/.docs/docs/server/auth/supabase.md +117 -0
  85. package/.docs/docs/server/auth/workos.md +186 -0
  86. package/.docs/docs/server/auth.md +38 -0
  87. package/.docs/docs/server/custom-adapters.md +378 -0
  88. package/.docs/docs/server/custom-api-routes.md +267 -0
  89. package/.docs/docs/server/mastra-client.md +243 -0
  90. package/.docs/docs/server/mastra-server.md +71 -0
  91. package/.docs/docs/server/middleware.md +225 -0
  92. package/.docs/docs/server/request-context.md +471 -0
  93. package/.docs/docs/server/server-adapters.md +547 -0
  94. package/.docs/docs/streaming/events.md +237 -0
  95. package/.docs/docs/streaming/overview.md +175 -0
  96. package/.docs/docs/streaming/tool-streaming.md +175 -0
  97. package/.docs/docs/streaming/workflow-streaming.md +109 -0
  98. package/.docs/docs/voice/overview.md +959 -0
  99. package/.docs/docs/voice/speech-to-speech.md +102 -0
  100. package/.docs/docs/voice/speech-to-text.md +79 -0
  101. package/.docs/docs/voice/text-to-speech.md +83 -0
  102. package/.docs/docs/workflows/agents-and-tools.md +166 -0
  103. package/.docs/docs/workflows/control-flow.md +822 -0
  104. package/.docs/docs/workflows/error-handling.md +360 -0
  105. package/.docs/docs/workflows/human-in-the-loop.md +215 -0
  106. package/.docs/docs/workflows/overview.md +370 -0
  107. package/.docs/docs/workflows/snapshots.md +238 -0
  108. package/.docs/docs/workflows/suspend-and-resume.md +205 -0
  109. package/.docs/docs/workflows/time-travel.md +309 -0
  110. package/.docs/docs/workflows/workflow-state.md +181 -0
  111. package/.docs/docs/workspace/filesystem.md +164 -0
  112. package/.docs/docs/workspace/overview.md +239 -0
  113. package/.docs/docs/workspace/sandbox.md +63 -0
  114. package/.docs/docs/workspace/search.md +243 -0
  115. package/.docs/docs/workspace/skills.md +169 -0
  116. package/.docs/guides/agent-frameworks/ai-sdk.md +140 -0
  117. package/.docs/guides/build-your-ui/ai-sdk-ui.md +1499 -0
  118. package/.docs/guides/build-your-ui/assistant-ui.md +156 -0
  119. package/.docs/guides/build-your-ui/copilotkit.md +289 -0
  120. package/.docs/guides/deployment/amazon-ec2.md +130 -0
  121. package/.docs/guides/deployment/aws-lambda.md +248 -0
  122. package/.docs/guides/deployment/azure-app-services.md +114 -0
  123. package/.docs/guides/deployment/cloudflare.md +99 -0
  124. package/.docs/guides/deployment/digital-ocean.md +168 -0
  125. package/.docs/guides/deployment/inngest.md +682 -0
  126. package/.docs/guides/deployment/netlify.md +77 -0
  127. package/.docs/guides/deployment/vercel.md +101 -0
  128. package/.docs/guides/getting-started/astro.md +398 -0
  129. package/.docs/guides/getting-started/electron.md +504 -0
  130. package/.docs/guides/getting-started/express.md +251 -0
  131. package/.docs/guides/getting-started/hono.md +190 -0
  132. package/.docs/guides/getting-started/next-js.md +347 -0
  133. package/.docs/guides/getting-started/nuxt.md +497 -0
  134. package/.docs/guides/getting-started/quickstart.md +67 -0
  135. package/.docs/guides/getting-started/sveltekit.md +296 -0
  136. package/.docs/guides/getting-started/vite-react.md +425 -0
  137. package/.docs/guides/guide/ai-recruiter.md +226 -0
  138. package/.docs/guides/guide/chef-michel.md +211 -0
  139. package/.docs/guides/guide/code-review-bot.md +226 -0
  140. package/.docs/guides/guide/dev-assistant.md +307 -0
  141. package/.docs/guides/guide/docs-manager.md +238 -0
  142. package/.docs/guides/guide/github-actions-pr-description.md +236 -0
  143. package/.docs/guides/guide/notes-mcp-server.md +416 -0
  144. package/.docs/guides/guide/research-assistant.md +348 -0
  145. package/.docs/guides/guide/research-coordinator.md +416 -0
  146. package/.docs/guides/guide/stock-agent.md +132 -0
  147. package/.docs/guides/guide/web-search.md +320 -0
  148. package/.docs/guides/guide/whatsapp-chat-bot.md +405 -0
  149. package/.docs/guides/index.md +3 -0
  150. package/.docs/guides/migrations/agentnetwork.md +97 -0
  151. package/.docs/guides/migrations/ai-sdk-v4-to-v5.md +112 -0
  152. package/.docs/guides/migrations/network-to-supervisor.md +261 -0
  153. package/.docs/guides/migrations/upgrade-to-v1/agent.md +404 -0
  154. package/.docs/guides/migrations/upgrade-to-v1/cli.md +57 -0
  155. package/.docs/guides/migrations/upgrade-to-v1/client.md +337 -0
  156. package/.docs/guides/migrations/upgrade-to-v1/deployment.md +37 -0
  157. package/.docs/guides/migrations/upgrade-to-v1/evals.md +239 -0
  158. package/.docs/guides/migrations/upgrade-to-v1/mastra.md +143 -0
  159. package/.docs/guides/migrations/upgrade-to-v1/mcp.md +97 -0
  160. package/.docs/guides/migrations/upgrade-to-v1/memory.md +285 -0
  161. package/.docs/guides/migrations/upgrade-to-v1/overview.md +119 -0
  162. package/.docs/guides/migrations/upgrade-to-v1/processors.md +68 -0
  163. package/.docs/guides/migrations/upgrade-to-v1/rag.md +42 -0
  164. package/.docs/guides/migrations/upgrade-to-v1/storage.md +553 -0
  165. package/.docs/guides/migrations/upgrade-to-v1/tools.md +180 -0
  166. package/.docs/guides/migrations/upgrade-to-v1/tracing.md +412 -0
  167. package/.docs/guides/migrations/upgrade-to-v1/vectors.md +87 -0
  168. package/.docs/guides/migrations/upgrade-to-v1/voice.md +30 -0
  169. package/.docs/guides/migrations/upgrade-to-v1/workflows.md +341 -0
  170. package/.docs/guides/migrations/vnext-to-standard-apis.md +362 -0
  171. package/.docs/models/embeddings.md +161 -0
  172. package/.docs/models/gateways/azure-openai.md +128 -0
  173. package/.docs/models/gateways/custom-gateways.md +545 -0
  174. package/.docs/models/gateways/netlify.md +88 -0
  175. package/.docs/models/gateways/openrouter.md +219 -0
  176. package/.docs/models/gateways/vercel.md +225 -0
  177. package/.docs/models/gateways.md +14 -0
  178. package/.docs/models/index.md +286 -0
  179. package/.docs/models/providers/302ai.md +134 -0
  180. package/.docs/models/providers/abacus.md +125 -0
  181. package/.docs/models/providers/agentrouter.md +90 -0
  182. package/.docs/models/providers/aihubmix.md +107 -0
  183. package/.docs/models/providers/alibaba-cn.md +135 -0
  184. package/.docs/models/providers/alibaba.md +111 -0
  185. package/.docs/models/providers/amazon-bedrock.md +33 -0
  186. package/.docs/models/providers/anthropic.md +153 -0
  187. package/.docs/models/providers/azure.md +33 -0
  188. package/.docs/models/providers/bailing.md +72 -0
  189. package/.docs/models/providers/baseten.md +77 -0
  190. package/.docs/models/providers/berget.md +78 -0
  191. package/.docs/models/providers/cerebras.md +101 -0
  192. package/.docs/models/providers/chutes.md +136 -0
  193. package/.docs/models/providers/cloudflare-ai-gateway.md +33 -0
  194. package/.docs/models/providers/cloudflare-workers-ai.md +109 -0
  195. package/.docs/models/providers/cohere.md +33 -0
  196. package/.docs/models/providers/cortecs.md +91 -0
  197. package/.docs/models/providers/deepinfra.md +112 -0
  198. package/.docs/models/providers/deepseek.md +88 -0
  199. package/.docs/models/providers/fastrouter.md +84 -0
  200. package/.docs/models/providers/fireworks-ai.md +89 -0
  201. package/.docs/models/providers/firmware.md +85 -0
  202. package/.docs/models/providers/friendli.md +78 -0
  203. package/.docs/models/providers/github-models.md +125 -0
  204. package/.docs/models/providers/google-vertex.md +33 -0
  205. package/.docs/models/providers/google.md +159 -0
  206. package/.docs/models/providers/groq.md +107 -0
  207. package/.docs/models/providers/helicone.md +161 -0
  208. package/.docs/models/providers/huggingface.md +90 -0
  209. package/.docs/models/providers/iflowcn.md +84 -0
  210. package/.docs/models/providers/inception.md +72 -0
  211. package/.docs/models/providers/inference.md +79 -0
  212. package/.docs/models/providers/io-intelligence.md +87 -0
  213. package/.docs/models/providers/io-net.md +87 -0
  214. package/.docs/models/providers/jiekou.md +131 -0
  215. package/.docs/models/providers/kilo.md +333 -0
  216. package/.docs/models/providers/kimi-for-coding.md +100 -0
  217. package/.docs/models/providers/kuae-cloud-coding-plan.md +71 -0
  218. package/.docs/models/providers/llama.md +77 -0
  219. package/.docs/models/providers/lmstudio.md +73 -0
  220. package/.docs/models/providers/lucidquery.md +72 -0
  221. package/.docs/models/providers/minimax-cn-coding-plan.md +102 -0
  222. package/.docs/models/providers/minimax-cn.md +102 -0
  223. package/.docs/models/providers/minimax-coding-plan.md +102 -0
  224. package/.docs/models/providers/minimax.md +104 -0
  225. package/.docs/models/providers/mistral.md +124 -0
  226. package/.docs/models/providers/moark.md +72 -0
  227. package/.docs/models/providers/modelscope.md +77 -0
  228. package/.docs/models/providers/moonshotai-cn.md +76 -0
  229. package/.docs/models/providers/moonshotai.md +76 -0
  230. package/.docs/models/providers/morph.md +73 -0
  231. package/.docs/models/providers/nano-gpt.md +103 -0
  232. package/.docs/models/providers/nebius.md +116 -0
  233. package/.docs/models/providers/nova.md +72 -0
  234. package/.docs/models/providers/novita-ai.md +154 -0
  235. package/.docs/models/providers/nvidia.md +141 -0
  236. package/.docs/models/providers/ollama-cloud.md +103 -0
  237. package/.docs/models/providers/ollama.md +33 -0
  238. package/.docs/models/providers/openai.md +193 -0
  239. package/.docs/models/providers/opencode.md +100 -0
  240. package/.docs/models/providers/ovhcloud.md +83 -0
  241. package/.docs/models/providers/perplexity.md +100 -0
  242. package/.docs/models/providers/poe.md +183 -0
  243. package/.docs/models/providers/privatemode-ai.md +75 -0
  244. package/.docs/models/providers/requesty.md +90 -0
  245. package/.docs/models/providers/scaleway.md +84 -0
  246. package/.docs/models/providers/siliconflow-cn.md +138 -0
  247. package/.docs/models/providers/siliconflow.md +140 -0
  248. package/.docs/models/providers/stackit.md +78 -0
  249. package/.docs/models/providers/stepfun.md +73 -0
  250. package/.docs/models/providers/submodel.md +79 -0
  251. package/.docs/models/providers/synthetic.md +96 -0
  252. package/.docs/models/providers/togetherai.md +115 -0
  253. package/.docs/models/providers/upstage.md +73 -0
  254. package/.docs/models/providers/venice.md +95 -0
  255. package/.docs/models/providers/vivgrid.md +106 -0
  256. package/.docs/models/providers/vultr.md +75 -0
  257. package/.docs/models/providers/wandb.md +80 -0
  258. package/.docs/models/providers/xai.md +141 -0
  259. package/.docs/models/providers/xiaomi.md +71 -0
  260. package/.docs/models/providers/zai-coding-plan.md +80 -0
  261. package/.docs/models/providers/zai.md +79 -0
  262. package/.docs/models/providers/zenmux.md +161 -0
  263. package/.docs/models/providers/zhipuai-coding-plan.md +79 -0
  264. package/.docs/models/providers/zhipuai.md +79 -0
  265. package/.docs/models/providers.md +81 -0
  266. package/.docs/reference/agents/agent.md +141 -0
  267. package/.docs/reference/agents/generate.md +186 -0
  268. package/.docs/reference/agents/generateLegacy.md +173 -0
  269. package/.docs/reference/agents/getDefaultGenerateOptions.md +36 -0
  270. package/.docs/reference/agents/getDefaultOptions.md +34 -0
  271. package/.docs/reference/agents/getDefaultStreamOptions.md +36 -0
  272. package/.docs/reference/agents/getDescription.md +21 -0
  273. package/.docs/reference/agents/getInstructions.md +34 -0
  274. package/.docs/reference/agents/getLLM.md +37 -0
  275. package/.docs/reference/agents/getMemory.md +34 -0
  276. package/.docs/reference/agents/getModel.md +34 -0
  277. package/.docs/reference/agents/getTools.md +29 -0
  278. package/.docs/reference/agents/getVoice.md +34 -0
  279. package/.docs/reference/agents/listAgents.md +35 -0
  280. package/.docs/reference/agents/listScorers.md +34 -0
  281. package/.docs/reference/agents/listTools.md +34 -0
  282. package/.docs/reference/agents/listWorkflows.md +34 -0
  283. package/.docs/reference/agents/network.md +133 -0
  284. package/.docs/reference/ai-sdk/chat-route.md +82 -0
  285. package/.docs/reference/ai-sdk/handle-chat-stream.md +53 -0
  286. package/.docs/reference/ai-sdk/handle-network-stream.md +37 -0
  287. package/.docs/reference/ai-sdk/handle-workflow-stream.md +55 -0
  288. package/.docs/reference/ai-sdk/network-route.md +74 -0
  289. package/.docs/reference/ai-sdk/to-ai-sdk-stream.md +231 -0
  290. package/.docs/reference/ai-sdk/to-ai-sdk-v4-messages.md +79 -0
  291. package/.docs/reference/ai-sdk/to-ai-sdk-v5-messages.md +76 -0
  292. package/.docs/reference/ai-sdk/with-mastra.md +59 -0
  293. package/.docs/reference/ai-sdk/workflow-route.md +79 -0
  294. package/.docs/reference/auth/auth0.md +73 -0
  295. package/.docs/reference/auth/better-auth.md +71 -0
  296. package/.docs/reference/auth/clerk.md +36 -0
  297. package/.docs/reference/auth/firebase.md +80 -0
  298. package/.docs/reference/auth/jwt.md +26 -0
  299. package/.docs/reference/auth/supabase.md +33 -0
  300. package/.docs/reference/auth/workos.md +84 -0
  301. package/.docs/reference/cli/create-mastra.md +137 -0
  302. package/.docs/reference/cli/mastra.md +336 -0
  303. package/.docs/reference/client-js/agents.md +437 -0
  304. package/.docs/reference/client-js/error-handling.md +16 -0
  305. package/.docs/reference/client-js/logs.md +24 -0
  306. package/.docs/reference/client-js/mastra-client.md +63 -0
  307. package/.docs/reference/client-js/memory.md +221 -0
  308. package/.docs/reference/client-js/observability.md +72 -0
  309. package/.docs/reference/client-js/telemetry.md +20 -0
  310. package/.docs/reference/client-js/tools.md +44 -0
  311. package/.docs/reference/client-js/vectors.md +79 -0
  312. package/.docs/reference/client-js/workflows.md +199 -0
  313. package/.docs/reference/configuration.md +752 -0
  314. package/.docs/reference/core/addGateway.md +42 -0
  315. package/.docs/reference/core/getAgent.md +21 -0
  316. package/.docs/reference/core/getAgentById.md +21 -0
  317. package/.docs/reference/core/getDeployer.md +22 -0
  318. package/.docs/reference/core/getGateway.md +38 -0
  319. package/.docs/reference/core/getGatewayById.md +41 -0
  320. package/.docs/reference/core/getLogger.md +22 -0
  321. package/.docs/reference/core/getMCPServer.md +47 -0
  322. package/.docs/reference/core/getMCPServerById.md +55 -0
  323. package/.docs/reference/core/getMemory.md +50 -0
  324. package/.docs/reference/core/getScorer.md +54 -0
  325. package/.docs/reference/core/getScorerById.md +54 -0
  326. package/.docs/reference/core/getServer.md +22 -0
  327. package/.docs/reference/core/getStorage.md +22 -0
  328. package/.docs/reference/core/getStoredAgentById.md +89 -0
  329. package/.docs/reference/core/getTelemetry.md +22 -0
  330. package/.docs/reference/core/getVector.md +22 -0
  331. package/.docs/reference/core/getWorkflow.md +42 -0
  332. package/.docs/reference/core/listAgents.md +21 -0
  333. package/.docs/reference/core/listGateways.md +40 -0
  334. package/.docs/reference/core/listLogs.md +38 -0
  335. package/.docs/reference/core/listLogsByRunId.md +36 -0
  336. package/.docs/reference/core/listMCPServers.md +55 -0
  337. package/.docs/reference/core/listMemory.md +56 -0
  338. package/.docs/reference/core/listScorers.md +29 -0
  339. package/.docs/reference/core/listStoredAgents.md +93 -0
  340. package/.docs/reference/core/listVectors.md +22 -0
  341. package/.docs/reference/core/listWorkflows.md +21 -0
  342. package/.docs/reference/core/mastra-class.md +66 -0
  343. package/.docs/reference/core/mastra-model-gateway.md +153 -0
  344. package/.docs/reference/core/setLogger.md +26 -0
  345. package/.docs/reference/core/setStorage.md +27 -0
  346. package/.docs/reference/datasets/addItem.md +37 -0
  347. package/.docs/reference/datasets/addItems.md +35 -0
  348. package/.docs/reference/datasets/compareExperiments.md +52 -0
  349. package/.docs/reference/datasets/create.md +51 -0
  350. package/.docs/reference/datasets/dataset.md +82 -0
  351. package/.docs/reference/datasets/datasets-manager.md +94 -0
  352. package/.docs/reference/datasets/delete.md +25 -0
  353. package/.docs/reference/datasets/deleteExperiment.md +27 -0
  354. package/.docs/reference/datasets/deleteItem.md +27 -0
  355. package/.docs/reference/datasets/deleteItems.md +29 -0
  356. package/.docs/reference/datasets/get.md +31 -0
  357. package/.docs/reference/datasets/getDetails.md +47 -0
  358. package/.docs/reference/datasets/getExperiment.md +30 -0
  359. package/.docs/reference/datasets/getItem.md +33 -0
  360. package/.docs/reference/datasets/getItemHistory.md +31 -0
  361. package/.docs/reference/datasets/list.md +31 -0
  362. package/.docs/reference/datasets/listExperimentResults.md +39 -0
  363. package/.docs/reference/datasets/listExperiments.md +33 -0
  364. package/.docs/reference/datasets/listItems.md +46 -0
  365. package/.docs/reference/datasets/listVersions.md +33 -0
  366. package/.docs/reference/datasets/startExperiment.md +62 -0
  367. package/.docs/reference/datasets/startExperimentAsync.md +43 -0
  368. package/.docs/reference/datasets/update.md +48 -0
  369. package/.docs/reference/datasets/updateItem.md +38 -0
  370. package/.docs/reference/deployer/cloudflare.md +79 -0
  371. package/.docs/reference/deployer/netlify.md +80 -0
  372. package/.docs/reference/deployer/vercel.md +91 -0
  373. package/.docs/reference/deployer.md +100 -0
  374. package/.docs/reference/evals/answer-relevancy.md +105 -0
  375. package/.docs/reference/evals/answer-similarity.md +99 -0
  376. package/.docs/reference/evals/bias.md +120 -0
  377. package/.docs/reference/evals/completeness.md +136 -0
  378. package/.docs/reference/evals/content-similarity.md +101 -0
  379. package/.docs/reference/evals/context-precision.md +196 -0
  380. package/.docs/reference/evals/context-relevance.md +531 -0
  381. package/.docs/reference/evals/create-scorer.md +270 -0
  382. package/.docs/reference/evals/faithfulness.md +114 -0
  383. package/.docs/reference/evals/hallucination.md +213 -0
  384. package/.docs/reference/evals/keyword-coverage.md +128 -0
  385. package/.docs/reference/evals/mastra-scorer.md +123 -0
  386. package/.docs/reference/evals/noise-sensitivity.md +675 -0
  387. package/.docs/reference/evals/prompt-alignment.md +614 -0
  388. package/.docs/reference/evals/run-evals.md +179 -0
  389. package/.docs/reference/evals/scorer-utils.md +326 -0
  390. package/.docs/reference/evals/textual-difference.md +113 -0
  391. package/.docs/reference/evals/tone-consistency.md +119 -0
  392. package/.docs/reference/evals/tool-call-accuracy.md +533 -0
  393. package/.docs/reference/evals/toxicity.md +123 -0
  394. package/.docs/reference/harness/harness-class.md +708 -0
  395. package/.docs/reference/index.md +277 -0
  396. package/.docs/reference/logging/pino-logger.md +117 -0
  397. package/.docs/reference/mastra-code/createMastraCode.md +108 -0
  398. package/.docs/reference/memory/clone-utilities.md +199 -0
  399. package/.docs/reference/memory/cloneThread.md +130 -0
  400. package/.docs/reference/memory/createThread.md +68 -0
  401. package/.docs/reference/memory/deleteMessages.md +38 -0
  402. package/.docs/reference/memory/getThreadById.md +24 -0
  403. package/.docs/reference/memory/listThreads.md +145 -0
  404. package/.docs/reference/memory/memory-class.md +147 -0
  405. package/.docs/reference/memory/observational-memory.md +565 -0
  406. package/.docs/reference/memory/recall.md +91 -0
  407. package/.docs/reference/observability/tracing/bridges/otel.md +131 -0
  408. package/.docs/reference/observability/tracing/configuration.md +178 -0
  409. package/.docs/reference/observability/tracing/exporters/arize.md +141 -0
  410. package/.docs/reference/observability/tracing/exporters/braintrust.md +93 -0
  411. package/.docs/reference/observability/tracing/exporters/cloud-exporter.md +163 -0
  412. package/.docs/reference/observability/tracing/exporters/console-exporter.md +138 -0
  413. package/.docs/reference/observability/tracing/exporters/datadog.md +116 -0
  414. package/.docs/reference/observability/tracing/exporters/default-exporter.md +174 -0
  415. package/.docs/reference/observability/tracing/exporters/laminar.md +78 -0
  416. package/.docs/reference/observability/tracing/exporters/langfuse.md +134 -0
  417. package/.docs/reference/observability/tracing/exporters/langsmith.md +108 -0
  418. package/.docs/reference/observability/tracing/exporters/otel.md +199 -0
  419. package/.docs/reference/observability/tracing/exporters/posthog.md +92 -0
  420. package/.docs/reference/observability/tracing/exporters/sentry.md +184 -0
  421. package/.docs/reference/observability/tracing/instances.md +107 -0
  422. package/.docs/reference/observability/tracing/interfaces.md +743 -0
  423. package/.docs/reference/observability/tracing/processors/sensitive-data-filter.md +144 -0
  424. package/.docs/reference/observability/tracing/spans.md +224 -0
  425. package/.docs/reference/processors/batch-parts-processor.md +61 -0
  426. package/.docs/reference/processors/language-detector.md +82 -0
  427. package/.docs/reference/processors/message-history-processor.md +85 -0
  428. package/.docs/reference/processors/moderation-processor.md +104 -0
  429. package/.docs/reference/processors/pii-detector.md +108 -0
  430. package/.docs/reference/processors/processor-interface.md +521 -0
  431. package/.docs/reference/processors/prompt-injection-detector.md +72 -0
  432. package/.docs/reference/processors/semantic-recall-processor.md +117 -0
  433. package/.docs/reference/processors/system-prompt-scrubber.md +80 -0
  434. package/.docs/reference/processors/token-limiter-processor.md +115 -0
  435. package/.docs/reference/processors/tool-call-filter.md +85 -0
  436. package/.docs/reference/processors/tool-search-processor.md +111 -0
  437. package/.docs/reference/processors/unicode-normalizer.md +62 -0
  438. package/.docs/reference/processors/working-memory-processor.md +152 -0
  439. package/.docs/reference/rag/chunk.md +221 -0
  440. package/.docs/reference/rag/database-config.md +261 -0
  441. package/.docs/reference/rag/document.md +114 -0
  442. package/.docs/reference/rag/embeddings.md +92 -0
  443. package/.docs/reference/rag/extract-params.md +168 -0
  444. package/.docs/reference/rag/graph-rag.md +111 -0
  445. package/.docs/reference/rag/metadata-filters.md +216 -0
  446. package/.docs/reference/rag/rerank.md +75 -0
  447. package/.docs/reference/rag/rerankWithScorer.md +80 -0
  448. package/.docs/reference/server/create-route.md +262 -0
  449. package/.docs/reference/server/express-adapter.md +176 -0
  450. package/.docs/reference/server/fastify-adapter.md +90 -0
  451. package/.docs/reference/server/hono-adapter.md +162 -0
  452. package/.docs/reference/server/koa-adapter.md +127 -0
  453. package/.docs/reference/server/mastra-server.md +298 -0
  454. package/.docs/reference/server/register-api-route.md +249 -0
  455. package/.docs/reference/server/routes.md +306 -0
  456. package/.docs/reference/storage/cloudflare-d1.md +218 -0
  457. package/.docs/reference/storage/cloudflare.md +88 -0
  458. package/.docs/reference/storage/composite.md +235 -0
  459. package/.docs/reference/storage/convex.md +161 -0
  460. package/.docs/reference/storage/dynamodb.md +282 -0
  461. package/.docs/reference/storage/lance.md +131 -0
  462. package/.docs/reference/storage/libsql.md +135 -0
  463. package/.docs/reference/storage/mongodb.md +262 -0
  464. package/.docs/reference/storage/mssql.md +157 -0
  465. package/.docs/reference/storage/overview.md +121 -0
  466. package/.docs/reference/storage/postgresql.md +526 -0
  467. package/.docs/reference/storage/upstash.md +160 -0
  468. package/.docs/reference/streaming/ChunkType.md +292 -0
  469. package/.docs/reference/streaming/agents/MastraModelOutput.md +182 -0
  470. package/.docs/reference/streaming/agents/stream.md +221 -0
  471. package/.docs/reference/streaming/agents/streamLegacy.md +142 -0
  472. package/.docs/reference/streaming/workflows/observeStream.md +42 -0
  473. package/.docs/reference/streaming/workflows/resumeStream.md +61 -0
  474. package/.docs/reference/streaming/workflows/stream.md +88 -0
  475. package/.docs/reference/streaming/workflows/timeTravelStream.md +142 -0
  476. package/.docs/reference/templates/overview.md +194 -0
  477. package/.docs/reference/tools/create-tool.md +237 -0
  478. package/.docs/reference/tools/document-chunker-tool.md +89 -0
  479. package/.docs/reference/tools/graph-rag-tool.md +182 -0
  480. package/.docs/reference/tools/mcp-client.md +954 -0
  481. package/.docs/reference/tools/mcp-server.md +1271 -0
  482. package/.docs/reference/tools/vector-query-tool.md +459 -0
  483. package/.docs/reference/vectors/astra.md +121 -0
  484. package/.docs/reference/vectors/chroma.md +264 -0
  485. package/.docs/reference/vectors/convex.md +300 -0
  486. package/.docs/reference/vectors/couchbase.md +226 -0
  487. package/.docs/reference/vectors/duckdb.md +318 -0
  488. package/.docs/reference/vectors/elasticsearch.md +189 -0
  489. package/.docs/reference/vectors/lance.md +220 -0
  490. package/.docs/reference/vectors/libsql.md +305 -0
  491. package/.docs/reference/vectors/mongodb.md +295 -0
  492. package/.docs/reference/vectors/opensearch.md +99 -0
  493. package/.docs/reference/vectors/pg.md +408 -0
  494. package/.docs/reference/vectors/pinecone.md +168 -0
  495. package/.docs/reference/vectors/qdrant.md +222 -0
  496. package/.docs/reference/vectors/s3vectors.md +277 -0
  497. package/.docs/reference/vectors/turbopuffer.md +157 -0
  498. package/.docs/reference/vectors/upstash.md +294 -0
  499. package/.docs/reference/vectors/vectorize.md +147 -0
  500. package/.docs/reference/voice/azure.md +148 -0
  501. package/.docs/reference/voice/cloudflare.md +83 -0
  502. package/.docs/reference/voice/composite-voice.md +121 -0
  503. package/.docs/reference/voice/deepgram.md +79 -0
  504. package/.docs/reference/voice/elevenlabs.md +98 -0
  505. package/.docs/reference/voice/google-gemini-live.md +378 -0
  506. package/.docs/reference/voice/google.md +228 -0
  507. package/.docs/reference/voice/mastra-voice.md +311 -0
  508. package/.docs/reference/voice/murf.md +122 -0
  509. package/.docs/reference/voice/openai-realtime.md +203 -0
  510. package/.docs/reference/voice/openai.md +88 -0
  511. package/.docs/reference/voice/playai.md +80 -0
  512. package/.docs/reference/voice/sarvam.md +126 -0
  513. package/.docs/reference/voice/speechify.md +75 -0
  514. package/.docs/reference/voice/voice.addInstructions.md +55 -0
  515. package/.docs/reference/voice/voice.addTools.md +67 -0
  516. package/.docs/reference/voice/voice.answer.md +54 -0
  517. package/.docs/reference/voice/voice.close.md +51 -0
  518. package/.docs/reference/voice/voice.connect.md +94 -0
  519. package/.docs/reference/voice/voice.events.md +37 -0
  520. package/.docs/reference/voice/voice.getSpeakers.md +129 -0
  521. package/.docs/reference/voice/voice.listen.md +164 -0
  522. package/.docs/reference/voice/voice.off.md +54 -0
  523. package/.docs/reference/voice/voice.on.md +111 -0
  524. package/.docs/reference/voice/voice.send.md +65 -0
  525. package/.docs/reference/voice/voice.speak.md +157 -0
  526. package/.docs/reference/voice/voice.updateConfig.md +60 -0
  527. package/.docs/reference/workflows/run-methods/cancel.md +86 -0
  528. package/.docs/reference/workflows/run-methods/restart.md +33 -0
  529. package/.docs/reference/workflows/run-methods/resume.md +59 -0
  530. package/.docs/reference/workflows/run-methods/start.md +58 -0
  531. package/.docs/reference/workflows/run-methods/startAsync.md +67 -0
  532. package/.docs/reference/workflows/run-methods/timeTravel.md +142 -0
  533. package/.docs/reference/workflows/run.md +59 -0
  534. package/.docs/reference/workflows/step.md +119 -0
  535. package/.docs/reference/workflows/workflow-methods/branch.md +25 -0
  536. package/.docs/reference/workflows/workflow-methods/commit.md +17 -0
  537. package/.docs/reference/workflows/workflow-methods/create-run.md +63 -0
  538. package/.docs/reference/workflows/workflow-methods/dountil.md +25 -0
  539. package/.docs/reference/workflows/workflow-methods/dowhile.md +25 -0
  540. package/.docs/reference/workflows/workflow-methods/foreach.md +118 -0
  541. package/.docs/reference/workflows/workflow-methods/map.md +93 -0
  542. package/.docs/reference/workflows/workflow-methods/parallel.md +21 -0
  543. package/.docs/reference/workflows/workflow-methods/sleep.md +35 -0
  544. package/.docs/reference/workflows/workflow-methods/sleepUntil.md +35 -0
  545. package/.docs/reference/workflows/workflow-methods/then.md +21 -0
  546. package/.docs/reference/workflows/workflow.md +157 -0
  547. package/.docs/reference/workspace/e2b-sandbox.md +289 -0
  548. package/.docs/reference/workspace/filesystem.md +255 -0
  549. package/.docs/reference/workspace/gcs-filesystem.md +174 -0
  550. package/.docs/reference/workspace/local-filesystem.md +343 -0
  551. package/.docs/reference/workspace/local-sandbox.md +301 -0
  552. package/.docs/reference/workspace/s3-filesystem.md +175 -0
  553. package/.docs/reference/workspace/sandbox.md +87 -0
  554. package/.docs/reference/workspace/workspace-class.md +244 -0
  555. package/CHANGELOG.md +16 -0
  556. package/package.json +6 -6
@@ -0,0 +1,100 @@
1
+ # Deployer
2
+
3
+ The Deployer handles the deployment of standalone Mastra applications by packaging code, managing environment files, and serving applications using the Hono framework. Concrete implementations must define the deploy method for specific deployment targets.
4
+
5
+ ## Usage Example
6
+
7
+ If you want to create a custom deployer, you can extend the abstract `Deployer` class and implement the `deploy` method with your specific deployment logic. Here's an example:
8
+
9
+ ```typescript
10
+ import { Deployer } from '@mastra/deployer'
11
+
12
+ class CustomDeployer extends Deployer {
13
+ constructor() {
14
+ super({ name: 'custom-deployer' })
15
+ }
16
+
17
+ async deploy(outputDirectory: string): Promise<void> {
18
+ // Prepare the output directory
19
+ await this.prepare(outputDirectory)
20
+
21
+ // Bundle the application
22
+ await this._bundle('server.ts', 'mastra.ts', outputDirectory)
23
+
24
+ // Custom deployment logic
25
+ }
26
+ }
27
+ ```
28
+
29
+ ## Parameters
30
+
31
+ ### Constructor Parameters
32
+
33
+ **args:** (`object`): Configuration options for the Deployer.
34
+
35
+ **args.name:** (`string`): A unique name for the deployer instance.
36
+
37
+ ### deploy Parameters
38
+
39
+ **outputDirectory:** (`string`): The directory where the bundled and deployment-ready application will be output.
40
+
41
+ ## Methods
42
+
43
+ **getEnvFiles:** (`() => Promise<string[]>`): Returns a list of environment files to be used during deployment. By default, it looks for '.env.production' and '.env' files.
44
+
45
+ **deploy:** (`(outputDirectory: string) => Promise<void>`): Abstract method that must be implemented by subclasses. Handles the deployment process to the specified output directory.
46
+
47
+ ## Inherited Methods from Bundler
48
+
49
+ The Deployer class inherits the following key methods from the Bundler class:
50
+
51
+ **prepare:** (`(outputDirectory: string) => Promise<void>`): Prepares the output directory by cleaning it and creating necessary subdirectories.
52
+
53
+ **writePackageJson:** (`(outputDirectory: string, dependencies: Map<string, string>) => Promise<void>`): Generates a package.json file in the output directory with the specified dependencies.
54
+
55
+ **\_bundle:** (`(serverFile: string, mastraEntryFile: string, outputDirectory: string, bundleLocation?: string) => Promise<void>`): Bundles the application using the specified server and Mastra entry files.
56
+
57
+ ## Core Concepts
58
+
59
+ ### Deployment Lifecycle
60
+
61
+ The Deployer abstract class implements a structured deployment lifecycle:
62
+
63
+ 1. **Initialization**: The deployer is initialized with a name and creates a Deps instance for dependency management.
64
+ 2. **Environment Setup**: The `getEnvFiles` method identifies environment files (.env.production, .env) to be used during deployment.
65
+ 3. **Preparation**: The `prepare` method (inherited from Bundler) cleans the output directory and creates necessary subdirectories.
66
+ 4. **Bundling**: The `_bundle` method (inherited from Bundler) packages the application code and its dependencies.
67
+ 5. **Deployment**: The abstract `deploy` method is implemented by subclasses to handle the actual deployment process.
68
+
69
+ ### Environment File Management
70
+
71
+ The Deployer class includes built-in support for environment file management through the `getEnvFiles` method. This method:
72
+
73
+ - Looks for environment files in a predefined order (.env.production, .env)
74
+ - Uses the FileService to find the first existing file
75
+ - Returns an array of found environment files
76
+ - Returns an empty array if no environment files are found
77
+
78
+ ```typescript
79
+ getEnvFiles(): Promise<string[]> {
80
+ const possibleFiles = ['.env.production', '.env.local', '.env'];
81
+
82
+ try {
83
+ const fileService = new FileService();
84
+ const envFile = fileService.getFirstExistingFile(possibleFiles);
85
+
86
+ return Promise.resolve([envFile]);
87
+ } catch {}
88
+
89
+ return Promise.resolve([]);
90
+ }
91
+ ```
92
+
93
+ ### Bundling and Deployment Relationship
94
+
95
+ The Deployer class extends the Bundler class, establishing a clear relationship between bundling and deployment:
96
+
97
+ 1. **Bundling as a Prerequisite**: Bundling is a prerequisite step for deployment, where the application code is packaged into a deployable format.
98
+ 2. **Shared Infrastructure**: Both bundling and deployment share common infrastructure like dependency management and file system operations.
99
+ 3. **Specialized Deployment Logic**: While bundling focuses on code packaging, deployment adds environment-specific logic for deploying the bundled code.
100
+ 4. **Extensibility**: The abstract `deploy` method allows for creating specialized deployers for different target environments.
@@ -0,0 +1,105 @@
1
+ # Answer Relevancy Scorer
2
+
3
+ The `createAnswerRelevancyScorer()` function accepts a single options object with the following properties:
4
+
5
+ ## Parameters
6
+
7
+ **model:** (`LanguageModel`): Configuration for the model used to evaluate relevancy.
8
+
9
+ **uncertaintyWeight:** (`number`): Weight given to 'unsure' verdicts in scoring (0-1). (Default: `0.3`)
10
+
11
+ **scale:** (`number`): Maximum score value. (Default: `1`)
12
+
13
+ This function returns an instance of the MastraScorer class. The `.run()` method accepts the same input as other scorers (see the [MastraScorer reference](https://mastra.ai/reference/evals/mastra-scorer)), but the return value includes LLM-specific fields as documented below.
14
+
15
+ ## .run() Returns
16
+
17
+ **runId:** (`string`): The id of the run (optional).
18
+
19
+ **score:** (`number`): Relevancy score (0 to scale, default 0-1)
20
+
21
+ **preprocessPrompt:** (`string`): The prompt sent to the LLM for the preprocess step (optional).
22
+
23
+ **preprocessStepResult:** (`object`): Object with extracted statements: { statements: string\[] }
24
+
25
+ **analyzePrompt:** (`string`): The prompt sent to the LLM for the analyze step (optional).
26
+
27
+ **analyzeStepResult:** (`object`): Object with results: { results: Array<{ result: 'yes' | 'unsure' | 'no', reason: string }> }
28
+
29
+ **generateReasonPrompt:** (`string`): The prompt sent to the LLM for the reason step (optional).
30
+
31
+ **reason:** (`string`): Explanation of the score.
32
+
33
+ ## Scoring Details
34
+
35
+ The scorer evaluates relevancy through query-answer alignment, considering completeness and detail level, but not factual correctness.
36
+
37
+ ### Scoring Process
38
+
39
+ 1. **Statement Preprocess:**
40
+ - Breaks output into meaningful statements while preserving context.
41
+
42
+ 2. **Relevance Analysis:**
43
+
44
+ - Each statement is evaluated as:
45
+
46
+ - "yes": Full weight for direct matches
47
+ - "unsure": Partial weight (default: 0.3) for approximate matches
48
+ - "no": Zero weight for irrelevant content
49
+
50
+ 3. **Score Calculation:**
51
+ - `((direct + uncertainty * partial) / total_statements) * scale`
52
+
53
+ ### Score Interpretation
54
+
55
+ A relevancy score between 0 and 1:
56
+
57
+ - **1.0**: The response fully answers the query with relevant and focused information.
58
+ - **0.7–0.9**: The response mostly answers the query but may include minor unrelated content.
59
+ - **0.4–0.6**: The response partially answers the query, mixing relevant and unrelated information.
60
+ - **0.1–0.3**: The response includes minimal relevant content and largely misses the intent of the query.
61
+ - **0.0**: The response is entirely unrelated and does not answer the query.
62
+
63
+ ## Example
64
+
65
+ Evaluate agent responses for relevancy across different scenarios:
66
+
67
+ ```typescript
68
+ import { runEvals } from '@mastra/core/evals'
69
+ import { createAnswerRelevancyScorer } from '@mastra/evals/scorers/prebuilt'
70
+ import { myAgent } from './agent'
71
+
72
+ const scorer = createAnswerRelevancyScorer({ model: 'openai/gpt-4o' })
73
+
74
+ const result = await runEvals({
75
+ data: [
76
+ {
77
+ input: 'What are the health benefits of regular exercise?',
78
+ },
79
+ {
80
+ input: 'What should a healthy breakfast include?',
81
+ },
82
+ {
83
+ input: 'What are the benefits of meditation?',
84
+ },
85
+ ],
86
+ scorers: [scorer],
87
+ target: myAgent,
88
+ onItemComplete: ({ scorerResults }) => {
89
+ console.log({
90
+ score: scorerResults[scorer.id].score,
91
+ reason: scorerResults[scorer.id].reason,
92
+ })
93
+ },
94
+ })
95
+
96
+ console.log(result.scores)
97
+ ```
98
+
99
+ For more details on `runEvals`, see the [runEvals reference](https://mastra.ai/reference/evals/run-evals).
100
+
101
+ To add this scorer to an agent, see the [Scorers overview](https://mastra.ai/docs/evals/overview) guide.
102
+
103
+ ## Related
104
+
105
+ - [Faithfulness Scorer](https://mastra.ai/reference/evals/faithfulness)
@@ -0,0 +1,99 @@
1
+ # Answer Similarity Scorer
2
+
3
+ The `createAnswerSimilarityScorer()` function creates a scorer that evaluates how similar an agent's output is to a ground truth answer. This scorer is specifically designed for CI/CD testing scenarios where you have expected answers and want to ensure consistency over time.
4
+
5
+ ## Parameters
6
+
7
+ **model:** (`LanguageModel`): The language model used to evaluate semantic similarity between outputs and ground truth.
8
+
9
+ **options:** (`AnswerSimilarityOptions`): Configuration options for the scorer.
10
+
11
+ ### AnswerSimilarityOptions
12
+
13
+ **requireGroundTruth:** (`boolean`): Whether to require ground truth for evaluation. If false, missing ground truth returns score 0. (Default: `true`)
14
+
15
+ **semanticThreshold:** (`number`): Weight for semantic matches vs exact matches (0-1). (Default: `0.8`)
16
+
17
+ **exactMatchBonus:** (`number`): Additional score bonus for exact matches (0-1). (Default: `0.2`)
18
+
19
+ **missingPenalty:** (`number`): Penalty per missing key concept from ground truth. (Default: `0.15`)
20
+
21
+ **contradictionPenalty:** (`number`): Penalty for contradictory information. High value ensures wrong answers score near 0. (Default: `1.0`)
22
+
23
+ **extraInfoPenalty:** (`number`): Mild penalty for extra information not present in ground truth (capped at 0.2). (Default: `0.05`)
24
+
25
+ **scale:** (`number`): Score scaling factor. (Default: `1`)
26
+
27
+ This function returns an instance of the MastraScorer class. The `.run()` method accepts the same input as other scorers (see the [MastraScorer reference](https://mastra.ai/reference/evals/mastra-scorer)), but **requires ground truth** to be provided in the run object.
28
+
29
+ ## .run() Returns
30
+
31
+ **runId:** (`string`): The id of the run (optional).
32
+
33
+ **score:** (`number`): Similarity score between 0-1 (or 0-scale if custom scale used). Higher scores indicate better similarity to ground truth.
34
+
35
+ **reason:** (`string`): Human-readable explanation of the score with actionable feedback.
36
+
37
+ **preprocessStepResult:** (`object`): Extracted semantic units from output and ground truth.
38
+
39
+ **analyzeStepResult:** (`object`): Detailed analysis of matches, contradictions, and extra information.
40
+
41
+ **preprocessPrompt:** (`string`): The prompt used for semantic unit extraction.
42
+
43
+ **analyzePrompt:** (`string`): The prompt used for similarity analysis.
44
+
45
+ **generateReasonPrompt:** (`string`): The prompt used for generating the explanation.
46
+
47
+ ## Scoring Details
48
+
49
+ The scorer uses a multi-step process:
50
+
51
+ 1. **Extract**: Breaks down output and ground truth into semantic units
52
+ 2. **Analyze**: Compares units and identifies matches, contradictions, and gaps
53
+ 3. **Score**: Calculates weighted similarity with penalties for contradictions
54
+ 4. **Reason**: Generates human-readable explanation
55
+
56
+ Score calculation: `max(0, base_score - contradiction_penalty - missing_penalty - extra_info_penalty) × scale`
57
+
58
+ ## Example
59
+
60
+ Evaluate agent responses for similarity to ground truth across different scenarios:
61
+
62
+ ```typescript
63
+ import { runEvals } from '@mastra/core/evals'
64
+ import { createAnswerSimilarityScorer } from '@mastra/evals/scorers/prebuilt'
65
+ import { myAgent } from './agent'
66
+
67
+ const scorer = createAnswerSimilarityScorer({ model: 'openai/gpt-4o' })
68
+
69
+ const result = await runEvals({
70
+ data: [
71
+ {
72
+ input: 'What is 2+2?',
73
+ groundTruth: '4',
74
+ },
75
+ {
76
+ input: 'What is the capital of France?',
77
+ groundTruth: 'The capital of France is Paris',
78
+ },
79
+ {
80
+ input: 'What are the primary colors?',
81
+ groundTruth: 'The primary colors are red, blue, and yellow',
82
+ },
83
+ ],
84
+ scorers: [scorer],
85
+ target: myAgent,
86
+ onItemComplete: ({ scorerResults }) => {
87
+ console.log({
88
+ score: scorerResults[scorer.id].score,
89
+ reason: scorerResults[scorer.id].reason,
90
+ })
91
+ },
92
+ })
93
+
94
+ console.log(result.scores)
95
+ ```
96
+
97
+ For more details on `runEvals`, see the [runEvals reference](https://mastra.ai/reference/evals/run-evals).
98
+
99
+ To add this scorer to an agent, see the [Scorers overview](https://mastra.ai/docs/evals/overview) guide.
@@ -0,0 +1,120 @@
1
+ # Bias Scorer
2
+
3
+ The `createBiasScorer()` function accepts a single options object with the following properties:
4
+
5
+ ## Parameters
6
+
7
+ **model:** (`LanguageModel`): Configuration for the model used to evaluate bias.
8
+
9
+ **scale:** (`number`): Maximum score value. (Default: `1`)
10
+
11
+ This function returns an instance of the MastraScorer class. The `.run()` method accepts the same input as other scorers (see the [MastraScorer reference](https://mastra.ai/reference/evals/mastra-scorer)), but the return value includes LLM-specific fields as documented below.
12
+
13
+ ## .run() Returns
14
+
15
+ **runId:** (`string`): The id of the run (optional).
16
+
17
+ **preprocessStepResult:** (`object`): Object with extracted opinions: { opinions: string\[] }
18
+
19
+ **preprocessPrompt:** (`string`): The prompt sent to the LLM for the preprocess step (optional).
20
+
21
+ **analyzeStepResult:** (`object`): Object with results: { results: Array<{ result: 'yes' | 'no', reason: string }> }
22
+
23
+ **analyzePrompt:** (`string`): The prompt sent to the LLM for the analyze step (optional).
24
+
25
+ **score:** (`number`): Bias score (0 to scale, default 0-1). Higher scores indicate more bias.
26
+
27
+ **reason:** (`string`): Explanation of the score.
28
+
29
+ **generateReasonPrompt:** (`string`): The prompt sent to the LLM for the generateReason step (optional).
30
+
31
+ ## Bias Categories
32
+
33
+ The scorer evaluates several types of bias:
34
+
35
+ 1. **Gender Bias**: Discrimination or stereotypes based on gender
36
+ 2. **Political Bias**: Prejudice against political ideologies or beliefs
37
+ 3. **Racial/Ethnic Bias**: Discrimination based on race, ethnicity, or national origin
38
+ 4. **Geographical Bias**: Prejudice based on location or regional stereotypes
39
+
40
+ ## Scoring Details
41
+
42
+ The scorer evaluates bias through opinion analysis based on:
43
+
44
+ - Opinion identification and extraction
45
+ - Presence of discriminatory language
46
+ - Use of stereotypes or generalizations
47
+ - Balance in perspective presentation
48
+ - Loaded or prejudicial terminology
49
+
50
+ ### Scoring Process
51
+
52
+ 1. Extracts opinions from text:
53
+
54
+ - Identifies subjective statements
55
+ - Excludes factual claims
56
+ - Includes cited opinions
57
+
58
+ 2. Evaluates each opinion:
59
+
60
+ - Checks for discriminatory language
61
+ - Assesses stereotypes and generalizations
62
+ - Analyzes perspective balance
63
+
64
+ Final score: `(biased_opinions / total_opinions) * scale`
65
+
66
+ ### Score interpretation
67
+
68
+ A bias score between 0 and 1:
69
+
70
+ - **1.0**: Contains explicit discriminatory or stereotypical statements.
71
+ - **0.7–0.9**: Includes strong prejudiced assumptions or generalizations.
72
+ - **0.4–0.6**: Mixes reasonable points with subtle bias or stereotypes.
73
+ - **0.1–0.3**: Mostly neutral with minor biased language or assumptions.
74
+ - **0.0**: Completely objective and free from bias.
75
+
76
+ ## Example
77
+
78
+ Evaluate agent responses for bias across different types of questions:
79
+
80
+ ```typescript
81
+ import { runEvals } from '@mastra/core/evals'
82
+ import { createBiasScorer } from '@mastra/evals/scorers/prebuilt'
83
+ import { myAgent } from './agent'
84
+
85
+ const scorer = createBiasScorer({ model: 'openai/gpt-4o' })
86
+
87
+ const result = await runEvals({
88
+ data: [
89
+ {
90
+ input: 'What makes someone a good leader?',
91
+ },
92
+ {
93
+ input: 'How do different age groups perform at work?',
94
+ },
95
+ {
96
+ input: 'What is the best hiring practice?',
97
+ },
98
+ ],
99
+ scorers: [scorer],
100
+ target: myAgent,
101
+ onItemComplete: ({ scorerResults }) => {
102
+ console.log({
103
+ score: scorerResults[scorer.id].score,
104
+ reason: scorerResults[scorer.id].reason,
105
+ })
106
+ },
107
+ })
108
+
109
+ console.log(result.scores)
110
+ ```
111
+
112
+ For more details on `runEvals`, see the [runEvals reference](https://mastra.ai/reference/evals/run-evals).
113
+
114
+ To add this scorer to an agent, see the [Scorers overview](https://mastra.ai/docs/evals/overview) guide.
115
+
116
+ ## Related
117
+
118
+ - [Toxicity Scorer](https://mastra.ai/reference/evals/toxicity)
119
+ - [Faithfulness Scorer](https://mastra.ai/reference/evals/faithfulness)
120
+ - [Hallucination Scorer](https://mastra.ai/reference/evals/hallucination)
@@ -0,0 +1,136 @@
1
+ # Completeness Scorer
2
+
3
+ The `createCompletenessScorer()` function evaluates how thoroughly an LLM's output covers the key elements present in the input. It analyzes nouns, verbs, topics, and terms to determine coverage and provides a detailed completeness score.
4
+
5
+ ## Parameters
6
+
7
+ The `createCompletenessScorer()` function does not take any options.
8
+
9
+ This function returns an instance of the MastraScorer class. See the [MastraScorer reference](https://mastra.ai/reference/evals/mastra-scorer) for details on the `.run()` method and its input/output.
10
+
11
+ ## .run() Returns
12
+
13
+ **runId:** (`string`): The id of the run (optional).
14
+
15
+ **preprocessStepResult:** (`object`): Object with extracted elements and coverage details: { inputElements: string\[], outputElements: string\[], missingElements: string\[], elementCounts: { input: number, output: number } }
16
+
17
+ **score:** (`number`): Completeness score (0-1) representing the proportion of input elements covered in the output.
18
+
19
+ The `.run()` method returns a result in the following shape:
20
+
21
+ ```typescript
22
+ {
23
+ runId: string,
24
+ extractStepResult: {
25
+ inputElements: string[],
26
+ outputElements: string[],
27
+ missingElements: string[],
28
+ elementCounts: { input: number, output: number }
29
+ },
30
+ score: number
31
+ }
32
+ ```
33
+
34
+ ## Element Extraction Details
35
+
36
+ The scorer extracts and analyzes several types of elements:
37
+
38
+ - Nouns: Key objects, concepts, and entities
39
+ - Verbs: Actions and states (converted to infinitive form)
40
+ - Topics: Main subjects and themes
41
+ - Terms: Individual significant words
42
+
43
+ The extraction process includes:
44
+
45
+ - Normalization of text (removing diacritics, converting to lowercase)
46
+ - Splitting camelCase words
47
+ - Handling of word boundaries
48
+ - Special handling of short words (3 characters or less)
49
+ - Deduplication of elements
50
+
51
+ ### extractStepResult
52
+
53
+ From the `.run()` method, you can get the `extractStepResult` object with the following properties:
54
+
55
+ - **inputElements**: Key elements found in the input (e.g., nouns, verbs, topics, terms).
56
+ - **outputElements**: Key elements found in the output.
57
+ - **missingElements**: Input elements not found in the output.
58
+ - **elementCounts**: The number of elements in the input and output.
59
+
60
+ ## Scoring Details
61
+
62
+ The scorer evaluates completeness through linguistic element coverage analysis.
63
+
64
+ ### Scoring Process
65
+
66
+ 1. Extracts key elements:
67
+
68
+ - Nouns and named entities
69
+ - Action verbs
70
+ - Topic-specific terms
71
+ - Normalized word forms
72
+
73
+ 2. Calculates coverage of input elements:
74
+
75
+ - Exact matches for short terms (≤3 chars)
76
+ - Substantial overlap (>60%) for longer terms
77
+
78
+ Final score: `(covered_elements / total_input_elements) * scale`
79
+
80
+ ### Score interpretation
81
+
82
+ A completeness score between 0 and 1:
83
+
84
+ - **1.0**: Thoroughly addresses all aspects of the query with comprehensive detail.
85
+ - **0.7–0.9**: Covers most important aspects with good detail, minor gaps.
86
+ - **0.4–0.6**: Addresses some key points but missing important aspects or lacking detail.
87
+ - **0.1–0.3**: Only partially addresses the query with significant gaps.
88
+ - **0.0**: Fails to address the query or provides irrelevant information.
89
+
90
+ ## Example
91
+
92
+ Evaluate agent responses for completeness across different query complexities:
93
+
94
+ ```typescript
95
+ import { runEvals } from '@mastra/core/evals'
96
+ import { createCompletenessScorer } from '@mastra/evals/scorers/prebuilt'
97
+ import { myAgent } from './agent'
98
+
99
+ const scorer = createCompletenessScorer()
100
+
101
+ const result = await runEvals({
102
+ data: [
103
+ {
104
+ input:
105
+ 'Explain the process of photosynthesis, including the inputs, outputs, and stages involved.',
106
+ },
107
+ {
108
+ input: 'What are the benefits and drawbacks of remote work for both employees and employers?',
109
+ },
110
+ {
111
+ input:
112
+ 'Compare renewable and non-renewable energy sources in terms of cost, environmental impact, and sustainability.',
113
+ },
114
+ ],
115
+ scorers: [scorer],
116
+ target: myAgent,
117
+ onItemComplete: ({ scorerResults }) => {
118
+ console.log({
119
+ score: scorerResults[scorer.id].score,
120
+ })
121
+ },
122
+ })
123
+
124
+ console.log(result.scores)
125
+ ```
126
+
127
+ For more details on `runEvals`, see the [runEvals reference](https://mastra.ai/reference/evals/run-evals).
128
+
129
+ To add this scorer to an agent, see the [Scorers overview](https://mastra.ai/docs/evals/overview) guide.
130
+
131
+ ## Related
132
+
133
+ - [Answer Relevancy Scorer](https://mastra.ai/reference/evals/answer-relevancy)
134
+ - [Content Similarity Scorer](https://mastra.ai/reference/evals/content-similarity)
135
+ - [Textual Difference Scorer](https://mastra.ai/reference/evals/textual-difference)
136
+ - [Keyword Coverage Scorer](https://mastra.ai/reference/evals/keyword-coverage)
@@ -0,0 +1,101 @@
1
+ # Content Similarity Scorer
2
+
3
+ The `createContentSimilarityScorer()` function measures the textual similarity between two strings, providing a score that indicates how closely they match. It supports configurable options for case sensitivity and whitespace handling.
4
+
5
+ ## Parameters
6
+
7
+ The `createContentSimilarityScorer()` function accepts a single options object with the following properties:
8
+
9
+ **ignoreCase:** (`boolean`): Whether to ignore case differences when comparing strings. (Default: `true`)
10
+
11
+ **ignoreWhitespace:** (`boolean`): Whether to normalize whitespace when comparing strings. (Default: `true`)
12
+
13
+ This function returns an instance of the MastraScorer class. See the [MastraScorer reference](https://mastra.ai/reference/evals/mastra-scorer) for details on the `.run()` method and its input/output.
14
+
15
+ ## .run() Returns
16
+
17
+ **runId:** (`string`): The id of the run (optional).
18
+
19
+ **preprocessStepResult:** (`object`): Object with processed input and output: { processedInput: string, processedOutput: string }
20
+
21
+ **analyzeStepResult:** (`object`): Object with similarity: { similarity: number }
22
+
23
+ **score:** (`number`): Similarity score (0-1) where 1 indicates perfect similarity.
24
+
25
+ ## Scoring Details
26
+
27
+ The scorer evaluates textual similarity through character-level matching and configurable text normalization.
28
+
29
+ ### Scoring Process
30
+
31
+ 1. Normalizes text:
32
+
33
+ - Case normalization (if ignoreCase: true)
34
+ - Whitespace normalization (if ignoreWhitespace: true)
35
+
36
+ 2. Compares processed strings using string-similarity algorithm:
37
+
38
+ - Analyzes character sequences
39
+ - Aligns word boundaries
40
+ - Considers relative positions
41
+ - Accounts for length differences
42
+
43
+ Final score: `similarity_value * scale`
44
+
45
+ ## Example
46
+
47
+ Evaluate textual similarity between expected and actual agent outputs:
48
+
49
+ ```typescript
50
+ import { runEvals } from '@mastra/core/evals'
51
+ import { createContentSimilarityScorer } from '@mastra/evals/scorers/prebuilt'
52
+ import { myAgent } from './agent'
53
+
54
+ const scorer = createContentSimilarityScorer()
55
+
56
+ const result = await runEvals({
57
+ data: [
58
+ {
59
+ input: 'Summarize the benefits of TypeScript',
60
+ groundTruth:
61
+ 'TypeScript provides static typing, better tooling support, and improved code maintainability.',
62
+ },
63
+ {
64
+ input: 'What is machine learning?',
65
+ groundTruth:
66
+ 'Machine learning is a subset of AI that enables systems to learn from data without explicit programming.',
67
+ },
68
+ ],
69
+ scorers: [scorer],
70
+ target: myAgent,
71
+ onItemComplete: ({ scorerResults }) => {
72
+ console.log({
73
+ score: scorerResults[scorer.id].score,
74
+ groundTruth: scorerResults[scorer.id].groundTruth,
75
+ })
76
+ },
77
+ })
78
+
79
+ console.log(result.scores)
80
+ ```
81
+
82
+ For more details on `runEvals`, see the [runEvals reference](https://mastra.ai/reference/evals/run-evals).
83
+
84
+ To add this scorer to an agent, see the [Scorers overview](https://mastra.ai/docs/evals/overview) guide.
85
+
86
+ ### Score interpretation
87
+
88
+ A similarity score between 0 and 1:
89
+
90
+ - **1.0**: Perfect match – content is nearly identical.
91
+ - **0.7–0.9**: High similarity – minor differences in word choice or structure.
92
+ - **0.4–0.6**: Moderate similarity – general overlap with noticeable variation.
93
+ - **0.1–0.3**: Low similarity – few common elements or shared meaning.
94
+ - **0.0**: No similarity – completely different content.
95
+
96
+ ## Related
97
+
98
+ - [Completeness Scorer](https://mastra.ai/reference/evals/completeness)
99
+ - [Textual Difference Scorer](https://mastra.ai/reference/evals/textual-difference)
100
+ - [Answer Relevancy Scorer](https://mastra.ai/reference/evals/answer-relevancy)
101
+ - [Keyword Coverage Scorer](https://mastra.ai/reference/evals/keyword-coverage)