Create, read and modify spreadsheets in Google Drive through the Google Sheets API.
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add google-sheets --env SERVICE_ACCOUNT_PATH='<SERVICE_ACCOUNT_PATH>' --env DRIVE_FOLDER_ID='<DRIVE_FOLDER_ID>' --env CREDENTIALS_CONFIG='<CREDENTIALS_CONFIG>' --env CREDENTIALS_PATH='<CREDENTIALS_PATH>' --env GOOGLE_APPLICATION_CREDENTIALS='<GOOGLE_APPLICATION_CREDENTIALS>' --env TOKEN_PATH='<TOKEN_PATH>' -- uvx mcp-google-sheets@latest~/.codex/config.toml
[mcp_servers.google-sheets]
command = "uvx"
args = ["mcp-google-sheets@latest"]
env = { SERVICE_ACCOUNT_PATH = "<SERVICE_ACCOUNT_PATH>", DRIVE_FOLDER_ID = "<DRIVE_FOLDER_ID>", CREDENTIALS_CONFIG = "<CREDENTIALS_CONFIG>", CREDENTIALS_PATH = "<CREDENTIALS_PATH>", GOOGLE_APPLICATION_CREDENTIALS = "<GOOGLE_APPLICATION_CREDENTIALS>", TOKEN_PATH = "<TOKEN_PATH>" }
# codex mcp add google-sheets --env SERVICE_ACCOUNT_PATH='<SERVICE_ACCOUNT_PATH>' --env DRIVE_FOLDER_ID='<DRIVE_FOLDER_ID>' --env CREDENTIALS_CONFIG='<CREDENTIALS_CONFIG>' --env CREDENTIALS_PATH='<CREDENTIALS_PATH>' --env GOOGLE_APPLICATION_CREDENTIALS='<GOOGLE_APPLICATION_CREDENTIALS>' --env TOKEN_PATH='<TOKEN_PATH>' -- uvx mcp-google-sheets@latest~/.cursor/mcp.json
{
"mcpServers": {
"google-sheets": {
"command": "uvx",
"args": [
"mcp-google-sheets@latest"
],
"env": {
"SERVICE_ACCOUNT_PATH": "<SERVICE_ACCOUNT_PATH>",
"DRIVE_FOLDER_ID": "<DRIVE_FOLDER_ID>",
"CREDENTIALS_CONFIG": "<CREDENTIALS_CONFIG>",
"CREDENTIALS_PATH": "<CREDENTIALS_PATH>",
"GOOGLE_APPLICATION_CREDENTIALS": "<GOOGLE_APPLICATION_CREDENTIALS>",
"TOKEN_PATH": "<TOKEN_PATH>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"google-sheets": {
"type": "stdio",
"command": "uvx",
"args": [
"mcp-google-sheets@latest"
],
"env": {
"SERVICE_ACCOUNT_PATH": "<SERVICE_ACCOUNT_PATH>",
"DRIVE_FOLDER_ID": "<DRIVE_FOLDER_ID>",
"CREDENTIALS_CONFIG": "<CREDENTIALS_CONFIG>",
"CREDENTIALS_PATH": "<CREDENTIALS_PATH>",
"GOOGLE_APPLICATION_CREDENTIALS": "<GOOGLE_APPLICATION_CREDENTIALS>",
"TOKEN_PATH": "<TOKEN_PATH>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"google-sheets": {
"command": "uvx",
"args": [
"mcp-google-sheets@latest"
],
"env": {
"SERVICE_ACCOUNT_PATH": "<SERVICE_ACCOUNT_PATH>",
"DRIVE_FOLDER_ID": "<DRIVE_FOLDER_ID>",
"CREDENTIALS_CONFIG": "<CREDENTIALS_CONFIG>",
"CREDENTIALS_PATH": "<CREDENTIALS_PATH>",
"GOOGLE_APPLICATION_CREDENTIALS": "<GOOGLE_APPLICATION_CREDENTIALS>",
"TOKEN_PATH": "<TOKEN_PATH>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"google-sheets": {
"command": "uvx",
"args": [
"mcp-google-sheets@latest"
],
"env": {
"SERVICE_ACCOUNT_PATH": "<SERVICE_ACCOUNT_PATH>",
"DRIVE_FOLDER_ID": "<DRIVE_FOLDER_ID>",
"CREDENTIALS_CONFIG": "<CREDENTIALS_CONFIG>",
"CREDENTIALS_PATH": "<CREDENTIALS_PATH>",
"GOOGLE_APPLICATION_CREDENTIALS": "<GOOGLE_APPLICATION_CREDENTIALS>",
"TOKEN_PATH": "<TOKEN_PATH>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"google-sheets": {
"command": "uvx",
"args": [
"mcp-google-sheets@latest"
],
"env": {
"SERVICE_ACCOUNT_PATH": "<SERVICE_ACCOUNT_PATH>",
"DRIVE_FOLDER_ID": "<DRIVE_FOLDER_ID>",
"CREDENTIALS_CONFIG": "<CREDENTIALS_CONFIG>",
"CREDENTIALS_PATH": "<CREDENTIALS_PATH>",
"GOOGLE_APPLICATION_CREDENTIALS": "<GOOGLE_APPLICATION_CREDENTIALS>",
"TOKEN_PATH": "<TOKEN_PATH>"
}
}
}
}Environment variables
SERVICE_ACCOUNT_PATHDRIVE_FOLDER_IDCREDENTIALS_CONFIGCREDENTIALS_PATHGOOGLE_APPLICATION_CREDENTIALSTOKEN_PATH
Replace the placeholders with your own credentials and keep them out of version control.