Skip to content

io.github.wyattbenno777/icme-preflight

by wyattbenno777 · remote · no sign-in to list tools · v1.0.1 · published by GitHub user wyattbenno777

Jailbreak-proof AI guardrails. Automated Reasoning SMT solver, not an LLM. ZK proofs included.

Changes · 13

14 tools: 13 change things and 1 only read.

Scanned Oct 21, 2026

No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http icme-preflight https://api.icme.io/mcp

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

14 tools

Changes things 13Claude Code: ask
  • check_actionEnforce a guardrail: verify an agent action against a compiled policy using formal verification.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Enforce a guardrail: verify an agent action against a compiled policy using formal verification. An SMT solver — not an LLM — determines whether the action satisfies every rule. Returns SAT (allowed) or UNSAT (blocked) with extracted values and a cryptographic ZK proof that the check was performed correctly. Cannot be jailbroken. 1 credit ($0.01). Requires api_key. Tip: end the action with an explicit claim like 'I assert this complies with the policy' for best extraction.
  • check_action_paidSame formal verification as check_action, but pay per call with x402 ($0.10 USDC on Base) instead of using credits.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Same formal verification as check_action, but pay per call with x402 ($0.10 USDC on Base) instead of using credits. No API key or account needed — any agent with a wallet can verify actions on the fly. Returns SAT (allowed) or UNSAT (blocked) with extracted values and optional ZK proof.
  • check_logicCatch contradictions in reasoning before acting on it.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Catch contradictions in reasoning before acting on it. FREE — no account needed. Extracts quantitative and logical claims from any plan, calculation, or chain of thought, then uses a Z3 SAT solver to mathematically prove whether they contradict each other. This is formal verification, not an LLM second-guessing itself. Returns CONSISTENT, CONTRADICTION, or UNKNOWN with the extracted claims.
  • check_relevanceFree relevance screen — checks whether an action touches any of your policy variables before running a paid check.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Free relevance screen — checks whether an action touches any of your policy variables before running a paid check. Returns a relevance score and which variables matched. If should_check is true, run check_action. If false, the action is unrelated to your policy — skip the paid check. No credits charged. Requires api_key.
  • create_accountCreate an ICME Preflight account with x402 USDC payment ($5.00 on Base).No findings

    Why it is in this group

    • The name "create_account" says "create": a word for a change.
    Description, as the server wrote it
    Create an ICME Preflight account with x402 USDC payment ($5.00 on Base). Returns an API key and 325 starting credits immediately. Save the api_key — it is shown only once. Use create_account_card instead if paying by credit card.
  • create_account_cardCreate an ICME Preflight account with a credit card ($5.00 via Stripe).No findings

    Why it is in this group

    • The name "create_account_card" says "create": a word for a change.
    Description, as the server wrote it
    Create an ICME Preflight account with a credit card ($5.00 via Stripe). Returns a checkout_url — open it in a browser to pay. After payment completes, call poll_session with the session_id to retrieve your API key.
  • make_rulesTurn a plain-English policy into a jailbreak-proof guardrail.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Turn a plain-English policy into a jailbreak-proof guardrail. Write rules the way you would explain them to a colleague — ICME compiles them into formal logic (SMT-LIB) that a mathematical solver enforces. No prompt engineering. No LLM judges. The solver either proves an action complies or it doesn't. Returns a policy_id and test scenarios for review. Costs 300 credits. Requires api_key.
  • poll_sessionCheck the status of a Stripe card payment.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Check the status of a Stripe card payment. Returns pending or complete. On completion after signup, returns the api_key. Call this after create_account_card or top_up_card once the user has paid.
  • quick_checkFast yes/no guardrail verdict — returns only ALLOWED or BLOCKED with no proof details.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Fast yes/no guardrail verdict — returns only ALLOWED or BLOCKED with no proof details. Use when you need a lightweight gate and don't need the full SAT/UNSAT report or ZK proof. Same formal verification under the hood, just a minimal response. 1 credit. Requires api_key.
  • run_testsRun saved test cases against a policy to confirm it blocks what it should block and allows what it should allow.No findings

    Why it is in this group

    • The name "run_tests" says "run": a word for a change.
    Description, as the server wrote it
    Run saved test cases against a policy to confirm it blocks what it should block and allows what it should allow. Run this after make_rules and before using the policy in production. Requires api_key.
  • top_upAdd 500 credits to your account via x402 USDC payment ($5.00 on Base).No findings

    Why it is in this group

    • The description's first verb is "add": a word for a change.
    Description, as the server wrote it
    Add 500 credits to your account via x402 USDC payment ($5.00 on Base). Use top_up_card instead for credit card payment with volume discounts. Requires api_key.
  • top_up_cardAdd credits via credit card with volume bonuses.No findings

    Why it is in this group

    • The description's first verb is "add": a word for a change.
    Description, as the server wrote it
    Add credits via credit card with volume bonuses. Returns a checkout_url. Tiers: $5 = 500 credits, $10 = 1,050 (+5%), $25 = 2,750 (+10%), $50 = 5,750 (+15%), $100 = 12,000 (+20%). Credits never expire. Requires api_key.
  • verify_proofIndependently verify a ZK proof from a prior check_action call.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Independently verify a ZK proof from a prior check_action call. Confirms the guardrail check was performed correctly without re-running it — any third party or monitoring agent can verify in under one second. No additional cost. Wait a few minutes after the check for the proof to be generated. Single-use per proof.
Only reads 1Claude Code: allow
  • get_scenariosReview auto-generated test scenarios for a compiled policy.No findings

    Why it is in this group

    • The name "get_scenarios" says "get": a word for reading.
    Description, as the server wrote it
    Review auto-generated test scenarios for a compiled policy. Shows example actions that should pass and fail, so you can verify the policy behaves as intended before deploying it. Requires api_key.

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.0.1. Values in angle brackets are yours to fill in.

claude mcp add --transport http icme-preflight https://api.icme.io/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__icme-preflight__get_scenarios"
    ],
    "ask": [
      "mcp__icme-preflight__check_logic",
      "mcp__icme-preflight__check_relevance",
      "mcp__icme-preflight__make_rules",
      "mcp__icme-preflight__check_action",
      "mcp__icme-preflight__check_action_paid",
      "mcp__icme-preflight__quick_check",
      "mcp__icme-preflight__verify_proof",
      "mcp__icme-preflight__run_tests",
      "mcp__icme-preflight__create_account",
      "mcp__icme-preflight__create_account_card",
      "mcp__icme-preflight__top_up",
      "mcp__icme-preflight__top_up_card",
      "mcp__icme-preflight__poll_session"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as icme-preflight. Review it before you use it.