Open Source · MIT License
Open-source AI bot
that schedules your meetings
Guests book by chatting in Telegram, Slack, or Discord. The AI finds a free slot, detects their timezone, creates a Google Calendar event with a Meet link. You do nothing. Self-hosted, your data stays with you.
$ schedulebot init
Created config.yaml and .env
$ schedulebot run
✓ Telegram bot connected
✓ Google Calendar authorized
✓ MCP server at /mcp
✓ Agent discovery at /.well-known/agent.json
Ready. Accepting bookings.
Channels
AI Agents
Infrastructure
See it in action
The guest opens the chat, writes in their language. The bot collects their name, email, topic — finds a free slot in their timezone and books it. 30 seconds, zero back-and-forth.
- Telegram
- Slack
- Discord
- Web
1. Wed Mar 04, 13:00–13:30
2. Thu Mar 05, 15:00–15:30
Booking via AI agent? Just another channel.
Telegram, Slack, Discord — or an AI agent. Same calendar, same slots, same result. The only difference is how you connect: one line of MCP config instead of a bot token.
"Book a call with Ivan about AI consulting next week"
Fetches /.well-known/agent.json, finds the MCP server URL and available tools
Calls get_available_slots, picks a time, calls book_consultation. Calendar event + Meet link created.
{
"mcpServers": {
"ivan-schedule": {
"url": "https://schedulebot-production-1cff.up.railway.app/mcp"
}
}
}
{
"name": "Ivan Pasichnyk",
"description": "AI/ML engineer, available for consulting",
"capabilities": {
"scheduling": {
"protocol": "mcp",
"tools": ["get_available_slots", "book_consultation"]
}
}
}
Supported agents: OpenClaw, Claude Code, Cursor, or any MCP-compatible client.
Everything included
Every booking is a lead
The bot collects name, email, topic, and timezone before booking. You get a structured contact, not just a calendar event.
AI understands timezones
Guest says "I'm in Tokyo" — the bot shows slots in Tokyo time, stores the timezone, creates the event correctly. 150+ cities recognized.
Calendar + Meet, automatically
Checks your real-time availability. Creates a Google Calendar event with a Meet link. Respects your existing schedule. No double-booking.
Reminders and easy cancellation
Automatic reminders before meetings. One-click cancellation link in every confirmation. Both you and the guest get notified.
Your data stays with you
Self-hosted on your own server. No third-party has access to your calendar or contacts. No vendor lock-in, no subscriptions.
Any LLM, your choice
Claude, GPT, or run locally with Ollama for free. Switch providers in config — your data, your model, your rules.
Multi-calendar support
Connect multiple Google accounts. The bot checks availability across all calendars and books in the one you choose. No double-booking across work and personal schedules.
Deploy in 5 minutes
Standard Python package. Clone, install, configure, run. MCP endpoint and agent discovery are enabled by default in production.
# Clone and install git clone https://github.com/anthroos/open-schedule-agent.git cd open-schedule-agent pip install -e ".[all]" # Initialize config schedulebot init # Edit config.yaml and .env # Authorize Google Calendar schedulebot check # Run schedulebot run # Your endpoints are live: # /mcp — MCP server # /.well-known/agent.json — discovery
FAQ
Is it really free?
Yes. MIT license, full source code. You pay only for hosting (Railway free tier works) and your own LLM API key. Choose any supported provider — Anthropic, OpenAI, or run locally with Ollama for free.
What is MCP?
Model Context Protocol is an open standard that lets AI assistants use external tools — like checking calendar availability or booking a meeting. Think of it as an API designed specifically for AI agents. OpenClaw, Claude Code, and Cursor all support MCP.
Do I need a server running 24/7?
For agent-to-agent discovery — yes, your endpoint must be reachable. Railway gives you this with one-click deploy. For personal use via Telegram only, you can run it on your own machine.
Can I use it without Telegram?
Yes. Slack, Discord, Web API, and MCP are all independent channels. You can run it with just MCP enabled — pure agent-to-agent, no chat UI at all.
Stop scheduling manually
Deploy once. Guests book via chat, AI agents book via MCP. Open source, self-hosted, your data stays with you.