mrkeyoor.com_
Sun 01 Nov 04:00 UTC
AI Toolsevaluationupdated 30 Sept 2026

mastra review

Mastra is a TypeScript framework for building agents, tool-using assistants, and graph workflows. It puts model routing, memory, retrieval, human approval, evaluation, observability, and Model Context Protocol support in one system for JavaScript teams.

+148stars / 7d
Verdict

Our Mastra build took 693 seconds and its test command was still running at the 900-second cap, so full-repository work carries a real CI cost. Use it when a TypeScript team wants agents, explicit workflows, storage, Studio, and MCP under one roof. A smaller SDK is the saner choice for a model call, a few tools, and streamed UI output.

We ran it

Lab card: what happened when we ran mastraScreenshot of mastra (mastra.ai)
Install✓ · 236s1 packages · 38 MB
Build✓ · 693s
Tests✗ timed out · 900sran, no count parsed
Repo18814 files~3,183,467 lines of source · 215.3 MB · 32 CI workflows

Answers from our run

Does mastra build from source?

Dependencies installed in 236 seconds (1 packages), and the build succeeded in 693 seconds. We cloned commit 94ba70e into a clean Debian container with 3 CPUs and no project-specific setup.

Do mastra's tests pass?

We could not finish them: the suite was still running after 15 minutes in our container.

Who should not use mastra?

Python-first AI teams: Mastra's main API, examples, and development tooling are TypeScript-centric.

What are the alternatives to mastra?

LangGraph.js, Vercel AI SDK, LangChain.js. Our Mastra build took 693 seconds and its test command was still running at the 900-second cap, so full-repository work carries a real CI cost.

Setup2/5236-second install, 693-second build, tests exceeded 900 seconds
Docs5/5Detailed guidance for agents, workflows, storage, deploys, and MCP
Community5/528,521 stars with same-day pushes and active issue work
Maturity4/5Core 1.72.0 covers hard runtime cases, but changes remain frequent

Discussed on

  1. hnShow HN: Mastra – Open-source JS agent framework, by the developers of Gatsby442 points
  2. hnShow HN: Mastra 1.0, open-source JavaScript agent framework from the Gatsby devs213 points
  3. hnShow HN: A “Course” as an MCP Server213 points
  4. hnShow HN: Principles of Building AI Agents book [pdf]5 points
  5. hnMultiple mastra NPM packages compromised4 points

Who it’s for

TypeScript teams building agents inside Node, Next.js, React, or a standalone server.
Products that need controlled workflows beside open-ended agent behavior.
Developers who want a local Studio for inspecting runs, workflows, and traces.
Teams ready to choose model providers, persistent storage, evaluation rules, and production monitoring.
MCP server authors who want to expose existing Mastra agents and tools.

Who it’s NOT for

Python-first AI teams: Mastra's main API, examples, and development tooling are TypeScript-centric.
Contributors who need a quick full-repository feedback loop: our build took 693 seconds and the test command hit the 900-second cap.
Builders expecting agents to work without external model access: useful runs need a provider credential or another configured model route.
Teams that require one permissive license across every directory: code under ee/ has separate production terms.
Applications treating the default in-memory store as durable state: it disappears when the process exits.

Setup reality

Our sandbox installed commit 94ba70e in 236 seconds, adding 1 package and using 38 MB on disk. The build succeeded in 693 seconds. The test command timed out at 900 seconds, so we do not have a completed suite result.

The final log lines showed a local IPv4 socket between two loopback ports. It had written 940 bytes and read 0. That is where the captured output ended; it does not identify the operation that stalled or prove a cause.

Contributors need Node and pnpm, while some tests need Docker services and provider or database credentials. A deployed agent also needs model access and persistent storage if conversations or workflows must survive restarts.

Agents and workflows share one TypeScript runtime

Mastra gives a TypeScript application two ways to control model-backed work. Agents can select tools and continue until they reach an answer. Workflows declare steps, branches, parallel paths, and suspension points. That split is useful when one part of a product can be exploratory but another part, such as approving an account change, needs an explicit route. Memory, retrieval, evaluation, tracing, and a local Studio sit around both.

The README also treats MCP server authoring as a first-class path. Existing agents, tools, and structured resources can be made available to other MCP clients without building a second wrapper. Mastra can live inside Node, Next.js, or React projects, or run as a standalone server. That breadth is the appeal, but it means adoption affects more than the line where you call a model.

The 18,814-file monorepo changes the cost of contributing

commit 94ba70e contained 18,814 files, about 3,183,467 lines of source, and occupied 215.3 MB before installation. It is a pnpm workspace with 32 CI workflow files and no root Dockerfile or tests directory. Application developers install selected packages. Anyone modifying the framework itself has to navigate the larger graph of core code, storage adapters, clients, Studio, deployers, and integrations.

The development guide tries to keep that manageable. It documents filtered builds for core, deployers, stores, speech, and client packages, and recommends watching only the packages being changed. Node 22.13 or later and pnpm 11.21 or later are the stated prerequisites. Docker is needed for only a subset of development services, while some test groups require model keys or a PostgreSQL connection.

What happened when we ran it

Our sandbox installed commit 94ba70e in 236 seconds. The pnpm step added 1 package and left 38 MB on disk. A full build then succeeded in 693 seconds on 3 CPUs with 8 GB of RAM in an unprivileged Node 22 container. Those numbers describe repository setup and compilation, not agent latency or model quality.

Tests did not finish within the 900-second limit. The last captured lines showed a local IPv4 socket, with 940 bytes written and 0 bytes read, connecting two loopback ports. The output does not name the test behind that socket or explain why no data came back. We can report a timeout and the socket state; blaming a database, network service, or deadlock would go beyond the log.

This result makes targeted commands important for contributors. The guide lists package-specific test scripts rather than requiring every change to begin with the whole suite. A team evaluating Mastra as a dependency should test the packages and adapters it will deploy. A maintainer setting a merge gate for the monorepo needs to budget for a build that took us more than 11 minutes and a suite that exceeded 15 minutes.

Persistent storage decides whether an agent survives a restart

The in-memory store is meant for experiments because its state disappears with the process. Persistent adapters hold conversation memory, workflow snapshots, traces, evaluation data, schedules, and background-task state. A file-backed database can suit local work; shared deployments can use supported external stores. The storage choice therefore controls recovery behavior, retention, and which processes can resume a run.

Release @mastra/core@1.72.0, published September 30, added ownership leases for background tasks shared by multiple managers. It also warned that older storage packages ignore the new fencing conditions, so the storage package must be upgraded with core to get that protection. This is a good example of Mastra's value and its upkeep cost: the framework addresses difficult runtime cases, while package coordination still belongs to the operator.

Model access and tool permission stay with the application

Mastra's common model interface can reduce provider-specific code, but useful agent runs still need access to a configured model. Providers differ in tool calling, structured output, context rules, and billing. A passing evaluation against one model does not establish how another will behave. The application must set spending limits, decide what data may leave its boundary, and handle provider failures.

Tool schemas validate input shape. They do not decide whether an agent should send an email, write a file, or alter a production record. Mastra supports human approval and workflow suspension, which gives teams a place to insert that policy. Traces may also contain prompts and tool data, so observability storage deserves the same access controls and deletion rules as the product data it records.

Same-day pushes show activity, while licensing needs a directory check

GitHub showed 28,521 stars and 468 combined issues and pull requests on October 3, 2026. The repository was pushed that day, and newly opened bug reports were receiving updates. The release three days earlier included durable-run recovery work, thread subscription changes, trace aggregation, and breaking playground UI changes. This is active maintenance paired with a brisk upgrade pace.

Most of the repository uses Apache-2.0, but directories named ee/ use the Mastra Enterprise License and require a valid license for production use. Check the paths included in your deployment instead of reading the repository label as one blanket license. Mastra earns a prototype when several agent concerns already belong in the product. If most of its storage, workflow, evaluation, and Studio machinery would sit unused, take the smaller dependency.

Alternatives

ProjectWhat it isPick it when
LangGraph.jsA TypeScript library centered on stateful agent graphs and durable execution.pick this instead when graph control is the main requirement and you do not need Mastra's broader Studio and server stack.
Vercel AI SDK gh↗A TypeScript toolkit for model calls, streaming, tools, and AI user interfaces.pick this instead when you mainly need model and UI primitives rather than an agent platform.
LangChain.jsA JavaScript framework with a wide catalog of model, retrieval, tool, and agent integrations.pick this instead when its integration catalog matters more than Mastra's opinionated runtime and Studio.

Sources

  1. Mastra README
  2. Mastra development guide
  3. Mastra core 1.72.0 release
  4. Mastra open issues and pull requests

More ai tools reviews

pr-agent · agent-sprite-forge · KiroCrew · Orkas · hypit · Paradev · the whole board →