Sheet-Cello
Description
A specialized Google Sheets integration server that allows the LLM to read, write, and manage spreadsheet data in real-time. This server supports cell-level manipulation, bulk range updates, and full worksheet retrieval, enabling the model to perform data analysis, logging, and…
About
A specialized Google Sheets integration server that allows the LLM to read, write, and manage spreadsheet data in real-time. This server supports cell-level manipulation, bulk range updates, and full worksheet retrieval, enabling the model to perform data analysis, logging, and automated reporting directly within…
Details
- Author
- surajchuabey
- Categories
- Productivity, Other, Automation
Jump to
Setup
Install Sheet-Cello in your MCP client (Claude Desktop, Cursor, Windsurf, and others).
Repository: https://github.com/surajchuabey/GSheet_Agent
Follow the installation instructions in the repository README, then restart your MCP client.
A powerful, comprehensive Model Context Protocol (MCP) server that enables AI agents to interact directly with Google Sheets. Perform everything from simple cell updates to complex data analysis and visualization using natural language.
The project is organized into modular service layers for easy maintenance and extensibility:
- constants/: Centralized configuration and LLM-optimized tool descriptions.
- constants.py: Definitions for tool names, descriptions, and GSheet keys.
- data_analysis/: Sorting, filtering, pivot tables, and unique value extraction.
- data_operations/: Reading ranges, batch updates, and row/column data entry.
- formattings/: Text styling, colors, alignment, borders, and number formats.
- formulas/: Formula insertion and evaluation.
- rows_and_coloumns_operations/: Structural changes (insert/delete/hide/show).
- sheet_operations/: Sheet management (create, delete, rename, list).
- visualizations/: Dynamic chart creation and updates.
- Google Cloud Project with Google Sheets and Drive APIs enabled.
- Service account JSON credentials file placed inassets/.
- Python 3.10+ installed.
- Go toGoogle Cloud Console
- Create a new project
- Go toAPIs & Services → Credentials
- Create a Service Account
- Open the Service Account
- Create aJSONkey
- Download the file (e.g.credentials.json)
- Open the Google Sheet
- Share it with theservice account email
- GiveEditoraccess
mount your credential to assets/ if you running through docker set SERVICE_FILE_PATH=path to your credential if running locally
- Verify Server is Running:
python main.py
- Open Cursor Settings →Developer→Edit Config.
- Ensure the server is listed (default name:sheets-cello).
- Ensure theSERVICE_FILE_PATHinconstants/constants.pyor as an environment variable points to your service account JSON.
The agent provides46 specialized toolsorganized into the following categories. Each tool is optimized for LLM use with detailed descriptions and usage examples.
- select_sheet: Selects or activates a different Google Sheet workbook by name.
- read_range: Retrieves values from a specific rectangular range (e.g., A1:C10).
- read_batch_ranges: Retrieves values from multiple non-contiguous ranges in one call.
- read_sheet: Fetches every single populated row and column from the worksheet.
- get_cell_value: Retrieves the value of a single specific cell.
- set_cell_value: Updates the value of a single specific cell.
- update_row_by_index: Updates an entire row with new data based on the row number.
- update_or_insert_column: Updates or inserts values into a specific column.
- append_data_batch_in_rows: Appends multiple rows of data, automatically finding the end if needed.
- clear_range: Deletes all content within a specified range of cells.
- list_sheets: Retrieves a list of all worksheet titles in the current spreadsheet.
- create_sheet: Creates a new worksheet with optional row/column size.
- delete_sheet: Deletes an existing worksheet by its name.
- rename_sheet: Updates the title of an existing worksheet.
- set_text_style: Sets bold, italic, and font size for a range.
- set_text_color: Sets the foreground color of cells using RGB values.
- set_background_color: Sets the background (fill) color of cells using RGB values.
- set_alignment: Sets horizontal and/or vertical alignment of text.
- set_wrap: Controls how text wraps (WRAP, CLIP, OVERFLOW).
- set_borders: Applies borders (top, bottom, left, right) around a range.
- set_rotation: Rotates the text inside cells by a given angle.
- set_number_format: Sets number, date, currency, or percent format patterns.
- merge_cells: Merges all cells in a range into a single cell.
- set_column_width: Sets the width of a specific column in pixels.
- set_row_height: Sets the height of a specific row in pixels.
- auto_fit_columns: Automatically adjusts column widths based on content.
- insert_rows: Inserts new empty rows at a specific index.
- delete_rows: Deletes a specified number of rows from an index.
- insert_columns: Inserts new empty columns at a specific index.
- delete_columns: Deletes a specified number of columns from an index.
- hide_rows: Hides specific rows from view.
- show_rows: Unhides previously hidden rows.
- hide_columns: Hides specific columns from view.
- show_columns: Unhides previously hidden columns.
- set_formula_in_cell: Inserts a Google Sheets formula (e.g.,=SUM(A1:A10)).
- get_formula_from_cell: Retrieves the raw formula string from a cell.
- evaluate_formula: Returns the computed numeric or text result of a formula.
- sort_range: Sorts a range by a column in ascending or descending order.
- filter_data: Applies complex filtering criteria to a range.
- remove_duplicates: Removes duplicate rows based on specific columns.
- find_value: Searches for a specific value across a range or entire sheet.
- get_unique_values: Returns all unique values from a specific column.
- create_gsheet_pivot: Creates a pivot table summary on a target sheet.
- create_chart: Creates line, bar, pie, or column charts.
- update_chart: Updates an existing chart's title, type, or position.
- delete_chart: Removes a chart from the worksheet by its title.
- MCP Tools Not Appearing?
- Ensurepython main.pyis running. 2. Restart Cursor completely to refresh tool discovery.
- Ensure you have shared your Google Sheet with theService Account Emailfound in your JSON credentials file.
SERVICE_FILE_PATH= path to your credentials.json transport= (sse,stdio,http) mcp_host= ip to host mcp mcp_port= port to run mcp server
Integrate with Google Sheets to read, write, and manage spreadsheet data.
Interact with Google Sheets using a Python-based MCP server and Google Apps Script.
Full Google Sheets integration - read, write, format cells, create charts, use formulas, and manage spreadsheets.
Parses invoice data, uploads it to Google Sheets, and answers queries by fetching information from the sheet.
A data firewall between AI and your Google Sheets - Integrate with Google Sheets to read, write, and manage spreadsheet data.
Google Sheets - [BlackHawkMCP](https://g📇 ☁️ - MCP server connecting AI to Google Sheets. Read, write, and manage spreadsheets via natural language.
MCP server for Google Sheets — read, write, append, and clear data in any spreadsheet using OAuth. Works with Claude Desktop and any MCP client.
Automated document processing and extraction
Manage personal finances, track transactions, and create budgets with Budgetsco.
A C++ based MCP server for intelligent Excel automation using the OpenXLSX library.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.


