Setup Guide

Google Sheets MCP
Setup Guide

Connect Google Sheets to Claude Desktop & Cowork so Claude can read and edit your spreadsheets.

โฑ ~15 minutes ๐Ÿ”’ Service Account (most secure) ๐Ÿ“… March 2026

This guide sets up a personal Google Sheets connection for Claude. Once complete, Claude can read, edit, and create spreadsheets in both regular chats and Cowork sessions.

The setup uses a Service Account โ€” a separate Google identity that can only see sheets you explicitly share with it. Nothing else in your Drive is visible. Credentials don't expire, so there's no periodic re-authentication needed.

1

Create a Google Cloud Project & Enable APIs

If you already have a Google Cloud project with these APIs enabled, skip to Step 2.

  1. Go to console.cloud.google.com and sign in with your Google account.
  2. Click the project dropdown at the top โ†’ New Project.
  3. Name it something like my-sheets-mcp and click Create.
  4. Make sure your new project is selected in the dropdown.
  5. In the left sidebar, go to APIs & Services โ†’ Library.
  6. Search for Google Sheets API โ†’ click it โ†’ click Enable.
  7. Go back to the Library, search for Google Drive API โ†’ click it โ†’ click Enable.
โœ“ Both APIs should now show as "Enabled" in your APIs & Services dashboard.
2

Create a Service Account & Download the Key

A Service Account is like a robot Google account that Claude uses to access your sheets. It can only see what you share with it.

  1. In the left sidebar, go to IAM & Admin โ†’ Service Accounts.
  2. Click + CREATE SERVICE ACCOUNT at the top.
  3. Name it something like mcp-sheets. An email address will auto-generate โ€” you'll need this later.
  4. For the role, select Editor (gives read/write access to shared sheets).
  5. Click Done.
  6. Find it in the list โ†’ click the three dots (โ‹ฎ) โ†’ Manage keys.
  7. Click ADD KEY โ†’ Create new key โ†’ JSON โ†’ Create.
  8. A .json file downloads. Save it somewhere safe and permanent (e.g., ~/Documents/mcp-keys/). You'll need the full file path later.
โš  Keep this file safe. It grants access to anything shared with the service account. Treat it like a password โ€” don't share it or commit it to git.
3

Share Your Sheets Folder

Now you'll tell Google Drive which sheets Claude can access.

  1. Open the JSON key file in a text editor and find the "client_email" field. Copy that email address.
  2. Go to Google Drive.
  3. Create a folder for the sheets you want Claude to access (e.g., "AI Managed Sheets"), or use an existing one.
  4. Right-click the folder โ†’ Share โ†’ paste the service account email โ†’ give it Editor access.
  5. Copy the folder ID from the URL โ€” it's the long string after /folders/.
โœ“ Save these two things: the full path to your JSON key file, and the folder ID. You'll need both in Step 5.
4

Install uvx

The MCP server runs via uvx. You only install this once.

  1. Open Terminal (Cmd + Space, type "Terminal").
  2. Paste this and hit Enter:
curl -LsSf https://astral.sh/uv/install.sh | sh
  1. When it finishes, run only this line (not both lines it suggests):
source $HOME/.local/bin/env
  1. Verify it works:
uvx --version
  1. Get the full path (you'll need this next):
which uvx

Copy the output (usually /Users/yourname/.local/bin/uvx).

  1. Open PowerShell.
  2. Paste this and hit Enter:
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
  1. Close and reopen PowerShell, then verify:
uvx --version
  1. Get the full path:
where uvx

Copy the output. You'll need it in the next step.

5

Configure Claude Desktop

  1. Open Claude Desktop.
  2. Go to Settings (Mac: Claude โ†’ Settings or Cmd + comma).
  3. Click Developer in the left sidebar.
  4. Click Edit Config. A JSON file opens.
  5. Add the mcpServers block below. If the file already has content, add it inside the existing outer curly braces โ€” don't create two separate { } objects.
{ "mcpServers": { "google-sheets": { "command": "/YOUR/PATH/TO/uvx", "args": ["mcp-google-sheets@latest"], "env": { "SERVICE_ACCOUNT_PATH": "/YOUR/PATH/TO/key.json", "DRIVE_FOLDER_ID": "YOUR_FOLDER_ID" } } } }

Replace the highlighted values with your actual uvx path, key file path, and folder ID from the previous steps.

  1. Save the config file.
  2. Fully quit Claude Desktop (Cmd+Q on Mac) and reopen it.
! Common mistake: Make sure mcpServers is inside the same outer { } as any existing config like preferences. Two separate JSON objects will break the file.
โœ“

Test Your Setup

Open a new chat in Claude Desktop. You should see a hammer/tools icon. Try asking:

"List the spreadsheets in my Google Drive folder."

If it returns your sheets, you're all set!

Managing Access

Claude can only access sheets shared with the service account. To adjust:

  1. Add more sheets: Move them into the shared folder, or share individual sheets with the service account email.
  2. Revoke access: Remove the service account from the sheet/folder's sharing settings.

Troubleshooting

command not found: uvx โ–ผ
Run source $HOME/.local/bin/env in Terminal, then try again. To make it permanent, add that line to your ~/.zshrc file.
No tools showing in Claude Desktop โ–ผ
Make sure you fully quit (Cmd+Q) and reopened Claude Desktop. Check that your config JSON is valid โ€” look for missing commas or mismatched curly braces.
Permission denied or file not found errors โ–ผ
Double-check the SERVICE_ACCOUNT_PATH in your config. It must be the full absolute path (starting with / on Mac or C:\ on Windows), not a relative path.
Claude can't find a specific sheet โ–ผ
The sheet must be in the shared folder or individually shared with the service account email. Check the sharing settings on the sheet in Google Drive.