ArchiMate MCP Server

ArchiMate MCP Server

Enables AI assistants to create, validate, and visualize ArchiMate 3.2 enterprise architecture diagrams through natural language. Supports all 55+ element types across 7 architectural layers with Mermaid diagram generation and XML export capabilities.

Category
Visit Server

README

@null-pointer/mcp-archimate

npm version License: MIT

A Model Context Protocol (MCP) server that generates ArchiMate 3.2 enterprise architecture diagrams. This server enables AI assistants like Claude to create, validate, and visualize ArchiMate models through natural language interactions.

What is ArchiMate?

ArchiMate is an open standard for enterprise architecture modeling that provides a visual language for describing, analyzing, and communicating enterprise architectures. It covers business, application, technology, and implementation domains across multiple architectural layers.

Features

  • Complete ArchiMate 3.2 Support: All 55+ element types across 7 architectural layers
  • Intelligent Validation: Ensures diagram compliance with ArchiMate 3.2 specification
  • Mermaid Diagram Generation: Creates beautiful, shareable diagrams
  • ArchiMate XML Export: Generates ArchiMate 3.0 Open Exchange Format XML
  • Case-Insensitive Operations: Flexible element and relationship naming
  • MCP Integration: Seamless integration with Claude Desktop and other MCP clients

Quick Start

Installation

Install the package globally to use as an MCP server:

npm install -g @null-pointer/mcp-archimate

Or install locally in your project:

npm install @null-pointer/mcp-archimate

Running the MCP Server

Start the server directly:

npx -y @null-pointer/mcp-archimate

Or if installed globally:

mcp-archimate

Prerequisites

  • Node.js (v16 or higher)

Claude Desktop Integration

  1. Locate your Claude Desktop config file:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
  2. Add the MCP server configuration:

    {
      "mcpServers": {
        "archimate": {
          "command": "npx",
          "args": ["-y", "@null-pointer/mcp-archimate"]
        }
      }
    }
    

    Or if installed globally:

    {
      "mcpServers": {
        "archimate": {
          "command": "mcp-archimate"
        }
      }
    }
    
  3. Restart Claude Desktop to load the new MCP server

Available Tools

The MCP server provides four main tools:

1. generate_archimate_diagram

Creates Mermaid diagrams from ArchiMate elements and relationships.

2. validate_archimate_model

Validates models against ArchiMate 3.2 specification rules.

3. list_archimate_elements

Lists available element types, optionally filtered by layer.

4. list_archimate_relationships

Lists all available relationship types.

Usage Examples

Basic Business Process Diagram

Prompt: "Create an ArchiMate diagram showing a customer ordering process with a customer actor, ordering process, and order management application"

Expected Output: A Mermaid diagram showing:

  • Business Actor (Customer)
  • Business Process (Ordering Process)
  • Application Component (Order Management System)
  • Appropriate relationships between them

Application Architecture

Prompt: "Design an e-commerce application architecture with a web interface, API service, database, and payment gateway"

Expected Elements:

  • Application Interface (Web UI)
  • Application Service (API Service)
  • Data Object (Customer Data, Order Data)
  • Technology Service (Payment Gateway)
  • Node (Database Server)

Technology Infrastructure

Prompt: "Show me the technology infrastructure for a cloud-based system with load balancer, web servers, application servers, and database cluster"

Expected Elements:

  • Device (Load Balancer)
  • Node (Web Servers, App Servers)
  • Technology Service (Database Service)
  • Technology Collaboration (Cluster Communication)

Sample Prompts for Claude

Here are effective prompts to use with Claude when the MCP server is configured:

Discovery and Learning

"What ArchiMate elements are available in the business layer?"
"Show me all the relationship types I can use"
"What's the difference between a business process and business function?"

Simple Diagrams

"Create a basic ArchiMate diagram showing how users interact with a mobile app"
"Design a simple business process diagram for customer onboarding"
"Show me the technology stack for a typical web application"

Complex Scenarios

"Create an ArchiMate model for a digital banking transformation showing business processes, applications, and technology infrastructure"

"Design an enterprise architecture diagram for a retail company showing customer journey, supporting applications, and underlying technology"

"Model a cloud migration scenario showing current on-premise architecture and target cloud architecture"

Validation and Analysis

"Validate this ArchiMate model and tell me if there are any specification violations"
"Check if a business actor can have a realization relationship with an application service"
"What relationships are valid between a business process and application component?"

ArchiMate Layers and Elements

Motivation Layer

Elements for describing stakeholder concerns, goals, and requirements

  • Stakeholder, Driver, Assessment, Goal, Outcome, Principle, Requirement, Constraint

Strategy Layer

Elements for strategic planning and capability modeling

  • Resource, Capability, Value Stream, Course of Action

Business Layer

Elements for business processes, actors, and services

  • Business Actor, Business Role, Business Collaboration, Business Interface, Business Process, Business Function, Business Interaction, Business Event, Business Service, Business Object, Contract, Representation, Product

Application Layer

Elements for application components and services

  • Application Component, Application Collaboration, Application Interface, Application Function, Application Interaction, Application Process, Application Event, Application Service, Data Object

Technology Layer

Elements for technology infrastructure and platforms

  • Node, Device, System Software, Technology Collaboration, Technology Interface, Technology Function, Technology Process, Technology Interaction, Technology Event, Technology Service, Path, Communication Network, Artifact

Physical Layer

Elements for physical facilities and equipment

  • Equipment, Facility, Distribution Network, Material

Implementation & Migration Layer

Elements for transformation planning

  • Work Package, Deliverable, Implementation Event, Plateau, Gap

Relationship Types

ArchiMate defines several relationship categories:

Structural Relationships

  • Composition: Part-of relationships
  • Aggregation: Groups of elements
  • Assignment: Allocation of behavior/structure
  • Realization: Implementation relationships

Dependency Relationships

  • Serving: Service provision
  • Access: Data/object access
  • Influence: Impact relationships

Dynamic Relationships

  • Triggering: Temporal/causal sequences
  • Flow: Information/material transfer

Other Relationships

  • Specialization: Generalization/specialization
  • Association: Generic connections

Best Practices

When Creating Diagrams

  1. Start Simple: Begin with core elements and add detail progressively
  2. Use Proper Layers: Respect ArchiMate's layered architecture
  3. Validate Early: Check relationships against the specification
  4. Name Clearly: Use descriptive names for elements
  5. Focus Purpose: Create diagrams with specific stakeholder viewpoints

Effective Prompting

  1. Be Specific: Mention the domain (business, application, technology)
  2. Provide Context: Describe the scenario or use case
  3. Request Validation: Ask Claude to validate complex models
  4. Iterate: Build diagrams incrementally with feedback

Common Patterns

  • Layered View: Show relationships between business, application, and technology
  • Process Flow: Model business processes with supporting applications
  • Service Orientation: Focus on services and their relationships
  • Capability Mapping: Link business capabilities to supporting elements

Development

Running in Development Mode

npm run dev

Testing the MCP Server

node test-mcp.js

Project Structure

src/
├── core/           # Core ArchiMate element classes
├── generator/      # Diagram generation logic
├── models/         # Type definitions and enums
├── validator/      # ArchiMate specification validation
└── server.ts       # MCP server implementation

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests if applicable
  5. Submit a pull request

License

[Add your license information here]

Resources

Support

For issues, questions, or contributions, please visit the project repository or contact the maintainers.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured