Scheduling engine
for AI agents
Turn any OpenClaw bot into a 24/7 AI receptionist. Bookings, availability, cancellations — all through chat. SQLite. MCP-native. Zero dependencies.
$ npx clawhub install agentcalEverything a service business needs
Built for gyms, salons, clinics, and studios. Not another meeting scheduler — a real booking engine.
MCP-Native
5 tools your AI agent understands natively. No REST wrapper, no API key. Direct engine access via stdio.
SQLite, Local-First
Your data stays on your machine. Zero latency. Zero external dependencies. Backup is a file copy.
Zero Double Bookings
Atomic transactions with BEGIN IMMEDIATE. Even with concurrent agents, every booking is conflict-free.
1:1 & Group Classes
Same engine handles personal training and 30-person yoga. Capacity-aware slot generation.
Split Shifts & Breaks
Morning 5:30–9:30, evening 4:30–8:30, lunch break at 1 PM. Real-world schedules, not simple 9-to-5.
Booking Policies
Min lead time, max advance days, cancellation windows. Enforced at the engine level, not just UI.
Set up your business. No code needed.
Add services, providers, working hours, and view all bookings from a clean dashboard. Your agent handles the customers — you handle the business.
📋 Services & Classes
Create 1:1 services or group classes. Set duration, buffer time, and capacity per session.
👤 Providers & Hours
Add staff, assign services, set split shifts (6–9 AM, 5–8 PM) and breaks per provider.
📅 Calendar View
See every booking across all providers. Day, week, or month view. Click to see details.
👥 Customer Records
Every customer auto-created from bookings. See their history, upcoming sessions, phone number.
⚙️ Booking Policies
Set min lead time, max advance booking, and cancellation windows from the dashboard.
🔐 Gmail Auth
Sign in with Gmail. First login becomes the business owner. No passwords to manage.
Zero-hop scheduling
No network calls. No external APIs. The MCP server imports the engine directly. Microsecond responses.
01100001 01100111 01100101 01101110 01110100 01100011 01100001 01101100 00100000 01110011 01100011 01101000 01100101 01100100 01110101 01101100 01101001 01101110 01100111 01100101 01101110 01100111 01101001 01101110 01100101 00100000 01100110 01101111 01110010 00100000 01100001 01101001 00100000 01100001 01100111 01100101 01101110 01110100 01110011 01101101 01100011 01110000 00100000 01101110 01100001 01110100 01101001 01110110 01100101 00100000 01110011 01110001 01101100 01101001 01110100 01100101 00100000 01101100 01101111 01100011 01100001 01101100 00100000 01100110 01101001 01110010 01110011 01110100 00100000 01111010 01100101 01110010 01101111 00100000 01101100 01100001 01110100 01100101 01101110 01100011 01111001 01100001 01100111 01100101 01101110 01110100 01100011 01100001 01101100 00100000 01110011 01100011 01101000 01100101 01100100 01110101 01101100 01101001 01101110 01100111 00100000 01100101 01101110 01100111 01101001 01101110 01100101 00100000 01100110 01101111 01110010 00100000 01100001 01101001 00100000 01100001 01100111 01100101 01101110 01110100 01110011 00100000 01101101
5 tools. That's all an agent needs.
Clean Zod schemas. Good descriptions. Your agent discovers and calls them automatically.
The engine every AI agent is missing
Voice AI, chat bots, and workflow tools all need scheduling. None of them have it built in. That's where AgentCal sits.
- Google Calendar as booking system
- Google Sheets as customer database
- No double-booking prevention
- No group class capacity tracking
- No cancellation policy enforcement
- 5 services duct-taped together
- Breaks when any one service goes down
- Real scheduling engine, not a calendar hack
- Atomic transactions — zero double bookings
- Group classes with capacity tracking
- Cancellation windows enforced automatically
- One SQLite file — no external services
- 5 MCP tools — any agent can call them
- Works with voice, chat, and workflows
Not another meeting scheduler
Calendly and Cal.com schedule meetings. AgentCal runs service businesses.
| Feature | Calendly | Cal.com | AgentCal |
|---|---|---|---|
| MCP server | ✗ | API wrapper | Native |
| Self-hosted | ✗ | ✓ | ✓ SQLite |
| Group classes | ✗ | ✗ | ✓ |
| Split shifts | N/A | ✗ | ✓ |
| Buffer times | ✓ | ✓ | ✓ |
| Zero latency | ✗ | ✗ | ✓ Local SQLite |
| No API key needed | ✗ | ✗ | ✓ stdio |
| Price | $15/user/mo | Free + paid | Free forever |
Built for service businesses
Same engine. Different services. Your agent handles them all.
Running in 5 minutes
From zero to AI receptionist. No credit card. No signup.
Install
Initialize your business
Creates agentcal.db with your business config
Start the admin UI
Set up services, providers, and hours at localhost:3000
Connect to OpenClaw
MCP server starts via stdio. Add to your mcporter.json and your agent can book.
01111000 011111110
01111111111111111100 0111111111111111
0111111111111111111111110 0011111111111111111111
0111111111111111111111111111 0111111111111111111111111
0111111111111111111111111111110 011111111111111111111111111
011111111111111111111111111111111 11111111111111111111111111111
011111111111111111111111111111111111111111111111111111111111111111
011111111111111111111111111111111111111111111111111111111111111110
011111111111111111111111111111111111111111111111111111111111111100
01111111111111111111111111111111111111111111111111111111111111100
01111111111111111111111111111111111111111111111111111111111111000
0111111111111111111111111111111111111111111111111111111111110000
011111111111111111111111111111111111111111111111111111111100000
0011111111111111111111111111111111111111111111111111111000000
00000000000 001111111111111111111111111111111111111111111111100000000
0000000000000000 001111111111111111111111111111111111111111100000000000
00000000000000000000 001111111111111111111111111111111111000000000000000
000000000000000000000000 0011111111111111111111111100000000000000000000
0000000000000000000000000000 0011111111111100000000000000000000000
000000000000000000000000000000000 00000000000000000000000000
Your agent needs a calendar.
Give it one.
Open source. MIT licensed. Built for the agent-first world.