ContextCore MCP
A personal AI assistant that connects git history, Gmail, Google Calendar, and Google Drive into an intelligent daily briefing via function calling and MCP.
README
# ContextCore MCP
A personal AI assistant built with Python and Groq that acts as an external memory layer for developers. Connects git history, Gmail, Google Calendar, and Google Drive into one intelligent daily briefing — powered by function calling and the Model Context Protocol (MCP).
> Built as a learning project to explore MCP architecture, Google APIs, LLM function calling, and agentic AI patterns.
---
## What it does
Every morning you context-switch between your email, calendar, and code just to figure out where you left off. ContextCore collapses that into one command.
**`/today`** — Good morning briefing:
- What you were coding yesterday (git commits + uncommitted changes)
- Email intelligence (categorized, prioritized, 5 mandatory counts)
- Today's calendar events
- Auto-generated action list injected into Google Calendar
**`/eod`** — End of day wrap:
- Synthesizes your day into a structured daily log saved to `memory/daily_log.md`
- Reviews incomplete calendar tasks and asks about carry over
- Briefs tomorrow's outlook
**On demand** — Ask anything:
- "Search my logs for OAuth bug" → searches daily_log.md
- "Update today's summary to sheet" → writes to Google Sheets
- "Find this file on Drive" → searches Google Drive
- "Add a reminder for my interview tomorrow" → creates Calendar event
---
## Architecture
User Input ↓ Groq (Llama) — reasons about which tools to call ↓ Tool Execution Layer — 13 tools across 5 domains ↓ Google APIs + Local Git + Memory Files ↓ Synthesized Response
**13 Tools across 5 domains:**
| Domain | Tools |
|--------|-------|
| Git | git_summary, git_current_work_status |
| Gmail | google_gmails_get, google_gmails_get_counts |
| Calendar | get/create/update/delete events |
| Drive & Sheets | get_sheet_data, write_sheet_data, manage_drive_file |
| Memory | write_day_log_summary, search_log_memory |
---
## Tech Stack
- **Python 3.12**
- **Groq API** (Llama 4 Scout — free tier)
- **FastMCP** — MCP server framework
- **Google APIs** — Gmail, Calendar, Drive, Sheets
- **GitPython** — local git history
- **Model Context Protocol (MCP)** — tool orchestration
---
## Project Structure
contextcore_mcp/ ├── client/ # Groq client + system prompt ├── server/ # FastMCP server + tool registration ├── tools/ # 13 tool implementations │ ├── gmail.py │ ├── calendar.py │ ├── drive.py │ ├── git_tools.py │ ├── daily_logger.py │ └── memory.py ├── shared/ # Google OAuth shared auth ├── memory/ # daily_log.md persistent memory └── config/ # .env secrets
---
## Setup
**1. Clone the repo**
```bash
git clone https://github.com/rkpraveendev/contextcore-mcp.git
cd contextcore-mcp
2. Install dependencies
uv sync
3. Google Cloud setup
- Create a Google Cloud project
- Enable: Gmail API, Google Calendar API, Google Drive API, Google Sheets API, Google Docs API
- Create OAuth 2.0 credentials (Desktop app)
- Download as
config/credentials.json - Add yourself as a test user in OAuth consent screen
4. Configure environment
# config/.env
CONTEXTCORE_GROQ_API_KEY=your_groq_key
GOOGLE_SHEET_ID=your_sheet_id
5. Setup Google Sheets
python -c "from tools.drive import setup_sheets; print(setup_sheets())"
6. Run
python -m main
Usage
Enter your query: today
Enter your query: eod
Enter your query: search my logs for OAuth
Enter your query: update today's summary to sheet
Enter your query: add reminder for interview tomorrow at 2pm
Enter your query: exit
What I learned
- MCP protocol internals and how it differs from standard API integrations
- Google OAuth 2.0 — all four token states (valid, expired, refreshable, revoked)
- LLM function calling — tool schemas, argument parsing, multi-turn tool loops
- Agentic AI patterns — when to put logic in prompts vs code
- Python async patterns for MCP tool registration
- GitPython for reading local repository state
Phase 2 Plans
- Google Tasks integration with checkbox completion
- Finance tracking
- Multi-repo support
- Web UI instead of terminal
- Notion integration
Note
This is a personal learning project built to understand MCP architecture, agentic AI, and Google Workspace APIs. Not intended for production use.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.