The short answer
Pick LangGraph when you need to control exactly how an agent moves between steps and retries. Pick CrewAI when you're modeling a team of specialist agents with clear roles and want that structure to stay readable. Pick Microsoft Agent Framework when your org already lives in the Microsoft/Azure stack and needs one supported SDK across Python, C#, and Java. Pick n8n when the people building and maintaining the workflow aren't primarily software engineers, or when the agent needs to sit next to 400 other business integrations you already run.
None of these are mutually exclusive. A common production pattern we see in the Automations Cookbook recipes is n8n orchestrating the business trigger (a webhook, a form, a schedule) and calling out to a LangGraph or CrewAI service for the part that actually needs multi-step reasoning.
What each one is actually for
LangGraph — state machines for agents







