Skip to main content
Mastra is a TypeScript framework for building AI agents. Using Mastra’s LangSmith exporter, you can send traces from your Mastra agents and workflows to LangSmith for debugging, evaluation, and observability. This guide shows you how to integrate Mastra with LangSmith using Mastra’s AI tracing system.
This integration uses a legacy destination setting such as project_name or LANGSMITH_PROJECT. Create an agent, choose its environment, and retrieve that environment’s tracer_session_name. Use that returned value in the destination setting and any overrides. For integrations that support agent addressing, use the agent identifier and environment directly.

Installation

Install Mastra and the LangSmith exporter:

Setup

  1. Set your LangSmith API key and the selected environment’s tracer_session_name:
    Set LANGCHAIN_PROJECT explicitly to the selected environment’s tracer_session_name.
  2. If you plan to use OpenAI models, also ensure you have an OpenAI API key available at runtime:
  3. In your project directory, create the following project structure and files:

Configure Mastra with the LangSmith exporter

Mastra tracing is configured directly on the Mastra constructor. Add the following to a mastra.ts file:
  • Storage is required for tracing (even when exporting traces externally).
  • The LangSmith exporter reads credentials from environment variables.
  • The deprecated telemetry system is disabled to avoid warnings.
  • No separate instrumentation file is required when running Mastra outside of the Mastra server. For more details, refer to the Mastra docs.

Define an agent

For compatibility, use string-based model identifiers. Add the following code to an agent.ts file:
Mastra will automatically route the model call using your configured API keys and capture traces for each invocation.

Run the agent

  1. Add the following to an index.ts file:
  2. Run your agent:

View traces in LangSmith

After running the agent:
  1. Open the LangSmith UI.
  2. Select the agent and environment configured through LANGCHAIN_PROJECT.
  3. Locate the trace corresponding to echoAgent.generate.
You’ll be able to inspect:
  • Model inputs and outputs
  • Agent execution steps
  • Timing and error information