icme-preflight

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

Sollte ich dies verwenden

Qualität und Sicherheit

A
Qualität der Beschreibung
100%
Vollständigkeit des Schemas
100%
Qualität der Benennung
93%
Risiko der Vergiftung
100%
Übereinstimmung der Berechtigungen
100%
Einhaltung des Protokolls
100%

Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.

Kontextkosten

~1,912Tokens (Tool-Definitionen)
~771 BTypische Antwortgröße
Mittlere Auswirkung auf die Aufmerksamkeit (1.49% von 128k Kontext)

Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.

Installieren

Installation mit einem Klick

Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:

{
  "mcpServers": {
    "icme-preflight": {
      "url": "https://api.icme.io/mcp"
    }
  }
}

Remote-Endpunkte

https://api.icme.io/mcpstreamable-http

Was es kann

Tool-Inventar

Tools (14)

🟢 Nur lesen🟡 Schreiben🔴 Löschen⚪ Unbekannt
🟢check_logic(reasoning, show_smt)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "reasoning": {
      "description": "The reasoning, plan, or chain of thought to check. Be specific — include numbers, conditions, and constraints for the best results (max 2000 chars)",
      "type": "string"
    },
    "show_smt": {
      "description": "Include the generated SMT-LIB2 formula in the response for inspection (default: false)",
      "type": "boolean"
    }
  },
  "required": [
    "reasoning"
  ]
}
🟢check_relevance(action, api_key, policy_id, threshold)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "action": {
      "description": "The agent action to screen (max 2000 chars)",
      "type": "string"
    },
    "api_key": {
      "description": "Your ICME API key",
      "type": "string"
    },
    "policy_id": {
      "description": "Policy ID from make_rules",
      "format": "uuid",
      "type": "string"
    },
    "threshold": {
      "description": "Relevance threshold (0.0 to 1.0). Default 0.0 — any match triggers should_check. Optional.",
      "type": "number"
    }
  },
  "required": [
    "policy_id",
    "action",
    "api_key"
  ]
}
🟡make_rules(api_key, policy)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "api_key": {
      "description": "Your ICME API key (from create_account or create_account_card)",
      "type": "string"
    },
    "policy": {
      "description": "Your policy in plain English, e.g. 'No action may access user data without explicit consent. External API calls require approval above $100.' Up to 50 rules.",
      "type": "string"
    }
  },
  "required": [
    "policy",
    "api_key"
  ]
}
🟢check_action(action, api_key, policy_id)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "action": {
      "description": "The agent action to verify against the policy (max 2000 chars)",
      "type": "string"
    },
    "api_key": {
      "description": "Your ICME API key",
      "type": "string"
    },
    "policy_id": {
      "description": "Policy ID from make_rules",
      "format": "uuid",
      "type": "string"
    }
  },
  "required": [
    "policy_id",
    "action",
    "api_key"
  ]
}
🟢check_action_paid(action, policy_id)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "action": {
      "description": "The agent action to verify against the policy (max 2000 chars)",
      "type": "string"
    },
    "policy_id": {
      "description": "Policy ID from make_rules",
      "format": "uuid",
      "type": "string"
    }
  },
  "required": [
    "policy_id",
    "action"
  ]
}
🟢quick_check(action, api_key, policy_id)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "action": {
      "description": "The agent action to check (max 2000 chars)",
      "type": "string"
    },
    "api_key": {
      "description": "Your ICME API key",
      "type": "string"
    },
    "policy_id": {
      "description": "Policy ID from make_rules",
      "format": "uuid",
      "type": "string"
    }
  },
  "required": [
    "policy_id",
    "action",
    "api_key"
  ]
}
🟢verify_proof(proof_id)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "proof_id": {
      "description": "The proof_id returned by a prior check_action or check_action_paid call",
      "format": "uuid",
      "type": "string"
    }
  },
  "required": [
    "proof_id"
  ]
}
🟢get_scenarios(api_key, policy_id)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "api_key": {
      "description": "Your ICME API key",
      "type": "string"
    },
    "policy_id": {
      "description": "Policy ID from make_rules",
      "format": "uuid",
      "type": "string"
    }
  },
  "required": [
    "policy_id",
    "api_key"
  ]
}
⚪run_tests(api_key, policy_id)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "api_key": {
      "description": "Your ICME API key",
      "type": "string"
    },
    "policy_id": {
      "description": "Policy ID to test",
      "format": "uuid",
      "type": "string"
    }
  },
  "required": [
    "policy_id",
    "api_key"
  ]
}
🟡create_account(username)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "username": {
      "description": "Unique username (1-32 chars, alphanumeric + hyphens/underscores)",
      "pattern": "^[a-zA-Z0-9_-]{1,32}$",
      "type": "string"
    }
  },
  "required": [
    "username"
  ]
}
🟡create_account_card(username)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "username": {
      "description": "Unique username (1-32 chars, alphanumeric + hyphens/underscores)",
      "type": "string"
    }
  },
  "required": [
    "username"
  ]
}
🟡top_up(api_key)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "api_key": {
      "description": "Your ICME API key",
      "type": "string"
    }
  },
  "required": [
    "api_key"
  ]
}
🟡top_up_card(amount_usd, api_key)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "amount_usd": {
      "description": "Top-up amount in USD: 5, 10, 25, 50, or 100",
      "type": "integer"
    },
    "api_key": {
      "description": "Your ICME API key",
      "type": "string"
    }
  },
  "required": [
    "amount_usd",
    "api_key"
  ]
}
🟡poll_session(session_id)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "session_id": {
      "description": "The session_id returned by create_account_card or top_up_card",
      "type": "string"
    }
  },
  "required": [
    "session_id"
  ]
}

Community

Diesen Server bewerten

Nachweis

Aktuelle Beobachtungen

verifiziertVersion nicht aufgezeichnet14 Tools
verifiziertVersion nicht aufgezeichnet14 Tools