mmar-mcp-server
MMAR-MCP サーバー
MM-AR メタモデリングプラットフォーム に接続し、大規模言語モデルが自然言語による対話を通じて完全なメタモデルとモデルインスタンスを作成できるようにする MCP (Model Context Protocol) サーバーです。
概要
MMAR-MCP は、Model Context Protocol を通じて MM-AR プラットフォームの機能を公開します。
62 のツール: 認証、メタモデル CRUD、インスタンス CRUD 操作用
5 つのリソース: プラットフォームアーキテクチャドキュメント、VizRep テンプレート、メタモデルスキーマ、属性タイプ、参照メタモデルを提供
3 つのプロンプト: メタモデル作成、インスタンス作成、モデル分析のためのガイド付きワークフローをエンコード
サーバーは STDIO トランスポートを介して通信し、任意の MCP 互換ホスト(Cursor、Claude Desktop、または MCP 仕様 を実装したクライアント)で動作します。
Related MCP server: ParaView-MCP
前提条件
要件 | バージョン | 目的 |
v18+ | MCP サーバーの実行 | |
最新 | MM-AR プラットフォームスタックの実行 | |
MCP ホスト | 任意 | LLM をサーバーに接続(例: Cursor、Claude Desktop) |
クイックスタート
以下の 5 つのステップで、ゼロから動作する環境を構築できます。
ステップ 1: MM-AR プラットフォームの起動
オプション A: Docker による完全デプロイ(初回セットアップに推奨)
Docker を使用して MM-AR スタック全体をクローンして起動します。
git clone https://github.com/MM-AR/mmar-docker-installation.git
cd mmar-docker-installation
docker compose --env-file .env up -dすべてのコンテナが正常になるまで待ちます。次のコマンドで確認できます。
docker compose psオプション B: ハイブリッドデプロイ(PostgreSQL は Docker 内、サービスはローカル)
これは論文実験で使用されたセットアップです。メインの MM-AR リポジトリ をクローンする必要があります。
# 1. Start PostgreSQL in Docker
docker run -d --name mmar_postgres \
-e POSTGRES_USER=api -e POSTGRES_PASSWORD=root -e POSTGRES_DB=api \
-p 5432:5432 postgres:16
# 2. Start the API server (requires mmar-server/.env with JWT_SECRET)
cd mmar-server
export $(cat .env | xargs)
cd ..
node dist/mmar-server/index.js
# 3. Start web clients (in separate terminals)
cd mmar-metamodeling-client && npm start # port 8070
cd mmar-modeling-client && npm start # port 8080起動後、以下のサービスが利用可能になります。
サービス | URL | 説明 |
API サーバー | REST API(MCP サーバーがここに接続) | |
メタモデリングクライアント | モデリング言語の定義 | |
モデリングクライアント | モデルインスタンスの作成 | |
VizRep クライアント | ビジュアル表現の設計 |
ブラウザで http://localhost:8000/login にアクセスして API が起動していることを確認します。ログインページが表示されるはずです。デフォルトの認証情報は admin / admin です。
ステップ 2: MCP サーバーのクローンとビルド
git clone https://github.com/ProTech001/mmar-mcp-server.git
cd mmar-mcp-server
npm install
npm run buildnpm run build ステップは TypeScript をコンパイルして dist/ フォルダに JavaScript を生成します。このステップはサーバーを実行する前に必要です。
ステップ 3: インストールの確認
エンドツーエンドのテストスイートを実行して、すべてが正しく動作することを確認します。
npm testこれにより、MCP サーバーが子プロセスとして起動され、実際の MCP ホストと同様に STDIO 経由で JSON-RPC メッセージが送信されます。ハンドシェイク、認証、ツールリスト取得、リソース読み取り、プロンプト取得、および作成/確認/削除の完全なサイクルをテストします。
期待される出力(すべてのテストが合格する必要があります):
==============================================
MM-AR MCP Server — End-to-End Test
==============================================
✅ PASS Initialize (handshake)
→ Server: mmar-mcp-server
✅ PASS List Tools
→ 62 tools registered (expected 62)
✅ PASS List Resources
→ 5 resource(s) (expected 5)
✅ PASS Read Platform Info Resource
→ ...
...
==============================================
Results: 16 passed, 0 failed, 16 total
==============================================テストが失敗した場合は、以下のトラブルシューティングのセクションを参照してください。
ステップ 4: MCP ホストの設定
サーバーは STDIO 上で動作します。MCP ホストを設定して、サブプロセスとして起動するようにします。
Cursor IDE — プロジェクトルートに .cursor/mcp.json を作成または編集します。
{
"mcpServers": {
"mmar": {
"command": "node",
"args": ["/absolute/path/to/mmar-mcp-server/dist/index.js"],
"env": {
"MMAR_API_URL": "http://localhost:8000"
}
}
}
}Claude Desktop — Claude Desktop の設定ファイル(macOS の場合: ~/Library/Application Support/Claude/claude_desktop_config.json)に追加します。
{
"mcpServers": {
"mmar": {
"command": "node",
"args": ["/absolute/path/to/mmar-mcp-server/dist/index.js"],
"env": {
"MMAR_API_URL": "http://localhost:8000"
}
}
}
}/absolute/path/to/mmar-mcp-server を、リポジトリをクローンした実際のパスに置き換えてください。
ステップ 5: 使用開始
設定が完了すると、MCP ホストは 62 個のツールのいずれかを呼び出せるようになります。一般的なワークフローには、3 つのガイド付きプロンプトが用意されています。
create-metamodel — 自然言語の説明から新しいモデリング言語を作成します。
create-model — 既存のメタモデルを使用してモデルインスタンスを作成します。
analyze-model — 既存のモデルを検査・分析します。
例: 「create-metamodel プロンプトを使用して、Place ノード、Transition ノード、Arc 接続を持つ Petri Net モデリング言語を作成してください。」
設定
サーバーは 1 つの環境変数を読み取ります。
変数 | デフォルト | 説明 |
|
| MM-AR REST API のベース URL |
シェル、MCP ホスト設定(ステップ 4 参照)、またはインラインで設定します。
MMAR_API_URL=http://your-host:8000 node dist/index.jsツールカタログ
62 個のツールすべてに mmar_ プレフィックスが付いており、3 つのカテゴリに分類されています。
認証(3 ツール)
ツール | 説明 |
| ユーザー名とパスワードで認証 |
| セッションがアクティブか確認 |
| 現在のセッションを終了 |
メタモデル操作(26 ツール)
カテゴリ | ツール |
シーンタイプ |
|
クラス |
|
リレーションクラス |
|
属性 |
|
ロール |
|
ポート |
|
インスタンス操作(33 ツール)
カテゴリ | ツール |
シーン |
|
クラスインスタンス |
|
リレーションインスタンス |
|
属性インスタンス |
|
ロールインスタンス |
|
ポートインスタンス |
|
ベンドポイント |
|
すべてのツール名には mmar_ プレフィックスが付いています(例: mmar_create_class)。上記の表では読みやすさのためプレフィックスを省略しています。
リソース
URI | 説明 |
| プラットフォームアーキテクチャの概要とガイド付きワークフロー |
| ビジュアル表現のための VizRep コードテンプレート |
| メタモデル構造の JSON スキーマ |
| 利用可能な属性タイプ(String、Float、Boolean など) |
| 参照例としての完全な Petri Net メタモデル |
プロジェクト構造
mmar-mcp-server/
├── src/
│ ├── index.ts # Entry point (STDIO transport)
│ ├── server.ts # MCP server setup and capability registration
│ ├── config.ts # Configuration (reads MMAR_API_URL)
│ ├── api-client.ts # MM-AR REST API client with JWT auth and retry logic
│ ├── tools/
│ │ ├── index.ts # Tool registration hub
│ │ ├── 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)
├── test-mcp.mjs # End-to-end test suite
├── test-data/ # Example payloads for MCP Inspector testing
│ ├── README.md
│ ├── example-ER-diagram-metamodel.json
│ └── example-petri-net-metamodel.json
├── package.json
├── tsconfig.json
└── .gitignore再現可能な評価ハーネス
制御された試験(Cursor チャットではありません)。ここから始めてください。
→ experiments/README.md — セットアップ、実行方法、JSON の場所
→ experiments/EVALUATION-PROCEDURE.md — 分離 / スコアリングプロトコル
→ experiments/harness-results/PRELIMINARY-RESULTS.md — Petri Net 予備結果(6 回の試行)
cd experiment-harness
npm install
cp .env.example .env # add ANTHROPIC_API_KEY; never commit .env
export MMAR_API_URL=http://127.0.0.1:8000
curl -s -o /dev/null -w "API %{http_code}\n" http://127.0.0.1:8000/login # must be 200
npm run one -- --phase metamodel --language petri-net --trial a
npm run one -- --phase instance --language petri-net --trial a
npm run scoreboard
open ../experiments/harness-results/scoreboard.html接続が拒否された場合は、localhost の代わりに 127.0.0.1 を使用してください。新しい試行後は npm run scoreboard を再実行してください。
npm run pilot # scorer self-test
npm run pilot -- --with-api # + reset + MCP dry-run + GT seed (API must be up)MCP Inspector を使用したテスト
対話型デバッグには、MCP Inspector を使用できます。
npm run inspectこれにより、ツールの参照、手動呼び出し、リクエスト/レスポンスペイロードの検査が可能な Web UI が開きます。詳細な手順と例のペイロードについては test-data/README.md を参照してください。
トラブルシューティング
ECONNREFUSED または「MM-AR API に接続できません」
MM-AR プラットフォームが実行されていないか、設定された URL に到達できません。
Docker コンテナが実行中であることを確認:
docker compose psAPI が起動していることを確認:
curl http://localhost:8000/loginカスタム URL を使用している場合は、
MMAR_API_URLが正しく設定されていることを確認
「ポート 8000 は既に使用中です」
別のプロセスがポート 8000 を使用しています。そのプロセスを停止するか、MM-AR プラットフォームを別のポートで実行するように設定してください(mmar-docker-installation のドキュメントを参照)。
「admin としてログイン」でテストが失敗する
MM-AR データベースがまだ完全に初期化されていない可能性があります。Docker コンテナは起動後、データベースの初期化が完了するまで数秒必要です。docker compose up の後、10〜15 秒待ってから再試行してください。
「モジュール dist/index.js が見つかりません」
最初に TypeScript ソースをコンパイルする必要があります。
npm run buildMCP ホストがサーバーを検出しない
MCP ホスト設定のパスが
dist/index.jsの絶対パスを指していることを確認してください。設定を変更した後は MCP ホストを再起動してください。
Node.js v18+ がインストールされていることを確認:
node --version
関連リポジトリ
mmar — MM-AR メインプラットフォームリポジトリ
mmar-docker-installation — MM-AR プラットフォーム全体の Docker ベースのセットアップ
mmar-server — MM-AR REST API サーバー
ライセンス
ISC
引用
このソフトウェアを研究で使用する場合は、以下を引用してください:
@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}
}Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityFmaintenanceEnables natural language control of AutoCAD LT through AutoLISP code generation and execution, allowing users to create engineering drawings with conversational prompts.8451MIT
- Alicense-qualityFmaintenanceIntegrates multimodal large language models with ParaView to enable the creation and manipulation of scientific visualizations using natural language and visual inputs. It features visual feedback capabilities for iterative refinement, making advanced visualization workflows accessible through intelligent automation.58BSD 3-Clause
- -license-quality-maintenanceEnables AI agents to traverse SysML v2 model graphs, query requirements, and perform impact analysis for model-based systems engineering. It allows agents to interact with plain-text models to automate documentation and refine system architectures.
- Flicense-qualityFmaintenanceEnables AI-driven graphical diagram creation and manipulation using natural language, with support for BPMN workflows, analysis, and manual editing via the Model Context Protocol.1
Related MCP Connectors
AI Agent with Architectural Memory. Impact analysis (free), tests and code from the graph (pro).
Map text into knowledge graphs to create a structured representation of conceptual relations and t…
Create and manage AI agents that collaborate and solve problems through natural language interacti…
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ProTech001/mmar-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server