{"name":"io.github.mcp-z/mcp-sheets","slug":"mcp-z-mcp-sheets","title":"Google Sheets","description":"Google Sheets integration with OAuth, spreadsheet management, batch operations, and formatting","url":"https://mcp.market/server/mcp-z-mcp-sheets","rating":null,"grade":"C","score":66,"certified":false,"status":"active","category":"productivity","tags":["productivity"],"presence":{"score":36,"stars":1,"forks":0,"downloads_week":844,"last_push_at":"2026-09-15T05:04:24.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":null,"website":"https://github.com/mcp-z/mcp-sheets#readme","version":"2.3.1","remotes":[],"packages":[{"registryType":"npm","identifier":"@mcp-z/mcp-sheets","version":"2.3.1","runtimeHint":"npx","transport":{"type":"stdio"},"runtimeArguments":[{"type":"named","name":"-y"}],"packageArguments":[{"description":"Authentication mode","choices":["loopback-oauth","service-account"],"type":"named","name":"--auth"},{"description":"Disable browser auto-open, return auth URL instead","type":"named","name":"--headless"},{"description":"OAuth redirect URI (default: ephemeral loopback)","type":"named","name":"--redirect-uri"},{"description":"Path to service account JSON key file (overrides GOOGLE_SERVICE_ACCOUNT_KEY_FILE env var)","type":"named","name":"--service-account-key-file"},{"description":"Override resource store URI for exported files","type":"named","name":"--resource-store-uri"},{"description":"Override base URL for HTTP transport (used for OAuth/DCR endpoints and file links)","type":"named","name":"--base-url"},{"description":"Override logging level","choices":["debug","info","warn","error"],"type":"named","name":"--log-level"}],"environmentVariables":[{"description":"Google OAuth client ID (required for OAuth authentication modes)","isRequired":true,"placeholder":"123456789-abcdefghijk.apps.googleusercontent.com","name":"GOOGLE_CLIENT_ID"},{"description":"Google OAuth client secret (optional for public clients)","isSecret":true,"placeholder":"GOCSPX-abcdefghijklmnop","name":"GOOGLE_CLIENT_SECRET"},{"description":"Path to service account JSON key file (required for service-account auth mode)","placeholder":"/path/to/service-account-key.json","name":"GOOGLE_SERVICE_ACCOUNT_KEY_FILE"},{"description":"Authentication mode","value":"loopback-oauth","placeholder":"loopback-oauth","choices":["loopback-oauth","service-account"],"name":"AUTH_MODE"},{"description":"Disable browser auto-open, return auth URL instead (true/false)","default":"false","placeholder":"false","name":"HEADLESS"},{"description":"OAuth redirect URI (optional, default: ephemeral loopback)","placeholder":"http://localhost:{PORT}/oauth/callback","name":"REDIRECT_URI"},{"description":"Resource store URI for exported files (file://)","value":"file://~/.mcp-z/mcp-sheets/files","placeholder":"file://~/.mcp-z/mcp-sheets/files","name":"RESOURCE_STORE_URI"},{"description":"HTTP server port (overrides --port)","placeholder":"3000","name":"PORT"},{"description":"Base URL for HTTP transport (used for OAuth/DCR endpoints and file links)","placeholder":"http://localhost:{PORT}","name":"BASE_URL"},{"description":"Logging level","value":"info","placeholder":"info","choices":["debug","info","warn","error"],"name":"LOG_LEVEL"}]},{"registryType":"npm","identifier":"@mcp-z/mcp-sheets","version":"2.3.1","runtimeHint":"npx","transport":{"type":"streamable-http","url":"http://localhost:{PORT}/mcp"},"runtimeArguments":[{"type":"named","name":"-y"}],"packageArguments":[{"description":"HTTP server port","value":"9004","type":"named","name":"--port"},{"description":"Authentication mode","choices":["loopback-oauth","service-account","dcr"],"type":"named","name":"--auth"},{"description":"Disable browser auto-open, return auth URL instead","type":"named","name":"--headless"},{"description":"OAuth redirect URI (default: ephemeral loopback)","type":"named","name":"--redirect-uri"},{"description":"Path to service account JSON key file (overrides GOOGLE_SERVICE_ACCOUNT_KEY_FILE env var)","type":"named","name":"--service-account-key-file"},{"description":"DCR mode","choices":["self-hosted","external"],"type":"named","name":"--dcr-mode"},{"description":"External verification endpoint URL (required for external DCR mode)","type":"named","name":"--dcr-verify-url"},{"description":"DCR client storage URI (for self-hosted DCR mode)","type":"named","name":"--dcr-store-uri"},{"description":"Override resource store URI for exported files","type":"named","name":"--resource-store-uri"},{"description":"Override base URL for HTTP transport (used for OAuth/DCR endpoints and file links)","type":"named","name":"--base-url"},{"description":"Override logging level","choices":["debug","info","warn","error"],"type":"named","name":"--log-level"}],"environmentVariables":[{"description":"Google OAuth client ID (required for OAuth authentication modes)","isRequired":true,"placeholder":"123456789-abcdefghijk.apps.googleusercontent.com","name":"GOOGLE_CLIENT_ID"},{"description":"Google OAuth client secret (optional for public clients)","isSecret":true,"placeholder":"GOCSPX-abcdefghijklmnop","name":"GOOGLE_CLIENT_SECRET"},{"description":"Path to service account JSON key file (required for service-account auth mode)","placeholder":"/path/to/service-account-key.json","name":"GOOGLE_SERVICE_ACCOUNT_KEY_FILE"},{"description":"Authentication mode","value":"loopback-oauth","placeholder":"loopback-oauth","choices":["loopback-oauth","service-account","dcr"],"name":"AUTH_MODE"},{"description":"Disable browser auto-open, return auth URL instead (true/false)","default":"false","placeholder":"false","name":"HEADLESS"},{"description":"OAuth redirect URI (optional, default: ephemeral loopback)","placeholder":"http://localhost:{PORT}/oauth/callback","name":"REDIRECT_URI"},{"description":"Dynamic Client Registration mode","default":"self-hosted","placeholder":"self-hosted","choices":["self-hosted","external"],"name":"DCR_MODE"},{"description":"External verification endpoint URL (required for external DCR mode)","placeholder":"https://example.com/verify","name":"DCR_VERIFY_URL"},{"description":"DCR client storage URI (for self-hosted DCR mode)","default":"file://~/.mcp-z/mcp-sheets/dcr.json","placeholder":"file://~/.mcp-z/mcp-sheets/dcr.json","name":"DCR_STORE_URI"},{"description":"Resource store URI for exported files (file://)","value":"file://~/.mcp-z/mcp-sheets/files","placeholder":"file://~/.mcp-z/mcp-sheets/files","name":"RESOURCE_STORE_URI"},{"description":"HTTP server port (overrides --port)","placeholder":"3000","name":"PORT"},{"description":"Base URL for HTTP transport (used for OAuth/DCR endpoints and file links)","placeholder":"http://localhost:{PORT}","name":"BASE_URL"},{"description":"Logging level","value":"info","placeholder":"info","choices":["debug","info","warn","error"],"name":"LOG_LEVEL"}]}],"tools":[],"scan":{"score":66,"grade":"C","scanned_at":"2026-09-19T20:06:24.506Z","report":{"scannerVersion":"0.1.5","scannedAt":"2026-09-19T20:06:24.634Z","components":{"code":{"score":15,"max":25,"notes":["224 source files scanned","224 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":6,"max":15,"notes":["static API keys via environment variables"]},"maintenance":{"score":15,"max":15,"notes":["last push 5 days ago"]},"identity":{"score":7,"max":10,"notes":["registry namespace matches repository owner"]}},"findings":[{"id":"exec.eval","severity":"medium","component":"code","title":"eval / new Function used","evidence":"bin/server.js: …curity/noGlobalEval: dual esm and cjs eval( \"import('../dist/esm/setup/version-…"},{"id":"exec.eval","severity":"medium","component":"code","title":"eval / new Function used","evidence":"bin/server.js: …curity/noGlobalEval: dual esm and cjs eval( \"import('../dist/esm/setup/version-…"}],"inputs":{"packages":[{"registryType":"npm","identifier":"@mcp-z/mcp-sheets","version":"2.3.1","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":13,"publishedAt":"2026-09-12T21:30:38.359Z","repositoryUrl":"git+https://github.com/mcp-z/mcp-sheets.git","weeklyDownloads":422},{"registryType":"npm","identifier":"@mcp-z/mcp-sheets","version":"2.3.1","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":13,"publishedAt":"2026-09-12T21:30:38.359Z","repositoryUrl":"git+https://github.com/mcp-z/mcp-sheets.git","weeklyDownloads":422}],"repo":{"found":true,"owner":"mcp-z","repo":"mcp-sheets","archived":false,"pushedAt":"2026-09-15T05:04:24Z","stars":1,"forks":0,"openIssues":0,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/235993027?v=4","ownerCreatedAt":"2025-10-04T03:02:10Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/235993027?v=4&s=128","source":"registry","width":128,"height":128},"presence":{"stars":1,"forks":0,"downloadsWeek":844,"license":"MIT","lastPushAt":"2026-09-15T05:04:24.000Z","score":36}}}},"grade_history":[],"reviews":[]}