google-sheet-mcp 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 MUST Dev
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,210 @@
1
+ # Google Sheets MCP Server
2
+
3
+ Connect Google Sheets to Cursor, VS Code, Claude Code and AI agents — **in 3 minutes**.
4
+
5
+ > Your spreadsheet becomes a data source that AI agents can read, write, and query.
6
+
7
+ ## 🎯 What is this?
8
+
9
+ A **Model Context Protocol (MCP) server** that lets AI coding agents (Cursor, Copilot, Claude, Codex) interact with Google Sheets as a database.
10
+
11
+ Once configured, you can tell your AI agent:
12
+
13
+ ```
14
+ "Read all users from the Users sheet"
15
+ "Add a new order row: name=Anton, total=150"
16
+ "Update the status column for row 23"
17
+ "List all sheets in my spreadsheet"
18
+ ```
19
+
20
+ ## ⚡ Quick Start
21
+
22
+ Pick the auth method that fits your use case:
23
+
24
+ ### Service Account (recommended for team/automation)
25
+
26
+ ```bash
27
+ npx google-sheet-mcp init
28
+ ```
29
+
30
+ You'll need:
31
+ - **Google Sheet URL** — paste your sheet link
32
+ - **Service Account JSON key** — download from Google Cloud Console
33
+
34
+ ### Personal Account via OAuth2 (for personal sheets)
35
+
36
+ Use when you want the AI to act **on your behalf** — access your private sheets without sharing them with a service account.
37
+
38
+ ```bash
39
+ npx google-sheet-mcp init --auth oauth
40
+ ```
41
+
42
+ You'll go through a browser-based OAuth2 flow. A refresh token is saved and **auto-refreshed** — you never need to re-login.
43
+
44
+ > **📖 [When to use OAuth2 →](docs/setup-oauth2.md)** — detailed guide and scenarios.
45
+
46
+ ### 2. Connect your IDE
47
+
48
+ Add to **`.cursor/mcp.json`** (Cursor):
49
+
50
+ ```json
51
+ {
52
+ "mcpServers": {
53
+ "google-sheets": {
54
+ "command": "npx",
55
+ "args": ["google-sheet-mcp"]
56
+ }
57
+ }
58
+ }
59
+ ```
60
+
61
+ Or **`.vscode/mcp.json`** (VS Code):
62
+
63
+ ```json
64
+ {
65
+ "servers": {
66
+ "google-sheets": {
67
+ "type": "stdio",
68
+ "command": "npx",
69
+ "args": ["google-sheet-mcp"]
70
+ }
71
+ }
72
+ }
73
+ ```
74
+
75
+ More configs: [`examples/`](examples/) — Cursor, VS Code, Claude, Codex.
76
+
77
+ ### 3. Restart your IDE
78
+
79
+ That's it. Your AI agent now has access to your Google Sheet.
80
+
81
+ ## 🛠 CLI Commands
82
+
83
+ | Command | Description |
84
+ |---------|------------|
85
+ | `npx google-sheet-mcp init` | Interactive setup wizard (service account) |
86
+ | `npx google-sheet-mcp init --auth oauth` | Setup with personal Google account (OAuth2) |
87
+ | `npx google-sheet-mcp test` | Test connection + list sheets |
88
+ | `npx google-sheet-mcp token-status` | Check OAuth2 refresh token health |
89
+ | `npx google-sheet-mcp list` | List all sheets in the spreadsheet |
90
+ | `npx google-sheet-mcp read -s <name>` | Read data from a sheet |
91
+ | `npx google-sheet-mcp create -s <name>` | Create a new sheet tab |
92
+ | `npx google-sheet-mcp append -s <name> -d '{"col":"val"}'` | Append a row |
93
+ | `npx google-sheet-mcp config` | Show current configuration |
94
+
95
+ ## 🧠 MCP Tools (for AI Agents)
96
+
97
+ Once connected, AI agents get these tools:
98
+
99
+ | Tool | What it does |
100
+ |------|-------------|
101
+ | `sheets_list_tabs` | List all sheet tabs with row/column counts |
102
+ | `sheets_read_range` | Read data from a range (returns objects with header keys) |
103
+ | `sheets_get_sheet` | Get spreadsheet metadata (title, URL, locale) |
104
+ | `sheets_write_range` | Write a 2D array of values to a range |
105
+ | `sheets_create_tab` | Create a new sheet tab |
106
+ | `sheets_append_row` | Append a row (auto-aligns with headers) |
107
+
108
+ ## 🔐 Prerequisites
109
+
110
+ ### Google Cloud Setup (3 min)
111
+
112
+ 1. Go to [Google Cloud Console](https://console.cloud.google.com/)
113
+ 2. Create a project (or use existing)
114
+ 3. **Enable Sheets API**: APIs & Services → Library → "Google Sheets API" → Enable
115
+ 4. **Create Service Account**: APIs & Services → Credentials → Create Credentials → Service Account
116
+ 5. Give it a name → Create → Done
117
+ 6. Click the service account → Keys → Add Key → Create New Key → JSON → Download
118
+ 7. **Share your sheet**: Open your Google Sheet → Share → add the service account email (from the JSON) as **Editor**
119
+
120
+ > 📖 Detailed guide with screenshots: [docs/setup-google.md](docs/setup-google.md)
121
+
122
+ ### OAuth2 Setup (for personal Google accounts)
123
+
124
+ **When to use OAuth2 instead of Service Account:**
125
+
126
+ - You want AI to access **your personal sheets** that you don't want to share with a service account
127
+ - You're the only user and don't want to create a service account
128
+ - Your sheets contain sensitive data that shouldn't be accessible via a shared key
129
+
130
+ **Setup:**
131
+
132
+ ```bash
133
+ npx google-sheet-mcp init --auth oauth
134
+ ```
135
+
136
+ The wizard will:
137
+ 1. Ask for your OAuth2 Client ID and Client Secret (from Google Cloud Console)
138
+ 2. Open a browser for you to grant access
139
+ 3. Capture the authorization code automatically
140
+ 4. Exchange it for a **refresh token** (stored locally)
141
+
142
+ **How refresh tokens work:**
143
+
144
+ - The refresh token is stored in `.google-sheet-mcp.json`
145
+ - Access tokens are **auto-refreshed** by googleapis — you never need to re-login
146
+ - If a token becomes invalid, just run `npx google-sheet-mcp init --auth oauth` to replace it
147
+
148
+ **Check token health:**
149
+
150
+ ```bash
151
+ npx google-sheet-mcp token-status
152
+ ```
153
+
154
+ > 🔑 **Key benefit:** The AI agent acts as *you* — it accesses exactly the sheets you have access to. No need to share sheets with a service account email.
155
+
156
+ > 📖 Detailed guide: [docs/setup-oauth2.md](docs/setup-oauth2.md)
157
+
158
+ ## 📁 Configuration
159
+
160
+ Config is stored in `.google-sheet-mcp.json` (in your project or home directory):
161
+
162
+ ```json
163
+ {
164
+ "spreadsheetId": "1ABC...xyz",
165
+ "credentialsPath": "./credentials.json",
166
+ "sheets": ["Users", "Orders", "Payments"]
167
+ }
168
+ ```
169
+
170
+ Or use environment variables:
171
+
172
+ ```bash
173
+ export GOOGLE_SPREADSHEET_ID="1ABC...xyz"
174
+ export GOOGLE_APPLICATION_CREDENTIALS="./credentials.json"
175
+ ```
176
+
177
+ ## 🏗 Architecture
178
+
179
+ ```
180
+ google-sheet-mcp/
181
+ ├── src/
182
+ │ ├── cli/ # CLI commands (init, test, list, read, append)
183
+ │ ├── server/ # MCP stdio server + Google Sheets client
184
+ │ └── config/ # Config loader (.google-sheet-mcp.json + env)
185
+ ├── examples/ # MCP configs for Cursor, VS Code, Claude, Codex
186
+ ├── docs/ # Setup guides
187
+ ├── README.md
188
+ └── package.json
189
+ ```
190
+
191
+ ## ❓ FAQ
192
+
193
+ ### Do I need to clone this repo?
194
+ No. Just use `npx google-sheet-mcp init`. No installation required.
195
+
196
+ ### What permissions does the service account need?
197
+ Only "Editor" on the specific spreadsheet. Not on your entire Google Drive.
198
+
199
+ ### Can I connect multiple sheets?
200
+ Yes. Use different config files per project, or set env vars per spreadsheet.
201
+
202
+ ### Does it work with private sheets?
203
+ Yes. Share the sheet with the service account email (found in the JSON key).
204
+
205
+ ### Is my data sent to a third party?
206
+ No. The MCP server runs **locally** on your machine. Google Sheets API calls go directly from your machine to Google. No intermediate servers.
207
+
208
+ ## 📄 License
209
+
210
+ MIT
@@ -0,0 +1,122 @@
1
+ # Google Cloud Setup Guide
2
+
3
+ > Step-by-step: Create a Service Account and enable Sheets API.
4
+
5
+ ⏱ **Time: ~3 minutes** (first time)
6
+
7
+ ---
8
+
9
+ ## Step 1: Create a Google Cloud Project
10
+
11
+ 1. Go to [Google Cloud Console](https://console.cloud.google.com/)
12
+ 2. Click the project dropdown (top-left, next to "Google Cloud")
13
+ 3. Click **NEW PROJECT**
14
+ 4. Name it (e.g., `my-sheets-mcp`) → **CREATE**
15
+
16
+ > If you already have a project, skip to Step 2.
17
+
18
+ ---
19
+
20
+ ## Step 2: Enable Google Sheets API
21
+
22
+ 1. In your project, go to **APIs & Services** → **Library**
23
+ 2. Search for "Google Sheets API"
24
+ 3. Click on it → **ENABLE**
25
+
26
+ > Wait a few seconds for the API to activate.
27
+
28
+ ---
29
+
30
+ ## Step 3: Create a Service Account
31
+
32
+ 1. Go to **APIs & Services** → **Credentials**
33
+ 2. Click **CREATE CREDENTIALS** → **Service Account**
34
+ 3. Fill in:
35
+ - **Service account name**: `sheets-mcp` (or any name)
36
+ - **Service account ID**: auto-filled
37
+ - **Description**: `Access for Google Sheet MCP server` (optional)
38
+ 4. Click **CREATE AND CONTINUE**
39
+ 5. Role: **Basic → Editor** (or skip — we only need sheet access, not project-wide)
40
+ 6. Click **DONE**
41
+
42
+ ---
43
+
44
+ ## Step 4: Download JSON Key
45
+
46
+ 1. In the Credentials page, find your service account under "Service Accounts"
47
+ 2. Click on its email address
48
+ 3. Go to **KEYS** tab
49
+ 4. Click **ADD KEY** → **Create New Key**
50
+ 5. Select **JSON** → **CREATE**
51
+
52
+ The JSON file downloads automatically. Save it somewhere safe, e.g.:
53
+ ```
54
+ ~/my-project/credentials.json
55
+ ```
56
+
57
+ > ⚠️ **Security:** This key gives access to any sheet shared with this account. Don't commit it to git. Add `credentials.json` to `.gitignore`.
58
+
59
+ ---
60
+
61
+ ## Step 5: Share Your Sheet with the Service Account
62
+
63
+ 1. Open the JSON key file you downloaded
64
+ 2. Find the `client_email` field (e.g., `sheets-mcp@my-project.iam.gserviceaccount.com`)
65
+ 3. Copy that email address
66
+ 4. Open your Google Sheet → click **Share** (top-right)
67
+ 5. Paste the email → set permission to **Editor**
68
+ 6. Click **Send** (or "Share anyway" if prompted)
69
+
70
+ > **Why Editor?** The MCP server needs to both read and write. If you only need read access, **Viewer** is enough.
71
+
72
+ ---
73
+
74
+ ## Step 6: Test the Connection
75
+
76
+ ```bash
77
+ npx google-sheet-mcp init
78
+ ```
79
+
80
+ Paste your sheet URL and credentials path. The wizard will test the connection.
81
+
82
+ Or manually:
83
+
84
+ ```bash
85
+ export GOOGLE_SPREADSHEET_ID="1ABC...xyz"
86
+ export GOOGLE_APPLICATION_CREDENTIALS="./credentials.json"
87
+ npx google-sheet-mcp test
88
+ ```
89
+
90
+ Expected output:
91
+
92
+ ```
93
+ 🔗 Google Sheet MCP — Connection Test
94
+
95
+ ✅ Connected to "My Spreadsheet"
96
+ ✓ Users (150 rows × 6 cols)
97
+ ✓ Orders (320 rows × 8 cols)
98
+
99
+ ✅ Connection OK — ready to use from AI agents!
100
+ ```
101
+
102
+ ---
103
+
104
+ ## Troubleshooting
105
+
106
+ ### "Credentials file not found"
107
+ Make sure the path to the JSON file is correct. Use absolute path if unsure:
108
+ ```bash
109
+ export GOOGLE_APPLICATION_CREDENTIALS="/Users/you/project/credentials.json"
110
+ ```
111
+
112
+ ### "Google Sheets API has not been used in project"
113
+ The Sheets API is not enabled. Go back to Step 2 and click **ENABLE**.
114
+
115
+ ### "The caller does not have permission"
116
+ The service account doesn't have access to the sheet. Go back to Step 5 and share the sheet with `client_email` from the JSON.
117
+
118
+ ### "Error: insufficient authentication scopes"
119
+ The service account key might be for a different API. Make sure you downloaded the JSON key for the right service account.
120
+
121
+ ### Can I use the same key for multiple sheets?
122
+ Yes. Share each sheet with the same `client_email` from the JSON key.
@@ -0,0 +1,177 @@
1
+ # OAuth2 Setup — Personal Google Account
2
+
3
+ > Use OAuth2 when you want the AI to act **on your behalf** with your personal Google Sheets.
4
+
5
+ ⏱ **Time: ~5 minutes** (first time)
6
+
7
+ ---
8
+
9
+ ## When to use OAuth2 vs Service Account
10
+
11
+ | Scenario | Use |
12
+ |----------|-----|
13
+ | Team/shared spreadsheet, automation | Service Account |
14
+ | Your personal spreadsheet, AI assistant | **OAuth2** |
15
+ | You don't want to share sheets with a robot email | **OAuth2** |
16
+ | CI/CD pipeline, server-side automation | Service Account |
17
+ | Quick prototype with your own data | **OAuth2** |
18
+
19
+ **With OAuth2:**
20
+ - The AI agent accesses sheets **as you** — exactly the sheets you have permission to
21
+ - No need to "Share with service account email"
22
+ - Token is personal — don't share your `.google-sheet-mcp.json` with others
23
+
24
+ ---
25
+
26
+ ## Step 1: Create OAuth2 Credentials in Google Cloud
27
+
28
+ 1. Go to [Google Cloud Console](https://console.cloud.google.com/)
29
+ 2. Select your project (or create a new one)
30
+ 3. **Enable Sheets API**: APIs & Services → Library → "Google Sheets API" → Enable
31
+ 4. Go to **APIs & Services** → **Credentials**
32
+ 5. Click **CREATE CREDENTIALS** → **OAuth client ID**
33
+ 6. Configure the consent screen if prompted:
34
+ - User Type: **External**
35
+ - App name: `Google Sheet MCP` (or any name)
36
+ - User support email: your email
37
+ - Developer contact email: your email
38
+ - Scopes: you can skip adding scopes manually (the app requests them at runtime)
39
+ - Add yourself as a test user
40
+ 7. Back to Create OAuth client ID:
41
+ - Application type: **Desktop app**
42
+ - Name: `google-sheet-mcp`
43
+ 8. Click **CREATE**
44
+ 9. Copy the **Client ID** and **Client Secret**
45
+
46
+ ---
47
+
48
+ ## Step 2: Run the OAuth2 Setup Wizard
49
+
50
+ ```bash
51
+ npx google-sheet-mcp init --auth oauth
52
+ ```
53
+
54
+ The wizard asks:
55
+ - **Google Sheet URL** — paste your sheet link
56
+ - **Client ID** — from Step 1
57
+ - **Client Secret** — from Step 1
58
+
59
+ Then it:
60
+ 1. Opens a browser URL for you (or prints it)
61
+ 2. You sign in with your Google account
62
+ 3. You grant access to Google Sheets
63
+ 4. The authorization code is captured automatically
64
+ 5. Tokens are saved
65
+
66
+ ---
67
+
68
+ ## Step 3: What Happens Under the Hood
69
+
70
+ ```
71
+ ┌──────────────┐ ┌─────────────┐ ┌──────────────┐
72
+ │ Your │ │ Google │ │ Google │
73
+ │ Terminal │────▶│ OAuth2 │────▶│ Sheets │
74
+ │ (CLI) │ │ Server │ │ API │
75
+ └──────────────┘ └─────────────┘ └──────────────┘
76
+ │ │ │
77
+ │ 1. Open URL │ │
78
+ │──────────────────▶ │ │
79
+ │ 2. You login │ │
80
+ │ & grant access │ │
81
+ │ 3. Auth code │ │
82
+ │◀────────────────── │ │
83
+ │ │ 4. Exchange code │
84
+ │ │ for tokens │
85
+ │ │──────────────────▶ │
86
+ │ │ 5. Refresh token │
87
+ │ │◀────────────────── │
88
+ │ │ │
89
+ │ 6. Refresh token │ │
90
+ │ saved to config │ │
91
+ │◀────────────────── │ │
92
+ │ │ │
93
+ │ Every API call: │ │
94
+ │ refresh token │ │
95
+ │ → fresh access │ │
96
+ │ token (auto) │ │
97
+ ```
98
+
99
+ ---
100
+
101
+ ## Token Auto-Refresh
102
+
103
+ You never need to re-login. The `googleapis` library automatically:
104
+
105
+ 1. Sends the stored `refresh_token`
106
+ 2. Gets a fresh `access_token` (valid for 1 hour)
107
+ 3. Uses the `access_token` for API calls
108
+ 4. When `access_token` expires, repeats from step 1
109
+
110
+ ### Check Token Health
111
+
112
+ ```bash
113
+ npx google-sheet-mcp token-status
114
+ ```
115
+
116
+ Expected output:
117
+
118
+ ```
119
+ 🔑 Google Sheet MCP — Token Status
120
+
121
+ Config source: local
122
+ Auth type: oauth2
123
+
124
+ Stored token:
125
+ Status: configured
126
+ Client ID: 123456789012-...
127
+ Refresh: 1//09BY_K6-BZ...
128
+
129
+ ✔ Token is valid
130
+ Access token expires: 2026-06-12T16:00:00.000Z
131
+ Scopes: https://www.googleapis.com/auth/spreadsheets
132
+
133
+ ✅ Refresh token is healthy
134
+ AI agents can now access your Google Sheets on your behalf.
135
+ ```
136
+
137
+ ---
138
+
139
+ ## Replacing an Invalid Token
140
+
141
+ If the refresh token is revoked or expired:
142
+
143
+ ```bash
144
+ npx google-sheet-mcp init --auth oauth
145
+ ```
146
+
147
+ This walks you through the OAuth flow again and saves a new refresh token. No need to delete config files manually.
148
+
149
+ ---
150
+
151
+ ## Troubleshooting
152
+
153
+ ### "Access blocked: This app's request is invalid"
154
+ Your OAuth consent screen may not be published. Go to Google Cloud Console → APIs & Services → OAuth consent screen → add yourself as a test user.
155
+
156
+ ### "No refresh token returned"
157
+ Make sure `access_type=offline` is set (the CLI does this automatically). Try again and make sure to **approve all permissions**.
158
+
159
+ ### "Token is invalid" (token-status)
160
+ The refresh token may have been revoked:
161
+ 1. Go to [Google Account Permissions](https://myaccount.google.com/permissions)
162
+ 2. Find "Google Sheet MCP"
163
+ 3. Remove it
164
+ 4. Run `npx google-sheet-mcp init --auth oauth` again
165
+
166
+ ### "Request had insufficient authentication scopes"
167
+ You may have not granted the `spreadsheets` scope during OAuth. Remove the app from your Google Account permissions and re-authorize.
168
+
169
+ ---
170
+
171
+ ## Security Notes
172
+
173
+ - 🔒 The refresh token is stored in `.google-sheet-mcp.json` — **don't commit this file**
174
+ - 🔒 Add `.google-sheet-mcp.json` to `.gitignore`
175
+ - 🔒 The token grants access to **all your Google Sheets** — treat it like a password
176
+ - 🔒 You can revoke access anytime: [Google Account Permissions](https://myaccount.google.com/permissions)
177
+ - 🔒 For team usage, prefer Service Accounts
@@ -0,0 +1,12 @@
1
+ {
2
+ "mcpServers": {
3
+ "google-sheets": {
4
+ "command": "npx",
5
+ "args": ["google-sheet-mcp"],
6
+ "env": {
7
+ "GOOGLE_SPREADSHEET_ID": "<your-spreadsheet-id>",
8
+ "GOOGLE_APPLICATION_CREDENTIALS": "./credentials.json"
9
+ }
10
+ }
11
+ }
12
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "mcpServers": {
3
+ "google-sheets": {
4
+ "command": "npx",
5
+ "args": ["-y", "google-sheet-mcp"],
6
+ "env": {
7
+ "GOOGLE_SPREADSHEET_ID": "<your-spreadsheet-id>",
8
+ "GOOGLE_APPLICATION_CREDENTIALS": "./credentials.json"
9
+ }
10
+ }
11
+ }
12
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "mcpServers": {
3
+ "google-sheets": {
4
+ "command": "npx",
5
+ "args": ["google-sheet-mcp"],
6
+ "env": {
7
+ "GOOGLE_SPREADSHEET_ID": "<your-spreadsheet-id>",
8
+ "GOOGLE_APPLICATION_CREDENTIALS": "./credentials.json"
9
+ }
10
+ }
11
+ }
12
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "servers": {
3
+ "google-sheets": {
4
+ "type": "stdio",
5
+ "command": "npx",
6
+ "args": ["google-sheet-mcp"],
7
+ "env": {
8
+ "GOOGLE_SPREADSHEET_ID": "<your-spreadsheet-id>",
9
+ "GOOGLE_APPLICATION_CREDENTIALS": "./credentials.json"
10
+ }
11
+ }
12
+ }
13
+ }
package/package.json ADDED
@@ -0,0 +1,53 @@
1
+ {
2
+ "name": "google-sheet-mcp",
3
+ "version": "1.0.0",
4
+ "description": "Connect Google Sheets to Cursor, VS Code, Claude Code and AI agents in 3 minutes. MCP Server + CLI installer.",
5
+ "keywords": [
6
+ "google-sheets",
7
+ "mcp",
8
+ "model-context-protocol",
9
+ "cursor",
10
+ "vscode",
11
+ "claude",
12
+ "ai-agent",
13
+ "spreadsheet",
14
+ "data-source"
15
+ ],
16
+ "license": "MIT",
17
+ "author": "MUST Dev",
18
+ "repository": {
19
+ "type": "git",
20
+ "url": "git+https://github.com/we2go/google-mcp.git"
21
+ },
22
+ "type": "module",
23
+ "main": "./src/server/server.mjs",
24
+ "bin": {
25
+ "google-sheet-mcp": "src/cli/cli.mjs"
26
+ },
27
+ "files": [
28
+ "src/",
29
+ "examples/",
30
+ "docs/",
31
+ "README.md",
32
+ "LICENSE"
33
+ ],
34
+ "scripts": {
35
+ "start": "node src/server/server.mjs",
36
+ "init": "node src/cli/cli.mjs init",
37
+ "test": "node src/cli/cli.mjs test",
38
+ "list": "node src/cli/cli.mjs list",
39
+ "read": "node src/cli/cli.mjs read",
40
+ "prepublishOnly": "echo 'Ready to publish'"
41
+ },
42
+ "dependencies": {
43
+ "@modelcontextprotocol/sdk": "^1.10.0",
44
+ "commander": "^13.1.0",
45
+ "googleapis": "^148.0.0",
46
+ "chalk": "^5.4.1",
47
+ "ora": "^8.2.0",
48
+ "inquirer": "^12.5.0"
49
+ },
50
+ "engines": {
51
+ "node": ">=18.0.0"
52
+ }
53
+ }