Composer screenshot

What is Composer?

Composer is an AI-powered tool for creating and maintaining software architecture diagrams. You describe your system's architecture in plain language, connect it to your actual codebase, and the tool generates visual diagrams that represent your design. It's built around the Model Context Protocol (MCP), which allows it to understand your code structure and keep diagrams synchronised with your implementation. The tool is designed for software engineers, architects, and teams who need to document system design without manually drawing diagrams or keeping documentation in sync with code changes. It works best when you want a single source of truth for your architecture that reflects the actual state of your systems.

Key Features

Natural language architecture description

describe your system design in text and have the tool convert it to visual diagrams

Codebase integration

connect your repository so Composer understands your actual code structure and dependencies

Diagram generation

automatically produce architecture diagrams from descriptions and code analysis

Diagram synchronisation

keep your architecture diagrams up to date as your codebase evolves

MCP support

use the Model Context Protocol to extend functionality and connect additional tools

Pros & Cons

Advantages

  • Reduces manual diagram maintenance by generating visuals from code and descriptions
  • Helps teams stay aligned on architecture without separate documentation files
  • Faster than drawing diagrams manually, particularly for complex systems
  • Frees up time for engineers to focus on building rather than documentation

Limitations

  • Relies on accurate descriptions of your architecture; unclear or wrong descriptions will produce inaccurate diagrams
  • Codebase connection setup may require configuration effort depending on your repository structure
  • Works best for teams with well-organised code; messy or undocumented systems may produce less useful results

Use Cases

Creating system architecture diagrams during the design phase of a new project

Documenting microservices and their dependencies without manual upkeep

Generating architecture overviews for new team members joining a project

Keeping architecture documentation in sync with actual code changes

Sharing visual representations of system design with non-technical stakeholders