Skip to main content
Glama
OpenOBA

ERDL MCP Server

by OpenOBA

ERDL MCP Server

Deterministic rules for AI Agents. Say it once. Never repeat.

npm version npm downloads license tests

๐Ÿ“– ไธญๆ–‡็‰ˆ

ERDL (Entity-Rule Definition Language) gives your Agent deterministic rules. 30 built-in rules across 6 categories. Unlimited personal rules. Free forever.


Why ERDL?

Without ERDL

With ERDL

"Don't use any" โ€” forgotten in 5 turns

Rules enforced deterministically, every tool call

"Write shorter sentences" โ€” ignored

Writing rules fire before every output

"Confirm before adding deps" โ€” skipped

Blocked until you confirm

"Why did you do that?" โ€” no answer

erdl_explain shows the full decision trail


Related MCP server: PolicyGuard

Quick Start

# Start MCP Server (5 tools, 30 rules โ€” all MCP clients)
npx -y @openoba-ai/erdl-mcp

# Or: install OpenClaw Plugin for hardware enforcement
openclaw plugins install @openoba-ai/erdl-openclaw

30 rules active immediately. No account. No configuration. No API key.

ไธญๆ–‡็”จๆˆท๏ผš

npx -y @openoba-ai/erdl-mcp --lang zh

Free vs Pro

Free

Pro

5 MCP Tools

โœ…

โœ…

30 Preset Rules

โœ…

โœ…

Unlimited Personal Rules

โœ…

โœ…

Chinese / English

โœ…

โœ…

All 11 Operators

โœ…

โœ…

MIT Open Source

โœ…

โœ…

Execution Rings 1โ€“2 (REQUEST_HUMAN, ESCALATE, ROLLBACK, QUARANTINE)

โ€”

โœ…

Guardian Agent Role (็›‘็ฎก่€…ๆจกๅผ)

โ€”

โœ…

Audit Export (OCSF / OTLP)

โ€”

โœ…

Team Rules (็ป„็ป‡็บง่ง„ๅˆ™ๅ…ฑไบซ)

โ€”

โœ…

Dashboard (่ง„ๅˆ™ๅ‘ฝไธญ็ปŸ่ฎก)

โ€”

โœ…

Enterprise Compliance Packs (GB/Z 185, NIST, EU AI Act)

โ€”

Enterprise

Get a Pro License โ†’

One-command Install

# macOS / Linux
curl -fsSL https://raw.githubusercontent.com/OpenOBA/erdl-mcp-server/master/scripts/install.sh | bash
# Windows (PowerShell)
iwr https://raw.githubusercontent.com/OpenOBA/erdl-mcp-server/master/scripts/install.ps1 | iex

Why ERDL vs SKILL.md / Prompt Rules?

Prompt-Based Rules

ERDL MCP Server

Execution

LLM "tries" to follow

Deterministic engine โ€” guaranteed

Visibility

Invisible, can't tell if it worked

erdl_explain shows every decision

Reliability

LLM may ignore or forget

Zero hallucination โ€” condition match is mathematical

Testing

Manual

erdl_simulate with 3 auto-scenarios

Portability

Single platform

All MCP-compatible Agents

ERDL rules don't suggest. They don't hope. They enforce.


What's Included

30 Built-in Rules (8 Categories)

Category

Rules

Scope

coding

10

TypeScript quality, Git discipline, dependency hygiene

engineering

24

Workflow discipline, pipeline gates, session memory, self-verify

writing

7

Tone, formatting, clarity

design

3

Tailwind-first, responsive, accessible

security

6

SQL injection, eval, hardcoded secrets, input validation

testing

11

Coverage, boundary conditions, flaky tests, TDD workflow

performance

3

N+1 queries, pagination, measure before optimize

observability

3

Structured logging, health checks, no secrets in logs

5 MCP Tools

Tool

Purpose

erdl_evaluate

Action Guard โ€” check rules before every tool call

erdl_simulate

Test a rule against 3 scenarios before creating

erdl_create_rule

Create a rule from natural language

erdl_list_rules

List all active rules

erdl_explain

Full decision trail for any action

MCP Resources

Resource

Content

erdl://rules/list

All rules as JSON

erdl://status

Server runtime status


Installation

Any MCP Client

{
  "mcpServers": {
    "erdl": {
      "command": "npx",
      "args": ["-y", "@openoba-ai/erdl-mcp@latest"]
    }
  }
}

Or let ERDL generate the config for your client:

npx @openoba-ai/erdl-mcp@latest --setup

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or the equivalent path on your OS.

Cursor

Add to .cursor/mcp.json in your project root.

OpenClaw

# MCP Server (all MCP clients)
openclaw mcp set erdl '{"command":"npx","args":["-y","@openoba-ai/erdl-mcp@latest"]}'

# OpenClaw Plugin (hard enforcement via before_tool_call)
openclaw plugins install @openoba-ai/erdl-openclaw

Plugin vs MCP Server: The MCP Server gives your Agent ERDL tools. The Plugin adds deterministic tool call interception โ€” rules run BEFORE every exec/write/search, no relying on LLM self-discipline. Install both for maximum protection.

VS Code / GitHub Copilot

Add to .vscode/mcp.json or the Copilot MCP configuration.


Creating Your First Rule

You: "Never use `any` in TypeScript."

Agent: 1. erdl_simulate โ†’ tests the rule against 3 scenarios
       2. erdl_create_rule โ†’ saves to ~/.openoba/rules/
       3. Rule is now active. Next `any` will be blocked.

You: "Why did you reject my code?"
Agent: erdl_explain โ†’ shows every rule that fired

Or create rules manually in ~/.openoba/rules/ (ERDL SPEC ยง5 format):

protocol: "erdl/v1"
version: "1.0.0"

rules:
  - name: "no_console_log"
    description: "Don't commit console.log statements"
    priority: 10
    when:
      logic: AND
      conditions:
        - field: "tool.name"
          operator: in
          value: ["write", "edit", "apply_patch"]
        - field: "tool.args"
          operator: match
          value: "console\\.log"
    then: DENY
    message: "Remove console.log before committing"

๐Ÿ“š Full tutorial: Create Your First ERDL Rule โ†’ (English)

๐Ÿ“– Complete Rule Reference (all 30 rules with modification guides) โ†’ (English)


CLI Reference

npx @openoba-ai/erdl-mcp@latest          # Start MCP server (always latest)
npx @openoba-ai/erdl-mcp@latest --lang zh # Chinese mode
npx @openoba-ai/erdl-mcp@latest --pro-key sk-xxx  # Activate Pro license
npx @openoba-ai/erdl-mcp@latest --upgrade  # Upgrade to latest
npx @openoba-ai/erdl-mcp@latest --uninstall  # Clean removal
npx @openoba-ai/erdl-mcp@latest --help     # Full usage

Upgrading from v1.0.x? You MUST update your MCP config:

Remove old local-path config:

openclaw mcp remove erdl  # or remove "erdl" from mcp.servers in config

Re-add with npx (auto-latest):

openclaw mcp set erdl "{\"command\":\"npx\",\"args\":[\"-y\",\"@openoba-ai/erdl-mcp@latest\"]}"

Or manually in ~/.openclaw/openclaw.json โ†’ mcp.servers.erdl:

{ "command": "npx", "args": ["-y", "@openoba-ai/erdl-mcp@latest"] }

npm cache clearing (if --version shows an older release):

npm cache clean --force

Run from Source

git clone https://github.com/OpenOBA/erdl-mcp-server.git
cd erdl-mcp-server
npm install
npm run build
node bin/erdl-mcp.js --version

License

MIT ยท OpenOBA ยท @OpenOBA

Built by AI + Human. Deterministic architecture, not prompt engineering.

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

โ€“Maintainers
โ€“Response time
โ€“Release cycle
โ€“Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

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/OpenOBA/erdl-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server