Aggregates calendar events from Google Calendar via iCal feeds to generate comprehensive daily briefings, detect scheduling conflicts, and identify available time slots for deep work.
Click on "Install 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., "@Daily Briefing MCP Servergive me my daily briefing and any action items from recent meetings"
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.
Daily Briefing MCP Server
An MCP (Model Context Protocol) server that aggregates calendar events, meeting summaries, action items, and travel information from multiple sources into personalized daily briefings.
Features
Multi-Source Aggregation: Combines data from Google Calendar, TripIt, Fireflies.ai, and other iCal feeds
Daily Briefings: Generate comprehensive daily summaries with schedule, conflicts, and action items
Conflict Detection: Automatically detects overlapping events and back-to-back meetings
Focus Time: Identifies available time slots for deep work
Meeting Summaries: Includes AI-generated summaries from Fireflies.ai meetings
Travel Alerts: Highlights upcoming travel and related alerts
Multiple Output Formats: Markdown, plain text, or JSON
Quick Start
1. Configure Data Sources
# Google Calendar (iCal feed)
export BRIEFING_GOOGLE_CALENDAR_URL="https://calendar.google.com/calendar/ical/..."
# TripIt (iCal feed)
export BRIEFING_TRIPIT_ICAL_URL="https://www.tripit.com/feed/ical/private/..."
# Fireflies.ai (optional)
export BRIEFING_FIREFLIES_API_KEY="your-api-key"2. Run the Server
# Install
pip install -e .
# Run
python -m daily_briefingConfiguration
All configuration via environment variables with BRIEFING_ prefix:
Server Settings
Variable | Description | Default |
| Transport mode: |
|
| HTTP server host |
|
| HTTP server port |
|
| Log level |
|
| Timezone for scheduling |
|
Calendar Sources
Variable | Description |
| Google Calendar iCal feed URL |
| Display name for Google Calendar |
| Enable Google Calendar (default: true) |
| TripIt private iCal feed URL |
| Enable TripIt (default: true) |
| Comma-separated additional iCal URLs |
| Comma-separated names for additional sources |
Fireflies.ai
Variable | Description |
| Fireflies.ai API key |
| Enable Fireflies (default: true) |
Briefing Settings
Variable | Description | Default |
| Work day start hour |
|
| Work day end hour |
|
| Min buffer between meetings |
|
| Days to look back for meetings |
|
| Days to look ahead for travel |
|
Available Tools
Tool | Description |
| Check server health and source connections |
| Generate comprehensive daily briefing |
| Get today's events and conflicts |
| Get pending action items from meetings |
| Get summaries of recent meetings |
| Get upcoming travel information |
| Find available time slots on a date |
| Get overview of the upcoming week |
Example Usage
Claude Desktop Configuration
{
"mcpServers": {
"daily-briefing": {
"command": "python",
"args": ["-m", "daily_briefing"],
"env": {
"BRIEFING_GOOGLE_CALENDAR_URL": "https://calendar.google.com/...",
"BRIEFING_TRIPIT_ICAL_URL": "https://tripit.com/feed/...",
"BRIEFING_FIREFLIES_API_KEY": "your-api-key"
}
}
}
}Example Queries
"Give me my daily briefing"
"What's on my schedule today?"
"Do I have any scheduling conflicts?"
"What action items do I have from recent meetings?"
"When am I free for a 1-hour meeting today?"
"What does my week look like?"
"Any upcoming travel?"Sample Briefing Output
# Daily Briefing - Wednesday, January 15, 2025
## Today's Schedule
- **09:00 AM - 09:30 AM** (30m)
- Team Standup
- **02:00 PM - 03:00 PM** (60m)
- Product Review
- *Location:* Conference Room A
## Available Focus Time
- 09:30 AM - 02:00 PM (270m)
## Travel Alerts
✈️ Flight in 3 days: Flight to San Francisco
## Recent Meeting Summaries
### Sprint Planning
*January 14, 2025*
Team discussed sprint goals and assigned tasks.
**Action Items:**
- [ ] Review PR #123
- [ ] Update documentation
## Pending Action Items
- [ ] Review PR #123
- *From: Sprint Planning*
## Today's Stats
| Metric | Value |
|--------|-------|
| Total Meetings | 2 |
| Meeting Time | 1.5 hours |
| Focus Time | 4.5 hours |Development
Install Dependencies
pip install -e ".[dev]"Run Tests
pytestRun with Debug Logging
BRIEFING_LOG_LEVEL=DEBUG python -m daily_briefingDocker
# Build
docker build -t daily-briefing .
# Run
docker run \
-e BRIEFING_GOOGLE_CALENDAR_URL="..." \
-e BRIEFING_TRIPIT_ICAL_URL="..." \
-p 8003:8003 \
daily-briefingKubernetes Deployment
helm install daily-briefing ./helm/daily-briefing \
--set briefing.googleCalendar.url="YOUR_GOOGLE_CALENDAR_URL" \
--set briefing.tripit.icalUrl="YOUR_TRIPIT_URL"Architecture
┌─────────────────────────────────────────────────────────────────┐
│ Daily Briefing MCP Server │
├─────────────────────────────────────────────────────────────────┤
│ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────────────┐ │
│ │ Google │ │ TripIt │ │ Fireflies.ai │ │
│ │ Calendar │ │ (Travel) │ │ (Meetings) │ │
│ └──────┬───────┘ └──────┬───────┘ └──────┬───────────────┘ │
│ │ │ │ │
│ └─────────────────┼──────────────────┘ │
│ │ │
│ ┌──────▼───────┐ │
│ │ Aggregator │ │
│ └──────┬───────┘ │
│ │ │
│ ┌─────────────────┼─────────────────┐ │
│ │ │ │ │
│ ┌─────▼─────┐ ┌─────▼─────┐ ┌─────▼─────┐ │
│ │ Conflict │ │ Free │ │ Action │ │
│ │ Detection │ │ Slots │ │ Items │ │
│ └───────────┘ └───────────┘ └───────────┘ │
│ │ │
│ ┌──────▼───────┐ │
│ │ Formatters │ │
│ │ (MD/Text/JSON)│ │
│ └──────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────┘License
MIT