Metadata-Version: 2.4
Name: barie-google-sheets-mcp
Version: 0.1.0
Summary: Google Sheets MCP Server for managing spreadsheets via the Model Context Protocol
Author-email: Barie <support@barie.ai>
License: MIT
Keywords: google-api,google-sheets,mcp,model-context-protocol
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.9
Requires-Dist: google-api-python-client>=2.130.0
Requires-Dist: google-auth-oauthlib>=1.2.0
Requires-Dist: google-auth>=2.29.0
Requires-Dist: mcp>=0.9.0
Requires-Dist: pydantic>=2.0.0
Description-Content-Type: text/markdown

# Barie Google Sheets MCP Server

A Model Context Protocol (MCP) server for managing **Google Sheets** — list spreadsheets, create spreadsheets, read cell ranges, update values, and append rows.

## Installation

```bash
# Using uvx (recommended)
uvx --from . barie-google-sheets-mcp

# Or install locally
pip install -e .
```

## Usage

```bash
barie-google-sheets-mcp \
  --access-token "YOUR_ACCESS_TOKEN" \
  --refresh-token "YOUR_REFRESH_TOKEN" \
  --client-id "YOUR_CLIENT_ID" \
  --client-secret "YOUR_CLIENT_SECRET" \
  --expiry "2024-12-31T23:59:59Z" \
  --scopes '["https://www.googleapis.com/auth/spreadsheets","https://www.googleapis.com/auth/drive.file"]'
```

### Required Arguments

- `--access-token` - Google OAuth2 access token
- `--refresh-token` - Google OAuth2 refresh token
- `--client-id` - Google OAuth2 client ID
- `--client-secret` - Google OAuth2 client secret

### Optional Arguments

- `--expiry` - Token expiry timestamp (ISO format)
- `--scopes` - OAuth2 scopes as JSON array string

## Tools

| Tool | Description |
|------|-------------|
| `list-spreadsheets` | List Google Sheets files from Drive |
| `get-spreadsheet` | Get spreadsheet metadata (optionally ranges/gridData) |
| `create-spreadsheet` | Create a new spreadsheet |
| `get-values` | Read cell values (A1 range) |
| `update-values` | Write values to a range |
| `append-values` | Append rows to a range |

## Development

```bash
python server.py --help
```

