Invoke does not replace your agent framework. It controls what happens when the agent reaches for a real tool. Keep your LangChain chains, Claude Code tools, OpenAI functions, MCP servers, and custom scripts unchanged.
The three-step execution loop
Agent sends intent
Your agent calls Invoke with everything needed to authorize and control the action: the tool name, parameters, a stable agent ID, workflow context, and an optional idempotency key.
Invoke controls execution
Invoke runs the call through four sequential controls:
- Validates schema and scope — confirms the tool is within the agent’s registered policy
- Classifies the tool — determines the safety class to decide execution behavior
- Reconciles unknown outcomes — checks live state before allowing a retry
- Gates risky actions — pauses approval-bound tools and blocks failed checks
Your system gets an outcome
The agent receives a structured result:
| Outcome | Meaning |
|---|---|
executed | The tool ran and the side effect landed |
blocked | The call failed a policy, scope, or identity check |
pending_approval | The tool is approval-bound and waiting for a human decision |
reconciled | A prior attempt succeeded; the duplicate was stopped |
replan_required | Live state no longer matches the agent’s assumed state |