Google Drive document creation
SkillDocs & knowledge'Creates branded Google Docs, Slides, and Sheets via GDrive MCP scripts, automatically routing documents to the
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Google Drive document creation skill
What this skill tells your AI
The instructions your AI receives, as published by matteotitta/genesys-skills in skills/meta/infra/create-gdrive/SKILL.md and read by ahel’s review.
Create branded Google Docs, Slides, and Sheets in the correct client folder. This skill is the single entry point for all Google Drive document creation across the entire system.
When to use
- Any skill produces a deliverable (proposal, research, analysis, deck, tracker)
- User explicitly asks to "create a Google Doc", "push to Drive", "make a slide deck", "create a spreadsheet"
- After running
/client-proposals,/competitor-research,/product-messaging,/sales-enablement, or any deliverable-producing skill
Process
Step 1: Determine document type
| User intent | Document type | Script |
|---|---|---|
| Written deliverables (proposals, research, analysis) | Google Doc | create-doc-unified.mjs |
| Presentations, decks, pitch materials | Google Slides | create-slides.mjs |
| Data, trackers, comparisons, matrices | Google Sheets | create-sheet.mjs |
Step 2: Identify client context
Priority order:
- User explicitly names the client
- Current working directory is inside
/project-consulting/{client-name}/ - File path contains a client identifier
- Ask: "Which client is this for?"
Valid client slugs (from gdrive-config.json):
ClientCo→ PJ - ClientCo folderClientCo→ PJ - Proposals foldergtm-e-school→ PJ - Proposals foldergenesys-growth→ PJ - Proposals folderalphastream→ PJ - Alphastream foldertalli→ PJ - Talli.ai folderarchive→ PJ - Archive folder
Step 3: Save deliverable as markdown
Before pushing to Google Drive, the deliverable must exist as a .md file. Save it following the naming convention: MMYY-topic.md
Step 4: Run the appropriate script
Google Docs
cd dev-tools/mcp/gdrive && node create-doc-unified.mjs \
"/full/path/to/file.md" \
"Company Name" \
--client {client-slug} \
--title "Document Title"
Parameters:
file.md— Path to the markdown file (required)"Company Name"— Full company name for the header (required)--client— Client slug from config (optional, routes to correct folder)--title— Custom document title, defaults to "Scope of work" (optional)--folder— Override folder ID (optional, overrides client config)
Google Slides
cd dev-tools/mcp/gdrive && node create-slides.mjs \
"/full/path/to/file.md" \
"Company Name" \
--client {client-slug}
Markdown format for slides:
# Presentation Title
## Slide 1 Title
- Bullet point
- Another point
## Slide 2 Title
### Section heading (bold)
- More content
#= Presentation title (becomes title slide)##= New slide###= Bold subtitle within a slide-or*= Bullet points- Indented bullets = nested bullets
Branding: Client logo from Clearbit API is placed top-right on every slide. Title uses client's primary brand color.
Google Sheets
cd dev-tools/mcp/gdrive && node create-sheet.mjs \
"Sheet Title" \
--client {client-slug} \
--data "/path/to/data.csv"
Parameters:
"Sheet Title"— Name of the spreadsheet (required)--client— Client slug (optional)--data— Path to CSV file to import (optional)
Branding: Header row gets client's primary color background with white bold text. Alternating row colors for readability. Frozen header row.
Configuration
All client folder IDs and brand settings live in:
dev-tools/mcp/gdrive/gdrive-config.json
Adding a new client
- Get the Google Drive folder ID (run
node list-folders.mjsor create a new folder) - Add to
gdrive-config.json:
{
"new-client": {
"name": "New Client",
"domain": "newclient.com",
"folderId": "FOLDER_ID",
"brand": {
"primaryColor": "#HEXCOLOR",
"font": "Inter"
}
}
}
- Optionally run
/brand-kiton the client's website to extract exact colors
Updating brand colors
If a client's brand changes or you want more accurate colors:
- Run
/brand-kit https://client-website.com - Update the
brandobject ingdrive-config.json
Integration with other skills
When any skill finishes producing a deliverable, offer:
"Want me to create this as a Google Doc in the {client} folder?"
If yes, follow the process above. This applies to all deliverable-producing skills including but not limited to:
/client-proposals/competitor-research/product-messaging/landing-page-copy/sales-enablement/icp-research/win-loss-analysis/transcript-analysis
Authentication
Scripts use OAuth 2.0 with tokens at dev-tools/mcp/gdrive/credentials/token.json.
If authentication fails:
- Delete
credentials/token.json - Run
cd dev-tools/mcp/gdrive && node auth.mjs - Authorize in browser
- Re-run the creation script
Troubleshooting
| Issue | Solution |
|---|---|
| "Token expired" | Run node auth.mjs to refresh |
| Wrong folder | Check gdrive-config.json folder ID or use --folder override |
| No logo on slides | Verify client domain in config is correct (Clearbit needs valid domain) |
| "Scope insufficient" | Delete token.json and re-auth (scopes were updated to include Slides/Sheets) |
Signals
- GitHub stars
- 36
- Forks
- 14
- Last commit
- Jul 2026
Advanced
- Catalog kind
- skill
- Gateway key
gdrive-create- Source
- github.com/matteotitta/genesys-skills