mmar-mcp-server
Enables creation of complete metamodels and model instances through natural language interaction by connecting Large Language Models to the MM-AR metamodeling platform.
README
MMAR-MCP Server
An MCP (Model Context Protocol) server that connects Large Language Models to the MM-AR metamodeling platform, enabling users to create complete metamodels and model instances through natural language interaction.
Overview
MMAR-MCP exposes the MM-AR platform's capabilities through the Model Context Protocol:
- 62 tools for authentication, metamodel CRUD, and instance CRUD operations
- 5 resources providing platform architecture, VizRep templates, the meta²-model schema, attribute types, and a reference metamodel
- 3 prompts encoding guided workflows for metamodel creation, instance creation, and model analysis
Prerequisites
- Node.js v18 or later
- Docker (for running the MM-AR platform)
- An MCP-compatible host application (e.g., Cursor IDE, Claude Desktop, or any client supporting the Model Context Protocol)
Getting Started
Step 1: Set up the MM-AR Platform
The MCP server requires a running instance of the MM-AR platform. The easiest way to set it up is using Docker:
git clone https://github.com/MM-AR/mmar-docker-installation.git
cd mmar-docker-installation
docker compose up -d
This starts the full MM-AR stack: PostgreSQL database, API server (port 8000), Modeling Client (port 8080), and Metamodeling Client (port 8070). See the mmar-docker-installation README for detailed configuration options.
Step 2: Install the MCP Server
git clone https://github.com/ProTech001/mmar-mcp-server.git
cd mmar-mcp-server
npm install
npm run build
Step 3: Configure Your MCP Host
The server runs over STDIO and works with any MCP-compatible host. Below are configuration examples for common hosts.
Cursor IDE — add to .cursor/mcp.json in your project root:
{
"mcpServers": {
"mmar": {
"command": "node",
"args": ["/absolute/path/to/mmar-mcp-server/dist/index.js"]
}
}
}
Claude Desktop — add to your Claude Desktop configuration file:
{
"mcpServers": {
"mmar": {
"command": "node",
"args": ["/absolute/path/to/mmar-mcp-server/dist/index.js"]
}
}
}
Replace /absolute/path/to/mmar-mcp-server with the actual path where you cloned the repository.
Step 4: Start Using
Once configured, you can use the guided prompts in your MCP host:
- create-metamodel — Create a new modeling language from a natural language description
- create-model — Create a model instance using an existing metamodel
- analyze-model — Inspect and analyze existing models
For example: "Use the create-metamodel prompt to create a Petri Net modeling language with Place nodes, Transition nodes, and Arc connections."
Configuration
The server connects to the MM-AR API at http://localhost:8000 by default. If your MM-AR instance runs on a different host or port, set the MMAR_API_URL environment variable:
export MMAR_API_URL=http://your-mmar-host:8000
Project Structure
src/
├── index.ts # Entry point
├── server.ts # MCP server setup
├── config.ts # Configuration
├── api-client.ts # MM-AR REST API client
├── tools/
│ ├── index.ts # Tool registration
│ ├── auth.tools.ts # Authentication tools (3)
│ ├── meta.tools.ts # Metamodel CRUD tools (26)
│ └── instance.tools.ts # Instance CRUD tools (33)
├── resources/
│ └── index.ts # Resource definitions (5)
└── prompts/
└── index.ts # Prompt definitions (3)
Related Repositories
- mmar — Main MM-AR platform repository
- mmar-docker-installation — Docker-based setup for the full MM-AR platform
- mmar-server — MM-AR REST API server
License
ISC
Citation
If you use this software in your research, please cite:
@inproceedings{chima2026mmar-mcp,
title={Agentic Creation of Modeling Languages: Extending the MM-AR Metamodeling Platform with MCP},
author={Chima, Prosper and Fill, Hans-Georg and Curty, Simon},
booktitle={Proceedings of the International Conference on Conceptual Modeling (ER), Demos and Posters},
year={2026}
}
Recommended Servers
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.
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.
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.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
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.
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.
Neon Database
MCP server for interacting with Neon Management API and databases
E2B
Using MCP to run code via e2b.
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.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.