Skip to the content.

Google Drive + Docs MCP Setup

Google Docs and Drive folders for specific festivals live in each project folder in the coalition cPALSs monorepo — not in the public festival repo. Cursor agents read and write via workspace-cpalss / workspace-cpalss — see Google Workspace MCP.

Drive registries (per festival)

Festival Network holds an index only: drive-registry.json

Festival Registry file (coalition monorepo)
MAF 2026 Programs/Mid-Autumn Festival/2026/drive-registry.json
LNY 2026 Programs/Lunar New Year/2026/drive-registry.json

Project scripts (export PDF, sync sheets, etc.) live under each project’s scripts/ folder and import shared OAuth helpers from Operations/Festival Network/scripts/lib/ in the monorepo.

Generic templates (Festival Network monorepo)

Reusable across festivals — copy or upload to Drive from project setup scripts:

Template Path (coalition monorepo)
Sponsorship packet standard (cash PDF) Operations/Festival Network/scripts/content/sponsorship-packet-standard.md
Sponsorship PDF generation (portrait, margins) Operations/Festival Network/scripts/content/sponsorship-pdf-generation.md
Media sponsor brief standard Operations/Festival Network/scripts/content/media-sponsor-brief-standard.md
Online sponsorship & crowdfunding Operations/Festival Network/scripts/content/online-sponsorship-crowdfunding-standard.md
Post-event sponsor report Operations/Festival Network/scripts/content/post-event-sponsor-report-template.md
Post-event metrics inventory Operations/Festival Network/scripts/content/post-event-metrics-inventory.md

Festival-specific seeds (packet copy, debrief templates, staff directory) belong in the project repo, not the public festival site.

Auth

MCP auth: Google Workspace MCP (Cursor servers workspace-cpalss, workspace-cpalss, …).

Script OAuth (PDF export, publish pipelines) still uses .google-workspace-oauth.json at the cPALSs root:

npm run mcp:oauth -w festival

Agent tools (Drive / Docs)

Via workspace-cpalss and workspace-cpalss. Discover exact tool names with Cursor’s MCP tool list (GetMcpTools) — official Google Workspace MCP names differ from the retired @dguido/google-workspace-mcp tools.

Policy docs: Repo markdown is draft source; publish formatted copies with:

node "Governance/People/scripts/publish-volunteer-policy-docs.mjs"

Do not upload raw .md via Drive text/markdown — it renders as unformatted markdown in Docs.

Markdown import gotchas

When pushing .md to Google Docs via Drive (media: text/markdown):

  • ~ (tilde) — paired tildes become strikethrough. Use about 2,000 instead of ~2,000.
  • * / _ — mid-word emphasis can become bold/italic unintentionally.
  • Tables — native import does not set readable column widths. After every Markdown→Doc sync, run optimizeDocumentTables from scripts/lib/markdown-to-google-doc.mjs. If preferred width exceeds the body content column, ask before switching to landscape / wider page.

Operating rules

  • Google Doc = source of truth for live sponsorship packet copy in each festival project
  • Festival Network = OAuth tooling, generic templates, market landscape sheets — not festival-specific copy or Drive IDs
  • Sheets for market landscape research — see google-sheets-mcp.html (same Workspace MCP)

Example: MAF 2026 project scripts

From Programs/Mid-Autumn Festival/2026/ in the coalition monorepo:

npm run export-sponsorship-pdf   # after Google Doc edits
npm run sponsor-setup            # pipeline, templates, packet seed → Doc
npm run export-budget-sheet
npm run vendor-quotes
npm run staff-directory

See that project’s drive-registry.json for Doc/Sheet IDs and folder links.