Stateful primitives for AI agents — MCP + REST
AIGears gives AI agents the four primitives they can't provide for themselves: scheduled callbacks, deadline memory, human approval gates, and watch-and-notify. Durable infrastructure that outlives any session, context window, or process.
Free tier. No card. First tool call in minutes.
// agent calls MCP tool
schedule_create({
"fire_at": "2026-06-17T09:00:00Z",
"webhook_url": "https://api.yourapp.com/hooks/agent",
"payload": { "task": "renew_ssl_cert", "domain": "example.com" }
})
// AIGears responds — and remembers
{ "id": "sch_8f3ka92", "status": "pending" }
// 7 days later, your webhook fires. Signed. Retried. Logged.
No matter how capable models get, they cannot exist across time and sessions. Agent developers hit the same four walls — and rebuild the same brittle workarounds with cron, Redis, and ad-hoc webhook handlers.
Across sessions, context resets, and handoffs, critical commitments — "renew this on March 14" — silently disappear.
There is no native way to say "do X in 3 days." An agent cannot schedule past its own process death.
Sending money, deleting data, contacting customers — real side effects need human sign-off, and there's no clean primitive for "ask a human, block until answered."
They can fetch a URL once. They cannot monitor it for change without persistent infrastructure.
AIGears is that infrastructure — built once, properly, and shared by all four tools.
Every tool ships with retries, HMAC-signed webhooks, idempotency keys, and an append-only audit log — because they all sit on the same core.
Register a future webhook. We fire it.
One-shot or recurring with cron expressions. Timezone-aware. Survives everything your agent doesn't.
curl -X POST https://aigears.net/v1/schedules/ \
-H "Authorization: Bearer $AIGEARS_API_KEY" \
-d '{
"recurrence": "0 9 * * MON",
"recurrence_tz": "Europe/Paris",
"webhook_url": "https://api.yourapp.com/hooks/weekly-report",
"payload": { "job": "compile_weekly_report" }
}'
Durable, queryable memory for dated obligations.
A new agent instance can ask "what did past-self commit to?" and get an answer. Escalation policies notify the agent by webhook, a human by email, or both — at 30 days, 7 days, day-of, overdue.
deadline_remember({
"due_at": "2027-03-14T00:00:00Z",
"summary": "Renew ACME contract before auto-expiry",
"tags": ["contracts", "compliance"],
"escalation_policy": ["30d", "7d", "1d", "overdue_daily"],
"notify_emails": ["[email protected]"],
"webhook_url": "https://api.yourapp.com/hooks/deadlines"
})
Block agent action on human sign-off.
The missing primitive in every "agent with guardrails" architecture. We deliver a signed, single-use URL to the approver; the hosted page shows full action context before any button is clickable. One approval can guard a $10,000 action.
approval_request({
"action_summary": "Refund customer #4821 — $1,250.00",
"action_details": { "order": "ord_55310", "reason": "duplicate charge" },
"approver_channel": "email:[email protected]",
"timeout": "24h",
"callback_url": "https://api.yourapp.com/hooks/approvals"
})
// → { "approval_id": "apr_2c9x", "status": "pending" }
Register a source. We diff it. You get a webhook on change.
Converts pull-once into push-on-change. URL, RSS, or JSON endpoints, with CSS-selector extraction and match rules.
watch_create({
"source_type": "json_endpoint",
"source_config": {
"url": "https://status.vendor.com/api/v2/status.json",
"jsonpath": "$.status.indicator"
},
"match_rule": { "changed": true },
"webhook_url": "https://api.yourapp.com/hooks/vendor-status",
"poll_interval": "5m"
})
Agents consume AIGears natively over MCP with zero glue code. Everything is equally available as plain REST for LangChain, custom Python, or anything with an HTTP client.
One hosted MCP server, all four toolsets. Strict JSON schemas on every tool — agents perform best with tight contracts.
schedule_create · schedule_cancel · schedule_list · schedule_get · deadline_remember · deadline_query · deadline_complete · deadline_snooze · approval_request · approval_status · approval_cancel · watch_create · watch_pause · watch_history …
Versioned /v1/ API. JSON in, JSON out, conventional HTTP semantics, and a published OpenAPI spec.
Browse the OpenAPI spec →POST /hooks/agent HTTP/1.1
X-AIGears-Signature: t=1750147200,v1=5257a86...
Content-Type: application/json
{ "event": "schedule.fired", "schedule_id": "sch_8f3ka92" }
The dashboard isn't where the work happens — your agents do that. It's how you trust the work: a chronological activity feed, upcoming callbacks and deadlines, pending approvals, active watches, API keys, and a filterable audit log.
| Time | Event | Detail | Result |
|---|---|---|---|
| 09:00:01 | schedule.fired | sch_8f3ka92 → /hooks/agent | ✓ 200 |
| 08:42:17 | approval.decided | apr_2c9x — approved by [email protected] | ✓ |
| 08:30:55 | watch.changed | vendor-status: operational → degraded | ↻ fired |
| 07:15:09 | deadline.escalation | ACME contract — 7d notice | email sent |
Read-heavy by design. Most state is created by the agent, not the human.
Persistent state and polling cost us; individual API calls don't. Pricing follows the same shape. Start on the free tier — 50 scheduled callbacks, 25 active deadlines, 10 approvals, and 5 watches per month — and upgrade when your agents outgrow it.
Sign up, create an API key, and make your first tool call in minutes.