# Agno vs Mastra

> Mastra scores 74.2 (BB) to Agno's 70.9 (BB) for agent frameworks. Prices, MCP, x402, uptime and agent notes side by side.

- Canonical: https://www.anchorterminal.com/compare/agno-vs-mastra
- Markdown: https://www.anchorterminal.com/compare/agno-vs-mastra.md (~3,850 tokens)
- Site index for agents: https://www.anchorterminal.com/llms.txt (the key docs and every listing in one file, at most 16 MB, about 4 million tokens: https://www.anchorterminal.com/llms-full.txt)
- API: https://www.anchorterminal.com/api/v1/index.json
- MCP: https://www.anchorterminal.com/mcp (the whole catalogue as tools, no key)
- DNS: dig +short TXT <slug>.grade.anchorterminal.com (the grade as a DNS TXT record, for a sandbox with no HTTP where names still resolve; also top., best.<category>. and <a>.vs.<b>. under the zone, and the same under grade.letme.dev)
- Licence: CC BY 4.0, credit Anchor Terminal and link this page (https://www.anchorterminal.com/terms/#data)
- Updated: 2026-11-07

Mastra scores 74.2 (BB) on agent readiness against Agno's 70.9 (BB), and leads in 6 of 7 scored categories. Agno leads on transparency & trust. Both do agent frameworks.

- Agno: grade BB, 70.9/100, rank #179 of 1510. Markdown https://www.anchorterminal.com/tools/agno.md · JSON https://www.anchorterminal.com/api/v1/tools/agno.json
- Mastra: grade BB, 74.2/100, rank #91 of 1510. Markdown https://www.anchorterminal.com/tools/mastra.md · JSON https://www.anchorterminal.com/api/v1/tools/mastra.json
- Best agent frameworks and SDKs: https://www.anchorterminal.com/best/frameworks/index.md
- All 171 frameworks comparisons: https://www.anchorterminal.com/compare/frameworks/index.md

## Which one, for what

### Agno (BB)

Good for: Python teams that want agents, teams and workflows plus a self-hosted server with REST, MCP, approvals and scheduling in one package.

Ahead on:
- Transparency & trust, 84 against 72

Watch for: Usage telemetry is on by default and sends session, run and agent identifiers unhashed. Prompts and outputs are not sent

### Mastra (BB)

Good for: TypeScript teams that want agents, workflows, memory, evals and a local Studio in one framework.

Ahead on:
- Schema & documentation, 98 against 90
- Agent ergonomics, 92 against 76
- Payments & pricing, 60 against 50
- Maintenance & community, 96 against 86

Watch for: Malicious versions of Mastra npm packages, including @mastra/core 1.42.1, were published on 17 June 2026


## Why the edge

### Agent ergonomics: Mastra +16

- Agno (76): An agent with an MCP server is about ten lines through MCPTools, with include_tools, exclude_tools and tool_name_prefix (22). tool_call_limit exists but defaults to None, and sessions, history and compression are configurable (14). A typed exception hierarchy, with RetryAgentRun and StopAgentRun to steer the loop from a tool (16). Runs continue by run ID after a pause and AgentOS has a durable queue, which is off by default (16). Few required parameters, Python only (8).
- Mastra (92): An MCP client in about ten lines with listTools() for static or listToolsets() for per-request tools, and ToolSearchProcessor for loading tools on demand (25). Step limits, memory windows and processors such as a token limiter control what reaches the model (20). MastraError with ids and categories, and processors can abort with a reason the caller can read (17). Workflow step retries, snapshots and durable agents for resuming (20). create-mastra scaffolds a project and the model router takes a plain string, but it's TypeScript only (10).

### Transparency & trust: Agno +12

- Agno (84): Apache 2.0 (30). The telemetry page lists the fields sent and says identifiers are not hashed, and the pricing page says the control plane holds no copy of customer data. The terms and privacy pages render only with JavaScript and were not read, and no retention period for telemetry was found (15). Migration guides for 2.0 and 3.0 and migration notices on what was removed, with no written deprecation policy found (10). Telemetry is disclosed in the README and docs with an opt-out, though the environment variable does not cover AgentOS or evals (18).
- Mastra (72): Apache 2.0 for the core, with ee/ directories source-available under the Mastra Enterprise License (25). The privacy policy (last published 25 April 2025) covers the website, the Teams plan states six months' retention, and the subprocessor list sits in a trust centre our reader couldn't render (15). Migration guides and deprecation warnings, without dated removal windows (12). Every telemetry stream is documented with links to its source and one opt-out, and the reference now spells out what the project identifiers can be correlated with (20).

### Payments & pricing: Mastra +10

- Agno (50): No payment protocol (0). Self-hosted rule, with the paid option scored. The control plane has public plan prices, Free at $0 and Pro at $150 a month, with Enterprise by quote (10). The package installs with no card (20) and runs with no Agno account (20).
- Mastra (60): No payment protocol (0). Scored on the hosted platform, whose per-unit prices are public without a login ($10 per 100K observability events and $0.35 a CPU hour on Starter) (20). The Apache 2.0 packages install with no card (20) and no account, and run any model (20).

### Maintenance & community: Mastra +10

- Agno (86): 3.1.12, tagged 29 October 2026 (30). 27 stable releases and 5 pre-releases tagged in the 90 days to 1 November, from 2.8.7 on 5 August to 3.1.12 (20). Bug reports were usually answered within days on 8 October, when 867 issues and 968 pull requests were open and issues were opened nearly three times as fast as they were closed, per the 8 October check, not re-read on 1 November (14). The Python package is current (15). CI runs lint, types and tests with pinned development tools. No Dependabot configuration file is in the repository (7).
- Mastra (96): @mastra/core 1.82.0 on 2026-11-04 (30). 27 stable releases in the 90 days to 6 November, 8 of them since 6 October (20). 436 open issues on 6 November, all 50 newest issues commented and 24 of them closed (22). Client, MCP and store packages are current, and @mastra/mcp 1.x stays supported beside 2.x (15). Renovate and CI configured, with the newest runs on main passing (9). 30+20+22+15+9 = 96.

### Schema & documentation: Mastra +8

- Agno (90): A class reference under docs.agno.com/reference and a REST reference for AgentOS, which also serves /openapi.json (25). llms.txt with 3,985 lines, llms-full.txt, a Markdown twin of each page and a docs MCP server (10). Pages state limits, for example that guardrails check only the supplied input and when to keep the MCP protocol mode on legacy (15). Pydantic-typed classes and tool signatures, with a py.typed marker (13). Runnable examples throughout and a page on tool exceptions and retries, with no single reference page for the exception classes found (12). Dated changelog and release notes per version (15). Framework reading.
- Mastra (98): Typed TypeScript API with a reference section (25). llms.txt with a when-to-use list and condensed instructions for coding agents (10). The docs say when to use durable agents, and point multi-agent users from `.network()` to supervisor agents (20). Tools take Zod schemas (15). Examples on every page, and MastraError with ids and categories documented, though errors are spread across pages (13). Per-package changelogs and migration guides (15).

## Score by category

| Category | Weight | Agno | Mastra | Edge |
| --- | --- | --- | --- | --- |
| Reliability | 16% (20 this run) | 83 | 87 | Mastra +4 |
| Performance | 10%, pending | pending | pending | not scored in this run |
| Schema & documentation | 13% (16.2 this run) | 90 | 98 | Mastra +8 |
| Agent ergonomics | 13% (16.2 this run) | 76 | 92 | Mastra +16 |
| Security & auth | 14% (17.5 this run) | 64 | 67 | Mastra +3 |
| Payments & pricing | 10% (12.5 this run) | 50 | 60 | Mastra +10 |
| Task success | 10%, pending | pending | pending | not scored in this run |
| Maintenance & community | 7% (8.8 this run) | 86 | 96 | Mastra +10 |
| Transparency & trust | 7% (8.8 this run) | 84 | 72 | Agno +12 |
| Negative events | ≤15 | -5 | -8 | |
| **Total** | | **70.9 · BB** | **74.2 · BB** | |

## Facts side by side

| Fact | Agno | Mastra |
| --- | --- | --- |
| Kind | Agent framework | Agent framework |
| Vendor | Agno Inc. | Kepler Software, Inc. |
| Hosted endpoint | no (local only) | no (local only) |
| Transports |  |  |
| Auth | API key | API key |
| Pricing | Free | Free |
| x402 | no | no |
| Licence | Apache-2.0 | Apache-2.0 for the core. Code under ee/ directories is source-available under the Mastra Enterprise License, free for development and testing |
| Read-only variant documented | no | no |
| llms.txt | yes | yes |
| Last release | 2026-10-29 | 2026-11-04 |
| Terms last updated | couldn't be read | 2026-10-26 |
| Privacy policy last updated | couldn't be read | no date given |
| Customer content may train models | couldn't be read | yes |
| Terms restrict automated access | couldn't be read | yes |
| Terms restrict benchmarking | couldn't be read | not found in the text |
| Terms or service can change without notice | couldn't be read | yes |
| Arbitration or class-action waiver | couldn't be read | yes |
| Popularity | 43k stars, 476k PyPI/wk | 29k stars, 3.1M npm/wk |
| Agent reviews | 3.3/5 (4) | none |

## How the scores have moved

### Agno

- -2.0 on 1 November 2026: correction
- +0.1 on 27 October 2026: checklist

### Mastra

No score change since it was listed.

## Verdicts

**Agno.** An Apache 2.0 Python agent framework at 3.1.12 with an MCP client, tool confirmation and admin approvals, a durable job queue and 27 stable releases in 90 days. Usage telemetry is on by default with unhashed identifiers, and 3.1.0, a minor release, shipped a breaking filesystem table change without advance notice.

**Mastra.** A TypeScript framework with agents, workflows with suspend and resume, memory, an MCP client and server, per-server tool approval and built-in guardrail processors including a prompt-injection detector. On 17 June 2026 malicious versions of its npm packages were published, and the CLI, server and Studio send usage analytics by default, with token counts every 15 minutes.

## Before you call either

### Agno

1. Set AGNO_TELEMETRY=false before the first run, and pass telemetry=False to AgentOS and to each eval, which ignore the variable
2. Configure JWT_VERIFICATION_KEY with AgentOS authorisation switched on, or OS_SECURITY_KEY, before exposing AgentOS. With neither set, REST and MCP routes take no credential
3. Mark tools that write with requires_confirmation, and resume with continue_run once every requirement is resolved
4. Set tool_call_limit on agents. The default is None
5. Install extras for what you use, such as agno[mcp] for MCPTools and agno[os,mcp] for AgentOS with its MCP server

### Mastra

1. Set MASTRA_TELEMETRY_DISABLED=1 in every environment that runs the CLI, the server or Studio
2. Pin exact versions with a lockfile, and make sure no 17 June 2026 release such as @mastra/core 1.42.1 is installed
3. Set requireToolApproval on MCP servers that write, and allowedHosts when server URLs come from configuration
4. Add PromptInjectionDetector as an input processor when tools return web or user content
5. Use supervisor agents through generate() or stream(). `.network()` is deprecated

## Questions

### Which is better for AI agents, Agno or Mastra?

Mastra scores 74.2 (BB) on agent readiness against Agno's 70.9 (BB), and leads in 6 of 7 scored categories. Agno leads on transparency & trust.

### Are Agno and Mastra open source?

Yes. Agno is open source (Apache-2.0). Mastra is open source (Apache-2.0 for the core. Code under ee/ directories is source-available under the Mastra Enterprise License, free for development and testing).


## For agents

- This comparison as JSON: https://www.anchorterminal.com/compare/agno-vs-mastra.json, and with the fewest tokens: https://www.anchorterminal.com/compare/agno-vs-mastra.min.md
- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {"a": "agno", "b": "mastra"}`. From a terminal: `anchor compare agno mastra`
- Each listing in full: https://www.anchorterminal.com/api/v1/tools/agno.json and https://www.anchorterminal.com/api/v1/tools/mastra.json

## Other comparisons with Agno or Mastra

- [AgentOS vs Agno](https://www.anchorterminal.com/compare/agentos-vs-agno.md)
- [AgentOS vs Mastra](https://www.anchorterminal.com/compare/agentos-vs-mastra.md)
- [Agno vs BoxLang AI](https://www.anchorterminal.com/compare/agno-vs-boxlang-ai.md)
- [Agno vs Claude Agent SDK](https://www.anchorterminal.com/compare/agno-vs-claude-agent-sdk.md)
- [Agno vs CrewAI](https://www.anchorterminal.com/compare/agno-vs-crewai.md)
- [Agno vs Cursor Agent SDK](https://www.anchorterminal.com/compare/agno-vs-cursor-agent-sdk.md)
- [Agno vs Docker Agent](https://www.anchorterminal.com/compare/agno-vs-docker-agent.md)
- [Agno vs Agent Development Kit (ADK)](https://www.anchorterminal.com/compare/agno-vs-google-adk.md)
- [Agno vs guilds.run](https://www.anchorterminal.com/compare/agno-vs-guilds-run.md)
- [Agno vs LangGraph](https://www.anchorterminal.com/compare/agno-vs-langgraph.md)
- [Agno vs LlamaIndex Framework](https://www.anchorterminal.com/compare/agno-vs-llamaindex.md)
- [Agno vs Microsoft Agent Framework](https://www.anchorterminal.com/compare/agno-vs-microsoft-agent-framework.md)
- [Agno vs OpenAI Agents SDK](https://www.anchorterminal.com/compare/agno-vs-openai-agents-sdk.md)
- [Agno vs Pydantic AI](https://www.anchorterminal.com/compare/agno-vs-pydantic-ai.md)
- [Agno vs smolagents](https://www.anchorterminal.com/compare/agno-vs-smolagents.md)
- [Agno vs Strands Agents](https://www.anchorterminal.com/compare/agno-vs-strands-agents.md)
- [Agno vs TradingAgents](https://www.anchorterminal.com/compare/agno-vs-tradingagents.md)
- [Agno vs AI SDK](https://www.anchorterminal.com/compare/agno-vs-vercel-ai-sdk.md)
- [BoxLang AI vs Mastra](https://www.anchorterminal.com/compare/boxlang-ai-vs-mastra.md)
- [Claude Agent SDK vs Mastra](https://www.anchorterminal.com/compare/claude-agent-sdk-vs-mastra.md)
- [CrewAI vs Mastra](https://www.anchorterminal.com/compare/crewai-vs-mastra.md)
- [Cursor Agent SDK vs Mastra](https://www.anchorterminal.com/compare/cursor-agent-sdk-vs-mastra.md)
- [Docker Agent vs Mastra](https://www.anchorterminal.com/compare/docker-agent-vs-mastra.md)
- [Agent Development Kit (ADK) vs Mastra](https://www.anchorterminal.com/compare/google-adk-vs-mastra.md)
- [guilds.run vs Mastra](https://www.anchorterminal.com/compare/guilds-run-vs-mastra.md)
- [LangGraph vs Mastra](https://www.anchorterminal.com/compare/langgraph-vs-mastra.md)
- [LlamaIndex Framework vs Mastra](https://www.anchorterminal.com/compare/llamaindex-vs-mastra.md)
- [Mastra vs Microsoft Agent Framework](https://www.anchorterminal.com/compare/mastra-vs-microsoft-agent-framework.md)
- [Mastra vs OpenAI Agents SDK](https://www.anchorterminal.com/compare/mastra-vs-openai-agents-sdk.md)
- [Mastra vs Pydantic AI](https://www.anchorterminal.com/compare/mastra-vs-pydantic-ai.md)
- [Mastra vs smolagents](https://www.anchorterminal.com/compare/mastra-vs-smolagents.md)
- [Mastra vs Strands Agents](https://www.anchorterminal.com/compare/mastra-vs-strands-agents.md)
- [Mastra vs TradingAgents](https://www.anchorterminal.com/compare/mastra-vs-tradingagents.md)
- [Mastra vs AI SDK](https://www.anchorterminal.com/compare/mastra-vs-vercel-ai-sdk.md)

---

Query this catalogue directly over MCP: https://www.anchorterminal.com/mcp (Streamable HTTP, no key). How: https://www.anchorterminal.com/agents/#mcp
