返回市场
麦克风游戏服务器

麦克风游戏服务器

作者:dbarks2 星标更新:2025-10-22

项目介绍

GAM MCP Server

通过GAM CLI管理Google Workspace,适用于Claude Desktop和模型上下文协议(MCP)。

预备条件

  • GAM:在系统上安装并验证GAM
    • 运行 gam version 来验证安装。
    • 运行 gam oauth create 来与Google Workspace进行身份验证。
  • Node.js:v18或更新版本

安装

# 克隆或复制此仓库
cd gam-mcp-server
npm install
npm run build

运行服务器

GAM_PATH=/path/to/gam node dist/index.js
  • 或者使用PATH中的默认gam

Claude Desktop配置

添加到你的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"
      }
    }
  }
}

可用工具

用户管理

  • gam_list_users:列出用户(域、查询、最大结果数)
  • gam_get_user:获取用户详情(电子邮件)
  • gam_create_user:创建用户(电子邮件、名字、姓氏、密码、组织单位)
  • gam_update_user:更新用户(电子邮件、更新内容)
  • gam_suspend_user / gam_unsuspend_user:(电子邮件)
  • gam_move_user_orgunit:(电子邮件、组织单位路径)

组管理

  • gam_list_groups:列出组(域、最大结果数)
  • gam_get_group:获取组详情(组电子邮件)
  • gam_create_group:创建组(组电子邮件、组名称、描述)
  • gam_add_group_member / gam_remove_group_member:(组电子邮件、成员电子邮件、角色)

组织单位

  • gam_list_orgunits:列出OUs
  • gam_move_user_orgunit:在OUs之间移动用户

域管理

  • gam_get_domain_info:获取域信息

示例MCP工具调用

列出用户:

{
  "method": "tools/call",
  "params": {
    "name": "gam_list_users",
    "arguments": { "maxResults": 10 }
  }
}

获取用户:

{
  "method": "tools/call",
  "params": {
    "name": "gam_get_user",
    "arguments": { "email": "user@example.com" }
  }
}

创建组:

{
  "method": "tools/call",
  "params": {
    "name": "gam_create_group",
    "arguments": { "groupEmail": "team@example.com", "groupName": "Team" }
  }
}

故障排除

  • 未找到GAM:设置GAM_PATH或将gam添加到PATH中。
  • 身份验证错误:运行gam oauth create
  • 配额/速率限制:等待并重试;查看Google Admin API配额。
  • 参数验证:所有输入都经过验证;查看错误消息以获取详细信息。

安全注意事项

  • 只允许白名单的GAM命令。
  • 所有参数都经过验证和清理。
  • 不执行任意命令。
  • 日志会删除敏感数据。
  • 内置了速率限制和错误处理。

扩展

src/tools/中添加新工具,并在src/tools/index.ts中导出它们。


© 2024 GAM MCP Server 作者