Security at a glance
Key principles
Everything is encrypted
All sensitive data is encrypted using Google Cloud KMS before being stored in the database. This includes environment variables, OAuth tokens, API keys, and user credentials. The encryption key is managed in KMS (agenthub-keyring/secrets-values-key) and never leaves Google’s infrastructure.
All external traffic uses TLS 1.2+ with Google-managed certificates. HTTP requests are automatically redirected to HTTPS.
Every server is isolated
Each MCP server runs in its own container with gVisor sandboxing, which intercepts all system calls at the kernel level. Servers are deployed in a dedicated Kubernetes namespace with network policies that block all private IP traffic, preventing lateral movement between servers or access to internal services. Customer code has no cloud credentials. All GCP operations are proxied through the Gumstack backend API.Access is verified on every request
There is no caching of permission checks. Every tool call goes through:- Token validation against the Gumstack backend
- RBAC check against the user’s permission group and tool access matrix
- Activity logging with full request details
Credentials never leave the server
User credentials (OAuth tokens, API keys) are stored encrypted in the database and decrypted only at the point of use within the server. They are never sent to MCP clients, never included in API responses, and never written to logs.Detailed documentation
Infrastructure Security
Hosting, container isolation, network architecture, TLS, build pipeline, and scaling
Data Protection
Encryption, secrets management, credential handling, logging, audit trails, and privacy
Permission Groups
RBAC configuration, tool access control, and group management
Authentication
OAuth, API Key, and No Auth methods for MCP servers
