Loading...

MCP server for Google Sheets API, enabling read, write, and management of spreadsheets via various authentication methods.
Boost this tool
Subscribe to listing upgrades or segmented pushes.
MCP server for Google Sheets API, enabling read, write, and management of spreadsheets via various authentication methods.
This server offers a balance of functionality and risk. It is safe when used with properly configured service accounts and limited permissions. It becomes risky if the service account has excessive permissions or if the spreadsheet is shared inappropriately.
Performance depends on the size of the spreadsheet and the complexity of the operations. Batch operations are generally more efficient than individual API calls.
Cost is primarily determined by Google Sheets API usage. Be mindful of API quotas and optimize operations to minimize costs.
npm install
npm{
"mcpServers": {
"mcp-gsheets": {
"command": "npx",
"args": ["-y", "mcp-gsheets@latest"],
"env": {
"GOOGLE_PROJECT_ID": "your-project-id",
"GOOGLE_APPLICATION_CREDENTIALS": "/absolute/path/to/service-account-key.json"
}
}
}
}sheets_get_valuesReads data from a specified range in a Google Sheet.
Read-only operation; no data modification.
sheets_batch_get_valuesReads data from multiple ranges in a Google Sheet.
Read-only operation; no data modification.
sheets_get_metadataRetrieves metadata about a Google Sheet, such as its properties and structure.
Read-only operation; no data modification.
sheets_check_accessChecks the access permissions for a Google Sheet.
Read-only operation; no data modification.
sheets_update_valuesWrites data to a specified range in a Google Sheet, overwriting existing content.
Modifies spreadsheet data, but doesn't alter structure.
sheets_batch_update_valuesWrites data to multiple ranges in a Google Sheet.
Modifies spreadsheet data, but doesn't alter structure.
sheets_append_valuesAppends rows of data to the end of a table in a Google Sheet.
Adds data to the spreadsheet, but doesn't alter structure unless configured to insert rows.
sheets_clear_valuesClears the contents of cells within a specified range in a Google Sheet.
Removes data from the spreadsheet, but doesn't alter structure.
sheets_insert_rowsInserts new rows at a specific position in a Google Sheet.
Modifies the structure of the spreadsheet by adding rows.
sheets_insert_sheetAdds a new sheet to a Google Sheets spreadsheet.
Modifies the structure of the spreadsheet by adding a new sheet.
sheets_delete_sheetRemoves a sheet from a Google Sheets spreadsheet.
Destructive operation; permanently removes a sheet and its data.
sheets_duplicate_sheetCreates a copy of an existing sheet within a Google Sheets spreadsheet.
Adds a new sheet based on an existing one.
sheets_copy_toCopies a sheet to another spreadsheet.
Copies data to another spreadsheet.
sheets_update_sheet_propertiesUpdates the properties of a sheet, such as its name or hidden state.
Modifies sheet settings.
sheets_batch_delete_sheetsDeletes multiple sheets from a Google Sheets spreadsheet in a single batch operation.
Destructive operation; permanently removes multiple sheets and their data.
sheets_batch_format_cellsFormats multiple cell ranges at once.
Modifies the appearance of cells, but not the data itself.
sheets_format_cellsFormats cells (colors, fonts, alignment, number formats).
Modifies the appearance of cells, but not the data itself.
sheets_update_bordersAdds or modifies cell borders.
Modifies the appearance of cells, but not the data itself.
sheets_merge_cellsMerges cells together.
Modifies the structure of the spreadsheet by merging cells.
sheets_unmerge_cellsUnmerges previously merged cells.
Modifies the structure of the spreadsheet by unmerging cells.
sheets_add_conditional_formattingAdds conditional formatting rules to cells.
Modifies the appearance of cells based on conditions.
sheets_create_chartCreates various types of charts within a Google Sheet.
Adds a chart to the spreadsheet.
sheets_update_chartModifies existing charts within a Google Sheet.
Modifies an existing chart.
sheets_delete_chartRemoves charts from a Google Sheet.
Removes a chart from the spreadsheet.
Environment Variable
This server offers a balance of functionality and risk. It is safe when used with properly configured service accounts and limited permissions. It becomes risky if the service account has excessive permissions or if the spreadsheet is shared inappropriately.
Autonomy is highly dependent on the configured permissions of the service account and the specific tools used. Exercise caution when granting write or delete permissions.
Production Tip
Monitor the service account's API usage to prevent exceeding Google Sheets API quotas.
File-based, JSON string, and private key authentication are supported.
Go to the Google Cloud Console, select your project, navigate to 'APIs & Services,' search for 'Google Sheets API,' and click 'Enable.'
The service account needs 'Editor' permissions on the spreadsheet.
The Spreadsheet ID is in the URL of the Google Sheet: https://docs.google.com/spreadsheets/d/[SPREADSHEET_ID]/edit
The server will return an error, and you may need to adjust your usage or request a quota increase from Google.
Yes, you can use it with multiple Google Sheets, but you need to share each sheet with the service account.
Verify the JSON key path, ensure the JSON is properly escaped, check that the private key includes BEGIN/END markers, and confirm the service account email is correct.