Rent the Brain · API & MCP

Your model is smart.
Give it experience.

Rent the brain that makes any model or agent start from hard-won experience. Ask how to approach a task and get back a proven, sourced way of working — an experienced opinion your model can take or leave — or hand the whole question to a pipeline that answers it, cross-checks itself, and saves the result to your own storage.

Not a search engine. The answer APIs read your question and summarise the web; we hand your model the proven way to do the work— and on the rare topic we've nothing for, we tell it how to research it itself.

It runs on your own model keys. We never see your keys, and your task text is matched in memory and stored nowhere. We complement the labs — we don't train models or compete with them.

POST /api/approach

The proven way to approach it

Send a task or decision in plain words. Get back proven ways of working — with concrete steps — from a curated base. You run the work yourself. If nothing proven matches, it says so, you're not charged — and it still hands your AI the way to research it well yourself, so you're never empty-handed.

POST /api/workflows/verified

Outsource the whole question

A proven approach guides the answer, a second independent model (cross-vendor when your keys allow) reviews and improves it, and the result can be saved straight to your own GitHub or Drive. A cross-check a one-shot call skips. AI runs on your keys.

API reference

Two calls, plain JSON

Ask how to approach a task

Request

curl https://api.orioralabs.com/api/approach \
  -H "Authorization: Bearer sk_oriora_..." \
  -H "Content-Type: application/json" \
  -d '{"task": "should I build my own auth or use a service?"}'

Response

{
  "approaches": [
    { "id": "build/find-first-build-last",
      "title": "Find First, Build Last",
      "source": "Oriora CORE",
      "steps": ["...proven steps..."] }
  ],
  "gap": false
}

Outsource a question to the verified workflow

Request

curl https://api.orioralabs.com/api/workflows/verified \
  -H "Authorization: Bearer sk_oriora_..." \
  -H "Content-Type: application/json" \
  -d '{"question": "...", "save": true}'

Response

{
  "answer": "...verified final answer...",
  "verification": { "performed": true, "cross_vendor": true },
  "approach": { "id": "...", "title": "..." },
  "saved": { "provider": "github", "path": "oriora-workflows/..." }
}

Match blind — hash locally, send only tokens

Run this on your side to turn a task into hashed tokens, then send tokens instead of task — we match them and never receive your words. The spec must match ours exactly: fetch it (and its version) at GET /api/approach/hash-spec and send spec_version so any drift is caught (409), never silent.

Client hasher (Node)

const { createHash } = require('crypto');
const STOP = new Set('the a an to of for and or is it this that my our me with on in be get go about at as if so up out by into your their its own them what when where which who whom whose why will are from than then there here over after before been was'.split(' '));
const FILLER = new Set('should would could must need want do does how much many we i you actually just really got make made thing things stuff lot put gonna'.split(' '));
const stem = w => { for (const s of ['ability','ations','ation','able','ings','ing','edly','ed','ers','er','ly','es','s']) { if (w.length > s.length+2 && w.endsWith(s)) { const b = w.slice(0,-s.length); if ((s==='s'||s==='es') && b.endsWith('s')) continue; return b; } } return w; };
const toTokens = task => [...new Set(task.toLowerCase().replace(/[^a-z0-9\s]/g,' ').split(/\s+/)
  .filter(w => w && !STOP.has(w) && !FILLER.has(w)).map(stem))]
  .map(s => createHash('sha256').update(s).digest('hex').slice(0,16));

Request — no task text leaves your machine

curl https://api.orioralabs.com/api/approach \
  -H "Authorization: Bearer sk_oriora_..." \
  -H "Content-Type: application/json" \
  -d '{"tokens": ["75490bd7b93e6fa7", "48ee046028069a9c", "..."], "spec_version": "v1"}'

Rent the brain

Sign in, generate an sk_oriora_… key, connect your model keys, and call it. Same key, same wallet as the rest of the Oriora API.