Skip to main content
Glama
OpenOBA

ERDL MCP Server

by OpenOBA

ERDL Action Guard — Tool Call Interceptor

erdl_evaluate

Evaluate planned tool calls against predefined rules to determine if execution is allowed, denied, corrected, or requires human approval.

Instructions

ERDL Action Guard — evaluates planned tool call against loaded rules BEFORE execution.

YOU MUST call this BEFORE every tool call (exec, write_file, edit, web_search, etc). This is MANDATORY. The Guard cannot be bypassed.

After calling, check the decision:

  • ALLOW → proceed with the tool call, follow any instructions

  • DENY → STOP. Do not execute the tool. Tell the user what was blocked.

  • CORRECT → fix the request and retry

  • REQUEST_HUMAN → ask the user for approval before proceeding

Always show the result to the user as a badge card.

RESPONSE (compact badge card format):

  • "ALLOW": ✅ ERDL Guard · N rules

  • "DENY": 🛑 ERDL Blocked · reason

  • "REQUEST_HUMAN": 👤 ERDL Approval · reason

  • "CORRECT": 🔧 ERDL Correct · correction

  • "EMERGENCY_HALT": 🚨 ERDL HALT · reason

  • "PASS": 🔵 ERDL Pass · N rules checked

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
agent_idNoOptional agent identity for audit context
tool_argsNoArguments being passed to the tool
tool_nameYesName of the tool being called (e.g., "exec", "write_file", "web_search")
session_idNoOptional session identifier for audit chain
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description provides adequate behavioral insight: it evaluates rules, returns a decision, and does not execute the tool itself. It could add that no state is modified, but the core behavior is clear.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is longer than necessary, including a full response format with badges and detailed decision handling. While well-structured, it could be more concise by moving the response format to a separate section or simplifying it.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 4 parameters, one required, and nested objects, the description covers the essential usage. It lacks details on error cases (e.g., no rules loaded) but is sufficient for basic operation. The output schema is absent, so the description compensates with response format details.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description repeats the parameter names but does not add meaningful meaning beyond the schema's brief descriptions. For example, 'tool_args' is described as 'arguments being passed to the tool', which is obvious.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool evaluates a planned tool call against loaded rules before execution. It distinguishes from sibling tools like erdl_create_rule, erdl_explain, etc., which handle rule management rather than evaluation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says 'YOU MUST call this BEFORE every tool call' and provides clear instructions for handling each decision outcome (ALLOW, DENY, CORRECT, REQUEST_HUMAN). This gives unambiguous guidance on when and how to use the tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

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