원클릭으로
memory-calendar-ingest
Pull Google Calendar events via MCP tools and extract attendees into the memory-kb contact registry
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Pull Google Calendar events via MCP tools and extract attendees into the memory-kb contact registry
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
| name | memory-calendar-ingest |
| description | Pull Google Calendar events via MCP tools and extract attendees into the memory-kb contact registry |
| user_invocable | true |
Pull today's calendar events via Google Calendar MCP, extract attendee contacts, append to daily log.
Read state from /Users/jesseanglen/Documents/RandomStuff/memory-kb/state/calendar-state.json (create if missing).
Read contacts from /Users/jesseanglen/Documents/RandomStuff/memory-kb/state/calendar-contacts.json (create if missing).
Use gcal_list_events with these parameters:
calendarId: "primary"timeMin: today at 00:00:00 (RFC3339 format, e.g., 2026-04-12T00:00:00)timeMax: tomorrow at 00:00:00 (RFC3339 format, e.g., 2026-04-13T00:00:00)timeZone: "America/Los_Angeles"Also fetch tomorrow's events for lookahead context (shift timeMin/timeMax by one day).
For each event returned, extract:
email, displayName, responseStatusIf an event has limited details, use gcal_get_event with the eventId to get full attendee list and description.
Skip:
status: "cancelled")For each attendee email found, update /Users/jesseanglen/Documents/RandomStuff/memory-kb/state/calendar-contacts.json:
{
"contacts": {
"email@example.com": {
"name": "Person Name",
"last_seen": "YYYY-MM-DD",
"event_count": N
}
},
"last_updated": "ISO timestamp"
}
Rules:
event_count, update last_seenevent_count: 1For each event with attendees, append to /Users/jesseanglen/Documents/RandomStuff/memory-kb/daily/YYYY-MM-DD.md:
## Calendar: [Event Title] @ HH:MM-HH:MM PT
**source:** calendar
**attendees:** name1 <email1>, name2 <email2>
**location:** [if any]
### Key Details
- [Event description summary]
- [Agenda items or notes from the description]
Create the daily log with # Daily Log: YYYY-MM-DD header if it doesn't exist.
Before appending, check if the daily log already has an entry with the same event title and time. Skip duplicates.
Write to /Users/jesseanglen/Documents/RandomStuff/memory-kb/state/calendar-state.json:
{
"last_checked_timestamp": "ISO timestamp",
"total_runs": N,
"last_run": {
"timestamp": "ISO",
"events_found": N,
"events_ingested": N,
"contacts_added": N,
"status": "success"
}
}
"Calendar ingest complete. Found X events, ingested Y, added Z new contacts to registry."
gcal_list_events — list events in a time range (primary tool)gcal_get_event — get full details for a single event (use for attendee details if list is condensed)gcal_list_calendars — list available calendars (use if primary doesn't return expected events)Ingest Bubbles AI meeting summaries from Gmail into the memory knowledge base
Manually compile daily logs into knowledge articles and run structural lint
Ingest emails from calendar contacts using Gmail MCP tools — calendar-gated to prevent spam/noise
Ingest recently modified Google Docs into the memory knowledge base with email correlation
Query the personal knowledge base — ask questions about past decisions, meetings, and context
Ingest Slack DMs and important channel messages into the memory knowledge base