MCP Hub
Back to servers

oracle-h

Human approval gate for AI agents. Critical actions approved or rejected by a human via Telegram.

Registry
Updated
Mar 7, 2026

Quick Install

npx -y oracle-h-mcp

ORACLE-H MCP Server

Human-on-the-Loop validation for autonomous AI agents — via Model Context Protocol

npm version npm downloads smithery badge License: MIT

What is ORACLE-H?

ORACLE-H is a safety infrastructure that acts as a mandatory checkpoint for autonomous AI agents. Before executing any critical, destructive, or irreversible action, the agent submits it for human approval via Telegram. The human decides with a single tap.

Agent → oracle_validate → Human gets Telegram alert → Approve/Reject → Agent proceeds

Without ORACLE-H: 4-step workflow succeeds ~81.5% of the time. With ORACLE-H: Same workflow succeeds ~99.6% of the time.

MCP Tools

ToolDescription
oracle_validateSubmit a risky action for human approval. Returns a request_id.
oracle_poll_statusPoll the decision until approved, rejected, or expired.

Quick Start (Demo — no signup required)

# Test immediately with the public demo key
ORACLE_SIGNATURE_KEY=demo-signature-key-change-in-production
ORACLE_BASE_URL=https://oracle-h.online

Installation

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "oracle-h": {
      "command": "npx",
      "args": ["-y", "oracle-h-mcp"],
      "env": {
        "ORACLE_SIGNATURE_KEY": "<your-signature-key>",
        "ORACLE_BASE_URL": "https://oracle-h.online"
      }
    }
  }
}

Cursor / Windsurf

Add to your MCP settings:

{
  "oracle-h": {
    "command": "npx",
    "args": ["-y", "oracle-h-mcp"],
    "env": {
      "ORACLE_SIGNATURE_KEY": "<your-signature-key>",
      "ORACLE_BASE_URL": "https://oracle-h.online"
    }
  }
}

Cline (VS Code)

Add to cline_mcp_settings.json:

{
  "mcpServers": {
    "oracle-h": {
      "command": "npx",
      "args": ["-y", "oracle-h-mcp"],
      "env": {
        "ORACLE_SIGNATURE_KEY": "<your-signature-key>",
        "ORACLE_BASE_URL": "https://oracle-h.online"
      }
    }
  }
}

Roo Code (VS Code)

Add to .roo/mcp.json (project-level) or global MCP settings:

{
  "mcpServers": {
    "oracle-h": {
      "command": "npx",
      "args": ["-y", "oracle-h-mcp"],
      "env": {
        "ORACLE_SIGNATURE_KEY": "<your-signature-key>",
        "ORACLE_BASE_URL": "https://oracle-h.online"
      }
    }
  }
}

GitHub Copilot (VS Code)

Add to VS Code MCP settings (settings.json):

{
  "github.copilot.mcp": {
    "oracle-h": {
      "command": "npx",
      "args": ["-y", "oracle-h-mcp"],
      "env": {
        "ORACLE_SIGNATURE_KEY": "<your-signature-key>",
        "ORACLE_BASE_URL": "https://oracle-h.online"
      }
    }
  }
}

Zed Editor

Add to settings.json:

{
  "context_servers": {
    "oracle-h": {
      "command": {
        "path": "npx",
        "args": ["-y", "oracle-h-mcp"]
      },
      "env": {
        "ORACLE_SIGNATURE_KEY": "<your-signature-key>",
        "ORACLE_BASE_URL": "https://oracle-h.online"
      }
    }
  }
}

Continue.dev

Create .continue/mcpServers/oracle-h.yaml:

name: oracle-h
version: 1.0.0
schema: v1
mcpServers:
  - name: oracle-h
    command: npx
    args:
      - -y
      - oracle-h-mcp
    env:
      ORACLE_SIGNATURE_KEY: <your-signature-key>
      ORACLE_BASE_URL: https://oracle-h.online

LangGraph (Python)

from langchain_mcp_adapters.client import MultiServerMCPClient

async with MultiServerMCPClient({
    "oracle-h": {
        "command": "npx",
        "args": ["-y", "oracle-h-mcp"],
        "env": {
            "ORACLE_SIGNATURE_KEY": "your-key",
            "ORACLE_BASE_URL": "https://oracle-h.online"
        },
        "transport": "stdio"
    }
}) as client:
    tools = client.get_tools()

How it works

  1. Agent calls oracle_validate with action, rationale, projected impact, and TTL
  2. Human receives a Telegram notification with full context and risk analysis
  3. Human taps Approve or Reject directly in Telegram
  4. Agent polls oracle_poll_status until decision arrives
  5. Agent proceeds or aborts based on the human decision

The system includes:

  • 🛡️ Anti-hallucination Watchdog — detects context truncation before submitting
  • 📊 Reliability Calculator — shows the statistical improvement (81.5% → 99.6%)
  • TTL / Expiry — requests auto-expire if no human response within the configured timeout
  • 🔐 Bearer Token Auth — each agent has a unique signature key
  • 🔒 HMAC-SHA256 signed webhooks — tamper-proof decisions

System Prompt Snippet

Add this to your agent's system prompt to ensure ORACLE-H is always used correctly:

## Human Approval Gate — ORACLE-H (MANDATORY)

Call oracle_validate BEFORE executing any action in these categories:

DESTRUCTIVE: Deleting files, dropping databases, removing users, git force-push
EXTERNAL WRITES: Sending emails, posting to APIs, submitting forms
FINANCIAL: Payments, billing changes, subscription modifications
INFRASTRUCTURE: Deployments, server config, DNS, environment variables

POLLING PROTOCOL:
After oracle_validate, poll oracle_poll_status every 10-15 seconds until:
- "approved" → proceed
- "rejected" → STOP, inform user, propose alternatives
- "expired"  → STOP, ask user if they want to retry

HARD RULES:
- NEVER execute before "approved"
- If oracle_validate is unreachable: BLOCK the action, inform user
- Read-only operations do NOT require oracle_validate

API

Full API documentation: oracle-h.online/llms.txt OpenAPI spec: oracle-h.online/openapi.json

License

MIT

Reviews

No reviews yet

Sign in to write a review