ChangeGamer

← All resources

AI Agent Frameworks Compared

Reference · updated 2026-06-15 · Markdown variant

Vendor-neutral comparison table of the major agent-orchestration frameworks — language, license, multi-agent model, MCP/A2A support — plus a how-to-choose guide for agent builders.


Nine major frameworks compete for the agent-orchestration layer. Each makes a different architectural bet. This page is a current, agent-consumable reference — not a tutorial. All facts are web-verified as of June 2026; check the source links before pinning a choice.

Framework comparison table

Framework Maintainer Language(s) License Multi-agent model MCP A2A Notable for agents
OpenAI Agents SDK OpenAI Python MIT Handoffs (linear chain; one active agent at a time) Yes — native No (handoffs only; no cross-vendor A2A) Lightest opinionated wrapper around OpenAI APIs; built-in tracing; Responses API integration
Google ADK Google Python, TypeScript, Java Apache 2.0 Graph-based + sequential pipelines; native A2A Agent Cards auto-generated Yes Yes — native, auto-generates Agent Card Optimized for Gemini but model-agnostic; tight Vertex AI / Cloud Run integration; strongest A2A first-mover
LangGraph LangChain AI Python, TypeScript MIT Stateful graph (nodes + edges + conditional routing; cycles allowed) Yes — via langchain-mcp-adapters Platform only (LangGraph Platform); open-source self-hosted A2A is not available Explicit state machines; best for complex branching and long-running pipelines; LangSmith tracing
CrewAI crewAI Inc Python MIT Role/crew (named agents with roles, goals, backstory; sequential or hierarchical) Yes — first-class (docs.crewai.com/en/mcp/overview) Yes Fastest to get a role-based multi-agent crew running; large template library
Microsoft Agent Framework Microsoft Python, C#/.NET MIT Graph-based workflows; multi-runtime (Python and .NET agents can interop via A2A) Yes Yes — 1.0 (April 2026); cross-runtime Python ↔ .NET via A2A GA April 2026; successor to AutoGen + Semantic Kernel (AutoGen now maintenance-only; Semantic Kernel still active) for new agent work; enterprise Azure integration; Durable Task hosting
AWS Strands Agents Amazon Web Services Python, TypeScript Apache 2.0 Agents-as-tools (nested delegation); event-driven Yes — first-class Yes — 1.0 (SDK 1.0, May 2026) AWS-native (Bedrock AgentCore, Lambda, ECS); model-agnostic; minimal boilerplate; strong production tooling
LlamaIndex Workflows LlamaIndex (run-llama) Python MIT Event-driven steps (async, cyclable); agents orchestrate via workflow events Yes — native (MCP as default tool protocol) Yes — native (built into LlamaIndex Agents, 2026) Best-in-class RAG + retrieval integration; document-heavy agent pipelines; Workflows-as-MCP-server pattern
Pydantic AI Pydantic (Samuel Colvin) Python MIT Dependency-injection model; agents call sub-agents via typed tools Yes — native Yes — native (ai.pydantic.dev/a2a/) Type-safety first; Pydantic validation on all inputs/outputs; Logfire observability built in; v1.0 GA Sep 2025
Mastra Mastra AI TypeScript Apache 2.0 (core); Enterprise license (ee/ dirs) Graph-based workflows + agent networks; A2A for cross-platform delegation Yes — bidirectional (consume MCP servers + expose agents as MCP) Yes — native (May 2026; mastra.ai/docs/agents/a2a) Only TypeScript-native framework in this list; strong Next.js / Node.js DX; built-in evals, syncs, and memory

How to choose

Graph-based vs handoff vs role/crew orchestration

Graph-based (LangGraph, Google ADK, Microsoft Agent Framework, Mastra): define agents as nodes and routing logic as edges. Best when you need explicit branching, cycles, conditional retry, or parallel execution. Higher upfront design cost; easier to reason about at scale.

Handoff (OpenAI Agents SDK): one agent runs at a time and can hand control to another. Simpler mental model; natural fit for sequential task chains. Limited for parallel or conditional fan-out.

Role/crew (CrewAI): assign each agent a role, goal, and backstory; the framework orchestrates them. Fast to prototype; less control over low-level routing.

Event-driven steps (LlamaIndex Workflows, AWS Strands): agents emit and consume typed events; good for async, long-running pipelines and tight integration with retrieval systems.

Python vs TypeScript ecosystems

All frameworks except Mastra are Python-first (or Python-only). If your team lives in TypeScript / Node.js, Mastra is the only production-grade native option as of June 2026. Google ADK and LangGraph also ship TypeScript SDKs; AWS Strands TypeScript hit 1.0 in April 2026.

Model-agnostic vs vendor-leaning

All nine frameworks are technically model-agnostic, but vendor gravity varies. OpenAI Agents SDK defaults to OpenAI APIs. Google ADK is optimized for Gemini / Vertex AI. AWS Strands integrates tightly with Bedrock. Microsoft Agent Framework favors Azure AI Foundry. CrewAI, LangGraph, LlamaIndex, Pydantic AI, and Mastra are genuinely model-agnostic — swap the model with a one-line config change.

Production concerns

State persistence: LangGraph (checkpointers), Microsoft Agent Framework (Durable Task / Azure Durable Functions), AWS Strands (session manager, remote), and Mastra (built-in storage) have first-class persistence. Others require custom wiring.

Observability: Pydantic AI ships Logfire; LangGraph ships LangSmith (separate paid product); OpenAI Agents SDK has built-in tracing to the OpenAI dashboard; others rely on OpenTelemetry or third-party integrations.

Human-in-the-loop: OpenAI Agents SDK has explicit approvals support. LangGraph and Microsoft Agent Framework support interrupts and checkpointing. CrewAI and Mastra support human approval steps. See /resources/agentic-security-checklist for what to gate.

MCP and A2A interoperability: if your agents need to call external tools via MCP or delegate tasks to agents in other frameworks, check the MCP/A2A columns above. See /resources/mcp-vs-a2a for protocol details.

Verified sources

#agents #frameworks #orchestration #mcp #a2a #comparison #langgraph #crewai #openai

Category: Reference