mcp-google-sheets logo

mcp-google-sheets

by xing5

This MCP server integrates with Google Drive and Google Sheets to enable creating and modifying spreadsheets. It provides tools to interact with Google Sheets through the Google Sheets API.

View on GitHub

Last updated: N/A

What is mcp-google-sheets?

A Model Context Protocol (MCP) server for interacting with Google Sheets. It allows you to create, read, update, and manage spreadsheets programmatically.

How to use mcp-google-sheets?

  1. Set up a Google Cloud Platform project and enable the Google Sheets and Google Drive APIs.
  2. Choose an authentication method: Service Account (recommended) or OAuth 2.0.
  3. Configure environment variables for the chosen authentication method.
  4. Run the server using uvx mcp-google-sheets or by cloning the repository and using uv run mcp-google-sheets.
  5. Use the server's tools via the MCP protocol to interact with your Google Sheets.

Key features of mcp-google-sheets

  • Get sheet data

  • Update cells

  • Batch update cells

  • List sheets

  • List spreadsheets

  • Create spreadsheet

  • Create sheet

  • Manage spreadsheet resources

Use cases of mcp-google-sheets

  • Automated data entry

  • Report generation

  • Data analysis

  • Integration with other applications

  • Building custom spreadsheet tools

FAQ from mcp-google-sheets

What is a Service Account?

A service account is a special type of Google account intended to represent a non-human user that needs to authenticate and be authorized to access data in Google APIs. It's ideal for server environments.

Why use Service Account authentication?

Service account authentication is recommended because it's non-interactive, works well in headless environments, and the authentication doesn't expire as frequently as OAuth tokens.

How do I find my Spreadsheet ID?

The Spreadsheet ID can be found in the URL of your Google Sheet. It's the long string of characters between /d/ and /edit.

What is A1 notation?

A1 notation is a way to refer to cells in a spreadsheet. For example, 'A1' refers to the first cell in the top-left corner, 'B2' refers to the second cell in the second row, and 'A1:C10' refers to a range of cells.

How do I use this with Claude Desktop?

You can configure the server in your claude_desktop_config.json file by specifying the command, arguments, and environment variables for running the server. Example configurations are provided in the README.