Skip to main content
Glama
MCP Server for Alloy Modeling Language

MCP Server for Alloy Modeling Language

by awwaiid

MCP Server for Alloy Modeling Language

This is an MCP server that can let you run a local Alloy-Language server. You can use it to allow an LLM-powered agent to generate and execute Alloy modeling code.

Alloy is an open source language and analyzer for software modeling. It has been used in a wide range of applications, from finding holes in security mechanisms to designing telephone switching networks. This site provides language documentation, tool downloads, and a repository of links to case studies and applications. As the open source community grows, this site will also provide access to extensions of the Alloy Analyzer, and tools built on top of it and on top of Kodkod, its model finding engine. (alloytools.org)

This MCP server uses the alloy-lang npm package which bundles the language binary for easy use from nodejs.

Installation

npm install
npm run build

Related MCP server: OpenKer Modeler MCP Server

Usage

As an MCP Server

Run the server using stdio transport:

npm start

Or use the built binary directly:

node build/index.js

Development

# Build TypeScript
npm run build

# Build and run
npm run dev

# Lint code
npm run lint

# Fix linting issues
npm run lint:fix

# Run tests
npm test

MCP Features

Tools

  • execute_alloy: Execute Alloy modeling language code and return structured JSON results

    • Input: code (string) - The Alloy code to execute

    • Output: JSON with instances, values, and solver results

Resources

  • alloy://docs: Basic Alloy language documentation and syntax reference

  • alloy://examples: Example Alloy models (graphs, file systems, state machines)

Prompts

  • create_alloy_model: Generate an Alloy model based on a system description

    • Input: description (string) - Description of the system to model

Example Alloy Code

sig Node {
  edges: set Node
}

// No self-loops
fact { all n: Node | n not in n.edges }

// Find a graph with a cycle
run { some n: Node | n in n.^edges } for 5

Resources

Available Tools

1 tool
execute_alloyC

Execute Alloy modeling language code and return structured JSON results

Inputs: code (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3/5.0

    Scored across 1 tool

    Disambiguation5/5

    With only one tool, there is no possibility of ambiguity or overlap between tools, making disambiguation perfect.

    Naming Consistency5/5

    The single tool follows a clear verb_noun pattern (execute_alloy), and with no other tools, consistency is inherently perfect.

    Tool Count2/5

    One tool is too few for a modeling language server, as it lacks essential operations like model validation, instance generation, or visualization, making the scope feel incomplete.

    Completeness1/5

    The tool surface is severely incomplete; it only allows code execution without supporting core Alloy workflows such as checking assertions, generating examples, or analyzing models, leading to significant gaps.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      D
      maintenance
      Integrates the Quint formal specification language into LLM workflows for accessible formal verification. It provides tools for type-checking, random simulation, exhaustive model checking, and syntax documentation.
      6
      2
      PolyForm Noncommercial 1.0.0
    • -
      license
      Not graded
      quality
      Not graded
      maintenance
      Enables 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.
      -
    • F
      license
      Not graded
      quality
      Not graded
      maintenance
      Enables AI agents to compile, execute, and check Almide code for syntax or compilation errors. It provides tools for generating ASTs and accessing language grammar resources.
      -
    • A
      license
      A
      quality
      D
      maintenance
      Exposes the TLA+ toolchain (TLC, SANY, PlusCal, TLATeX) as structured JSON tools via the Model Context Protocol, enabling AI assistants to parse, check, simulate, and typeset TLA+ specifications.
      9
      35 npm
      2
      MIT