# InterAI Risk Oracle (remote · api.interailabs.dev)

Pre-execution policy gate for consequential agent actions with durable trust receipts.

- Trust score: 77/100 (medium)
- Change this week: +3
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-09-25

## Components

- remote · `api.interailabs.dev`: 77/100 (this document), [markdown](https://verifymcp.io/servers/interailabs-ai-risk-oracle/api.md), [page](https://verifymcp.io/servers/interailabs-ai-risk-oracle/api)

## Channel facts

- Endpoint: `https://api.interailabs.dev/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `0.1.3-beta.1`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-09-25.

- **Endpoint Security**: 74/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one.
  - HTTPS is enforced; there's no plaintext access path.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 87/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 1962 tokens (~115/item across 17 items; 9 tools + 8 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 30/100
  - Stability observed for 9 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
  - Structured output schemas are declared (100% of tools); any adoption earns full credit.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 9 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 10 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### How do I install the InterAI Risk Oracle MCP server?

InterAI Risk Oracle is a hosted endpoint at https://api.interailabs.dev/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http interailabs-ai-risk-oracle 'https://api.interailabs.dev/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "interailabs-ai-risk-oracle": {
      "url": "https://api.interailabs.dev/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "interailabs-ai-risk-oracle": {
      "type": "http",
      "url": "https://api.interailabs.dev/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.interailabs-ai-risk-oracle]
url = "https://api.interailabs.dev/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "interailabs-ai-risk-oracle": {
      "type": "remote",
      "url": "https://api.interailabs.dev/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add interailabs-ai-risk-oracle --url 'https://api.interailabs.dev/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  interailabs-ai-risk-oracle:
    url: "https://api.interailabs.dev/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "interailabs-ai-risk-oracle": {
      "Transport": "http",
      "Url": "https://api.interailabs.dev/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add interailabs-ai-risk-oracle -t streamable-http -u 'https://api.interailabs.dev/mcp'
```

### Other

```json
{
  "mcpServers": {
    "interailabs-ai-risk-oracle": {
      "type": "http",
      "url": "https://api.interailabs.dev/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-09-25 (score 77, 0)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-09-24 (score 77, +1)

No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-21 (score 76, +1)

No change was recorded against any check on this day. Stability & Change Management went from 13 to 17. That category is still filling its 30-day observation window: 4 days of observed history at the previous scan, 5 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-19 (score 75, +1)

No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-17 (score 74, +1)

- [functional improvement] Stability: unverified → 0.03
- [functional] Server version: 0.1.3-beta → 0.1.3-beta.1

### 2026-09-16 (score 73)

First indexed and scored.

## MCP tools (9)

### `oracle.verify_autonomous_action` (~465 tokens)

Verify Autonomous Action

Primary tool for one concrete proposed autonomous action before it executes. This authenticated prepaid verification may consume account balance and records a signed trust receipt; InterAI evaluates the proposal but does not execute or modify the proposed external action. Reuse idempotency_key only when retrying the same logical request to avoid duplicate billing. Returns allow, review_required, or block with policy signals. Use oracle.verify_batch for multiple independent items and oracle.verify_response only for legacy prompt/response compatibility.

Input parameters:

- `action` (object, required): The proposed action. For executable pilot authorization use interai-canonical-action/v1 with host-registry tool_id, type, operation, exact arguments, and explicit side-effect semantics.
- `authorization_ttl_seconds` (integer): Lifetime of a single-use execution authorization for a canonical action. Only Bearer-authenticated pilot requests receive executable authorization material.
- `context` (object): Optional runtime context surrounding the proposed action, such as environment, agent identity, counterparty, user confirmation, or other facts relevant to this decision.
- `domain` (string): Optional domain label used to provide verification context. It does not replace the exact action, context, or policy inputs.
- `execution_context` (object): Host-attested execution context bound to a canonical action. InterAI authenticates the account, not the truth of host-provided workspace, actor, run, or environment values.
- `external_evidence` (array): Optional signed or verifiable external assertions. Current Stage 2 evidence is parsed, verified, bound, and recorded as non-authoritative evidence; it does not directly determine the InterAI executio…
- `idempotency_key` (string): Stable caller-provided key for retrying the same billed verification without duplicating the economic operation. Reuse it only for the same logical request.
- `mode` (string): Verification mode. Use fast_heuristic for the default low-latency path or semantic_judge when a semantic model judgment is explicitly required.
- `policy` (object): Optional strictly validated caller-scoped restrictions. They may tighten the boundary but cannot weaken host or account policy.
- `use_case` (string, required): Stable identifier describing why the exact autonomous action is being proposed. Required together with action for the autonomous_execution contract.

Output parameters:

- `billed` (object): Billing metadata for this verification call.
- `result` (object): Pre-execution decision, policy evaluation, signals, and trust-receipt evidence.

### `oracle.verify_response` (~511 tokens)

Verify Response (Legacy)

Legacy compatibility entry point for existing clients. This authenticated prepaid verification may consume account balance and records a trust receipt, but it does not execute any proposed external action. Supply exactly one contract: prompt + response, or use_case + action; never mix them. Reuse idempotency_key only for the same logical retry. For new action preflight use oracle.verify_autonomous_action; use oracle.verify_batch for multiple items.

Input parameters:

- `action` (object): The proposed action. For executable pilot authorization use interai-canonical-action/v1 with host-registry tool_id, type, operation, exact arguments, and explicit side-effect semantics.
- `authorization_ttl_seconds` (integer): Lifetime of a single-use execution authorization for a canonical action. Only Bearer-authenticated pilot requests receive executable authorization material.
- `context` (object): Optional runtime context surrounding the proposed action, such as environment, agent identity, counterparty, user confirmation, or other facts relevant to this decision.
- `domain` (string): Optional domain label used to provide verification context. It does not replace the exact action, context, or policy inputs.
- `execution_context` (object): Host-attested execution context bound to a canonical action. InterAI authenticates the account, not the truth of host-provided workspace, actor, run, or environment values.
- `external_evidence` (array): Optional signed or verifiable external assertions. Current Stage 2 evidence is parsed, verified, bound, and recorded as non-authoritative evidence; it does not directly determine the InterAI executio…
- `idempotency_key` (string): Stable caller-provided key for retrying the same billed verification without duplicating the economic operation. Reuse it only for the same logical request.
- `mode` (string): Verification mode. Use fast_heuristic for the default low-latency path or semantic_judge when a semantic model judgment is explicitly required.
- `policy` (object): Optional strictly validated caller-scoped restrictions. They may tighten the boundary but cannot weaken host or account policy.
- `prompt` (string): Legacy compatibility input: the original prompt whose response is being verified. Use together with response, not with autonomous action fields.
- `response` (string): Legacy compatibility input: the response to evaluate against prompt. Use together with prompt, not with autonomous action fields.
- `use_case` (string): Stable identifier describing why the exact autonomous action is being proposed. Required together with action for the autonomous_execution contract.

Output parameters:

- `billed` (object): Billing metadata for this verification call.
- `result` (object): Pre-execution decision, policy evaluation, signals, and trust-receipt evidence.

### `oracle.verify_batch` (~151 tokens)

Verify Batch

Use for multiple independent legacy or autonomous verification items in one authenticated prepaid call (1 to 100). The batch may consume account balance and records one trust receipt per item; InterAI does not execute any proposed external action. Reuse idempotency_key only for the same logical batch retry. For one proposed action, use oracle.verify_autonomous_action instead.

Input parameters:

- `idempotency_key` (string): Stable caller-provided key for retrying the same billed verification without duplicating the economic operation. Reuse it only for the same logical request.
- `items` (array, required): Independent verification items. Each item must contain either prompt + response or use_case + action; 1 to 100 items are accepted.

Output parameters:

- `batch_size` (integer): Number of independently evaluated batch items.
- `billed` (object): Billing metadata for the batch operation.
- `oracle` (object): InterAI engine and signing metadata.
- `results` (array): Independent verification decisions in the same order as the submitted items.
- `summary` (object): Aggregate batch summary.

### `oracle.get_pricing` (~49 tokens)

Get Pricing

Read-only public metadata for costs, trial availability, idempotency, and top-up or payment paths. Use it before budgeting or onboarding; it does not evaluate risk or create a trust receipt.

Output parameters:

- `auth` (object)
- `chain` (string)
- `currency` (string)
- `demo` (object)
- `idempotency` (object)
- `model` (string)
- `protocols` (object)
- `topup` (object)
- `trial` (object)
- `unit` (string)
- `verify` (object)
- `verify_batch` (object)

### `oracle.discovery_bundle` (~70 tokens)

Discovery Bundle

Read-only bootstrap or handoff bundle with service identity, interfaces, runtime mode, contracts, schemas, and sample payloads in one response. Use it for complete integration context; use oracle.service_descriptor for focused service metadata, oracle.agent_card for A2A capabilities, or oracle.get_pricing for costs.

Output parameters:

- `discovery` (object)
- `interfaces` (object)
- `name` (string)
- `runtime` (object)
- `samples` (object)
- `service` (object)

### `oracle.service_descriptor` (~56 tokens)

Service Descriptor

Read-only general service descriptor with identity, endpoints, billing, trust, and supported agent protocols. Use it to inspect service-level integration metadata; use oracle.agent_card for A2A skills or oracle.discovery_bundle for the complete bootstrap package.

Output parameters:

- `agent_protocols` (object)
- `billing` (object)
- `description` (string)
- `discovery` (object)
- `endpoints` (object)
- `id` (string)
- `name` (string)
- `version` (string)

### `oracle.agent_card` (~58 tokens)

A2A Agent Card

Read-only A2A Agent Card with agent identity, security scheme, capabilities, and skills. Use it when selecting or integrating InterAI through A2A; use oracle.service_descriptor for general service metadata or oracle.discovery_bundle for complete bootstrap context.

Output parameters:

- `capabilities` (object)
- `defaultInputModes` (array)
- `defaultOutputModes` (array)
- `description` (string)
- `documentationUrl` (string)
- `name` (string)
- `provider` (object)
- `security` (array)
- `securitySchemes` (object)
- `skills` (array)
- `url` (string)
- `version` (string)

### `oracle.get_trust_receipt` (~86 tokens)

Get Trust Receipt

Read-only lookup of the canonical public representation and signature metadata for a trust receipt that already exists. Supply receipt_id. It does not create or re-run a decision; use oracle.verify_trust_receipt_signature when the goal is signature validation.

Input parameters:

- `receipt_id` (string, required): Identifier of the existing InterAI trust receipt whose canonical public representation and signature metadata should be returned.

Output parameters:

- `ok` (boolean)
- `receipt` (object)
- `trust` (object)
- `verification` (object)

### `oracle.verify_trust_receipt_signature` (~251 tokens)

Verify Trust Receipt Signature

Read-only service-side validation of a trust receipt that already exists. Supply signature plus either receipt_id for the canonical server-stored receipt or a caller-supplied receipt object. Returns valid true or false when signing is enabled. Current signatures use HMAC-SHA256 and are service-verifiable by InterAI, not independent offline public-key proofs. It does not evaluate risk or create a receipt; use oracle.get_trust_receipt to retrieve receipt metadata.

Input parameters:

- `receipt` (object): Optional caller-supplied receipt object, typically evidence received from another agent or system. Either receipt or receipt_id is required.
- `receipt_id` (string): Optional ID of an existing InterAI trust receipt. InterAI resolves the canonical server-stored record before validating the supplied signature. Either receipt_id or receipt is required.
- `signature` (string, required): HMAC-SHA256 signature to validate against the referenced InterAI receipt. Required.
- `signature_alg` (string): Optional signature algorithm declaration. The current supported value is hmac-sha256.
- `signed_payload` (string): Optional exact serialized payload that was signed. Supply it when validating externally transported receipt evidence that includes the original signed payload.

Output parameters:

- `signature_alg` (string): Signature algorithm used by the current InterAI receipt verifier.
- `valid` (boolean): Whether the supplied signature matches the referenced stored receipt.

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/interailabs-ai-risk-oracle/api#diagnostics

## Score history

- 2026-09-25: 77
- 2026-09-24: 77
- 2026-09-23: 76
- 2026-09-22: 76
- 2026-09-21: 76
- 2026-09-20: 75
- 2026-09-19: 75
- 2026-09-18: 74
- 2026-09-17: 74
- 2026-09-16: 73

## Common questions

### What is the InterAI Risk Oracle MCP server?

InterAI Risk Oracle is an MCP server listed in the public MCP registry as io.github.InterAILabs/ai-risk-oracle. Pre-execution policy gate for consequential agent actions with durable trust receipts. This page covers its hosted endpoint (https://api.interailabs.dev/mcp).

### Is the InterAI Risk Oracle MCP server safe to use?

InterAI Risk Oracle scores 77 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the InterAI Risk Oracle MCP server expose?

InterAI Risk Oracle exposes 9 tools: oracle.verify_autonomous_action, oracle.verify_response, oracle.verify_batch, oracle.get_pricing, oracle.discovery_bundle, and 4 more. Their descriptions and schemas cost roughly 1,697 tokens of context every time the server is loaded.

### Does the InterAI Risk Oracle MCP server require authentication?

No. We connected to InterAI Risk Oracle without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

### Is the InterAI Risk Oracle MCP server still maintained?

InterAI Risk Oracle is still listed as active in the MCP registry. We last reached this channel on 25 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://api.interailabs.dev/mcp
- Repository: https://github.com/InterAILabs/ai-risk-oracle
- Changelog RSS feed: https://verifymcp.io/servers/interailabs-ai-risk-oracle/api.xml
- Changelog JSON feed: https://verifymcp.io/servers/interailabs-ai-risk-oracle/api.json
- HTML version of this page: https://verifymcp.io/servers/interailabs-ai-risk-oracle/api
