Generates API route handlers for Express applications that integrate with the Kalendis scheduling API
Generates Fastify plugin with route handlers for integrating Kalendis scheduling functionality into Fastify applications
Generates complete NestJS modules including controllers, services, and modules for Kalendis scheduling API integration
Generates App Router API routes for Next.js applications to integrate with Kalendis scheduling services
Generates type-safe TypeScript clients for both backend and frontend applications to interact with the Kalendis scheduling API
Kalendis MCP Tool
MCP (Model Context Protocol) server and client generator for Kalendis scheduling API integration.
Features
🔧 MCP Server: Exposes Kalendis API tools for use with Claude, Cursor, etc
🚀 Client Generator: Generates TypeScript clients for backend and frontend applications
🛣️ Route Generator: Creates API route handlers for Next.js, Fastify, NestJS and Express
🔐 Secure: Uses environment variables for API key management
📝 Type-safe: Full TypeScript support with generated types
Installation
Quick Start
1. Get Your API Key
Before using the Kalendis MCP tool, you'll need an API key. Create a free account at kalendis.dev to get started. Your API key will be available in your account dashboard and is required for authenticating requests to the Kalendis scheduling API.
2. Configure MCP Server
Quick Install (Cursor IDE)
Click the button below to automatically add Kalendis to your Cursor IDE:
Manual Configuration
Alternatively, add this to your MCP settings:
3. Available MCP Tools
Once configured, the AI agent can use these tools:
generate-backend-client: Generate a TypeScript client for direct API calls
generate-frontend-client: Generate a TypeScript client for frontend applications
generate-api-routes: Generate API route handlers for Next.js, Express, Fastify, or NestJS
list-endpoints: List all available Kalendis API endpoints
Client Generation
Backend Client
Generate a client that calls the Kalendis API directly:
Frontend Client
Generate a client that calls your backend API endpoints:
API Routes
Next.js Routes
Generates App Router API routes:
Express Routes
Generates Express router handlers:
Fastify Routes
Generates Fastify plugin with route handlers:
NestJS Module
Generates complete NestJS module with controller, service, and module files:
API Endpoints Coverage
The tool supports all 28 Kalendis API endpoints:
Users
GET /v1/users - Fetch all users
POST /v1/users - Create user
PUT /v1/users/:id - Update user
DELETE /v1/users/:id - Delete user
Availability
GET /v1/availability - Get availability with filters
GET /v1/availability/all - Get all availability
GET /v1/availability/calculated - Get calculated availability
GET /v1/availability/recurring - Get recurring availability
GET /v1/availability/matching - Get matching availability
POST /v1/availability - Add availability
PUT /v1/availability/:id - Update availability
DELETE /v1/availability/:id - Delete availability
Recurring Availability
GET /v1/recurring-availability - Get recurring availability
POST /v1/recurring-availability - Add recurring availability
PUT /v1/recurring-availability/:id - Update recurring availability
DELETE /v1/recurring-availability/:id - Delete recurring availability
Availability Exceptions
GET /v1/availability-exceptions - Get exceptions
POST /v1/availability-exceptions - Add exception
POST /v1/availability-exceptions/recurring - Add recurring exception
PUT /v1/availability-exceptions/:id - Update exception
DELETE /v1/availability-exceptions/:id - Delete exception
Bookings
GET /v1/bookings - Get bookings
GET /v1/bookings/:userId - Get user bookings
POST /v1/bookings - Create booking
PUT /v1/bookings/:id - Update booking
DELETE /v1/bookings/:id - Delete booking
Account
GET /v1/account - Get account info
PUT /v1/account - Update account
Environment Configuration
The tool supports three environments:
development:
https://sandbox.api.kalendis.dev
production:
https://api.kalendis.dev
Authentication
All API calls to the Kalendis scheduling service require authentication via the x-api-key
header.
The generated clients require you to provide an API key when instantiating:
The generated API route handlers use environment variables by default, but you can customize this:
Note: The MCP tool itself doesn't need or use the API key - it only generates code. The API key is used by the generated clients in your application.
Error Handling
The generated clients provide clear error messages:
401: Authentication failed - Invalid or missing API key
403: Permission denied - API key lacks required permissions
Network errors: Clear connection failure messages
API errors: Detailed error messages from the API
Development
To build the MCP tool locally:
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Fork the repository
Create your feature branch (
git checkout -b feature/amazing-feature
)Commit your changes (
git commit -m 'Add some amazing feature'
)Push to the branch (
git push origin feature/amazing-feature
)Open a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
Support
For issues or questions:
Open an issue on GitHub
Email: support@kalendis.dev
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Enables 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.