Structurizr MCP server

The experimental Structurizr MCP server: validates a C4 model in DSL, exports views to Mermaid and PlantUML and manages workspaces on a server

  • 507 ★ on the repository
  • Last commit
  • Apache-2.0
MCP serverOfficial

Broad access

Why this level

  • The tools create, update and delete workspaces on a Structurizr server
  • The server API key is passed as a call parameter and is visible in the agent's request
All reasons and checks

structurizr/structurizr

Install

Manual install

Text for your agent

Clone https://github.com/structurizr/structurizr, build the project with ./mvnw on JDK 21 and run ./mcp.sh. Then find the current address and connection method in docs.structurizr.com/ai/mcp and add the server to the agent configuration. Do not ask the user for a Structurizr server API key unless needed and never write it to files.

Access and checks

How we review

Broad accessThe tool can change data, run commands or handle secrets.

  • The tools create, update and delete workspaces on a Structurizr server
  • The server API key is passed as a call parameter and is visible in the agent's request

This is third-party code. Review the repository files before installing.

What it does

The structurizr/structurizr repository holds a models-as-code tool for the C4 architecture notation, and the structurizr-mcp folder contains an experimental MCP server for it. You write the architecture in Structurizr DSL and get several diagrams from a single model. The author of the C4 notation created the tool, and the README calls it the reference implementation. The structurizr-mcp module gives an agent three groups of tools. For DSL there are `validate`, `parse` and `inspect`: the agent checks, parses and examines the workspace text. For diagrams there are `export-mermaid`, `export-plantuml` and `export-c4plantuml`, which export views to Mermaid, PlantUML or C4-PlantUML. For a Structurizr server there are `getWorkspace`, `getWorkspaces`, `createWorkspace`, `updateWorkspace` and `deleteWorkspace`, each needing a server URL and an optional API key. The server is built on Spring AI, runs in a stateless mode and starts from a war file with the mcp.sh script. Dockerfiles for Eclipse Temurin images sit alongside. Connection instructions for an agent are published in the documentation at docs.structurizr.com/ai/mcp.

Who it is for. For architects and developers who describe systems in C4 notation with Structurizr DSL and want an agent to validate the model and export diagrams.

Good fit when

  • An agent wrote or edited workspace.dsl and you need to check syntax and references in the model at once
  • One C4 model has to be exported to views in Mermaid for a wiki or PlantUML for an older documentation pipeline
  • Your team keeps workspaces on a Structurizr server and the agent should list and update them
  • You need to understand the structure of someone else's model: the inspect tool shows what it describes
  • You want to try the models-as-code idea with an agent without building your own DSL parser

Not a fit when

  • You need an arbitrary schematic or block diagram: the server works only with Structurizr DSL models
  • You need a stable product: the author calls the MCP server experimental
  • You have no Java: it starts from a war file, and building it needs Maven and a JDK
  • You do not want workspaces on a shared server changed or deleted: then do not give the agent an API key

Example request

Validate workspace.dsl with the Structurizr MCP and export all views to Mermaid

MCP

Transport
http
Authentication
not required

Limitations

The author labels the MCP server experimental. The README offers no ready npm package or image: the mcp.sh script runs structurizr-mcp-1.0.0.war from the target folder, so you have to build the project yourself with the Maven wrapper (mvnw). Java is required, and the Dockerfile uses Eclipse Temurin 21. The server runs over stateless HTTP, not stdio. The workspace tools take the Structurizr server URL and an API key as call parameters, so the key ends up in the agent's request. The author moved connection details for agents into separate documentation, and the repository does not contain them.

How to disable. Stop the java process running structurizr-mcp and remove the server entry from your agent's configuration. Build output lives in the structurizr-mcp/target folder.

FAQ

How do I connect Structurizr MCP to Claude Code or Cursor?

Build the project, run ./mcp.sh and add the server address to the agent configuration. The author describes the exact steps and address in docs.structurizr.com/ai/mcp. The Dockerfile sets port 8080 through the PORT variable.

What tools does the server have?

Three for DSL analysis: `validate`, `parse`, `inspect`. Three for export: `export-mermaid`, `export-plantuml`, `export-c4plantuml`. Five for a Structurizr server: get one workspace, get all, create, update and delete.

Do I need a Structurizr server to use it?

No. The DSL validation and diagram export tools take the model text directly in the call. A Structurizr server is needed only for the five workspace tools.

How is Structurizr different from ordinary diagram generators?

You describe the model once in Structurizr DSL and views at the different C4 levels are built from it. The author of C4 calls the tool the reference implementation of the notation. You can try Structurizr with no install at playground.structurizr.com or run it locally from a ready Docker image.

Can I run the server in Docker?

The repository has two Dockerfiles, for Eclipse Temurin 21 Alpine and Noble. They copy the built war file into the image and start it with java -jar. The README names no ready image in a registry, so you build it yourself.

Discussion

No questions or reviews yet.

A plugin with skills for building TypeScript MCP servers and MCP apps: the agent scaffolds, edits, debugs and verifies them

PluginExtended access10.8KRepository stars
Official

A local code graph with version history: an MCP server that tells the agent who calls a function and what an edit breaks

MCP serverExtended access506Repository stars

An MCP server that builds a code graph once and serves the answer to the agent instead of re-reading files

MCP serverExtended access198Repository stars

A CLI that builds a ready-made TypeScript MCP server from an OpenAPI 3 spec, with tools, validation and auth generated for you

CLIExtended access643Repository stars

A Rust MCP server on standard threads: the agent gets hover info, go to definition, references, formatting and compiler diagnostics from rust-analyzer

MCP serverExtended access486Repository stars
Russian stack

A Docker server with a read-only core and pluggable modules: metadata, code, forms and relations of several 1C configurations through one MCP contract

MCP serverExtended access12Repository stars

Comparison with similar tools

Entries that share the main search query, and how they differ.

EntryOfficialAuthenticationRepository starsMain difference
Structurizr MCP server (this entry)yesnot required507
MCP Mermaidnonot required646renders Mermaid diagrams from text but does not keep a single C4 model or validate it
Archifyno91,202a skill that draws architecture and workflow diagrams itself, without a separate DSL model

README in short

The root README briefly presents Structurizr as a models-as-code tool for the C4 notation and shows two quick starts: the online playground at playground.structurizr.com and a local run of a ready Docker image. Links lead to a DSL example, a tutorial and the documentation. The structurizr-mcp folder has its own one-line README saying the server is experimental, plus a link to the documentation.

README badge

Report a problem

Foxx AIStructurizr MCP server
Foxx AI

I am Foxx AI and I have already vetted this tool. Ask about install, setup or anything else, and I will keep it simple.