Command Palette

Search for a command to run...

UnylyUnyly
Browse all

Merovingian Server

FreeNot checked

Enables AI agents to map cross-repository dependencies, detect breaking changes in API contracts, and assess impact across services.

GitHubEmbed

About

Enables AI agents to map cross-repository dependencies, detect breaking changes in API contracts, and assess impact across services.

README

Cross-repository dependency intelligence for AI agents via MCP.

Merovingian maps cross-repo dependencies — API contracts, shared schemas, consumer relationships — and detects breaking changes before they propagate. It answers: "What else will break if I change this?"

Part of the EvoIntel MCP Suite (Sentinel, Niobe, Merovingian, Seraph, Anno).

Features

  • OpenAPI spec parsing — detects endpoints, request/response schemas, $ref resolution (recursive, with cycle detection), allOf/anyOf/oneOf support
  • Pydantic model extraction — AST-parses Python files for BaseModel subclasses, no runtime imports needed
  • Direction-aware breaking change detection — request vs response changes have opposite breaking semantics
  • Consumer registry — track which services consume which endpoints
  • Dependency graph — visualize producer/consumer relationships across repos
  • Contract versioning — deterministic SHA256 spec hashing, version history with diff tracking
  • MCP interface — 8 tools for AI agent consumption
  • CLI — 12 commands via Typer with Rich output

Installation

pip install merovingian

Quick Start

# Register repositories
merovingian register user-service /path/to/user-service --type openapi
merovingian register billing-service /path/to/billing-service

# Scan for contracts
merovingian scan user-service

# Register consumer relationships
merovingian add-consumer billing-service user-service GET /users/{id}

# Check for breaking changes
merovingian breaking user-service

# Full impact assessment with consumer mapping
merovingian impact user-service

# View dependency graph
merovingian graph

# Contract version history
merovingian contracts user-service

CLI Commands

Command Description
register <name> <path> Register a repository for scanning
unregister <name> Remove a registered repository
repos List all registered repositories
scan <repo> Scan and update endpoints
consumers List consumer relationships
add-consumer <consumer> <producer> <method> <path> Register a consumer
breaking <repo> Check for breaking changes
impact <repo> Full impact assessment with consumer mapping
contracts <repo> View contract version history
graph View dependency graph
feedback <target_id> <outcome> Submit feedback
audit View audit log

MCP Server

Add to your Claude Code configuration (~/.claude.json):

{
  "mcpServers": {
    "merovingian": {
      "command": "merovingian-mcp",
      "args": []
    }
  }
}

MCP Tools

Tool Description
merovingian_register Register a repository for contract scanning
merovingian_consumers List consumers of endpoints
merovingian_breaking Check for breaking changes
merovingian_impact Full impact assessment with consumer mapping
merovingian_contracts List contract versions
merovingian_graph Query the dependency graph
merovingian_feedback Submit feedback on assessments
merovingian_audit Query the audit log

Breaking Change Detection

Merovingian classifies changes with direction-aware logic:

Breaking (blocks consumers):

  • Endpoint removed
  • Required field added to request body
  • Response field removed
  • Field type changed (non-widening)
  • Optional field made required in request

Warning:

  • Type widened (e.g., integernumber)
  • Required field made optional in response

Info (non-breaking):

  • Endpoint added
  • Optional field added to request
  • Response field added
  • Summary/description changed

Configuration

Merovingian uses layered configuration: TOML file → environment variables → defaults.

Create .merovingian/config.toml in your project root:

[store]
db_name = "merovingian.db"

[scanner]
openapi_patterns = ["openapi.yaml", "openapi.json", "swagger.yaml", "swagger.json"]
pydantic_scan_dirs = ["src", "app", "lib"]

[mcp]
default_query_limit = 50

Part of the EvoIntel MCP Suite

Merovingian solves AI Blindness #3: Cross-Service Dependencies — API contracts, consumer relationships, and breaking changes that span repository boundaries.

Part of the EvoIntel MCP Suite by Evolving Intelligence AI: five tools for five blindnesses no model improvement will ever fix.

Tool Blindness Install
Sentinel Project History pip install git-sentinel
Niobe Runtime Behavior pip install niobe
Merovingian Cross-Service Dependencies pip install merovingian
Seraph Code Quality pip install seraph-ai
Anno Web Content npm install -g @evointel/anno

License

MIT

from github.com/evo-hydra/merovingian

Install Merovingian Server in Claude Desktop, Claude Code & Cursor

Recommended · one command, every IDE
unyly install merovingian-mcp-server

Installs into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.

First time? Get the CLI: curl -fsSL https://unyly.org/install | sh

Or configure manually

Run in your terminal:

claude mcp add merovingian-mcp-server -- uvx merovingian

FAQ

Is Merovingian Server MCP free?

Yes, Merovingian Server MCP is free — one-click install via Unyly at no cost.

Does Merovingian Server need an API key?

No, Merovingian Server runs without API keys or environment variables.

Is Merovingian Server hosted or self-hosted?

Self-hosted: the server runs locally on your machine via the install command above.

How do I install Merovingian Server in Claude Desktop, Claude Code or Cursor?

Open Merovingian Server on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Related MCPs

Compare Merovingian Server with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All ai MCPs