AI Unleashed.
Risks Contained.
Your autonomous agents are powerful. OK!Gotcha ensures they're also safe, compliant, and aligned. Integrate human insight seamlessly, whether via SDK/API or lightweight MCP.
The High Stakes of Unchecked AI
Without proper safeguards, autonomous AI systems can quickly turn from powerful tools into significant liabilities.
Cascading Errors
Agentic systems accelerate innovation... but errors can amplify instantly across systems.
Oversight Gaps
Integrating LLM tools via MCP offers agility... but critical oversight is often an integration afterthought.
Compliance Complexity
Compliance is non-negotiable... yet proving it with autonomous actions is challenging and resource-intensive.
Eroding Trust
Trust is paramount... but black box operations without clear human checkpoints breed skepticism.
OK!Gotcha: The Intelligent Bridge
Between AI Potential and Human Assurance.
Define Granular Approvals
Intercept critical AI actions before execution based on your custom rules.
Integrate Your Way
Seamless SDK/API for deep agent control, plus a dedicated MCP server for lightweight tool validation.
Ensure Full Compliance
Capture immutable audit trails for every decision point, satisfying regulatory needs.
Control Made Simple. Integration Flexible.
Choose your integration path.
SDK Integration
Direct integration via SDK calls for complete control
import { OkGotcha } from '@okgotcha/sdk';
import OpenAI from 'openai';
const ok = OkGotcha();
// Define tools
const tools = {
getAccountBalance: async (accountId: string): Promise<number> => {
return 10000; // Example implementation
},
transferFunds: ok.requireApproval({
title: "Fund Transfer",
description: "Transfer funds between accounts",
approvers: ["finance-team", "security-team"]
})(async (fromAccount: string, toAccount: string, amount: number): Promise<boolean> => {
// Implementation here
return true;
})
};
// Define OpenAI tools schema
const openaiTools = [
{
type: "function",
function: {
name: "getAccountBalance",
description: "Get the current balance of an account",
parameters: {
type: "object",
properties: {
accountId: { type: "string" }
},
required: ["accountId"]
}
}
},
{
type: "function",
function: {
name: "transferFunds",
description: "Transfer funds between accounts",
parameters: {
type: "object",
properties: {
fromAccount: { type: "string" },
toAccount: { type: "string" },
amount: { type: "number" }
},
required: ["fromAccount", "toAccount", "amount"]
}
}
}
];
// Example usage
const processTransfer = async (amount: number, fromAccount: string, toAccount: string) => {
const balance = await tools.getAccountBalance(fromAccount);
if (balance >= amount) {
return await tools.transferFunds(fromAccount, toAccount, amount);
}
return false;
}
Perfect for: Developers building complex agentic systems that need fine-grained control over the approval flow.
MCP Integration
Lightweight integration via Model Context Protocol
import { OkGotcha } from '@okgotcha/sdk';
import OpenAI from 'openai';
const ok = OkGotcha();
// Define tools
const tools = {
getAccountBalance: async (accountId: string): Promise<number> => {
return 10000; // Example implementation
},
transferFunds: ok.requireApproval({
title: "Fund Transfer",
description: "Transfer funds between accounts",
approvers: ["finance-team", "security-team"]
})(async (fromAccount: string, toAccount: string, amount: number): Promise<boolean> => {
// Implementation here
return true;
})
};
// Define OpenAI tools schema
const openaiTools = [
{
type: "function",
function: {
name: "getAccountBalance",
description: "Get the current balance of an account",
parameters: {
type: "object",
properties: {
accountId: { type: "string" }
},
required: ["accountId"]
}
}
},
{
type: "function",
function: {
name: "transferFunds",
description: "Transfer funds between accounts",
parameters: {
type: "object",
properties: {
fromAccount: { type: "string" },
toAccount: { type: "string" },
amount: { type: "number" }
},
required: ["fromAccount", "toAccount", "amount"]
}
}
}
];
// Create OpenAI client
const openai = new OpenAI();
// Example of using tools with OpenAI
async function processUserRequest(userInput: string) {
const messages = [{ role: "user", content: userInput }];
let response = await openai.chat.completions.create({
model: "gpt-3.5-turbo-1106",
messages,
tools: openaiTools,
tool_choice: "auto"
});
while (response.choices[0].message.tool_calls) {
messages.push(response.choices[0].message);
for (const toolCall of response.choices[0].message.tool_calls) {
const toolName = toolCall.function.name;
const toolArgs = JSON.parse(toolCall.function.arguments);
const toolResult = await tools[toolName](...Object.values(toolArgs));
messages.push({
role: "tool",
name: toolName,
content: JSON.stringify(toolResult),
tool_call_id: toolCall.id
});
}
response = await openai.chat.completions.create({
model: "gpt-3.5-turbo-1106",
messages,
tools: openaiTools
});
}
return response.choices[0].message.content;
}
// Use the tools
const result = await processUserRequest(
"Transfer $5000 from account 123 to account 456"
);
Perfect for: LLM tools and zero-code implementations where simplicity is key.
Both approaches provide the same core functionality with different integration paths
View Full DocumentationThe Features You Need. The Confidence You Deserve.
Flexible Workflows
Tailor multi-step approvals, assign roles based on context, set conditions, and define escalation paths.
Dual Integration Power
Native SDKs for deep integration + Lightweight MCP server for tool-based checks. Your architecture, your choice.
Ironclad Audit Trails
Immutable, timestamped records for compliance, debugging, and full visibility. Filter by source (SDK/API vs. MCP).
Real-time Oversight
Monitor pending requests, review history, manage users, and configure settings from a central dashboard.
Seamless Notifications
Keep approvers informed instantly via Email, Slack, Microsoft Teams, or custom webhooks.
Enterprise Ready
Built with security first: SSO integration (SAML/OAuth), Role-Based Access Control for granular permissions.
Built for everyone in your organization.
Scale Confidently, Govern Effectively
Protect your business from costly AI errors, ensure adherence to policies and regulations, and foster innovation with robust guardrails. Reduce liability and build stakeholder trust.
Simple, Transparent Pricing
Pay only for what you use with our straightforward pricing model.
Give your team members approval rights across all your AI workflows.
Enterprise Options
Need custom deployment, dedicated support, or volume discounts?
Contact our sales team →Free to start
No credit card required. Start with a 14-day trial to test all features.
Cancel anytime
No long-term contracts. Pay month to month and cancel when you need.
Volume discounts
Price breaks available for teams with 20+ approvers.