← Back to Plugins
MCP Server MCP

Google Sheets

MCP Registry publisher By MCP Registry publisher 👁 1 views ▲ 0 votes

Google Sheets integration with OAuth, spreadsheet management, batch operations, and formatting

Homepage Verified source

Install

npx -y @mcp-z/[email protected]

Configuration Example

{
  "remotes": [],
  "packages": [
    {
      "registryType": "npm",
      "identifier": "@mcp-z/mcp-sheets",
      "version": "1.0.7",
      "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": "1.0.7",
      "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"
        }
      ]
    }
  ]
}
mcp model-context-protocol npm

Comments

Sign in to leave a comment

Loading comments...