一键导入
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