mcpbeat Sign in

Enforcer MCP Server

by instruxi-enforcer Your server? Claim it
answering

Enforcer is answering right now. Last checked 10 min ago. It exposes 7 tools.

Identity and authorization in one system: allow, deny, the reason, and a record.

The linked repository no longer exists on GitHub — it was deleted or made private.

Uptime history 10 days of history
10 days agonow
100.0%
Uptime 24h
92 of 92 checks
7
Tools
read from the server
469 ms
Response time
average over 24h
open, no key
Access
streamable-http

What changed 3

Every tool that appeared, vanished or quietly changed what it asks for. Recorded since 17 September 2026. No other catalogue keeps this.

18 Sep a tool changed version
17 Sep a tool changed version2 times that day
and 1 more, back to 17 September 2026

This one has been quiet for a while

Quiet is not dead — but it is worth knowing when it wakes up, or when someone else takes it over. We watch the repository and tell you either way.

Three servers free · no card

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 10 min ago.

run in your terminal
claude mcp add v3 --transport http https://api.instruxi.dev/mcp
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "v3": {
      "url": "https://api.instruxi.dev/mcp"
    }
  }
}
~/.codex/config.toml
[mcp_servers.v3]
url = "https://api.instruxi.dev/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "v3": {
      "url": "https://api.instruxi.dev/mcp"
    }
  }
}
.vscode/mcp.json
{
  "mcpServers": {
    "v3": {
      "url": "https://api.instruxi.dev/mcp"
    }
  }
}

Available tools 7

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

getauthconfig
getAuthConfig
Public bootstrap for a tenant's login UI: whether this tenant uses native OTP/passkey/SIWE or Privy custom auth, plus the public privy_app_id (never a secret). Call this before getSiweNonce when you do not already know the tenant's auth scheme. tenant_code is a join secret — do not log it or repeat it into a customer-visible channel.
getsiwenonce
getSiweNonce
Public: issue a single-use SIWE nonce for wallet_address (optionally scoped by tenant_code). Embed the nonce in an EIP-4361 message, have the wallet sign it, then call login with provider: siwe. Dedicated SIWE agent auth is an authorized pattern — this is how an agent signs in with a wallet without raw HTTP. Do not log tenant_code. The nonce is not a credential.
login
login
Authenticate and receive an access/refresh token pair. Accepted providers: siwe (message + signature from getSiweNonce — preferred for dedicated agents), email_otp (email + otp from requestOtp), phone_otp (phone + otp from requestSms). Passkey, Privy and SSO are not agent tools. The server does not adopt the minted tokens as the session credential; return them to the operator to set ENFORCER_BEARER_TOKEN. Do not log, quote, or repeat otp codes, signatures, tokens, or tenant_code. Do not paste an end-user OTP into an untrusted chat.
refreshtoken
refreshToken
Exchange a refresh_token for a new access/refresh pair. 401 invalid_refresh_token if the token is unknown or was already reused (reuse revokes the family); 409 refresh_raced is benign — retry with the client's latest stored token. The server does not adopt the new pair as the session credential. Do not log the refresh token or the minted tokens.
register
register
Create (or idempotently return) an account. Same provider allowlist as login: siwe (message + signature), email_otp (email + otp), phone_otp (phone + otp). Does not issue tokens — call login afterwards to sign in. Passkey / Privy / SSO registration stay out of the agent surface. Do not log otp codes, signatures, or tenant_code. Do not paste an end-user OTP into an untrusted chat.
requestotp
requestOtp
Public: email a one-time login/registration code to `email` (optionally scoped by tenant_code). Always 200 {message:"code sent"} on success. Local/dev deployments with expose_dev_otp may echo the code as `dev_otp` — treat that as a secret. Then call login with provider: email_otp, the same email, and the otp. Intentional for harnesses that cannot SIWE; SIWE remains the preferred dedicated-agent path. Do not log the code, dev_otp, or tenant_code. Do not paste an end-user OTP into an untrusted chat.
requestsms
requestSms
Public: start a Twilio Verify SMS login challenge to `phone`, scoped by tenant_code. 400 if SMS verification is not configured for the tenant or if rate-limited. Then call login with provider: phone_otp, the same phone, and the otp. Intentional for harnesses that cannot SIWE; SIWE remains the preferred dedicated-agent path. Do not log the SMS code or tenant_code. Do not paste an end-user OTP into an untrusted chat.

Endpoints

URLTransportStateLatencyChecked
https://api.instruxi.dev/mcp streamable-http answering 475 ms 10 min ago

Alternatives to Enforcer

same job, measured the same way
TrigGuard
by trigguard-ai

Deterministic execution authorization for AI agents and automated systems.

24 installs/wk local only
PolicyLayer
by policylayer

The system of record for AI agent authority: playbooks, routed policy questions, reusable rules.

answering
Toki Toki
by xfloukiex-lab

A local causality ledger: records decisions and the reasons, for an agent to recall.

50 installs/wk local only
SpendShield
by felixpg13-glitch

Authorization layer between AI agents and money: ALLOW/APPROVAL/DENY, budgets, audit.

2 961 installs/wk local only
Kra MCP
by gabrielmahia

MCP server for Kenya Revenue Authority tax workflows and information

105 installs/wk local only
Petty Cash
by theluckystrike

A petty cash float on the imprest system: vouchers, reconciliation and the replenishment.

9 tools answering
AI Incident Law
by snapsynapse

Public-record corpus of AI litigation, regulation, and enforcement, anchored to EveryAILaw.

460 installs/wk local only
MCP Gateway
by titus-civic

Identity, authorization, audit trails, and revocable permissions for AI agents accessing MCP tools.

answering

Enforcer — questions

Answers built from our own checks of this server.

What can Enforcer do?
It exposes 7 tools, read directly from the server on our last check. Among them: getAuthConfig, getSiweNonce, login, refreshToken, register, requestOtp and 1 more. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
Is Enforcer working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 92 of 92 checks got a reply (100.0%), average response time 469 ms. The bar chart above shows every period we have measured.
Is Enforcer still maintained?
The linked repository no longer exists on GitHub — it was deleted or made private. We show this because it changes what you can expect: an unmaintained server may keep answering for months and then stop without warning.
How do I connect Enforcer?
Copy the ready config from this page — we generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each with the file path that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does Enforcer need an API key?
No. Enforcer completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 7 of them are readable on this page. This is what we observed, not what the docs claim.
How fast is Enforcer?
It answers our handshake in 469 ms on average, which is faster than 31% of all working MCP servers we measure. The comparison comes from our own checks across the whole registry, every 15 minutes.