Open source · Apache 2.0

The lean, self-hostable,
AI-native scheduler.

One Go binary. One SQLite file. An AI assistant that books meetings in natural language. Self-host it for pennies — the scheduling node for your AI stack, where your data never leaves your infrastructure.

terminal
$
docker run -p 8080:8080 \
-v ./data:/data \
calnode/calnode
# That's it. Booking pages live at :8080
Zero runtime dependencies< 10 MB binaryApache 2.0 — nothing paywalled
scroll

Calnode is an open-source scheduling app you run yourself — a single static Go binary plus a SQLite file that deploys on a tiny VPS for pennies.

It does everything a modern scheduler does — and goes further with AI that books in natural language and a native MCP server so your agents can schedule on behalf of anyone.

Your data stays on your infrastructure. Nothing is paywalled.

Why Calnode

Five things that make it different

Lean & blazingly fast

A single static Go binary with zero dependencies. No Node, no Python, no Redis. Boots in under a second and stays tiny.

AI-native

Conversational booking lives in the booking page itself. Visitors type in plain English; Calnode understands and confirms. No separate AI layer to stitch together.

Private by design

Envelope encryption at rest. Instance-per-tenant isolation. No cross-contamination by architecture, not policy.

Data-sovereign AI

Point Calnode at any OpenAI-compatible endpoint — local Ollama, your own GPU cluster, or a private Azure OpenAI deployment. Your booking conversations never hit a third-party model.

Open & unlocked

Apache 2.0. Read the code, fork it, audit it, extend it. No premium tier, no feature flags, no usage limits hidden behind a paywall.

AI-native scheduling

The AI is in the booking page.Not in your inbox.

Visitors describe what they need in plain English. Calnode parses intent, checks availability, and confirms — no back-and-forth, no scheduling links buried in email.

book.acme.com/sarah/30min
Hi, I need a 30-min call sometime next week — mornings work best, and not Monday.
I found three morning slots Tuesday through Friday next week:
Wednesday please
Confirmed
Wed 11 Jun at 10:30 am with Sarah. Zoom link + calendar invite sent to your email.

Natural language, not a form

Visitors describe what they need the way they'd say it to a person. Calnode handles the rest — no dropdowns, no time-zone math, no "click a slot" friction.

Native MCP serverv1

Every Calnode instance exposes an MCP server. Your AI agents can check availability, create bookings, and reschedule — without leaving the tool context.

mcp://your-domain.com/mcp

Bring your own LLM

Any OpenAI-compatible endpoint works — Ollama on localhost, your org's private Azure OpenAI, or any hosted model. Booking conversations stay on your infrastructure.

Self-host footprint

One binary.
One file.
Nothing else.

Most self-hosted schedulers need a database server, a cache, a job queue, and a reverse proxy to even boot. Calnode is a single executable that reads a SQLite file. Copy it to a server and run it.

< 10 MB
binary size
$0.11
team of 4 on Railway
1 file
for all data

Real number — our own team of 4 running on Railway. You pay for compute, not per seat.

  • No Postgres, Redis, or Node required
  • Litestream streaming backup to S3 / Backblaze
  • Single docker run to deploy
  • Runs on ARM, x86, whatever you have
deploy.sh
docker run -d \
--name calnode \
-p 8080:8080 \
-v ./data:/data \
-e BASE_URL=https://book.acme.com \
calnode/calnode

Footprint comparison (approximate)

Calnode< 10 MB
cal.com~1 GB+ (Docker Compose)
CalendlySaaS — n/a
n/a

Bar sizes are illustrative; Calendly is SaaS and has no self-hosted footprint.

How it stacks up

Calnode vs the field

Comparison is based on publicly available information and is approximate.

Deployment
Single binary
Database
SQLite
License
Apache 2.0
Self-hostable
Open source
AI in the booking page
Native MCP server
BYO LLM endpoint
Envelope encryption at rest
Calendar sync
Google + M365
Video conferencing links
Zoom, Meet, Teams
Embeddable widget
REST API

Information is approximate and based on public sources. Some cal.com features vary between cloud and self-hosted editions.

Everything included

No premium tier. No feature flags.

Every feature ships in the same open-source binary.

Booking pages

Shareable links per event type. Guests can reschedule and cancel without creating an account.

AI conversational booking

Visitors describe their need in plain English and the AI confirms a slot — all on the booking page.

Native MCP server

AI agents can check availability, create bookings, and reschedule via a built-in MCP endpoint.

Branded HTML emails

Confirmation, reminder, cancellation, and rescheduled emails — fully branded, no "Powered by" footer.

Google & M365 calendar sync

Two-way sync with Google Calendar and Microsoft 365 keeps availability accurate in real time.

Video conferencing links

Zoom coming soon

Auto-generate Zoom, Google Meet, or Microsoft Teams links at booking time.

Teams & routing

Round-robin, collective, and fixed-host routing for teams. Built-in member roles (owner, admin, member).

Embeddable widget

Drop a booking widget into any website with a single script tag. Works with any stack.

Full REST API

Every resource — event types, bookings, users, teams — is accessible via a REST API with API-key auth.

HMAC-signed webhooks

Fire verified events to your endpoints on booking, reschedule, or cancellation.

Conversion tracking

Native GTM and GA4 support so you can measure booking funnel performance without extra tooling.

Envelope encryption

All booking data is encrypted at rest. Each tenant's keys are isolated — no shared-key risk.

Spam & abuse prevention

Built-in rate limiting, CAPTCHA integration, and bot detection keep your booking pages clean.

Litestream backups

SQLite replication to S3, Backblaze, or any compatible store. Continuous streaming, not cron jobs.

Building blocks for your AI‑OS

A node,
not a monolith.

The interesting layer right now isn't any single app — it's how systems wire together around an LLM. Calnode is built for that world: a self-contained scheduling node that exposes exactly what an agent needs to book time, and nothing it doesn't.

  • Speaks MCP natively

    Your agents call Calnode like any other tool — check availability, book, reschedule. No adapter, no glue code.

  • Brings the capability, not the brain

    Point it at your own LLM. Calnode supplies scheduling; your stack supplies the intelligence.

  • Stays small

    One binary you can reason about, audit, and compose. Just enough, and no more.

Email
Calnode
YOUR
AGENT
CRM
Docs

one capability · cleanly connected

For developers

Everything you'd want.Nothing you wouldn't.

Embed widgetHTML
<script
src="https://book.acme.com/embed.js"
data-event="sarah/30min"
></script>
Webhook payloadJSON
{
"event": "booking.created",
"booking_id": "bk_01j...",
"start": "2025-06-11T10:30:00Z",
"attendee": { ... }
}
// HMAC-SHA256 signed — verify before processing
REST APIcURL
curl -X POST \
https://book.acme.com/api/v1/bookings \
-H "Authorization: Bearer ${API_KEY}" \
-d '{"event_type_id":"...","start":"..."}'
MCP server.mcp.json
{
"mcpServers": {
"calnode": {
"url": "https://book.acme.com/mcp",
"apiKey": "${CALNODE_KEY}"
}
}
}
REST API with API keysHMAC-signed webhooksEmbeddable widgetNative MCP serverGTM + GA4 supportLitestream backupSSO via OIDC (roadmap)

For regulated organisations

Data sovereignty isn't a checkbox.
It's an architecture decision.

SaaS schedulers store your meeting data, attendee information, and calendar context on their infrastructure. When regulators ask where your data lives, "in a third-party SaaS" isn't a satisfying answer.

Calnode runs in your environment. Your data never crosses your perimeter. The AI inference can run on your own GPU cluster or a private model endpoint. That enables a compliant posture without asking you to trust our security posture.

  • Deploy inside your VPC or private cloud
  • BYO LLM — booking AI stays on your infra
  • Instance-per-tenant isolation by architecture
  • Envelope encryption at rest, keys per tenant
  • Full audit trail via webhooks to your SIEM

Implementation & integration

Want someone to handle the whole thing?

We deploy and configure Calnode for organisations with hundreds or thousands of staff. SSO, CRM integration, calendar provisioning, user import — all done for you.

  • Production deployment on your infrastructure
  • SAML / OIDC single sign-on setup
  • CRM & calendar system integration
  • User & team provisioning
  • Staff training & documentation
  • Ongoing support options
See implementation services

Run it yourself.
Or let us run it for you.

Calnode is free and open source. Self-host it in minutes, or talk to us about a managed deployment for your organisation.