MCP Calendar Assistant

Provides calendar and task management via MCP, enabling smart scheduling, reminders, and analytics across multiple calendars.
  • typescript

0

GitHub Stars

typescript

Language

5 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "momer17-mailmcp": {
      "command": "node",
      "args": [
        "/path/to/mcp-calendar-server/dist/index.js"
      ],
      "env": {
        "REDIS_URL": "redis://localhost:6379",
        "JWT_SECRET": "YOUR_JWT_SECRET",
        "DATABASE_URL": "postgresql://localhost:5432/calendar_assistant",
        "GOOGLE_CLIENT_ID": "your-client-id",
        "GOOGLE_CLIENT_SECRET": "your-client-secret"
      }
    }
  }
}

You can manage your calendar and reminders through a dedicated MCP server that understands natural language queries and multi-calendar data. This server lets you create, read, update, and delete events, find free time, check availability, and organize tasks with priorities and due dates, all while optimizing scheduling and providing actionable insights.

How to use

Interact with the MCP Calendar Assistant using your preferred MCP client. You can ask it to schedule events, find available time slots across multiple calendars, set reminders, and analyze your scheduling habits. For best results, provide clear dates, times, durations, and attendee names. The assistant can propose meeting times, respect working hours, and auto-suggest frequent collaborators to streamline planning.

How to install

Prerequisites you need on your machine are Node.js 18 or newer, PostgreSQL 12 or newer, Redis 6 or newer (recommended but optional), and a Google Cloud Project with the Calendar API enabled.

git clone <repository-url>
cd mcp-calendar-server
npm install

2. Environment Setup

cp .env.example .env
# Edit .env with your configuration

3. Google Calendar Setup

  1. Create a Google Cloud project or select an existing one
  2. Enable the Google Calendar API
  3. Create OAuth 2.0 credentials
  4. Add your credentials to `.env
## Configuration and security

Configure environment variables to connect to your database and Google Calendar integration. The setup guides you to enable caching, batching, and analytics features via feature flags. Secure your deployment with JWT-based authentication, OAuth 2.0 for Google Calendar, and proper token refresh handling. Use rate limiting and input validation to protect the service.

Example configuration snippets

DATABASE_URL=postgresql://localhost:5432/calendar_assistant REDIS_URL=redis://localhost:6379 GOOGLE_CLIENT_ID=your-client-id GOOGLE_CLIENT_SECRET=your-client-secret JWT_SECRET=your-jwt-secret

```bash
# Feature flags (example)
env FACET_CACHING=true

MCP integration and running the server

You can run the MCP server locally using the standard runtime command shown for local development. When integrating with an MCP client like Claude Desktop, you provide a command that starts the server from its built distribution.

{
  "mcpServers": {
    "calendar_assistant": {
      "command": "node",
      "args": ["/path/to/mcp-calendar-server/dist/index.js"],
      "env": {
        "DATABASE_URL": "postgresql://localhost:5432/calendar_assistant",
        "GOOGLE_CLIENT_ID": "your-client-id",
        "GOOGLE_CLIENT_SECRET": "your-client-secret"
      }
    }
  }
}

Troubleshooting and notes

If you encounter connectivity issues, check that PostgreSQL and Redis services are running and reachable at the configured URLs. Ensure the Google Calendar API credentials are valid and that the OAuth 2.0 flow completes successfully. For production, consider enabling caching, rate limiting, and robust logging to monitor performance and security events.

Examples and usage patterns

Examples of typical user requests include scheduling a meeting, finding free time for a workshop, adding reminders, and analyzing your schedule for patterns. You can ask the system to suggest optimal meeting times based on availability and past events.

Tools and capabilities overview

The MCP server exposes a range of calendar operations, task management, analytics, and intelligent insights to help you stay organized. It supports multi-calendar views, smart scheduling suggestions, and working hours preferences while maintaining reliable performance through caching and batch processing.

Security and monitoring

Security features include JWT-based sessions, OAuth 2.0 with Google Calendar, secure token handling, and input validation. Monitoring is provided through health checks, structured logging, and the ability to verify database and cache connectivity.

Available tools

get_calendars

List available calendars accessible to the account.

get_calendar_events

Retrieve events from a specified calendar.

create_calendar_event

Create a new calendar event with given parameters.

update_calendar_event

Modify an existing calendar event.

delete_calendar_event

Remove an event from a calendar.

find_free_time

Find available time slots across calendars.

check_availability

Check attendee availability for proposed times.

suggest_meeting_times

AI-powered recommendations for optimal meeting times.

create_reminder

Create tasks and reminders with priorities and due dates.

get_reminders

Retrieve tasks with optional filtering.

update_reminder

Modify existing reminders.

complete_reminder

Mark tasks as completed.

analyze_schedule_patterns

Analyze scheduling habits and patterns.

get_working_hours

Retrieve preferred working hours and constraints.

get_recent_similar_events

Find events related to context for better planning.

get_contact_suggestions

Auto-suggest frequent collaborators.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational