google-docs
Interact with Google Docs - create documents, search by title, read content, and edit text. Use when user asks to: create a Google Doc, find a document, read doc content, add text to a doc, or replace text in a document. Lightweight alternative to full Google Workspace MCP server with standalone OAuth authentication.
Savant verdict: Review advised
Security analysis or source-hub review identified patterns requiring attention.
Live evaluation
Not evaluated yet. Workspaces can request a live evaluation.
Security assessment
Scan pending.
Structure
- Ships 2 executable scriptsscripts/auth.py, scripts/docs.py. Review what they do before enabling the skill for agents with tool access.
- The source hub's security checks flagged this skillSocket: warn (2 alerts: gptAnomaly); Snyk: warn (Risk: MEDIUM · 2 issues); Runlayer: warn (6/6 files flagged)
SKILL.md
--- name: google-docs description: | Interact with Google Docs - create documents, search by title, read content, and edit text. Use when user asks to: create a Google Doc, find a document, read doc content, add text to a doc, or replace text in a document. Lightweight alternative to full Google Workspace MCP server with standalone OAuth authentication. license: Apache-2.0 metadata: author: sanjay3290 version: "1.0" --- # Google Docs Lightweight Google Docs integration with standalone OAuth authentication. No MCP server required. > **⚠️ Requires Google Workspace account.** Personal Gmail accounts are not supported. ## First-Time Setup Authenticate with Google (opens browser): ```bash python scripts/auth.py login ``` Check authentication status: ```bash python scripts/auth.py status ``` Logout when needed: ```bash python scripts/auth.py logout ``` ## Commands All operations via `scripts/docs.py`. Auto-authenticates on first use if not logged in. ```bash # Create a new document python scripts/docs.py create "Meeting Notes" # Create a document with initial content python scripts/docs.py create "Project Plan" --content "# Overview\n\nThis is the project plan." # Find documents by title python scripts/docs.py find "meeting" --limit 10 # Get text content of a document python scripts/docs.py get-text 1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms # Get text using a full URL python scripts/docs.py get-text "https://docs.google.com/document/d/1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms/edit" # Append text to end of document python scripts/docs.py append-text 1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms "New paragraph at the end." # Insert text at beginning of document python scripts/docs.py insert-text 1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms "Text at the beginning.\n\n" # Replace text in document python scripts/docs.py replace-text 1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms "old text" "new text" ``` ## Document ID Format Google Docs uses document IDs like `1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms`. You can: - Use the full URL (the ID will be extracted automatically) - Use just the document ID - Get document IDs from the `find` command results ## Token Management Tokens stored securely using the system keyring: - **macOS**: Keychain - **Windows**: Windows Credential Locker - **Linux**: Secret Service API (GNOME Keyring, KDE Wallet, etc.) Service name: `google-docs-skill-oauth` Access tokens are automatically refreshed when expired using Google's cloud function.