chayan-1906

πŸš€ Google Workspace MCP Server

Community chayan-1906
Updated

πŸ§ πŸ€– MCP-compliant AI agent server in TypeScript πŸš€ β€” Extend Claude & others with πŸ“Š Google Drive, Sheets, Docs superpowers! Pre-built executables available for easy installation

πŸš€ Google Workspace MCP Server

The Ultimate MCP Server for Google Workspace Automation β€” Seamlessly integrate Google Drive, Sheets, and Docs with Claude AI and other AI agents through the Model Context Protocol (MCP).

TypeScriptGoogle WorkspaceMCP

Google Workspace MCP

πŸ“– Overview

Google Workspace MCP Server is a TypeScript-based Model Context Protocol server that empowers AI agents like Claude with 76 powerful tools to interact with Google Workspace services. Automate document creation, spreadsheet manipulation, file management, and moreβ€”all through natural language conversations with AI.

🌟 Key Features

  • 76 Comprehensive Tools across Google Drive, Sheets, and Docs
  • Production-Ready with OAuth 2.0 authentication
  • Type-Safe implementation using TypeScript and Zod validation
  • Cross-Platform executable support for easy deployment
  • Real-Time Operations with Google Workspace APIs
  • Secure credential management and session handling

βš™οΈ Quick Start

1. πŸ“ Clone the Repository

git clone https://github.com/chayan-1906/Google-Workspace-MCP.git
cd Google-Workspace-MCP

2. πŸ“¦ Install Dependencies

npm install

3. πŸ”§ Configure OAuth Credentials

Follow the User Guide for detailed setup instructions.

4. πŸš€ Run the Server

npm run dev

Or build and package:

npm run package

🧰 Complete Tool Reference

πŸ‘€ Profile (1 tool)

Tool Name Description
myGoogleAccount Fetches the authenticated user's email address

πŸ“ Google Drive - Folder Management (8 tools)

Tool Name Description
getDriveFolderIdsByName Finds the Google Drive folder IDs by folder name
getDriveFolderContentById Finds the Google Drive folder contents by folder ID
createDriveFolder Creates a new folder in Google Drive
copyDriveFolder Copies a folder in Google Drive to a new location with a new name
moveDriveFolder Moves a folder to a different location in Google Drive
deleteDriveFolder Permanently deletes a folder from Google Drive
getDriveStorageQuota Gets Google Drive storage quota and usage information
getDriveSharedWithMe Lists files shared with the authenticated user

πŸ“„ Google Drive - File Operations (10 tools)

Tool Name Description
getDriveFileMetadata Gets detailed metadata for a Google Drive file
getDriveFilePermissions Gets all permissions for a Google Drive file
updateDriveFilePermissions Updates permissions for a specific user on a Google Drive file
copyDriveFile Copies a file in Google Drive to a new location with a new name
moveDriveFile Moves a file to a different folder in Google Drive
deleteDriveFile Permanently deletes a file from Google Drive
searchDriveFiles Searches for files in Google Drive using query parameters
removeDriveFileAccess Removes access permissions for a specific user from a Google Drive file
setDriveLinkPermission Sets link sharing permissions for a Google Drive file (anyone with link can access)
duplicateDriveFile Duplicates a file in the same folder with "Copy of" prefix

πŸ“Š Google Spreadsheets - Document Management (6 tools)

Tool Name Description
getSheetIdsByName Finds the Google Spreadsheet IDs by spreadsheet name
createSpreadsheet Creates a new Google Spreadsheet in the specified Drive folder
deleteSpreadsheet Deletes a Google Spreadsheet from Drive permanently
renameSpreadsheet Renames an existing Google Spreadsheet by the spreadsheet ID
shareSpreadsheet Shares the Google Spreadsheet with one or more users
unshareSpreadsheet Unshares the spreadsheet from specific email addresses (ignores if not shared)

πŸ“ Google Docs - Document Management (5 tools)

Tool Name Description
getDocIdsByName Finds the Google Doc IDs by doc name
getDocMetadata Fetches basic metadata for a Google Doc (title, timestamps, owners)
createDoc Creates a new Google Doc in the specified Drive folder
deleteDoc Deletes a Google Docs document
renameDoc Renames a Google Docs document

πŸ“ˆ Google Sheets - Data Manipulation (27 tools)

Tool Name Description
appendSheetTabRow Appends a new row in an existing spreadsheet
deleteRow Deletes one or more rows in a sheet tab
clearRanges Clears certain ranges from a Google Spreadsheet
updateRanges Updates specific ranges in a Google Spreadsheet
getSheetTabContent Fetches values from a specific sheet range in given Google Spreadsheet
addSheetTab Creates a new sheet tab in Google Spreadsheet
renameSheetTab Renames a sheet tab in Google Spreadsheet
deleteSheetTab Deletes a sheet tab by its numeric sheet tab ID
addSheetTabContent Adds new content (rows) to a specified range in a Google Spreadsheet
updateSheetTabContent Overwrites content in a specific Google Spreadsheet range
insertColumn Inserts a new column in a sheet at a specific position in Google Spreadsheet
deleteColumn Deletes one or more columns in a sheet tab from Google Spreadsheet
addChart Adds a chart to the specified sheet in Google Spreadsheet
sortSheet Sorts a row range by one or more column indexes in Google Spreadsheet
filterSheet Applies filter view to a specified cell range in Google Spreadsheet
functions Applies spreadsheet function formulas (e.g., SUM, AVERAGE) to specific cell in Google Spreadsheet
addConditionalFormatting Adds conditional formatting to a range in a Google Spreadsheet
clearAllConditionalFormatting Clears all conditional formatting rules in a sheet tab in Google Spreadsheet
freezeRowsColumns Freezes specified number of rows and columns in a sheet in Google Spreadsheet
unfreezeRowsColumns Removes any frozen rows or columns from the Google Spreadsheet
customCellFormatting Applies custom formatting to a specified cell range in a Google Spreadsheet
clearAllCustomCellFormattingSheet Clears all custom cell formatting (like font, color, alignment) from the given Google Spreadsheet
duplicateSheetTab Duplicates a sheet and assigns a new name in given Google Spreadsheet
mergeCells Merges a specified cell range in a sheet using a selected merge type in Google Spreadsheet
unmergeCells Unmerges cells in the given range on a Google Spreadsheet
setHeightWidth Sets row height or column width in a Google Spreadsheet
protectCells Adds a protected range to specific cells with a warning in a Google Spreadsheet
insertLinkSheet Inserts a hyperlink into a specific cell in Google Spreadsheet

πŸ“‹ Google Docs - Content & Formatting (18 tools)

Tool Name Description
getDocContent Retrieves the complete plain text content from a Google Docs document, including text from tables and other elements
appendDocText Appends text content to the end of a Google Docs document
findTextIndices Finds all indices of a character or word in a Google Docs document, similar to Google Docs Find tool
insertTextAtPosition Inserts text at a specific character position in a Google Docs document
deleteTextRange Deletes specific content ranges in a Google Docs document using precomputed start and end indices
getParagraphRanges Identifies paragraph boundaries and returns exact ranges for deletion
insertDocHyperlink Adds a hyperlink to existing text in a Google Docs document. Links ALL occurrences of searchText or specific range
removeDocHyperlinks Removes hyperlinks from text in a Google Docs document. Can remove all hyperlinks or only those containing specific text
exportDoc Exports a Google Doc to specified format and saves it in the same Drive folder
applyTextStyle Applies text styling to a range of text in a Google Doc (bold, italic, color, font, etc.)
applyParagraphStyle Applies paragraph styling to a range of text in a Google Doc (alignment, spacing, indentation, etc.)
setListStyle Applies list formatting (bullets or numbering) to a range of text in a Google Doc
removeAllFormattingDoc Removes all text and paragraph formatting from a range in a Google Doc
getAllCustomFormattingDoc Retrieves all custom formatting information from a Google Docs document, including text styles, paragraph styles, lists, and formatting details
insertTable Inserts a table with specified rows and columns at a given position in a Google Docs document
updateTable Updates a table in a Google Docs document by inserting/deleting rows/columns or updating cell content
deleteTable Deletes a table from a Google Docs document by specifying its start and end index
insertImage Inserts an image from a URL into a Google Docs document at a specified position. Supports both public URLs and data URIs

πŸ’‘ Use Cases

πŸ“Š Data Analysis & Reporting

  • Automatically generate reports from spreadsheet data
  • Create charts and visualizations programmatically
  • Apply conditional formatting based on data patterns

πŸ“ Document Automation

  • Generate documents from templates
  • Bulk create and format Google Docs
  • Export documents to multiple formats

πŸ—‚οΈ File Management

  • Organize and structure Drive folders
  • Manage permissions and sharing at scale
  • Search and retrieve files based on criteria

πŸ€– AI-Powered Workflows

  • Let AI agents read and write to your spreadsheets
  • Enable Claude to edit documents based on instructions
  • Automate repetitive Google Workspace tasks

πŸ› οΈ Tech Stack

Technology Purpose
TypeScript Type-safe application development
Google Drive API v3 Folder and file operations (fetch, create, delete, rename, permissions)
Google Sheets API v4 Full spreadsheet automation (create, manipulate sheets, rows, columns, charts, formatting)
Google Docs API v1 Advanced document operations (content editing, tables, images, formatting, exporting)
MCP SDK Model Context Protocol server framework
Zod Schema-based input validation
googleapis Official Google APIs Node.js client
OAuth 2.0 Secure authentication and authorization

πŸ” Security & Privacy

  • OAuth 2.0 authentication ensures secure access
  • Session tokens stored locally with encryption
  • Scoped permissions - only requested Google Workspace access
  • No data storage - all operations are direct API calls
  • Credential isolation - user credentials never shared

πŸš€ Deployment

Development Mode

npm run dev

πŸ“ˆ Project Stats

  • 76 Tools - Comprehensive Google Workspace automation
  • 3 APIs - Drive, Sheets, and Docs integration
  • Type-Safe - Built with TypeScript for reliability
  • Production-Ready - Used in real-world applications

🌟 Keywords

Google Workspace, MCP Server, Claude AI, TypeScript, Google Drive API, Google Sheets API, Google Docs API, Automation, AI Integration, Model Context Protocol, OAuth 2.0, Document Automation, Spreadsheet Automation, File Management, AI Agents, LLM Integration, API Integration, Cross-Platform, Node.js, Workspace Productivity

MCP Server Β· Populars

MCP Server Β· New

    butterbase-ai

    butterbase

    Open-source backend-as-a-service. Postgres, auth, storage, functions, AI gateway, MCP.

    Community butterbase-ai
    GoPlusSecurity

    GoPlus AgentGuard

    Security guard for AI agents β€” blocks malicious skills, prevents data leaks, protects secrets. 24 detection rules, runtime action evaluation, trust registry.

    Community GoPlusSecurity
    respawn-llc

    tool-filter-mcp

    MCP proxy server that filters tools from upstream MCP servers via regex-based deny list

    Community respawn-llc
    Kaelio

    ktx-ai-data-agents-context

    ktx is an executable context layer for data and analytics agents πŸ™ Allow Claude Code, Codex, and any AI agent to query data accurately through MCP with skills, memory and a semantic layer

    Community Kaelio
    bergside

    TypeUI - Build better UI with AI

    Build better UI with Codex, Claude, Cursor and other AI tools

    Community bergside