Stop broken agent tool calls
before and after execution
DriftGentic validates every tool call against JSON Schema contracts before execution, and tracks async operation state after — so agents stop assuming accepted means completed. No SDK. No login. One POST call.
curl -X POST https://pshvnwtzyrmiyoovhlbg.supabase.co/functions/v1/agent-onboard \
-H "Content-Type: application/json" \
-d '{"agent_identity": "my-agent/1.0.0"}'// returns api_key + 100 credits. no auth required.
Validate tool calls
JSON Schema enforcement at the boundary before execution
Detect drift
Catch type mismatches, missing fields, extra params
Monitor runs
Full run history, per-call latency, incident tracking
Confirm before completion
Accepted is not completed. Track every async operation to its confirmed terminal state
// why tool calls fail
Most failures happen at the boundary
Tool calls break in predictable ways. The problem is not catching them before execution.
Schema drift
The upstream API shipped a breaking change. A required field was renamed, a parameter type changed, or a new required field was added. Your agent doesn't know.
Type mismatches
LLMs construct tool call arguments from context. The model passed a string where an integer was expected, or an object where the API required a flat value.
Missing required fields
A required parameter was omitted because the LLM inferred it was optional, or the function definition was out of sync with the current API contract.
False-success assumptions
The API returned 202 Accepted. The agent logged success and moved on. Three runs later the payout stalled, the email never sent, and the downstream effect never materialized.
// what happens without driftgentic
Agents fail in silence
The downstream consequence shows up hours later. By then the run is closed, the agent has moved on, and the failure is invisible.
Agent builds payment payload
Tool call fires. Stripe returns 400.
Agent catches error, marks task complete, moves on
Builder discovers failure during customer complaint
Agent builds same payload, validates first
Validation returns suggested_fix before execution
Agent retries with fixed payload, API accepts
Agent registers operation, confirms completion
Validate before execution. Confirm before completion. The two moments where agent reliability breaks down. DriftGentic belongs at both.
For Agents
autonomous access, zero friction
- Self-provision: POST identity, receive API key + 100 credits
- Validate tool calls without installing any SDK
- Report async operation state: pending, accepted, completed, timed_out
- Purchase credits via URL — no login, no form
- Read back run health, incidents, and drift signals autonomously
- Machine-readable discovery: /llms.txt, /agents.json, ai-plugin.json
For Builders
visibility and control over every run
- Claim your org from an agent-issued API key — no separate signup
- View all runs, tool call history, and per-call latency
- See unresolved async operations and catch false-success assumptions
- Get alerted on drift events and validation failures via webhook
- Manage environments: dev, staging, production with isolated keys
- Monitor upstream APIs for breaking schema changes proactively
Building with CREAO?
reliability layer for agent apps
CREAO Agent Apps connect to external services via Skills and MCP Connectors. DriftGentic validates every connector call before execution and tracks async operations to completion.
Validate every Skill call
Catch bad payloads before they reach external APIs
Detect drift between Runs
Know when Stripe, Slack, or GitHub changed their API
Confirm before marking done
Track async operations to terminal state
// pre-flight validation gate
Validate Before You Execute
Call /validate before every tool execution. The action_code tells your agent exactly what to do next — no string parsing, no guessing.
{
"tool_name": "stripe.charges.create",
"input": {
"amount": "two thousand",
"currency": "usd",
"source": "tok_visa",
"description": "Order #1042"
}
}{
"ok": false,
"action_code": "FIX_AND_RETRY",
"retry_strategy": {
"action": "FIX_AND_RETRY",
"use_suggested_fix": true,
"delay_ms": 0,
"max_retries": 1
},
"errors": [
{
"path": "/amount",
"keyword": "type",
"message": "must be integer"
}
],
"suggested_fix": {
"amount": 2000,
"currency": "usd",
"source": "tok_visa",
"description": "Order #1042"
},
"risk_score": 15,
"next_action": "Fix 1 validation error(s) before calling this tool.",
"latency_ms": 4
}Replace input with suggested_fix and re-validate. If the recheck returns PROCEED, execute.
// click "run live" to call the actual /validate endpoint · all 3 steps happen before execution
// machine-readable endpoints
Agent Discovery Protocol
Standardized endpoints for autonomous agent integration. Fetch capabilities, schemas, and API specs programmatically.
Self-Provision
POST agent identity, receive API key and credits. Zero human approval.
POST /functions/v1/agent-onboard
{ "agent_identity": "claude/3.5" }// 201 Created
{
"api_key": "dg_live_...",
"credits": 100,
"project_id": "uuid"
}Self-Purchase
Request credits programmatically. Returns checkout URL or charges on file.
POST /functions/v1/agent-credits
{ "pack_id": "growth" }// 200 OK
{
"checkout_url": "https://...",
"credits_after": 22100
}// api contracts
Rate Limits & Error Codes
Rate Limits
- requests/min1000
- concurrent100
- payload_max1MB
- schema_max100KB
// 429 + Retry-After header
Error Codes
- 400invalid_payload
- 401unauthorized
- 402insufficient_credits
- 404schema_not_found
- 422validation_failed
- 429rate_limited
Registry Access
Fetch schemas directly:
GET /functions/v1/registry
?tool=stripe/create_customer// returns JSON Schema. no auth.
// capabilities
Core Features
Schema Validation
Catch contract mismatches at the boundary before they reach external APIs. Validate every tool call against JSON Schema before execution.
Drift Detection
Detect when tool call payloads deviate from registered schemas. Extra fields, missing fields, type mismatches — caught at the boundary before they propagate.
API Monitoring
Proactively watch upstream APIs for schema changes between runs. Get alerted when Stripe, OpenAI, or GitHub ship breaking changes — before your next agent call.
Run Observability
Know exactly what happened at every boundary. Track tool calls, latency, and errors per run instead of debugging agent behavior downstream.
Schema Registry
50+ verified schemas for Stripe, OpenAI, GitHub, Slack. Import or define custom schemas.
Webhooks & Alerts
Push drift alerts and validation failures to your endpoints. HMAC-signed payloads, automatic retries, and real-time delivery on every triggered rule.
Multi-Environment
Isolated environments for dev, staging, production. Separate keys and metrics per env.
Agent Self-Monitoring
Agents that know themselves. Four env-scoped read-back endpoints let agents check their own health, review failing runs, inspect incidents, and identify drifting tools — closing the feedback loop without human intervention.
Async Operation Tracking
Accepted is not completed. Report operation state transitions — pending, accepted, processing, completed, failed, timed_out — and see every unresolved operation before it becomes a silent failure.
// pricing
Usage-Based Credits
1 validation = 1 credit. Runs and events are free.
starter
5,000
credits
$50
growth
22,000
credits
$200
scale
120,000
credits
$1,000
Validate tool call inputs before execution
Detect drift the moment an API changes
Reduce broken tool calls with schema enforcement
Confirm before completion — accepted is not completed