@mastra/mcp-docs-server 1.0.0-beta.1 → 1.0.0-beta.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.docs/organized/changelogs/%40internal%2Fchangeset-cli.md +1 -15
- package/.docs/organized/changelogs/%40internal%2Fexternal-types.md +1 -7
- package/.docs/organized/changelogs/%40internal%2Fstorage-test-utils.md +201 -1
- package/.docs/organized/changelogs/%40internal%2Ftypes-builder.md +1 -55
- package/.docs/organized/changelogs/%40mastra%2Fagent-builder.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fai-sdk.md +276 -76
- package/.docs/organized/changelogs/%40mastra%2Fastra.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fauth.md +6 -0
- package/.docs/organized/changelogs/%40mastra%2Fchroma.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fclickhouse.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fclient-js.md +200 -0
- package/.docs/organized/changelogs/%40mastra%2Fcloudflare-d1.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fcloudflare.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fcodemod.md +26 -0
- package/.docs/organized/changelogs/%40mastra%2Fconvex.md +89 -0
- package/.docs/organized/changelogs/%40mastra%2Fcore.md +392 -192
- package/.docs/organized/changelogs/%40mastra%2Fcouchbase.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloud.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloudflare.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-netlify.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-vercel.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fdeployer.md +200 -0
- package/.docs/organized/changelogs/%40mastra%2Fduckdb.md +42 -0
- package/.docs/organized/changelogs/%40mastra%2Fdynamodb.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Felasticsearch.md +61 -0
- package/.docs/organized/changelogs/%40mastra%2Fevals.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Flance.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Flibsql.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Floggers.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fmcp-docs-server.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fmcp-registry-registry.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fmcp.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fmemory.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fmongodb.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fmssql.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fopensearch.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fpg.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fpinecone.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fplayground-ui.md +263 -63
- package/.docs/organized/changelogs/%40mastra%2Fqdrant.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Frag.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Freact.md +154 -1
- package/.docs/organized/changelogs/%40mastra%2Fs3vectors.md +18 -0
- package/.docs/organized/changelogs/%40mastra%2Fschema-compat.md +42 -0
- package/.docs/organized/changelogs/%40mastra%2Fserver.md +274 -74
- package/.docs/organized/changelogs/%40mastra%2Fturbopuffer.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fupstash.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fvectorize.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-azure.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-cloudflare.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-deepgram.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-elevenlabs.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-gladia.md +92 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-google-gemini-live.md +67 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-google.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-murf.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-openai-realtime.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-openai.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-playai.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-sarvam.md +201 -1
- package/.docs/organized/changelogs/%40mastra%2Fvoice-speechify.md +201 -1
- package/.docs/organized/changelogs/create-mastra.md +201 -1
- package/.docs/organized/changelogs/mastra.md +201 -1
- package/.docs/organized/code-examples/agui.md +1 -0
- package/.docs/organized/code-examples/ai-elements.md +2 -2
- package/.docs/organized/code-examples/ai-sdk-useChat.md +2 -2
- package/.docs/organized/code-examples/ai-sdk-v5.md +3 -2
- package/.docs/organized/code-examples/assistant-ui.md +2 -2
- package/.docs/organized/code-examples/bird-checker-with-express.md +1 -1
- package/.docs/organized/code-examples/bird-checker-with-nextjs-and-eval.md +2 -2
- package/.docs/organized/code-examples/bird-checker-with-nextjs.md +2 -2
- package/.docs/organized/code-examples/client-side-tools.md +1 -1
- package/.docs/organized/code-examples/crypto-chatbot.md +2 -2
- package/.docs/organized/code-examples/fireworks-r1.md +1 -1
- package/.docs/organized/code-examples/heads-up-game.md +1 -1
- package/.docs/organized/code-examples/mcp-configuration.md +0 -3
- package/.docs/organized/code-examples/mcp-server-adapters.md +720 -0
- package/.docs/organized/code-examples/memory-per-resource-example.md +1 -1
- package/.docs/organized/code-examples/memory-with-processors.md +1 -1
- package/.docs/organized/code-examples/openapi-spec-writer.md +1 -1
- package/.docs/organized/code-examples/processors-with-ai-sdk.md +14 -0
- package/.docs/organized/code-examples/quick-start.md +2 -2
- package/.docs/organized/code-examples/server-app-access.md +342 -0
- package/.docs/organized/code-examples/server-express-adapter.md +87 -0
- package/.docs/organized/code-examples/server-hono-adapter.md +85 -0
- package/.docs/organized/code-examples/stock-price-tool.md +1 -21
- package/.docs/organized/code-examples/workflow-ai-recruiter.md +1 -1
- package/.docs/organized/code-examples/workflow-with-inline-steps.md +1 -1
- package/.docs/organized/code-examples/workflow-with-memory.md +1 -1
- package/.docs/organized/code-examples/workflow-with-separate-steps.md +1 -1
- package/.docs/organized/code-examples/workflow-with-suspend-resume.md +1 -1
- package/.docs/raw/agents/adding-voice.mdx +56 -10
- package/.docs/raw/agents/agent-approval.mdx +189 -0
- package/.docs/raw/agents/agent-memory.mdx +1 -1
- package/.docs/raw/agents/guardrails.mdx +70 -30
- package/.docs/raw/agents/networks.mdx +3 -3
- package/.docs/raw/agents/overview.mdx +18 -167
- package/.docs/raw/agents/processors.mdx +430 -0
- package/.docs/raw/agents/structured-output.mdx +224 -0
- package/.docs/raw/agents/using-tools.mdx +14 -14
- package/.docs/raw/auth/auth0.mdx +1 -1
- package/.docs/raw/auth/clerk.mdx +1 -1
- package/.docs/raw/auth/firebase.mdx +1 -1
- package/.docs/raw/auth/index.mdx +1 -1
- package/.docs/raw/auth/jwt.mdx +1 -1
- package/.docs/raw/auth/supabase.mdx +1 -1
- package/.docs/raw/auth/workos.mdx +1 -1
- package/.docs/raw/community/contributing-templates.mdx +1 -1
- package/.docs/raw/community/discord.mdx +2 -2
- package/.docs/raw/community/licensing.mdx +1 -1
- package/.docs/raw/course/01-first-agent/05-running-playground.md +5 -5
- package/.docs/raw/course/01-first-agent/09-testing-your-agent.md +3 -3
- package/.docs/raw/course/01-first-agent/13-testing-your-tool.md +3 -3
- package/.docs/raw/course/01-first-agent/17-testing-memory.md +2 -2
- package/.docs/raw/course/04-workflows/07-using-playground.md +1 -1
- package/.docs/raw/deployment/{server-deployment.mdx → building-mastra.mdx} +4 -4
- package/.docs/raw/deployment/cloud-providers/amazon-ec2.mdx +2 -2
- package/.docs/raw/deployment/cloud-providers/aws-lambda.mdx +3 -3
- package/.docs/raw/deployment/cloud-providers/azure-app-services.mdx +2 -2
- package/.docs/raw/deployment/{serverless-platforms → cloud-providers}/cloudflare-deployer.mdx +1 -1
- package/.docs/raw/deployment/cloud-providers/digital-ocean.mdx +2 -2
- package/.docs/raw/deployment/cloud-providers/index.mdx +26 -29
- package/.docs/raw/deployment/{serverless-platforms → cloud-providers}/netlify-deployer.mdx +45 -14
- package/.docs/raw/deployment/{serverless-platforms → cloud-providers}/vercel-deployer.mdx +1 -1
- package/.docs/raw/{mastra-cloud → deployment/mastra-cloud}/dashboard.mdx +3 -3
- package/.docs/raw/deployment/mastra-cloud/observability.mdx +53 -0
- package/.docs/raw/{mastra-cloud → deployment/mastra-cloud}/overview.mdx +3 -3
- package/.docs/raw/{mastra-cloud → deployment/mastra-cloud}/setting-up.mdx +4 -4
- package/.docs/raw/deployment/monorepo.mdx +3 -3
- package/.docs/raw/deployment/overview.mdx +7 -7
- package/.docs/raw/deployment/web-framework.mdx +6 -6
- package/.docs/raw/evals/{off-the-shelf-scorers.mdx → built-in-scorers.mdx} +17 -15
- package/.docs/raw/evals/custom-scorers.mdx +4 -6
- package/.docs/raw/evals/overview.mdx +5 -6
- package/.docs/raw/evals/running-in-ci.mdx +2 -4
- package/.docs/raw/getting-started/{installation.mdx → manual-install.mdx} +6 -80
- package/.docs/raw/getting-started/mcp-docs-server.mdx +63 -6
- package/.docs/raw/getting-started/project-structure.mdx +2 -2
- package/.docs/raw/getting-started/start.mdx +72 -0
- package/.docs/raw/getting-started/studio.mdx +32 -7
- package/.docs/raw/guides/agent-frameworks/ai-sdk.mdx +147 -0
- package/.docs/raw/guides/build-your-ui/ai-sdk-ui.mdx +627 -0
- package/.docs/raw/{frameworks/agentic-uis → guides/build-your-ui}/assistant-ui.mdx +71 -19
- package/.docs/raw/guides/build-your-ui/copilotkit.mdx +206 -0
- package/.docs/raw/{frameworks/web-frameworks → guides/getting-started}/astro.mdx +24 -26
- package/.docs/raw/{frameworks/servers → guides/getting-started}/express.mdx +4 -5
- package/.docs/raw/guides/{quickstarts/nextjs.mdx → getting-started/next-js.mdx} +26 -25
- package/.docs/raw/guides/getting-started/quickstart.mdx +97 -0
- package/.docs/raw/{frameworks/web-frameworks → guides/getting-started}/sveltekit.mdx +24 -26
- package/.docs/raw/{frameworks/web-frameworks → guides/getting-started}/vite-react.mdx +7 -7
- package/.docs/raw/guides/guide/ai-recruiter.mdx +2 -3
- package/.docs/raw/guides/guide/chef-michel.mdx +2 -3
- package/.docs/raw/guides/guide/notes-mcp-server.mdx +2 -2
- package/.docs/raw/guides/guide/research-assistant.mdx +7 -8
- package/.docs/raw/guides/guide/stock-agent.mdx +4 -6
- package/.docs/raw/guides/guide/web-search.mdx +12 -10
- package/.docs/raw/guides/guide/whatsapp-chat-bot.mdx +421 -0
- package/.docs/raw/guides/index.mdx +3 -35
- package/.docs/raw/guides/migrations/agentnetwork.mdx +4 -4
- package/.docs/raw/guides/migrations/ai-sdk-v4-to-v5.mdx +119 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/agent.mdx +121 -1
- package/.docs/raw/guides/migrations/upgrade-to-v1/client.mdx +42 -2
- package/.docs/raw/guides/migrations/upgrade-to-v1/evals.mdx +31 -1
- package/.docs/raw/guides/migrations/upgrade-to-v1/mastra.mdx +27 -3
- package/.docs/raw/guides/migrations/upgrade-to-v1/mcp.mdx +1 -1
- package/.docs/raw/guides/migrations/upgrade-to-v1/memory.mdx +28 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/overview.mdx +25 -3
- package/.docs/raw/guides/migrations/upgrade-to-v1/storage.mdx +80 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/tools.mdx +68 -3
- package/.docs/raw/guides/migrations/upgrade-to-v1/vectors.mdx +25 -1
- package/.docs/raw/guides/migrations/upgrade-to-v1/workflows.mdx +174 -1
- package/.docs/raw/guides/migrations/vnext-to-standard-apis.mdx +2 -2
- package/.docs/raw/index.mdx +3 -3
- package/.docs/raw/mcp/overview.mdx +358 -0
- package/.docs/raw/mcp/publishing-mcp-server.mdx +139 -0
- package/.docs/raw/memory/conversation-history.mdx +1 -1
- package/.docs/raw/memory/memory-processors.mdx +265 -80
- package/.docs/raw/memory/overview.mdx +2 -2
- package/.docs/raw/memory/semantic-recall.mdx +9 -9
- package/.docs/raw/memory/storage/memory-with-libsql.mdx +3 -8
- package/.docs/raw/memory/storage/memory-with-mongodb.mdx +150 -0
- package/.docs/raw/memory/storage/memory-with-pg.mdx +3 -8
- package/.docs/raw/memory/storage/memory-with-upstash.mdx +3 -8
- package/.docs/raw/memory/threads-and-resources.mdx +4 -4
- package/.docs/raw/memory/working-memory.mdx +16 -8
- package/.docs/raw/{logging.mdx → observability/logging.mdx} +7 -7
- package/.docs/raw/observability/overview.mdx +3 -4
- package/.docs/raw/observability/tracing/bridges/otel.mdx +200 -0
- package/.docs/raw/observability/tracing/exporters/arize.mdx +37 -1
- package/.docs/raw/observability/tracing/exporters/braintrust.mdx +20 -1
- package/.docs/raw/observability/tracing/exporters/cloud.mdx +2 -2
- package/.docs/raw/observability/tracing/exporters/default.mdx +1 -1
- package/.docs/raw/observability/tracing/exporters/langfuse.mdx +84 -1
- package/.docs/raw/observability/tracing/exporters/langsmith.mdx +13 -1
- package/.docs/raw/observability/tracing/exporters/otel.mdx +123 -25
- package/.docs/raw/observability/tracing/exporters/posthog.mdx +127 -0
- package/.docs/raw/observability/tracing/overview.mdx +80 -9
- package/.docs/raw/observability/tracing/processors/sensitive-data-filter.mdx +1 -2
- package/.docs/raw/rag/chunking-and-embedding.mdx +16 -17
- package/.docs/raw/rag/overview.mdx +4 -3
- package/.docs/raw/rag/retrieval.mdx +44 -39
- package/.docs/raw/rag/vector-databases.mdx +94 -3
- package/.docs/raw/reference/agents/agent.mdx +19 -16
- package/.docs/raw/reference/agents/generate.mdx +67 -99
- package/.docs/raw/reference/agents/generateLegacy.mdx +3 -3
- package/.docs/raw/reference/agents/getDefaultGenerateOptions.mdx +1 -1
- package/.docs/raw/reference/agents/getDefaultOptions.mdx +1 -1
- package/.docs/raw/reference/agents/getDefaultStreamOptions.mdx +1 -1
- package/.docs/raw/reference/agents/getDescription.mdx +1 -1
- package/.docs/raw/reference/agents/getInstructions.mdx +1 -1
- package/.docs/raw/reference/agents/getLLM.mdx +2 -2
- package/.docs/raw/reference/agents/getMemory.mdx +1 -1
- package/.docs/raw/reference/agents/getModel.mdx +1 -1
- package/.docs/raw/reference/agents/getTools.mdx +69 -0
- package/.docs/raw/reference/agents/getVoice.mdx +1 -1
- package/.docs/raw/reference/agents/listAgents.mdx +1 -1
- package/.docs/raw/reference/agents/listScorers.mdx +1 -1
- package/.docs/raw/reference/agents/listTools.mdx +2 -2
- package/.docs/raw/reference/agents/listWorkflows.mdx +1 -1
- package/.docs/raw/reference/agents/network.mdx +33 -72
- package/.docs/raw/reference/ai-sdk/chat-route.mdx +127 -0
- package/.docs/raw/reference/ai-sdk/handle-chat-stream.mdx +117 -0
- package/.docs/raw/reference/ai-sdk/handle-network-stream.mdx +64 -0
- package/.docs/raw/reference/ai-sdk/handle-workflow-stream.mdx +116 -0
- package/.docs/raw/reference/ai-sdk/network-route.mdx +99 -0
- package/.docs/raw/reference/ai-sdk/to-ai-sdk-stream.mdx +289 -0
- package/.docs/raw/reference/ai-sdk/with-mastra.mdx +119 -0
- package/.docs/raw/reference/ai-sdk/workflow-route.mdx +110 -0
- package/.docs/raw/reference/auth/auth0.mdx +1 -1
- package/.docs/raw/reference/auth/clerk.mdx +1 -1
- package/.docs/raw/reference/auth/firebase.mdx +1 -1
- package/.docs/raw/reference/auth/jwt.mdx +1 -1
- package/.docs/raw/reference/auth/supabase.mdx +1 -1
- package/.docs/raw/reference/auth/workos.mdx +1 -1
- package/.docs/raw/reference/cli/create-mastra.mdx +1 -1
- package/.docs/raw/reference/cli/mastra.mdx +19 -6
- package/.docs/raw/reference/client-js/agents.mdx +252 -68
- package/.docs/raw/reference/client-js/error-handling.mdx +1 -1
- package/.docs/raw/reference/client-js/logs.mdx +1 -1
- package/.docs/raw/reference/client-js/mastra-client.mdx +4 -4
- package/.docs/raw/reference/client-js/memory.mdx +48 -2
- package/.docs/raw/reference/client-js/observability.mdx +1 -1
- package/.docs/raw/reference/client-js/telemetry.mdx +1 -1
- package/.docs/raw/reference/client-js/tools.mdx +1 -1
- package/.docs/raw/reference/client-js/vectors.mdx +1 -1
- package/.docs/raw/reference/client-js/workflows.mdx +93 -64
- package/.docs/raw/reference/core/addGateway.mdx +59 -0
- package/.docs/raw/reference/core/getAgent.mdx +1 -1
- package/.docs/raw/reference/core/getAgentById.mdx +1 -1
- package/.docs/raw/reference/core/getDeployer.mdx +1 -1
- package/.docs/raw/reference/core/getGateway.mdx +59 -0
- package/.docs/raw/reference/core/getGatewayById.mdx +62 -0
- package/.docs/raw/reference/core/getLogger.mdx +2 -2
- package/.docs/raw/reference/core/getMCPServer.mdx +2 -2
- package/.docs/raw/reference/core/getMCPServerById.mdx +2 -2
- package/.docs/raw/reference/core/getMemory.mdx +73 -0
- package/.docs/raw/reference/core/getScorer.mdx +1 -1
- package/.docs/raw/reference/core/getScorerById.mdx +1 -1
- package/.docs/raw/reference/core/getServer.mdx +3 -3
- package/.docs/raw/reference/core/getStorage.mdx +1 -1
- package/.docs/raw/reference/core/getStoredAgentById.mdx +183 -0
- package/.docs/raw/reference/core/getTelemetry.mdx +1 -1
- package/.docs/raw/reference/core/getVector.mdx +1 -1
- package/.docs/raw/reference/core/getWorkflow.mdx +1 -1
- package/.docs/raw/reference/core/listAgents.mdx +1 -1
- package/.docs/raw/reference/core/listGateways.mdx +53 -0
- package/.docs/raw/reference/core/listLogs.mdx +2 -2
- package/.docs/raw/reference/core/listLogsByRunId.mdx +2 -2
- package/.docs/raw/reference/core/listMCPServers.mdx +2 -2
- package/.docs/raw/reference/core/listMemory.mdx +70 -0
- package/.docs/raw/reference/core/listScorers.mdx +1 -1
- package/.docs/raw/reference/core/listStoredAgents.mdx +151 -0
- package/.docs/raw/reference/core/listVectors.mdx +1 -1
- package/.docs/raw/reference/core/listWorkflows.mdx +1 -1
- package/.docs/raw/reference/core/mastra-class.mdx +17 -1
- package/.docs/raw/reference/core/mastra-model-gateway.mdx +227 -0
- package/.docs/raw/reference/core/setLogger.mdx +2 -2
- package/.docs/raw/reference/core/setStorage.mdx +1 -1
- package/.docs/raw/reference/core/setTelemetry.mdx +2 -2
- package/.docs/raw/reference/deployer/cloudflare.mdx +1 -1
- package/.docs/raw/reference/deployer/deployer.mdx +1 -1
- package/.docs/raw/reference/deployer/netlify.mdx +2 -3
- package/.docs/raw/reference/deployer/vercel.mdx +1 -1
- package/.docs/raw/reference/evals/answer-relevancy.mdx +29 -99
- package/.docs/raw/reference/evals/answer-similarity.mdx +13 -259
- package/.docs/raw/reference/evals/bias.mdx +30 -88
- package/.docs/raw/reference/evals/completeness.mdx +32 -91
- package/.docs/raw/reference/evals/content-similarity.mdx +29 -89
- package/.docs/raw/reference/evals/context-precision.mdx +29 -131
- package/.docs/raw/reference/evals/context-relevance.mdx +12 -12
- package/.docs/raw/reference/evals/create-scorer.mdx +1 -1
- package/.docs/raw/reference/evals/faithfulness.mdx +29 -102
- package/.docs/raw/reference/evals/hallucination.mdx +29 -104
- package/.docs/raw/reference/evals/keyword-coverage.mdx +29 -108
- package/.docs/raw/reference/evals/mastra-scorer.mdx +1 -1
- package/.docs/raw/reference/evals/noise-sensitivity.mdx +12 -12
- package/.docs/raw/reference/evals/prompt-alignment.mdx +16 -16
- package/.docs/raw/reference/evals/run-evals.mdx +1 -1
- package/.docs/raw/reference/evals/scorer-utils.mdx +362 -0
- package/.docs/raw/reference/evals/textual-difference.mdx +28 -101
- package/.docs/raw/reference/evals/tone-consistency.mdx +26 -99
- package/.docs/raw/reference/evals/tool-call-accuracy.mdx +8 -8
- package/.docs/raw/reference/evals/toxicity.mdx +30 -93
- package/.docs/raw/reference/index.mdx +1 -0
- package/.docs/raw/reference/logging/pino-logger.mdx +2 -2
- package/.docs/raw/reference/memory/createThread.mdx +1 -1
- package/.docs/raw/reference/memory/deleteMessages.mdx +1 -1
- package/.docs/raw/reference/memory/getThreadById.mdx +1 -1
- package/.docs/raw/reference/memory/listThreadsByResourceId.mdx +1 -1
- package/.docs/raw/reference/memory/memory-class.mdx +6 -8
- package/.docs/raw/reference/memory/query.mdx +1 -1
- package/.docs/raw/reference/memory/recall.mdx +1 -1
- package/.docs/raw/reference/observability/tracing/bridges/otel.mdx +177 -0
- package/.docs/raw/reference/observability/tracing/configuration.mdx +1 -5
- package/.docs/raw/reference/observability/tracing/exporters/arize.mdx +30 -1
- package/.docs/raw/reference/observability/tracing/exporters/braintrust.mdx +1 -1
- package/.docs/raw/reference/observability/tracing/exporters/cloud-exporter.mdx +1 -1
- package/.docs/raw/reference/observability/tracing/exporters/console-exporter.mdx +1 -1
- package/.docs/raw/reference/observability/tracing/exporters/default-exporter.mdx +1 -1
- package/.docs/raw/reference/observability/tracing/exporters/langfuse.mdx +44 -1
- package/.docs/raw/reference/observability/tracing/exporters/langsmith.mdx +18 -2
- package/.docs/raw/reference/observability/tracing/exporters/otel.mdx +34 -44
- package/.docs/raw/reference/observability/tracing/exporters/posthog.mdx +132 -0
- package/.docs/raw/reference/observability/tracing/instances.mdx +1 -5
- package/.docs/raw/reference/observability/tracing/interfaces.mdx +30 -5
- package/.docs/raw/reference/observability/tracing/processors/sensitive-data-filter.mdx +1 -1
- package/.docs/raw/reference/observability/tracing/spans.mdx +1 -5
- package/.docs/raw/reference/processors/batch-parts-processor.mdx +2 -2
- package/.docs/raw/reference/processors/language-detector.mdx +11 -4
- package/.docs/raw/reference/processors/message-history-processor.mdx +131 -0
- package/.docs/raw/reference/processors/moderation-processor.mdx +13 -6
- package/.docs/raw/reference/processors/pii-detector.mdx +13 -6
- package/.docs/raw/reference/processors/processor-interface.mdx +803 -0
- package/.docs/raw/reference/processors/prompt-injection-detector.mdx +11 -4
- package/.docs/raw/reference/processors/semantic-recall-processor.mdx +197 -0
- package/.docs/raw/reference/processors/system-prompt-scrubber.mdx +4 -5
- package/.docs/raw/reference/processors/token-limiter-processor.mdx +3 -3
- package/.docs/raw/reference/processors/tool-call-filter.mdx +125 -0
- package/.docs/raw/reference/processors/unicode-normalizer.mdx +2 -2
- package/.docs/raw/reference/processors/working-memory-processor.mdx +221 -0
- package/.docs/raw/reference/rag/chunk.mdx +1 -1
- package/.docs/raw/reference/rag/database-config.mdx +1 -1
- package/.docs/raw/reference/rag/document.mdx +1 -1
- package/.docs/raw/reference/rag/embeddings.mdx +6 -6
- package/.docs/raw/reference/rag/extract-params.mdx +1 -1
- package/.docs/raw/reference/rag/graph-rag.mdx +1 -1
- package/.docs/raw/reference/rag/metadata-filters.mdx +1 -1
- package/.docs/raw/reference/rag/rerank.mdx +2 -3
- package/.docs/raw/reference/rag/rerankWithScorer.mdx +1 -2
- package/.docs/raw/reference/server/create-route.mdx +328 -0
- package/.docs/raw/reference/server/express-adapter.mdx +260 -0
- package/.docs/raw/reference/server/hono-adapter.mdx +242 -0
- package/.docs/raw/reference/server/mastra-server.mdx +345 -0
- package/.docs/raw/reference/server/routes.mdx +250 -0
- package/.docs/raw/reference/storage/cloudflare-d1.mdx +38 -1
- package/.docs/raw/reference/storage/cloudflare.mdx +1 -1
- package/.docs/raw/reference/storage/convex.mdx +164 -0
- package/.docs/raw/reference/storage/dynamodb.mdx +1 -1
- package/.docs/raw/reference/storage/lance.mdx +34 -1
- package/.docs/raw/reference/storage/libsql.mdx +38 -1
- package/.docs/raw/reference/storage/mongodb.mdx +40 -1
- package/.docs/raw/reference/storage/mssql.mdx +38 -1
- package/.docs/raw/reference/storage/postgresql.mdx +38 -1
- package/.docs/raw/reference/storage/upstash.mdx +1 -1
- package/.docs/raw/reference/streaming/ChunkType.mdx +25 -4
- package/.docs/raw/reference/streaming/agents/MastraModelOutput.mdx +1 -1
- package/.docs/raw/reference/streaming/agents/stream.mdx +84 -124
- package/.docs/raw/reference/streaming/agents/streamLegacy.mdx +1 -1
- package/.docs/raw/reference/streaming/workflows/observeStream.mdx +8 -10
- package/.docs/raw/reference/streaming/workflows/{resumeStreamVNext.mdx → resumeStream.mdx} +51 -11
- package/.docs/raw/reference/streaming/workflows/stream.mdx +84 -25
- package/.docs/raw/reference/streaming/workflows/timeTravelStream.mdx +170 -0
- package/.docs/raw/reference/templates/overview.mdx +2 -5
- package/.docs/raw/reference/tools/client.mdx +2 -3
- package/.docs/raw/reference/tools/create-tool.mdx +135 -4
- package/.docs/raw/reference/tools/document-chunker-tool.mdx +1 -1
- package/.docs/raw/reference/tools/graph-rag-tool.mdx +7 -7
- package/.docs/raw/reference/tools/mcp-client.mdx +131 -23
- package/.docs/raw/reference/tools/mcp-server.mdx +56 -8
- package/.docs/raw/reference/tools/vector-query-tool.mdx +16 -17
- package/.docs/raw/reference/vectors/astra.mdx +1 -1
- package/.docs/raw/reference/vectors/chroma.mdx +82 -2
- package/.docs/raw/reference/vectors/convex.mdx +429 -0
- package/.docs/raw/reference/vectors/couchbase.mdx +25 -18
- package/.docs/raw/reference/vectors/duckdb.mdx +462 -0
- package/.docs/raw/reference/vectors/elasticsearch.mdx +310 -0
- package/.docs/raw/reference/vectors/lance.mdx +39 -23
- package/.docs/raw/reference/vectors/libsql.mdx +36 -3
- package/.docs/raw/reference/vectors/mongodb.mdx +36 -3
- package/.docs/raw/reference/vectors/opensearch.mdx +38 -17
- package/.docs/raw/reference/vectors/pg.mdx +44 -37
- package/.docs/raw/reference/vectors/pinecone.mdx +70 -3
- package/.docs/raw/reference/vectors/qdrant.mdx +37 -2
- package/.docs/raw/reference/vectors/s3vectors.mdx +1 -1
- package/.docs/raw/reference/vectors/turbopuffer.mdx +75 -1
- package/.docs/raw/reference/vectors/upstash.mdx +1 -1
- package/.docs/raw/reference/vectors/vectorize.mdx +1 -1
- package/.docs/raw/reference/voice/azure.mdx +96 -81
- package/.docs/raw/reference/voice/cloudflare.mdx +1 -1
- package/.docs/raw/reference/voice/composite-voice.mdx +72 -29
- package/.docs/raw/reference/voice/deepgram.mdx +1 -1
- package/.docs/raw/reference/voice/elevenlabs.mdx +1 -1
- package/.docs/raw/reference/voice/google-gemini-live.mdx +1 -1
- package/.docs/raw/reference/voice/google.mdx +160 -21
- package/.docs/raw/reference/voice/mastra-voice.mdx +1 -1
- package/.docs/raw/reference/voice/murf.mdx +1 -1
- package/.docs/raw/reference/voice/openai-realtime.mdx +3 -3
- package/.docs/raw/reference/voice/openai.mdx +1 -1
- package/.docs/raw/reference/voice/playai.mdx +1 -1
- package/.docs/raw/reference/voice/sarvam.mdx +1 -1
- package/.docs/raw/reference/voice/speechify.mdx +1 -1
- package/.docs/raw/reference/voice/voice.addInstructions.mdx +3 -4
- package/.docs/raw/reference/voice/voice.addTools.mdx +2 -2
- package/.docs/raw/reference/voice/voice.answer.mdx +2 -2
- package/.docs/raw/reference/voice/voice.close.mdx +2 -2
- package/.docs/raw/reference/voice/voice.connect.mdx +2 -2
- package/.docs/raw/reference/voice/voice.events.mdx +1 -1
- package/.docs/raw/reference/voice/voice.getSpeakers.mdx +1 -1
- package/.docs/raw/reference/voice/voice.listen.mdx +87 -53
- package/.docs/raw/reference/voice/voice.off.mdx +2 -2
- package/.docs/raw/reference/voice/voice.on.mdx +2 -2
- package/.docs/raw/reference/voice/voice.send.mdx +2 -2
- package/.docs/raw/reference/voice/voice.speak.mdx +76 -41
- package/.docs/raw/reference/voice/voice.updateConfig.mdx +2 -2
- package/.docs/raw/reference/workflows/run-methods/cancel.mdx +1 -1
- package/.docs/raw/reference/workflows/run-methods/restart.mdx +142 -0
- package/.docs/raw/reference/workflows/run-methods/resume.mdx +45 -1
- package/.docs/raw/reference/workflows/run-methods/start.mdx +48 -4
- package/.docs/raw/reference/workflows/run-methods/timeTravel.mdx +310 -0
- package/.docs/raw/reference/workflows/run.mdx +28 -6
- package/.docs/raw/reference/workflows/step.mdx +65 -1
- package/.docs/raw/reference/workflows/workflow-methods/branch.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/commit.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/create-run.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/dountil.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/dowhile.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/foreach.mdx +69 -4
- package/.docs/raw/reference/workflows/workflow-methods/map.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/parallel.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/sendEvent.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/sleep.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/sleepUntil.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/then.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/waitForEvent.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow.mdx +44 -2
- package/.docs/raw/server-db/custom-adapters.mdx +386 -0
- package/.docs/raw/server-db/custom-api-routes.mdx +6 -6
- package/.docs/raw/server-db/mastra-client.mdx +3 -4
- package/.docs/raw/server-db/{production-server.mdx → mastra-server.mdx} +22 -12
- package/.docs/raw/server-db/middleware.mdx +31 -31
- package/.docs/raw/server-db/request-context.mdx +3 -4
- package/.docs/raw/server-db/server-adapters.mdx +312 -0
- package/.docs/raw/server-db/storage.mdx +12 -1
- package/.docs/raw/streaming/events.mdx +1 -1
- package/.docs/raw/streaming/overview.mdx +27 -16
- package/.docs/raw/streaming/tool-streaming.mdx +58 -19
- package/.docs/raw/streaming/workflow-streaming.mdx +6 -12
- package/.docs/raw/tools-mcp/advanced-usage.mdx +2 -3
- package/.docs/raw/tools-mcp/mcp-overview.mdx +4 -6
- package/.docs/raw/tools-mcp/overview.mdx +1 -1
- package/.docs/raw/voice/overview.mdx +88 -41
- package/.docs/raw/voice/speech-to-speech.mdx +5 -5
- package/.docs/raw/voice/speech-to-text.mdx +2 -3
- package/.docs/raw/voice/text-to-speech.mdx +2 -3
- package/.docs/raw/workflows/agents-and-tools.mdx +43 -5
- package/.docs/raw/workflows/control-flow.mdx +534 -3
- package/.docs/raw/workflows/error-handling.mdx +5 -4
- package/.docs/raw/workflows/human-in-the-loop.mdx +160 -213
- package/.docs/raw/workflows/inngest-workflow.mdx +1 -1
- package/.docs/raw/workflows/input-data-mapping.mdx +1 -1
- package/.docs/raw/workflows/overview.mdx +67 -47
- package/.docs/raw/workflows/snapshots.mdx +5 -3
- package/.docs/raw/workflows/suspend-and-resume.mdx +121 -204
- package/.docs/raw/workflows/time-travel.mdx +313 -0
- package/.docs/raw/workflows/workflow-state.mdx +190 -0
- package/CHANGELOG.md +88 -0
- package/dist/{chunk-5NJC7NRO.js → chunk-4CM2BQNP.js} +24 -4
- package/dist/prepare-docs/package-changes.d.ts.map +1 -1
- package/dist/prepare-docs/prepare.js +1 -1
- package/dist/stdio.js +17 -19
- package/package.json +10 -14
- package/.docs/raw/deployment/serverless-platforms/index.mdx +0 -58
- package/.docs/raw/frameworks/agentic-uis/ai-sdk.mdx +0 -688
- package/.docs/raw/frameworks/agentic-uis/cedar-os.mdx +0 -123
- package/.docs/raw/frameworks/agentic-uis/copilotkit.mdx +0 -382
- package/.docs/raw/frameworks/agentic-uis/openrouter.mdx +0 -179
- package/.docs/raw/frameworks/web-frameworks/next-js.mdx +0 -379
- package/.docs/raw/getting-started/templates.mdx +0 -73
- package/.docs/raw/mastra-cloud/observability.mdx +0 -51
- package/.docs/raw/reference/streaming/workflows/observeStreamVNext.mdx +0 -47
- package/.docs/raw/reference/streaming/workflows/streamVNext.mdx +0 -153
|
@@ -1,123 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: "Integrate Cedar-OS with Mastra | Frameworks | Mastra Docs"
|
|
3
|
-
description: "Build AI-native frontends for your Mastra agents with Cedar-OS"
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
import Tabs from "@theme/Tabs";
|
|
7
|
-
import TabItem from "@theme/TabItem";
|
|
8
|
-
import Steps from "@site/src/components/Steps";
|
|
9
|
-
import StepItem from "@site/src/components/StepItem";
|
|
10
|
-
|
|
11
|
-
# Integrate Cedar-OS with Mastra
|
|
12
|
-
|
|
13
|
-
Cedar-OS is an open-source agentic UI framework designed specifically for building the most ambitious AI-native applications. Cedar was built with Mastra in mind.
|
|
14
|
-
|
|
15
|
-
## Should you use Cedar?
|
|
16
|
-
|
|
17
|
-
There are a few pillars Cedar cares about strongly that you can read more about [here](https://docs.cedarcopilot.com/introduction/philosophy):
|
|
18
|
-
|
|
19
|
-
#### 1. Developer experience
|
|
20
|
-
|
|
21
|
-
- **Every single component is downloaded shadcn-style** – You own all the code and can style it however you want
|
|
22
|
-
- **Works out of the box** – Just drop in the chat component, and it'll work
|
|
23
|
-
- **Fully extensible** - Built on a [Zustand store architecture](https://docs.cedarcopilot.com/introduction/architecture) that you can customize completely. Every single internal function can be overridden in one line.
|
|
24
|
-
|
|
25
|
-
#### 2. Enabling truly AI-native applications
|
|
26
|
-
|
|
27
|
-
For the first time in history, products can come to life. Cedar is aimed at helping you build something with life.
|
|
28
|
-
|
|
29
|
-
- **[Spells](https://docs.cedarcopilot.com/spells/spells#what-are-spells)** - Users can trigger AI from keyboard shortcuts, mouse events, text selection, and other components
|
|
30
|
-
- **[State Diff Management](https://docs.cedarcopilot.com/state-diff/using-state-diff)** - Give users control over accepting/rejecting agent outputs
|
|
31
|
-
- **[Voice Integration](https://docs.cedarcopilot.com/voice/voice-integration)** - Let users control your app with their voice
|
|
32
|
-
|
|
33
|
-
## Quick Start
|
|
34
|
-
|
|
35
|
-
<Steps>
|
|
36
|
-
|
|
37
|
-
<StepItem>
|
|
38
|
-
|
|
39
|
-
Run Cedar's CLI command:
|
|
40
|
-
|
|
41
|
-
```bash
|
|
42
|
-
npx cedar-os-cli plant-seed
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
If starting from scratch, select the **Mastra starter** template for a complete setup with both frontend and backend in a monorepo
|
|
46
|
-
|
|
47
|
-
If you already have a Mastra backend, use the **blank frontend cedar repo** option instead. This will give you the option to download components and download all dependencies for Cedar. It is recommended to download at least one of the chat components to get started.
|
|
48
|
-
|
|
49
|
-
</StepItem>
|
|
50
|
-
|
|
51
|
-
<StepItem>
|
|
52
|
-
|
|
53
|
-
Wrap your application with the CedarCopilot provider to connect to your Mastra backend:
|
|
54
|
-
|
|
55
|
-
```tsx
|
|
56
|
-
import { CedarCopilot } from "cedar-os";
|
|
57
|
-
|
|
58
|
-
function App() {
|
|
59
|
-
return (
|
|
60
|
-
<CedarCopilot
|
|
61
|
-
llmProvider={{
|
|
62
|
-
provider: "mastra",
|
|
63
|
-
baseURL: "http://localhost:4111", // default dev port for Mastra
|
|
64
|
-
apiKey: process.env.NEXT_PUBLIC_MASTRA_API_KEY, // optional — only for backend auth
|
|
65
|
-
}}
|
|
66
|
-
>
|
|
67
|
-
<YourApp />
|
|
68
|
-
</CedarCopilot>
|
|
69
|
-
);
|
|
70
|
-
}
|
|
71
|
-
```
|
|
72
|
-
|
|
73
|
-
</StepItem>
|
|
74
|
-
|
|
75
|
-
<StepItem>
|
|
76
|
-
|
|
77
|
-
Configure your Mastra backend to work with Cedar by following the [Mastra Configuration Options](https://docs.cedarcopilot.com/agent-backend-connection/agent-backend-connection#mastra-configuration-options).
|
|
78
|
-
|
|
79
|
-
[Register API routes](https://mastra.ai/en/examples/deployment/custom-api-route) in your Mastra server (or NextJS serverless routes if in a monorepo):
|
|
80
|
-
|
|
81
|
-
```ts mastra/src/index.ts
|
|
82
|
-
import { registerApiRoute } from "@mastra/core/server";
|
|
83
|
-
|
|
84
|
-
// POST /chat
|
|
85
|
-
// The chat's non-streaming default endpoint
|
|
86
|
-
registerApiRoute("/chat", {
|
|
87
|
-
method: "POST",
|
|
88
|
-
// …validate input w/ zod
|
|
89
|
-
handler: async (c) => {
|
|
90
|
-
/* your agent.generate() logic */
|
|
91
|
-
},
|
|
92
|
-
});
|
|
93
|
-
|
|
94
|
-
// POST /chat/stream (SSE)
|
|
95
|
-
// The chat's streaming default endpoint
|
|
96
|
-
registerApiRoute("/chat/stream", {
|
|
97
|
-
method: "POST",
|
|
98
|
-
handler: async (c) => {
|
|
99
|
-
/* stream agent output in SSE format */
|
|
100
|
-
},
|
|
101
|
-
});
|
|
102
|
-
```
|
|
103
|
-
|
|
104
|
-
</StepItem>
|
|
105
|
-
|
|
106
|
-
<StepItem>
|
|
107
|
-
|
|
108
|
-
Drop Cedar components into your frontend – see [Chat Overview](https://docs.cedarcopilot.com/chat/chat-overview).
|
|
109
|
-
|
|
110
|
-
Your backend and frontend are now linked! You're ready to start building AI-native experiences with your Mastra agents.
|
|
111
|
-
|
|
112
|
-
</StepItem>
|
|
113
|
-
|
|
114
|
-
</Steps>
|
|
115
|
-
|
|
116
|
-
## More information
|
|
117
|
-
|
|
118
|
-
- Check out the [detailed Mastra integration guide](https://docs.cedarcopilot.com/agent-backend-connection/mastra#extending-mastra) for more configuration options (or for manual installation instructions if something goes wrong)
|
|
119
|
-
- Explore Mastra-specific optimizations and features Cedar has built
|
|
120
|
-
- **Seamless event streaming** - Automatic rendering of [Mastra streamed events](https://docs.cedarcopilot.com/chat/custom-message-rendering#mastra-event-renderer)
|
|
121
|
-
- **Voice endpoint support** - Built-in [voice backend integration](https://docs.cedarcopilot.com/voice/agentic-backend#endpoint-configuration)
|
|
122
|
-
- **End-to-End type safety** - [Types](https://docs.cedarcopilot.com/type-safety/typing-agent-requests) for communicating between your app and Mastra backend
|
|
123
|
-
- [Join the Discord!](https://discord.gg/4AWawRjNdZ) The Cedar team is excited to have you :)
|
|
@@ -1,382 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: "Integrate CopilotKit with Mastra | Frameworks | Mastra Docs"
|
|
3
|
-
description: "Learn how Mastra leverages the CopilotKit's AGUI library and how you can leverage it to build user experiences"
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
import Tabs from "@theme/Tabs";
|
|
7
|
-
import TabItem from "@theme/TabItem";
|
|
8
|
-
import Steps from "@site/src/components/Steps";
|
|
9
|
-
import StepItem from "@site/src/components/StepItem";
|
|
10
|
-
|
|
11
|
-
# Integrate CopilotKit with Mastra
|
|
12
|
-
|
|
13
|
-
CopilotKit provides React components to quickly integrate customizable AI copilots into your application. Combined with Mastra, you can build sophisticated AI apps featuring bidirectional state synchronization and interactive UIs.
|
|
14
|
-
|
|
15
|
-
Visit the [CopilotKit documentation](https://docs.copilotkit.ai/) to learn more about CopilotKit concepts, components, and advanced usage patterns.
|
|
16
|
-
|
|
17
|
-
This guide shows two distinct integration approaches:
|
|
18
|
-
|
|
19
|
-
1. Integrate CopilotKit in your Mastra server with a separate React frontend.
|
|
20
|
-
2. Integrate CopilotKit in your Next.js app
|
|
21
|
-
|
|
22
|
-
<Tabs>
|
|
23
|
-
<TabItem value="mastra-server" label="Mastra Server">
|
|
24
|
-
|
|
25
|
-
<Steps>
|
|
26
|
-
|
|
27
|
-
<StepItem>
|
|
28
|
-
|
|
29
|
-
In your React frontend, install the required CopilotKit packages:
|
|
30
|
-
|
|
31
|
-
<Tabs>
|
|
32
|
-
<TabItem value="npm" label="npm">
|
|
33
|
-
|
|
34
|
-
```bash copy
|
|
35
|
-
npm install @copilotkit/react-core @copilotkit/react-ui
|
|
36
|
-
```
|
|
37
|
-
|
|
38
|
-
</TabItem>
|
|
39
|
-
<TabItem value="yarn" label="yarn">
|
|
40
|
-
|
|
41
|
-
```bash copy
|
|
42
|
-
yarn add @copilotkit/react-core @copilotkit/react-ui
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
</TabItem>
|
|
46
|
-
<TabItem value="pnpm" label="pnpm">
|
|
47
|
-
|
|
48
|
-
```bash copy
|
|
49
|
-
pnpm add @copilotkit/react-core @copilotkit/react-ui
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
</TabItem>
|
|
53
|
-
</Tabs>
|
|
54
|
-
|
|
55
|
-
</StepItem>
|
|
56
|
-
|
|
57
|
-
<StepItem>
|
|
58
|
-
|
|
59
|
-
Create a CopilotKit component in your React frontend:
|
|
60
|
-
|
|
61
|
-
```tsx title="components/copilotkit-component.tsx" copy
|
|
62
|
-
import { CopilotChat } from "@copilotkit/react-ui";
|
|
63
|
-
import { CopilotKit } from "@copilotkit/react-core";
|
|
64
|
-
import "@copilotkit/react-ui/styles.css";
|
|
65
|
-
|
|
66
|
-
export function CopilotKitComponent({ runtimeUrl }: { runtimeUrl: string }) {
|
|
67
|
-
return (
|
|
68
|
-
<CopilotKit runtimeUrl={runtimeUrl} agent="weatherAgent">
|
|
69
|
-
<CopilotChat
|
|
70
|
-
labels={{
|
|
71
|
-
title: "Your Assistant",
|
|
72
|
-
initial: "Hi! 👋 How can I assist you today?",
|
|
73
|
-
}}
|
|
74
|
-
/>
|
|
75
|
-
</CopilotKit>
|
|
76
|
-
);
|
|
77
|
-
}
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
</StepItem>
|
|
81
|
-
|
|
82
|
-
<StepItem>
|
|
83
|
-
|
|
84
|
-
If you have not yet set up your Mastra server, follow the [getting started guide](/docs/v1/getting-started/installation) to set up a new Mastra project.
|
|
85
|
-
|
|
86
|
-
In your Mastra server, install additional packages for CopilotKit integration:
|
|
87
|
-
|
|
88
|
-
<Tabs>
|
|
89
|
-
<TabItem value="npm" label="npm">
|
|
90
|
-
|
|
91
|
-
```bash copy
|
|
92
|
-
npm install @copilotkit/runtime @ag-ui/mastra@beta
|
|
93
|
-
```
|
|
94
|
-
|
|
95
|
-
</TabItem>
|
|
96
|
-
<TabItem value="yarn" label="yarn">
|
|
97
|
-
|
|
98
|
-
```bash copy
|
|
99
|
-
yarn add @copilotkit/runtime @ag-ui/mastra@beta
|
|
100
|
-
```
|
|
101
|
-
|
|
102
|
-
</TabItem>
|
|
103
|
-
<TabItem value="pnpm" label="pnpm">
|
|
104
|
-
|
|
105
|
-
```bash copy
|
|
106
|
-
pnpm add @copilotkit/runtime @ag-ui/mastra@beta
|
|
107
|
-
```
|
|
108
|
-
|
|
109
|
-
</TabItem>
|
|
110
|
-
</Tabs>
|
|
111
|
-
|
|
112
|
-
</StepItem>
|
|
113
|
-
|
|
114
|
-
<StepItem>
|
|
115
|
-
|
|
116
|
-
Configure your Mastra instance to include CopilotKit's runtime endpoint:
|
|
117
|
-
|
|
118
|
-
```typescript title="src/mastra/index.ts" copy {2,5-8,12-28}
|
|
119
|
-
import { Mastra } from "@mastra/core";
|
|
120
|
-
import { registerCopilotKit } from "@ag-ui/mastra/copilotkit";
|
|
121
|
-
import { weatherAgent } from "./agents/weather-agent";
|
|
122
|
-
|
|
123
|
-
type WeatherRequestContext = {
|
|
124
|
-
"user-id": string;
|
|
125
|
-
"temperature-scale": "celsius" | "fahrenheit";
|
|
126
|
-
};
|
|
127
|
-
|
|
128
|
-
export const mastra = new Mastra({
|
|
129
|
-
agents: { weatherAgent },
|
|
130
|
-
server: {
|
|
131
|
-
cors: {
|
|
132
|
-
origin: "*",
|
|
133
|
-
allowMethods: ["*"],
|
|
134
|
-
allowHeaders: ["*"],
|
|
135
|
-
},
|
|
136
|
-
apiRoutes: [
|
|
137
|
-
registerCopilotKit<WeatherRequestContext>({
|
|
138
|
-
path: "/copilotkit",
|
|
139
|
-
resourceId: "weatherAgent",
|
|
140
|
-
setContext: (c, requestContext) => {
|
|
141
|
-
requestContext.set(
|
|
142
|
-
"user-id",
|
|
143
|
-
c.req.header("X-User-ID") || "anonymous",
|
|
144
|
-
);
|
|
145
|
-
requestContext.set("temperature-scale", "celsius");
|
|
146
|
-
},
|
|
147
|
-
}),
|
|
148
|
-
],
|
|
149
|
-
},
|
|
150
|
-
});
|
|
151
|
-
```
|
|
152
|
-
|
|
153
|
-
</StepItem>
|
|
154
|
-
|
|
155
|
-
<StepItem>
|
|
156
|
-
|
|
157
|
-
Use the component in your React app with your Mastra server URL:
|
|
158
|
-
|
|
159
|
-
```tsx title="App.tsx" copy {5}
|
|
160
|
-
import { CopilotKitComponent } from "./components/copilotkit-component";
|
|
161
|
-
|
|
162
|
-
function App() {
|
|
163
|
-
return <CopilotKitComponent runtimeUrl="http://localhost:4111/copilotkit" />;
|
|
164
|
-
}
|
|
165
|
-
|
|
166
|
-
export default App;
|
|
167
|
-
```
|
|
168
|
-
|
|
169
|
-
Now start both the Mastra server and your frontend.
|
|
170
|
-
|
|
171
|
-
</StepItem>
|
|
172
|
-
|
|
173
|
-
</Steps>
|
|
174
|
-
</TabItem>
|
|
175
|
-
|
|
176
|
-
<TabItem value="nextjs" label="Next.js">
|
|
177
|
-
|
|
178
|
-
<Steps>
|
|
179
|
-
|
|
180
|
-
<StepItem>
|
|
181
|
-
|
|
182
|
-
In your Next.js app, install the required packages:
|
|
183
|
-
|
|
184
|
-
<Tabs>
|
|
185
|
-
<TabItem value="npm" label="npm">
|
|
186
|
-
|
|
187
|
-
```bash copy
|
|
188
|
-
npm install @copilotkit/react-core @copilotkit/react-ui @copilotkit/runtime @ag-ui/mastra@beta
|
|
189
|
-
```
|
|
190
|
-
|
|
191
|
-
</TabItem>
|
|
192
|
-
<TabItem value="yarn" label="yarn">
|
|
193
|
-
|
|
194
|
-
```bash copy
|
|
195
|
-
yarn add @copilotkit/react-core @copilotkit/react-ui @copilotkit/runtime @ag-ui/mastra@beta
|
|
196
|
-
```
|
|
197
|
-
|
|
198
|
-
</TabItem>
|
|
199
|
-
<TabItem value="pnpm" label="pnpm">
|
|
200
|
-
|
|
201
|
-
```bash copy
|
|
202
|
-
pnpm add @copilotkit/react-core @copilotkit/react-ui @copilotkit/runtime @ag-ui/mastra@beta
|
|
203
|
-
```
|
|
204
|
-
|
|
205
|
-
</TabItem>
|
|
206
|
-
</Tabs>
|
|
207
|
-
|
|
208
|
-
</StepItem>
|
|
209
|
-
|
|
210
|
-
<StepItem>
|
|
211
|
-
|
|
212
|
-
Create a CopilotKit component:
|
|
213
|
-
|
|
214
|
-
```tsx title="components/copilotkit-component.tsx" copy
|
|
215
|
-
'use client';
|
|
216
|
-
import { CopilotChat } from "@copilotkit/react-ui";
|
|
217
|
-
import { CopilotKit } from "@copilotkit/react-core";
|
|
218
|
-
import "@copilotkit/react-ui/styles.css";
|
|
219
|
-
|
|
220
|
-
export function CopilotKitComponent({ runtimeUrl }: { runtimeUrl: string}) {
|
|
221
|
-
return (
|
|
222
|
-
<CopilotKit
|
|
223
|
-
runtimeUrl={runtimeUrl}
|
|
224
|
-
agent="weatherAgent"
|
|
225
|
-
>
|
|
226
|
-
<CopilotChat
|
|
227
|
-
labels={{
|
|
228
|
-
title: "Your Assistant",
|
|
229
|
-
initial: "Hi! 👋 How can I assist you today?",
|
|
230
|
-
}}
|
|
231
|
-
/>
|
|
232
|
-
</CopilotKit>
|
|
233
|
-
);
|
|
234
|
-
}
|
|
235
|
-
```
|
|
236
|
-
|
|
237
|
-
</StepItem>
|
|
238
|
-
|
|
239
|
-
<StepItem>
|
|
240
|
-
|
|
241
|
-
There are two approaches for the API route determined by how you're integrating Mastra in your Next.js application.
|
|
242
|
-
|
|
243
|
-
1. For a full-stack Next.js app with an instance of Mastra integrated into the app.
|
|
244
|
-
2. For a Next.js app with a separate Mastra server and the Mastra Client SDK.
|
|
245
|
-
|
|
246
|
-
<Tabs>
|
|
247
|
-
<TabItem value="mastra-instance" label="With a Mastra instance">
|
|
248
|
-
|
|
249
|
-
Create an API route that connects to local Mastra agents.
|
|
250
|
-
|
|
251
|
-
```typescript title="app/api/copilotkit/route.ts" copy {1-7,11-26}
|
|
252
|
-
import { mastra } from "../../mastra";
|
|
253
|
-
import {
|
|
254
|
-
CopilotRuntime,
|
|
255
|
-
ExperimentalEmptyAdapter,
|
|
256
|
-
copilotRuntimeNextJSAppRouterEndpoint,
|
|
257
|
-
} from "@copilotkit/runtime";
|
|
258
|
-
import { MastraAgent } from "@ag-ui/mastra";
|
|
259
|
-
import { NextRequest } from "next/server";
|
|
260
|
-
|
|
261
|
-
export const POST = async (req: NextRequest) => {
|
|
262
|
-
const mastraAgents = MastraAgent.getLocalAgents({
|
|
263
|
-
mastra,
|
|
264
|
-
agentId: "weatherAgent",
|
|
265
|
-
});
|
|
266
|
-
|
|
267
|
-
const runtime = new CopilotRuntime({
|
|
268
|
-
agents: mastraAgents,
|
|
269
|
-
});
|
|
270
|
-
|
|
271
|
-
const { handleRequest } = copilotRuntimeNextJSAppRouterEndpoint({
|
|
272
|
-
runtime,
|
|
273
|
-
serviceAdapter: new ExperimentalEmptyAdapter(),
|
|
274
|
-
endpoint: "/api/copilotkit",
|
|
275
|
-
});
|
|
276
|
-
|
|
277
|
-
return handleRequest(req);
|
|
278
|
-
};
|
|
279
|
-
```
|
|
280
|
-
|
|
281
|
-
</TabItem>
|
|
282
|
-
<TabItem value="mastra-client" label="With the Mastra Client SDK">
|
|
283
|
-
|
|
284
|
-
Install the Mastra Client SDK.
|
|
285
|
-
|
|
286
|
-
<Tabs>
|
|
287
|
-
<TabItem value="npm" label="npm">
|
|
288
|
-
|
|
289
|
-
```bash copy
|
|
290
|
-
npm install @mastra/client-js@beta
|
|
291
|
-
```
|
|
292
|
-
|
|
293
|
-
</TabItem>
|
|
294
|
-
<TabItem value="yarn" label="yarn">
|
|
295
|
-
|
|
296
|
-
```bash copy
|
|
297
|
-
yarn add @mastra/client-js@beta
|
|
298
|
-
```
|
|
299
|
-
|
|
300
|
-
</TabItem>
|
|
301
|
-
<TabItem value="pnpm" label="pnpm">
|
|
302
|
-
|
|
303
|
-
```bash copy
|
|
304
|
-
pnpm add @mastra/client-js@beta
|
|
305
|
-
```
|
|
306
|
-
|
|
307
|
-
</TabItem>
|
|
308
|
-
</Tabs>
|
|
309
|
-
|
|
310
|
-
Create an API route that connects to remote Mastra agents:
|
|
311
|
-
|
|
312
|
-
```typescript title="app/api/copilotkit/route.ts" copy {1-7,12-26}
|
|
313
|
-
import { MastraClient } from "@mastra/client-js";
|
|
314
|
-
import {
|
|
315
|
-
CopilotRuntime,
|
|
316
|
-
ExperimentalEmptyAdapter,
|
|
317
|
-
copilotRuntimeNextJSAppRouterEndpoint,
|
|
318
|
-
} from "@copilotkit/runtime";
|
|
319
|
-
import { MastraAgent } from "@ag-ui/mastra";
|
|
320
|
-
import { NextRequest } from "next/server";
|
|
321
|
-
|
|
322
|
-
export const POST = async (req: NextRequest) => {
|
|
323
|
-
const baseUrl = process.env.MASTRA_BASE_URL || "http://localhost:4111";
|
|
324
|
-
const mastraClient = new MastraClient({ baseUrl });
|
|
325
|
-
|
|
326
|
-
const mastraAgents = await MastraAgent.getRemoteAgents({ mastraClient });
|
|
327
|
-
|
|
328
|
-
const runtime = new CopilotRuntime({
|
|
329
|
-
agents: mastraAgents,
|
|
330
|
-
});
|
|
331
|
-
|
|
332
|
-
const { handleRequest } = copilotRuntimeNextJSAppRouterEndpoint({
|
|
333
|
-
runtime,
|
|
334
|
-
serviceAdapter: new ExperimentalEmptyAdapter(),
|
|
335
|
-
endpoint: "/api/copilotkit",
|
|
336
|
-
});
|
|
337
|
-
|
|
338
|
-
return handleRequest(req);
|
|
339
|
-
};
|
|
340
|
-
```
|
|
341
|
-
|
|
342
|
-
</TabItem>
|
|
343
|
-
</Tabs>
|
|
344
|
-
|
|
345
|
-
</StepItem>
|
|
346
|
-
|
|
347
|
-
<StepItem>
|
|
348
|
-
|
|
349
|
-
Use the component with the local API endpoint:
|
|
350
|
-
|
|
351
|
-
```tsx title="App.tsx" copy {5}
|
|
352
|
-
import { CopilotKitComponent } from "./components/copilotkit-component";
|
|
353
|
-
|
|
354
|
-
function App() {
|
|
355
|
-
return <CopilotKitComponent runtimeUrl="/api/copilotkit" />;
|
|
356
|
-
}
|
|
357
|
-
|
|
358
|
-
export default App;
|
|
359
|
-
```
|
|
360
|
-
|
|
361
|
-
</StepItem>
|
|
362
|
-
|
|
363
|
-
</Steps>
|
|
364
|
-
</TabItem>
|
|
365
|
-
</Tabs>
|
|
366
|
-
|
|
367
|
-
Start building the future!
|
|
368
|
-
|
|
369
|
-
<br />
|
|
370
|
-
|
|
371
|
-
<img
|
|
372
|
-
className="rounded-lg"
|
|
373
|
-
src="/img/copilotkit/cpkoutput.jpg"
|
|
374
|
-
alt="CopilotKit output"
|
|
375
|
-
style={{ maxWidth: "700px", width: "100%" }}
|
|
376
|
-
/>
|
|
377
|
-
|
|
378
|
-
## Next Steps
|
|
379
|
-
|
|
380
|
-
- [CopilotKit Documentation](https://docs.copilotkit.ai) - Complete CopilotKit reference
|
|
381
|
-
- [React Hooks with CopilotKit](https://docs.copilotkit.ai/reference/hooks/useCoAgent) - Advanced React integration patterns
|
|
382
|
-
- [Next.js Integration with Mastra](/docs/v1/frameworks/web-frameworks/next-js) - Full-stack Next.js setup guide
|
|
@@ -1,179 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: "Use OpenRouter with Mastra | Frameworks | Mastra Docs"
|
|
3
|
-
description: "Learn how to integrate OpenRouter with Mastra"
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
import Steps from "@site/src/components/Steps";
|
|
7
|
-
import StepItem from "@site/src/components/StepItem";
|
|
8
|
-
|
|
9
|
-
# Use OpenRouter with Mastra
|
|
10
|
-
|
|
11
|
-
Integrate OpenRouter with Mastra to leverage the numerous models available on OpenRouter.
|
|
12
|
-
|
|
13
|
-
<Steps>
|
|
14
|
-
|
|
15
|
-
<StepItem>
|
|
16
|
-
|
|
17
|
-
The simplest way to get started with Mastra is to use the `mastra` CLI to initialize a new project:
|
|
18
|
-
|
|
19
|
-
```bash copy
|
|
20
|
-
npx create-mastra@beta
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
You'll be guided through prompts to set up your project. For this example, select:
|
|
24
|
-
|
|
25
|
-
- Name your project: my-mastra-openrouter-app
|
|
26
|
-
- Components: Agents (recommended)
|
|
27
|
-
- For default provider, select OpenAI (recommended) - we'll configure OpenRouter manually later
|
|
28
|
-
- Optionally include example code
|
|
29
|
-
|
|
30
|
-
</StepItem>
|
|
31
|
-
|
|
32
|
-
<StepItem>
|
|
33
|
-
|
|
34
|
-
After creating your project with `create-mastra`, you'll find a `.env` file in your project root.
|
|
35
|
-
Since we selected OpenAI during setup, we'll configure OpenRouter manually:
|
|
36
|
-
|
|
37
|
-
```bash title=".env" copy
|
|
38
|
-
OPENROUTER_API_KEY=
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
We remove the `@ai-sdk/openai` package from the project:
|
|
42
|
-
|
|
43
|
-
```bash copy
|
|
44
|
-
npm uninstall @ai-sdk/openai
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
Then, we install the `@openrouter/ai-sdk-provider` package:
|
|
48
|
-
|
|
49
|
-
```bash copy
|
|
50
|
-
npm install @openrouter/ai-sdk-provider
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
</StepItem>
|
|
54
|
-
|
|
55
|
-
<StepItem>
|
|
56
|
-
|
|
57
|
-
We will now configure our agent to use OpenRouter.
|
|
58
|
-
|
|
59
|
-
```typescript title="src/mastra/agents/assistant.ts" copy showLineNumbers {4-6,11}
|
|
60
|
-
import { Agent } from "@mastra/core/agent";
|
|
61
|
-
import { createOpenRouter } from "@openrouter/ai-sdk-provider";
|
|
62
|
-
|
|
63
|
-
const openrouter = createOpenRouter({
|
|
64
|
-
apiKey: process.env.OPENROUTER_API_KEY,
|
|
65
|
-
});
|
|
66
|
-
|
|
67
|
-
export const assistant = new Agent({
|
|
68
|
-
id: "assistant",
|
|
69
|
-
name: "assistant",
|
|
70
|
-
instructions: "You are a helpful assistant.",
|
|
71
|
-
model: openrouter("anthropic/claude-sonnet-4"),
|
|
72
|
-
});
|
|
73
|
-
```
|
|
74
|
-
|
|
75
|
-
Make sure to register your agent to the Mastra instance:
|
|
76
|
-
|
|
77
|
-
```typescript title="src/mastra/index.ts" copy showLineNumbers {4}
|
|
78
|
-
import { assistant } from "./agents/assistant";
|
|
79
|
-
|
|
80
|
-
export const mastra = new Mastra({
|
|
81
|
-
agents: { assistant },
|
|
82
|
-
});
|
|
83
|
-
```
|
|
84
|
-
|
|
85
|
-
</StepItem>
|
|
86
|
-
|
|
87
|
-
<StepItem>
|
|
88
|
-
|
|
89
|
-
```bash copy
|
|
90
|
-
npm run dev
|
|
91
|
-
```
|
|
92
|
-
|
|
93
|
-
This will start the Mastra development server.
|
|
94
|
-
|
|
95
|
-
You can now test your agent by visiting [http://localhost:4111](http://localhost:4111) and using Studio or via the Mastra API at [http://localhost:4111/api/agents/assistant/stream](http://localhost:4111/api/agents/assistant/stream).
|
|
96
|
-
|
|
97
|
-
</StepItem>
|
|
98
|
-
|
|
99
|
-
</Steps>
|
|
100
|
-
|
|
101
|
-
## Advanced Configuration
|
|
102
|
-
|
|
103
|
-
For more control over your OpenRouter requests, you can pass additional configuration options.
|
|
104
|
-
|
|
105
|
-
### Provider-wide options:
|
|
106
|
-
|
|
107
|
-
You can pass provider-wide options to the OpenRouter provider:
|
|
108
|
-
|
|
109
|
-
```typescript title="src/mastra/agents/assistant.ts" {6-10} copy showLineNumbers
|
|
110
|
-
import { Agent } from "@mastra/core/agent";
|
|
111
|
-
import { createOpenRouter } from "@openrouter/ai-sdk-provider";
|
|
112
|
-
|
|
113
|
-
const openrouter = createOpenRouter({
|
|
114
|
-
apiKey: process.env.OPENROUTER_API_KEY,
|
|
115
|
-
extraBody: {
|
|
116
|
-
reasoning: {
|
|
117
|
-
max_tokens: 10,
|
|
118
|
-
},
|
|
119
|
-
},
|
|
120
|
-
});
|
|
121
|
-
|
|
122
|
-
export const assistant = new Agent({
|
|
123
|
-
id: "assistant",
|
|
124
|
-
name: "assistant",
|
|
125
|
-
instructions: "You are a helpful assistant.",
|
|
126
|
-
model: openrouter("anthropic/claude-sonnet-4"),
|
|
127
|
-
});
|
|
128
|
-
```
|
|
129
|
-
|
|
130
|
-
### Model-specific options:
|
|
131
|
-
|
|
132
|
-
You can pass model-specific options to the OpenRouter provider:
|
|
133
|
-
|
|
134
|
-
```typescript title="src/mastra/agents/assistant.ts" {11-17} copy showLineNumbers
|
|
135
|
-
import { Agent } from "@mastra/core/agent";
|
|
136
|
-
import { createOpenRouter } from "@openrouter/ai-sdk-provider";
|
|
137
|
-
|
|
138
|
-
const openrouter = createOpenRouter({
|
|
139
|
-
apiKey: process.env.OPENROUTER_API_KEY,
|
|
140
|
-
});
|
|
141
|
-
|
|
142
|
-
export const assistant = new Agent({
|
|
143
|
-
id: "assistant",
|
|
144
|
-
name: "assistant",
|
|
145
|
-
instructions: "You are a helpful assistant.",
|
|
146
|
-
model: openrouter("anthropic/claude-sonnet-4", {
|
|
147
|
-
extraBody: {
|
|
148
|
-
reasoning: {
|
|
149
|
-
max_tokens: 10,
|
|
150
|
-
},
|
|
151
|
-
},
|
|
152
|
-
}),
|
|
153
|
-
});
|
|
154
|
-
```
|
|
155
|
-
|
|
156
|
-
### Provider-specific options:
|
|
157
|
-
|
|
158
|
-
You can pass provider-specific options to the OpenRouter provider:
|
|
159
|
-
|
|
160
|
-
```typescript copy showLineNumbers {7-12}
|
|
161
|
-
// Get a response with provider-specific options
|
|
162
|
-
const response = await assistant.generate([
|
|
163
|
-
{
|
|
164
|
-
role: "system",
|
|
165
|
-
content:
|
|
166
|
-
"You are Chef Michel, a culinary expert specializing in ketogenic (keto) diet...",
|
|
167
|
-
providerOptions: {
|
|
168
|
-
// Provider-specific options - key can be 'anthropic' or 'openrouter'
|
|
169
|
-
anthropic: {
|
|
170
|
-
cacheControl: { type: "ephemeral" },
|
|
171
|
-
},
|
|
172
|
-
},
|
|
173
|
-
},
|
|
174
|
-
{
|
|
175
|
-
role: "user",
|
|
176
|
-
content: "Can you suggest a keto breakfast?",
|
|
177
|
-
},
|
|
178
|
-
]);
|
|
179
|
-
```
|