mcp-google-sheets-server
π MCP Google Sheets Server v2.2.1
Official TaskKit MCP Server for Google Sheets - 37 tools for sheet management, formatting, charts, and automation.
This is an official open-source package in the TaskKit ecosystem, maintained by TrαΊ§n Minh Long.
TaskKit open-source catalog Β· npm Β· GitHub
Version 2.2.1 aligns the package with TaskKit's canonical identity and updates the MCP and Google API dependencies to patched supported releases.
Runtime requirement: Node.js 20 or newer.
β¨ Complete Sheet Management & Enhanced Charts
π Complete Sheet Management - Create, rename, hide/show, move, duplicate, delete sheets
π Advanced Chart Creation - Create charts with data, from tables, update chart data
π Sheet Information - Get detailed sheet properties, list all sheets
π¨ Professional Formatting - Colors, fonts, borders, conditional formatting
π Data Protection - Validation rules, range protection, access control
β‘ Performance Optimized - Batch operations, efficient API usage
π Enterprise Ready - 37 tools for professional Google Sheets management
π Quick Installation
Install Node.js 20 or newer before using the package.
Method 1: Install from npm (Recommended)
npm install -g mcp-google-sheets-serverMethod 2: Local installation
npm install mcp-google-sheets-serverMethod 3: Use npx (No installation needed)
npx mcp-google-sheets-serverπ Google Service Account Authentication
Detailed Guide
See the Google Service Account setup guide for step-by-step instructions on how to get a Google Service Account key.
Quick Configuration
{
"mcpServers": {
"mcp-google-sheets": {
"command": "npx",
"args": ["mcp-google-sheets-server"],
"env": {
"GOOGLE_SERVICE_ACCOUNT_KEY": "your-service-account-json"
}
}
}
}π Complete Tool Collection (37 Tools)
π§ Basic Operations
Tool | Description | Parameters |
| Get data with formatting options |
|
| Update data with input options |
|
| Create spreadsheet with theme |
|
π¨ Advanced Formatting
Tool | Description | Parameters |
| Apply professional formatting |
|
| Set conditional rules |
|
| Merge cells with options |
|
π Enhanced Charts & Visualization
Tool | Description | Parameters |
| Create basic charts |
|
| Create charts with data |
|
| Create charts from tables |
|
| Update existing charts |
|
| Update chart data |
|
| Delete charts |
|
| List all charts |
|
π Complete Sheet Management
Tool | Description | Parameters |
| Create new sheets |
|
| Duplicate existing sheets |
|
| Delete sheets |
|
| Rename sheets |
|
| Hide sheets from view |
|
| Show hidden sheets |
|
| Move sheets to new position |
|
| Get all sheet information |
|
| Get specific sheet properties |
|
π Data Validation & Protection
Tool | Description | Parameters |
| Set validation rules |
|
| Protect ranges from editing |
|
π Advanced Data Operations
Tool | Description | Parameters |
| Insert rows at position |
|
| Insert columns at position |
|
| Delete rows from position |
|
| Delete columns from position |
|
π Formula & Calculation
Tool | Description | Parameters |
| Set formulas in cells |
|
| Calculate formula results |
|
β‘ Batch Operations
Tool | Description | Parameters |
| Multiple operations in one request |
|
| Get data from multiple ranges |
|
π Search & Sharing
Tool | Description | Parameters |
| Search spreadsheets |
|
| Share with permissions |
|
| Get comprehensive metadata |
|
π§Ή Utility Operations
Tool | Description | Parameters |
| Clear content and formatting |
|
| Copy sheets between spreadsheets |
|
π οΈ Advanced Setup Examples
Create Professional Spreadsheet with Multiple Sheets
{
"mcpServers": {
"mcp-google-sheets": {
"command": "npx",
"args": ["mcp-google-sheets-server"],
"env": {
"GOOGLE_SERVICE_ACCOUNT_KEY": "your-service-account-json"
}
}
}
}π Advanced Usage Examples
Complete Sheet Management Workflow
// 1. Create spreadsheet
const spreadsheet = await mcp.callTool("sheets_create", {
title: "Business Dashboard 2024",
theme: "LIGHT",
});
// 2. Create multiple sheets
await mcp.callTool("sheets_create_sheet", {
spreadsheetId: spreadsheet.spreadsheetId,
title: "Sales Data",
index: 1,
});
await mcp.callTool("sheets_create_sheet", {
spreadsheetId: spreadsheet.spreadsheetId,
title: "Charts",
index: 2,
});
// 3. Add data to Sales Data sheet
await mcp.callTool("sheets_update_data", {
spreadsheetId: spreadsheet.spreadsheetId,
range: "Sales Data!A1:D6",
values: [
["Month", "Revenue", "Expenses", "Profit"],
["January", 50000, 30000, 20000],
["February", 55000, 32000, 23000],
["March", 60000, 35000, 25000],
["April", 65000, 38000, 27000],
["May", 70000, 40000, 30000],
],
});
// 4. Create professional chart
await mcp.callTool("sheets_create_chart_from_table", {
spreadsheetId: spreadsheet.spreadsheetId,
chartType: "COLUMN",
tableRange: "Sales Data!A1:D6",
title: "Monthly Financial Performance",
useFirstRowAsLabels: true,
});
// 5. Rename and organize sheets
await mcp.callTool("sheets_rename_sheet", {
spreadsheetId: spreadsheet.spreadsheetId,
sheetId: 0, // First sheet
newTitle: "Summary",
});
// 6. Move Charts sheet to the end
await mcp.callTool("sheets_move_sheet", {
spreadsheetId: spreadsheet.spreadsheetId,
sheetId: 2, // Charts sheet
newIndex: 3, // Move to end
});
// 7. Hide a temporary sheet if needed
await mcp.callTool("sheets_hide_sheet", {
spreadsheetId: spreadsheet.spreadsheetId,
sheetId: 1, // Hide Sales Data sheet
});Advanced Chart Management
// Create chart with custom options
await mcp.callTool("sheets_create_chart_with_data", {
spreadsheetId: "your-spreadsheet-id",
chartType: "LINE",
dataRange: "A1:C10",
title: "Trend Analysis",
chartOptions: {
colors: ["#4285F4", "#34A853"],
legendPosition: "RIGHT_LEGEND",
},
});
// Update chart data when source data changes
await mcp.callTool("sheets_update_chart_data", {
spreadsheetId: "your-spreadsheet-id",
chartId: 12345,
newDataRange: "A1:C15", // Extended range
updateTitle: "Updated Trend Analysis",
});
// List all charts in spreadsheet
const charts = await mcp.callTool("sheets_list_charts", {
spreadsheetId: "your-spreadsheet-id",
});
// Delete unwanted charts
await mcp.callTool("sheets_delete_chart", {
spreadsheetId: "your-spreadsheet-id",
chartId: 12345,
});Sheet Information and Properties
// Get information about all sheets
const sheetInfo = await mcp.callTool("sheets_get_sheet_info", {
spreadsheetId: "your-spreadsheet-id",
includeGridData: false,
});
// Get properties of specific sheet
const sheetProps = await mcp.callTool("sheets_get_sheet_properties", {
spreadsheetId: "your-spreadsheet-id",
sheetId: 0,
});
// Check if sheet is hidden
if (sheetProps.properties.hidden) {
// Show the sheet
await mcp.callTool("sheets_show_sheet", {
spreadsheetId: "your-spreadsheet-id",
sheetId: 0,
});
}π§ Troubleshooting
Common errors:
Error | Solution |
"GOOGLE_SERVICE_ACCOUNT_KEY not found" | β’ Check environment variable in mcp.jsonβ’ Ensure JSON is properly escaped |
"Permission denied" | β’ Check service account access permissionsβ’ Ensure Google Sheets are shared with service account |
"Invalid credentials" | β’ Check service account JSON fileβ’ Ensure Google Sheets API is enabled |
π Advantages Over Other Solutions
β 37 Advanced Tools - Complete Google Sheets MCP tool collection
β Complete Sheet Management - Full control over sheets (create, rename, hide, move, delete)
β Enhanced Chart Creation - Create charts with data, from tables, update dynamically
β Professional Formatting - Colors, fonts, borders, conditional formatting
β Data Validation - Set rules and protect sensitive data
β Batch Operations - High-performance multiple operations
β Sheet Information - Get detailed properties and status of all sheets
β Performance Optimized - Efficient API usage and batch processing
π License
MIT License - See LICENSE file for details.
π€ Contributing
All contributions are welcome! Please:
π΄ Fork the project
πΏ Create a feature branch (
git checkout -b feature/AmazingFeature)πΎ Commit your changes (
git commit -m 'Add some AmazingFeature')π Push to the branch (
git push origin feature/AmazingFeature)π Open a Pull Request
π Support
If you encounter issues:
π Check Issues first
π Create a new issue if none exists
π Describe the problem in detail and how to reproduce it
π TaskKit: Official open-source catalog
β Star the Project
If this project is helpful, please give it a star! β
Made with β€οΈ by Longtran2404
Founder profile: TrαΊ§n Minh Long
π 37 Tools for Complete Google Sheets Management π