Senzii MCP Server
OfficialProvides geocoding via the public Nominatim/OpenStreetMap endpoint (no API key required) to resolve addresses for work sites and staff, enabling proximity-based ranking such as in find_candidates.
Sends email notifications for scheduling workflows, including client and staff magic-link emails. Optional — the app and MCP server run without it, but enabling it activates notification features such as send_client_magic_link and send_staff_magic_link.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Senzii MCP ServerShow me my sessions this week"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Senzii Scheduling App & MCP Server
Staff scheduling your AI agent can operate directly. Senzii is an open-source (Apache-2.0) scheduling platform: tag-based skills matching, shift assignment with conflict detection, certification tracking, proximity ranking, and client staffing requests — exposed as MCP tools for Claude, ChatGPT, or any MCP-compatible client.
The MCP server ships inside this repo and shares the app's PostgreSQL schema — it is the scheduling engine's agent interface, not a generic database connector.
MCP tools
28 tools covering the full scheduling workflow:
Area | Tools |
Staff |
|
Matching |
|
Shifts & assignments |
|
Clients |
|
Staffing requests |
|
Certifications |
|
Work sites |
|
Admin |
|
Every tool is scoped to the authenticated organization — the org ID is injected server-side into every query, so cross-org data access is impossible. Assignments are created pending by design: the agent proposes, a human confirms before the schedule goes live. That is a deliberate safety choice for regulated industries, not a limitation.
Related MCP server: Schedulia MCP
Stack
Web framework: FastAPI
Database: asyncpg (PostgreSQL)
Sessions: Cookie-based, PostgreSQL-backed
Email: Resend API (optional — only for notification features; the app runs fine without a key)
Geocoding: Nominatim (OpenStreetMap) — free public endpoint, no API key
MCP Server: Python MCP SDK (Streamable HTTP)
Requirements
Component | Required? | Notes |
PostgreSQL | Yes | Any instance works — Neon free tier is fine |
Geocoding | Free by default | Public OpenStreetMap/Nominatim, no key (set a User-Agent per their usage policy) |
Email (Resend) | Optional | API key only if you want email notifications |
Quick Start
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
cp .env.example .env # set DATABASE_URL; add RESEND_API_KEY only for email features
uvicorn app.main:app --host 0.0.0.0 --port 3000 --reloadMCP server:
python -m mcp_server.mainTool definitions live in mcp_server/tools/tools.toml — add or modify
tools by editing the TOML and their handlers under mcp_server/tools/.
Architecture
app/
main.py — FastAPI app, all routers wired
config.py — Environment configuration
db/ — Database layer (asyncpg pool, migrations, queries)
models/ — Pydantic schemas
middleware/ — Auth session extraction, rate limiting
routes/ — FastAPI routers (1:1 with Rust routes)
services/ — Email (Resend), Geocoding (Nominatim)
mcp_server/ — MCP server (Python MCP SDK), tools defined in tools.toml
static/ — App HTML/CSS/JS (login, dashboards, portals, SEO pages)The marketing/landing site is a separate repo (Senzii-App/site) served from
Vercel at senzii.com. app.senzii.com serves only the app: GET / is the
sign-in page.
Deployment
Two targets, one CLI (see infra/README.md for full docs):
./infra/deploy.sh azure <flags...> # deploy to Azure (VMSS / staging VM)
./infra/deploy.sh linode <flags...> # deploy to Linode backends
./infra/deploy.sh help # list providers & flagsLicense
Open-source. See LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
- FitnitoOAuthcom.fitnito
Schedule, members, and bookings in your AI tools
Manage fitness coaching clients, workouts, programs, chats and funnels from your assistant.
AI-native scheduling and booking: check availability, book meetings, share links.
Manage an EasyWeek business from AI: bookings, availability, customers, services, orders, messaging.
Related MCP Servers
AlicenseBqualityDmaintenanceEnables interaction with the Kalendis scheduling API to manage users, availability, bookings, and generate TypeScript clients and API routes. Supports comprehensive scheduling operations including recurring availability, exceptions, and booking management through natural language.4851 npmMIT- FlicenseCqualityDmaintenanceA meeting scheduling assistant that enables users to view schedules, manage incoming requests, and send meeting invitations via the Schedulia API. It facilitates seamless coordination of meeting times and participant management through natural language commands.41-
- FlicenseBqualityBmaintenanceEnables interaction with the Sling scheduling and workforce management platform, allowing users to manage shifts, users, calendars, and reports through natural language.162-
- AlicenseCqualityDmaintenanceEnables AI agents to manage spa/wellness operations via Zenoti API, including appointments, guests, services, and billing.2351 npmMIT