Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

MVC

MVC (Model-View-Controller) is a software design pattern that separates an application into three interconnected parts — the model that holds data and rules, the view that renders the interface, and the controller that handles input — to keep concerns cleanly divided.

MVC, short for Model-View-Controller, is a design pattern that organizes an application into three cooperating roles so that data, presentation, and control logic each stay in their own place. The model owns the data and business rules, the view renders what the user sees, and the controller translates user input into actions on the model. It has been a default way to structure web and desktop applications for decades because it keeps a change in one part from forcing changes everywhere else.

  • Model - The data, state, and business rules of the application, unaware of how they will be displayed.
  • View - The rendering layer that turns model state into an interface, whether HTML, a native screen, or a serialized API response.
  • Controller - The mediator that receives input, invokes the right model behavior, and selects the view to return.
  • Separation of concerns - The core payoff, letting teams work on interface, logic, and data independently.

In the API world, MVC frameworks like Rails, Laravel, and Django are where an enormous share of web APIs are actually implemented — the controller layer is frequently what gets exposed as REST endpoints, with models serialized to JSON instead of rendered as HTML. As front ends moved to single-page applications built on Angular, Backbone, and their successors, the view layer migrated to the client while the server kept the model and controller behind an API, a shift I watched reshape how developers thought about the boundary between UI and data. The same separation-of-concerns instinct scales up to Multi-tier Architecture across services.

Referenced on the API Evangelist blog

Where this standard shows up across sixteen years of my writing at apievangelist.com — how it fits into API design, governance, and the agentic turn.