CREAO Integrationvalidate-execute-confirm

Reliability layer for
CREAO Agent Apps

CREAO builds the agent. DriftGentic makes it reliable.

Your CREAO Agent App connects to external services via Skills, MCP Connectors, and Custom APIs. DriftGentic validates every connector call before execution and tracks async operations to confirmed completion.

self-onboard for creao
curl -X POST https://pshvnwtzyrmiyoovhlbg.supabase.co/functions/v1/agent-onboard \
  -H "Content-Type: application/json" \
  -d '{"agent_identity": "creao-agent/1.0.0"}'

// returns api_key + 100 credits. no auth required.

interactive demo

Test your CREAO agent in 30 seconds

Paste a tool call from your CREAO agent and validate it before execution.

live validation

No auth required. Uses the public registry.

// where creao agent apps still break

The boundary is the problem

Your Super Agent orchestrates Skills and Connectors. Each external call is a point of failure that CREAO cannot see inside.

Bad payloads from the Super Agent

The LLM constructs tool arguments from context. A string where an integer was expected, a missing required field, or malformed JSON reaches your external API.

Schema drift between Scheduled Runs

Stripe shipped a breaking change. Your Skill definition is now out of sync. Your scheduled run fails at 3am with no one watching.

Treating 202 as completed

The API returned 202 Accepted. Your workflow marked the step done and moved on. The payout never arrived, the email never sent.

Connectors failing silently

Your MCP connector or custom API integration works today. Tomorrow the upstream OpenAPI spec changes and calls start failing with cryptic errors.

// the pattern for creao

Validate - Execute - Confirm

Wrap every Skill and Connector call with this three-step pattern. Your CREAO workflows become reliable.

1

Validate

POST to /validate before every Skill or Connector call. Get a machine-readable decision.

2

Execute

Only execute when decision is "allow". Use suggested_payload on repair. Halt on block.

3

Confirm

If the API returns 202, register an operation. Poll until terminal. Only then mark the step complete.

Your Super Agent stays in control. DriftGentic validates the boundary. CREAO orchestrates the workflow.

// for scheduled runs

Why Scheduled Runs need completion tracking

CREAO's Scheduled Runs execute workflows on a cadence. When a Skill calls Stripe at 3am and gets 202 Accepted, the run proceeds. But 202 is not done.

without confirmation
1

Scheduled Run starts at 3am

2

Stripe Payout Skill returns 202 Accepted

status: 202 // payout initiated, not paid
3

CREAO marks step complete, moves on

4

Payout fails silently. No one knows until complaint.

Vendor never paid. Scheduled Run logged success.
with driftgentic
1

Scheduled Run starts at 3am

2

Stripe Payout returns 202, registers operation

POST /operation-start → operation_id
3

Poll until terminal: completed or failed

GET /agent-operations/{id} → terminal: true
4

Only mark step complete when confirmed

status: "completed" — confirmed, not assumed.

// for skills and connectors

Works with CREAO Connectors

MCP Connectors, Custom APIs, built-in Skills — wrap any external call with the safeSkillCall pattern.

safe_skill_call.js
CREAO wrapper
const VALIDATE_URL = process.env.DRIFTGENTIC_VALIDATE_URL;

async function safeSkillCall(skillName, input, executeSkill) {
  const res = await fetch(VALIDATE_URL, {
    method: 'POST',
    headers: { 'Content-Type': 'application/json' },
    body: JSON.stringify({ tool_name: skillName, input }),
  });
  const result = await res.json();
  const action = result.next_step?.action;

  if (action === 'execute') {
    return executeSkill(input);
  }

  if (action === 'repair_and_revalidate' && result.suggested_payload) {
    const recheck = await fetch(VALIDATE_URL, {
      method: 'POST',
      headers: { 'Content-Type': 'application/json' },
      body: JSON.stringify({ tool_name: skillName, input: result.suggested_payload }),
    }).then(r => r.json());

    if (recheck.next_step?.action === 'execute') {
      return executeSkill(result.suggested_payload);
    }
  }

  throw new Error(`Validation failed: ${result.next_step?.reason}`);
}

// CREAO Skill wrapper
const payment = await safeSkillCall(
  'stripe.charges.create',
  { amount: userInput, currency: 'usd' },
  (input) => stripeConnector.execute(input)
);

// when your agent app becomes infrastructure

Expose your Agent App as reliable infrastructure

When your CREAO Agent App becomes an MCP server for downstream consumers, they need to trust your tool calls. DriftGentic validates at the boundary so they don't have to.

Validated contracts

Every tool your Agent App exposes is backed by JSON Schema validation. Consumers know their calls will work.

Machine-readable errors

When validation fails, consumers get structured errors with suggested fixes. No string parsing required.

Drift detection

When you update your Agent App's API, DriftGentic catches the contract change and alerts downstream consumers.

Build reliable CREAO Agent Apps

Self-onboard in one curl. Validate every Skill call. Confirm every async operation. Your CREAO workflows become production-grade.