GAM
Administer Google Workspace using the GAM command-line tool.
Install
Install and configure the MCP from https://github.com/dbarks/mcp-gam now. Follow the repository's installation instructions, ask me for anything you can't complete yourself, and verify its tools load.README
GAM MCP Server
Google Workspace administration via GAM CLI, ready for Claude Desktop and Model Context Protocol (MCP).
Prerequisites
- GAM: Install and authenticate GAM on your system.
- Run
gam versionto verify installation. - Run
gam oauth createto authenticate with Google Workspace.
- Run
- Node.js: v18 or newer
Installation
# Clone or copy this repo
cd gam-mcp-server
npm install
npm run build
Running the Server
GAM_PATH=/path/to/gam node dist/index.js
- Or use the default
gamin your PATH.
Claude Desktop Configuration
Add to your claude_desktop_config.json:
{
"mcpServers": {
"gam-workspace": {
"command": "node",
"args": ["/absolute/path/to/gam-mcp-server/dist/index.js"],
"env": {
"GAM_PATH": "/path/to/gam"
}
}
}
}
Available Tools
User Management
gam_list_users: List users (domain, query, maxResults)gam_get_user: Get user details (email)gam_create_user: Create user (email, firstName, lastName, password, orgUnit)gam_update_user: Update user (email, updates)gam_suspend_user/gam_unsuspend_user: (email)gam_move_user_orgunit: (email, orgUnitPath)
Group Management
gam_list_groups: List groups (domain, maxResults)gam_get_group: Get group details (groupEmail)gam_create_group: Create group (groupEmail, groupName, description)gam_add_group_member/gam_remove_group_member: (groupEmail, memberEmail, role)
Organizational Units
gam_list_orgunits: List OUsgam_move_user_orgunit: Move user between OUs
Domain Management
gam_get_domain_info: Get domain info
Example MCP Tool Calls
List users:
{
"method": "tools/call",
"params": {
"name": "gam_list_users",
"arguments": { "maxResults": 10 }
}
}
Get user:
{
"method": "tools/call",
"params": {
"name": "gam_get_user",
"arguments": { "email": "user@example.com" }
}
}
Create group:
{
"method": "tools/call",
"params": {
"name": "gam_create_group",
"arguments": { "groupEmail": "team@example.com", "groupName": "Team" }
}
}
Troubleshooting
- GAM not found: Set
GAM_PATHor addgamto your PATH. - Authentication errors: Run
gam oauth create. - Quota/rate limit: Wait and retry; see Google Admin API quotas.
- Parameter validation: All inputs are validated; see error messages for details.
Security Considerations
- Only whitelisted GAM commands are allowed.
- All parameters are validated and sanitized.
- No arbitrary command execution.
- Logs redact sensitive data.
- Rate limiting and error handling are built-in.
Extending
Add new tools in src/tools/ and export them in src/tools/index.ts.
© 2024 GAM MCP Server Authors
Related servers
Everythingmodelcontextprotocol91KReference / test server with prompts, resources, and toolsFetchmodelcontextprotocol91KWeb content fetching and conversion for efficient LLM usageFilesystemmodelcontextprotocol91KSecure file operations with configurable access controlsGitmodelcontextprotocol91KTools to read, search, and manipulate Git repositories
