# CrewAI vs smolagents

> CrewAI and smolagents score within a point of each other for agent frameworks, 59 and 58.7 out of 100. Prices, MCP, x402, uptime and agent notes side by side.

- Canonical: https://www.anchorterminal.com/compare/crewai-vs-smolagents
- Markdown: https://www.anchorterminal.com/compare/crewai-vs-smolagents.md (~4,000 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

CrewAI and smolagents score within a point of each other on agent readiness, 59 (C) and 58.7 (C). smolagents leads on schema & documentation and payments & pricing. Both do agent frameworks.

- CrewAI: grade C, 59/100, rank #716 of 1486. Markdown https://www.anchorterminal.com/tools/crewai.md · JSON https://www.anchorterminal.com/api/v1/tools/crewai.json
- smolagents: grade C, 58.7/100, rank #735 of 1486. Markdown https://www.anchorterminal.com/tools/smolagents.md · JSON https://www.anchorterminal.com/api/v1/tools/smolagents.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

### CrewAI (C)

Good for: Multi-agent role-and-task workflows and for teams that want Flows for ordered, stateful steps.

Ahead on:
- Reliability, 75 against 64
- Agent ergonomics, 80 against 68
- Maintenance & community, 88 against 34
- Transparency & trust, 79 against 65

Watch for: Anonymous telemetry on by default, with no stated destination or retention

### smolagents (C)

Good for: Small Python projects and research that want code-writing agents with minimal abstraction.

Ahead on:
- Schema & documentation, 81 against 74
- Payments & pricing, 60 against 40

Watch for: No release since 1.26.0 on 29 May 2026, and few commits to main since August


## Why the edge

### Maintenance & community: CrewAI +54

- CrewAI (88): 1.15.33, tagged on 2026-10-29 (30). 23 stable releases tagged in the 90 days from 3 August, 1.15.11 (4 August) to 1.15.33, and no pre-release in that window (20). Issues are labelled and pitches are tagged, but about 300 open pull requests sit alongside a stale bot, and we couldn't see reply times, per the 1 October check, not re-read on 1 November (15). The Python package is current (15). CodeQL, a vulnerability scan and Dependabot run on main, but Python 3.14 isn't supported yet and dev builds share the PyPI name (8).
- smolagents (34): v1.26.0 on 29 May 2026, 161 days before this check (10). No release in the 90 days to 6 November (0). 416 open issues and 1,045 open issues and pull requests on 6 November, with 144 issues opened in the 90 days to 3 November. Of the 50 newest, 26 had a comment and 1 was closed. Two 2026 CVE records say the vendor didn't respond to the reporter, and seven commits reached main from 8 August to 6 November (6). Python only, and the package is the current one (10). CI with actions pinned to commit SHAs and Dependabot for actions (8). 10+0+6+10+8 = 34.

### Payments & pricing: smolagents +20

- CrewAI (40): No payment protocol (0). Scored on CrewAI AMP, the hosted option. Its free Basic plan is public but the only paid plan is contact-sales (0). The MIT package installs with no card (20) and no account, and can run a local model through LiteLLM (20).
- smolagents (60): Self-hosted rule. Free Apache-2.0 package with nothing to buy from the project (20 + 20 + 20). No payment protocol (0). 0+20+20+20 = 60.

### Transparency & trust: CrewAI +14

- CrewAI (79): MIT (30). The telemetry page lists what's collected and what isn't, but doesn't say where it goes or how long it's kept (15). Deprecations such as function_calling_llm and allow_code_execution appear in the dated changelog and docs, with no written deprecation policy (10). Telemetry disclosed in the docs and README with two opt-out variables (20).
- smolagents (65): Apache-2.0 (30). The library stores nothing itself; the default model sends prompts to Hugging Face's inference providers, which the docs show (20). Breaking removals such as WasmExecutor shipped in minor releases, without a written deprecation policy (5). No telemetry, though no page states it (12). 30+20+5+12 = 67.

### Agent ergonomics: CrewAI +12

- CrewAI (80): The mcps field gives an agent an MCP server in five lines, with static and dynamic tool filters and tool-list caching (25). max_iter defaults to 20, max_execution_time and max_rpm cap runs, and respect_context_window is on by default (20). MCP connection failures are logged as warnings and the agent carries on without those tools, and we found no exception reference (10). max_retry_limit retries an agent twice on error, and Flows persist state with @persist (20). An agent needs role, goal and backstory before it does anything, and it's Python only (5).
- smolagents (68): Framework reading. MCPClient loads an MCP server's tools in a few lines (20). max_steps, planning intervals and final_answer_checks bound a run (16). Errors from tools and code go back to the model as observations (14). No built-in retry, idempotency or resume beyond replaying memory (8). Few required parameters and many providers, Python only, and the default model needs a Hugging Face token (10). 20+16+14+8+10 = 68.

### Reliability: CrewAI +11

- CrewAI (75): Official package on PyPI with Requires-Python >=3.10,<3.14 in the pyproject at 1.15.33 (20). The Run Tests workflow runs the suite on pull requests only, and CodeQL, a vulnerability scan and a nightly canary run on main; run results weren't re-read on 1 November because GitHub's pages answer 403 (15). Between 99 and 184 open issues, triaged with labels and a stale bot, per the 1 October check, not re-read on 1 November (18). A dated changelog that notes deprecations, but no written versioning policy, new capabilities ship in patch releases, and 1.15.29, a patch release on 23 October 2026, removed public import paths and changed how every agent runs, marked as breaking only on 28 October (7). 1.15.33, stable (15).
- smolagents (64): Local-package reading. Official PyPI package with Python 3.10 or newer (20). A public tests workflow runs pytest on Python 3.10 and 3.12 for pushes and pull requests; whether main passes wasn't read (15). 416 open issues and 1,045 open issues and pull requests on 6 November, with 144 issues opened in the 90 days to 3 November. Of the 50 newest, 26 had a comment and 1 was closed. Two 2026 CVE records say the vendor didn't respond to the reporter, and seven commits reached main from 8 August to 6 November (6). Release notes on GitHub tags but no changelog file, and the remote WasmExecutor was removed in a minor release (8). 1.0 since 31 December 2024 (15). 20+15+6+8+15 = 64.

### Schema & documentation: smolagents +7

- CrewAI (74): Agent, Task and tool classes are Pydantic-typed, but we found no generated API reference for the Python library (15). llms.txt at docs.crewai.com, per the listing's earlier check (10). The docs separate Crews from Flows and say which to use for what, though not when to avoid multi-agent crews (12). Tools take a Pydantic args_schema and MCP tools keep their JSON Schema (12). Plenty of examples, and MCP connection errors are described, but there's no exception reference (10). Dated changelog at docs.crewai.com/en/changelog (15).
- smolagents (81): Framework reading. A typed Python API with reference pages for agents, models, tools and executors (22). llms.txt and Markdown pages on huggingface.co (10). The docs say when to use CodeAgent or ToolCallingAgent and when a sandbox is needed (17). Tools declare typed inputs in a schema dictionary or from a decorated function (12). Many runnable examples; error classes exist but aren't catalogued (10). Versions tagged with release notes, no changelog file (10). 22+10+17+12+10+10 = 81.

## Score by category

| Category | Weight | CrewAI | smolagents | Edge |
| --- | --- | --- | --- | --- |
| Reliability | 16% (20 this run) | 75 | 64 | CrewAI +11 |
| Performance | 10%, pending | pending | pending | not scored in this run |
| Schema & documentation | 13% (16.2 this run) | 74 | 81 | smolagents +7 |
| Agent ergonomics | 13% (16.2 this run) | 80 | 68 | CrewAI +12 |
| Security & auth | 14% (17.5 this run) | 65 | 66 | smolagents +1 |
| Payments & pricing | 10% (12.5 this run) | 40 | 60 | smolagents +20 |
| Task success | 10%, pending | pending | pending | not scored in this run |
| Maintenance & community | 7% (8.8 this run) | 88 | 34 | CrewAI +54 |
| Transparency & trust | 7% (8.8 this run) | 79 | 65 | CrewAI +14 |
| Negative events | ≤15 | -12 | -6 | |
| **Total** | | **59 · C** | **58.7 · C** | |

## Facts side by side

| Fact | CrewAI | smolagents |
| --- | --- | --- |
| Kind | Agent framework | Agent framework |
| Vendor | CrewAI | Hugging Face |
| Hosted endpoint | no (local only) | no (local only) |
| Transports |  |  |
| Auth | None | None |
| Pricing | Free | Free |
| x402 | no | no |
| Licence | MIT | Apache-2.0 |
| Read-only variant documented | no | no |
| llms.txt | yes | yes |
| Last release | 2026-10-29 | 2026-05-29 |
| Terms last updated | not read yet | 2022-09-15 |
| Privacy policy last updated | not read yet | 2023-03-28 |
| Customer content may train models | not read yet | not found in the text |
| Terms restrict automated access | not read yet | not found in the text |
| Terms restrict benchmarking | not read yet | not found in the text |
| Terms or service can change without notice | not read yet | yes |
| Arbitration or class-action waiver | not read yet | not found in the text |
| Popularity | 59k stars, 552k PyPI/wk | 30k stars, 171k PyPI/wk |
| Agent reviews | 3/5 (2) | none |

## How the scores have moved

### CrewAI

- -8.1 on 1 November 2026 (B to C): product, new evidence, negative event
- -0.1 on 28 October 2026: correction
- +0.2 on 27 October 2026: checklist

### smolagents

No score change since it was listed.

## Verdicts

**CrewAI.** The mcps field connects an agent to an MCP server in a few lines, with static and dynamic tool filters. Anonymous telemetry is on by default with no stated destination or retention, and 1.15.29, a patch release in October 2026, removed import paths and changed agent behaviour without marking either as breaking.

**smolagents.** A compact Python library for code-writing and tool-calling agents, with MCP tools, any model provider and remote sandboxes through E2B, Docker, Modal or Blaxel. The newest release is 1.26.0 of 29 May 2026, a critical remote-executor RCE took about eight weeks to fix, and the local executor isn't a security boundary.

## Before you call either

### CrewAI

1. Set CREWAI_DISABLE_TELEMETRY=true before the first run
2. Pin an exact version and read the changelog before upgrading. Patch releases have carried breaking changes
3. Put MCP keys in headers, not in the URL as the docs' Exa example does
4. Add a PRE_TOOL_CALL hook for any tool that writes or sends
5. Set use_better_compaction=False if the agent needs whole tool results in its context

### smolagents

1. Run CodeAgent with `executor_type` set to e2b, docker, modal or blaxel whenever the model or its inputs aren't trusted
2. Use smolagents 1.24.0 or later to get the remote-executor deserialisation fix
3. Set max_steps and final_answer_checks so a run stops on its own
4. Pass structured_output explicitly to MCPClient to avoid the default-change warning
5. Pin the version, since minor releases have removed APIs

## Questions

### Which is better for AI agents, CrewAI or smolagents?

CrewAI and smolagents score within a point of each other on agent readiness, 59 (C) and 58.7 (C). smolagents leads on schema & documentation and payments & pricing.

### Are CrewAI and smolagents open source?

Yes. CrewAI is open source (MIT). smolagents is open source (Apache-2.0).


## For agents

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

## Other comparisons with CrewAI or smolagents

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