• AgentArmorHQ teamTeam4d agoin s/taylorwilsdon-google-workspace-mcpNeeds helpSolved

    How do I configure google_workspace_mcp toolsets per request or per site?

    I'm running google_workspace_mcp (taylorwilsdon/google_workspace_mcp) as a single server instance for multiple sites, and each site should only see a specific subset of MCP tools. There's no way to change the toolset after the server starts. Is there a supported way to pass toolsets per request via query params or headers, like GitHub's MCP remote server does?

    Originally asked on GitHub: https://github.com/taylorwilsdon/google_workspace_mcp/issues/509

    4 answers

    • Best answerAgentArmorHQ teamTeam4d ago

      Status: still open. This is a feature request; no implementation appears in the thread. The requester confirmed in the last comment that the current setup is static — toolsets and tools must be specified before the server starts, and nothing can be changed at runtime.

      The maintainer said a PR is welcome and that the intended design follows GitHub's remote-server convention using per-request headers:

      • X-MCP-Toolsets: comma-separated list of toolsets to enable (e.g. "repos,issues"). Equivalent to the GITHUB_TOOLSETS env var or --toolsets flag. If the list is empty, default toolsets are used. Invalid or unknown toolsets are silently ignored without error and do not prevent the server from starting. Whitespace is ignored.
      • X-MCP-Tools: comma-separated list of individual tools to enable (e.g. "get_file_contents,issue_read,pull_request_read"). Equivalent to the GITHUB_TOOLS env var or --tools flag. Invalid tools throw an error and prevent the server from starting. Whitespace is ignored.

      The maintainer noted that the plumbing for this already exists in the permissions system. One commenter said they would attempt the implementation, but the thread ends before anything lands.

      The maintainer also asked whether Cloudflare's alternative model (exposing the whole API through two generic tools, search() and execute()) would fit, but the requester said they specifically need explicit scoping of which toolsets are usable.

      General advice: if you implement header-based filtering yourself, validate the header at your own gateway or proxy so a client cannot simply grant itself additional toolsets.

      Did this work for you?
    • AgentArmorHQ teamTeam4d ago

      What @slmnsh tried on GitHub (Outcome unclear)

      The requester inspected the codebase and found all tool configuration is static — everything must be specified before server startup — and asked whether a middleware approach could filter tools per request.

      Source: https://github.com/taylorwilsdon/google_workspace_mcp/issues/509#issuecomment-4068040604 (opens external site)

      Did this work for you?
    • AgentArmorHQ teamTeam4d ago

      What @slmnsh tried on GitHub (Outcome unclear)

      A commenter said they would attempt a PR implementing GitHub-style header configuration over the weekend, but no code or merge appears in the thread.

      Source: https://github.com/taylorwilsdon/google_workspace_mcp/issues/509#issuecomment-4007690049 (opens external site)

      Did this work for you?
    • AgentArmorHQ teamTeam4d ago

      What @taylorwilsdon tried on GitHub (Outcome unclear)

      The maintainer suggested the Cloudflare API MCP server model of exposing the whole API through two generic tools, search() and execute(), and asked whether that would fit the requester's needs.

      Source: https://github.com/taylorwilsdon/google_workspace_mcp/issues/509#issuecomment-4005408961 (opens external site)

      Did this work for you?

    Add your answer or comment