此仓库包含 Model Context Protocol (MCP) 服务器,使 MCP 客户端(如 Claude Desktop 或 cline.bot VS Code 扩展)能够访问 Google 的安全产品和服务:
每个服务器可以单独启用和运行,允许灵活性以适应不需要所有功能的环境。
完整的文档可以在 docs 文件夹中找到。您可以:
docs 文件夹中的说明)文档涵盖:
要开始使用文档,请查看 docs/index.md。
服务器使用 Google 的身份验证。确保您已经设置:
gcloud auth application-default login每个 MCP 服务器都可以作为独立包进行安装和使用。
您可以使用 uv tool install 进行安装(推荐):
# 安装包
uv tool install google-secops-mcp
uv tool install gti-mcp
uv tool install scc-mcp
uv tool install secops-soar-mcp
或者,您可以使用 pip:
pip install google-secops-mcp
pip install gti-mcp
pip install scc-mcp
pip install secops-soar-mcp
安装后,您可以直接使用 uvx 运行服务器:
# 运行 SecOps MCP 服务器
uvx --from google-secops-mcp secops_mcp
# 运行 GTI MCP 服务器
uvx gti_mcp
# 运行 SCC MCP 服务器
uvx scc_mcp
# 运行 SecOps SOAR MCP 服务器(可选集成)
uvx secops_soar_mcp --integrations CSV,OKTA
使用环境变量:
CHRONICLE_PROJECT_ID="your-project-id" \
CHRONICLE_CUSTOMER_ID="01234567-abcd-4321-1234-0123456789ab" \
CHRONICLE_REGION="us" \
uvx secops_mcp
您可以配置 MCP 客户端使用已安装的包与 uvx 一起工作。以下是一个配置示例:
{
"mcpServers": {
"secops": {
"command": "uvx",
"args": [
"--from",
"google-secops-mcp",
"secops_mcp"
],
"env": {
"CHRONICLE_PROJECT_ID": "your-project-id",
"CHRONICLE_CUSTOMER_ID": "01234567-abcd-4321-1234-0123456789ab",
"CHRONICLE_REGION": "us"
},
"disabled": false,
"autoApprove": []
},
"gti": {
"command": "uvx",
"args": [
"gti_mcp"
],
"env": {
"VT_APIKEY": "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef"
},
"disabled": false,
"autoApprove": []
},
"scc-mcp": {
"command": "uvx",
"args": [
"scc_mcp"
],
"env": {},
"disabled": false,
"autoApprove": []
},
"secops-soar": {
"command": "uvx",
"args": [
"secops_soar_mcp",
"--integrations",
"CSV,OKTA"
],
"env": {
"SOAR_URL": "https://yours-here.siemplify-soar.com:443",
"SOAR_APP_KEY": "01234567-abcd-4321-1234-0123456789ab"
},
"disabled": false,
"autoApprove": []
}
}
}
您也可以使用环境文件与 uvx 一起使用:
{
"mcpServers": {
"secops": {
"command": "uvx",
"args": [
"--env-file",
"/path/to/.env",
"secops_mcp"
],
"disabled": false
}
}
}
本仓库中的 MCP 服务器可以与以下客户端一起使用:
Claude Desktop 和 Cline 的配置相同(如下所示,使用 uv 推荐 和 使用 pip)。我们使用 stdio 传输。
请参考 README 文件,了解如何本地运行预构建代理以及 Cloud Run 部署。
MCP 客户端都使用相同的 JSON 配置格式(参见 MCP 服务器配置参考),但它们期望文件位于不同的位置。
| 客户端应用 | 范围 | macOS/Linux 位置 | Windows 位置 | 备注 |
|---|---|---|---|---|
| Gemini CLI | 全局 | ~/.gemini/settings.json | %USERPROFILE%\.gemini\settings.json | 文件必须包括 mcpServers。已在 Google 安全运营帖子 中确认。 |
| Claude Desktop | 全局 | ~/Claude/claude_desktop_config.json | %USERPROFILE%\Claude\claude_desktop_config.json | 配置可通过 Claude > 设置 > 开发者 > 编辑配置 访问。 |
| Claude Code | 全局 | ~/.claude.json | %USERPROFILE%\.claude.json | Claude Code CLI 和扩展的主要配置文件。 |
| Cursor IDE(全局) | 全局 | ~/.cursor/mcp.json | %USERPROFILE%\.cursor\mcp.json | 全局启用 MCP 服务器,适用于所有项目。 |
| Cursor IDE(项目) | 项目 | <project-root>/.cursor/mcp.json | <project-root>/.cursor/mcp.json | 工作区/项目特定的配置文件。 |
| VS Code(工作区) | 工作区 | <project-root>/.vscode/mcp.json | <project-root>/.vscode/mcp.json | 当安装了 MCP 扩展(如 Cline)时使用的项目级别配置。如果存在,则覆盖全局配置。 |
| Cline(VS Code 扩展) | 全局 | VS Code 扩展数据内 | %APPDATA%\Code\User\globalStorage\<extension-id>\settings\cline_mcp_settings.json | 精确路径因 VS Code 版本和平台而异。<extension-id> 对应于已安装扩展的文件夹(例如,saoudrizwan.claude-dev)。 |
%USERPROFILE% → C:\Users\<username>%APPDATA% → C:\Users\<username>\AppData\Roaming<project-root> → 在 VS Code 或 IDE 中打开项目的文件夹<extension-id> → 已安装扩展的文件夹名称(例如,saoudrizwan.claude-dev 对于 Claude/Cline)如果您使用多个 MCP 客户端,可以通过维护一个单个配置文件并将其符号链接到每个预期位置来避免配置漂移并保持服务器定义的一致性。
{
"mcpServers": {
"secops": {
"command": "uv",
"args": [
"--directory",
"/path/to/the/repo/server/secops/secops_mcp",
"run",
"server.py"
],
"env": {
"CHRONICLE_PROJECT_ID": "your-project-id",
"CHRONICLE_CUSTOMER_ID": "01234567-abcd-4321-1234-0123456789ab",
"CHRONICLE_REGION": "us"
},
"disabled": false,
"autoApprove": []
},
"secops-soar": {
"command": "uv",
"args": [
"--directory",
"/path/to/the/repo/server/secops-soar/secops_soar_mcp",
"run",
"server.py",
"--integrations",
"CSV,OKTA"
],
"env": {
"SOAR_URL": "https://yours-here.siemplify-soar.com:443",
"SOAR_APP_KEY": "01234567-abcd-4321-1234-0123456789ab"
},
"disabled": false,
"autoApprove": []
},
"gti": {
"command": "uv",
"args": [
"--directory",
"/path/to/the/repo/server/gti/gti_mcp",
"run",
"server.py"
],
"env": {
"VT_APIKEY": "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef"
},
"disabled": false,
"autoApprove": []
},
"scc-mcp": {
"command": "uv",
"args": [
"--directory",
"/path/to/the/repo/server/scc",
"run",
"scc_mcp.py"
],
"env": {
},
"disabled": false,
"autoApprove": []
}
}
}
注意:uv 还支持传递 .env 文件,如下所示:
"command": "uv",
"args": [
"--directory",
"/path/to/the/repo/server/...",
"run",
"--env-file",
"/path/to/the/repo/server/.env",
"server.py"
]
SOAR_APP_KEY 和 VT_APIKEY 是 .env 文件的好候选对象。
您也可以使用 pip 而不是 uv 来安装和运行 MCP 服务器。这种方法使用 bash 命令:
{
"mcpServers": {
"secops": {
"command": "/bin/bash",
"args": [
"-c",
"cd /path/to/the/repo/server/secops && pip install -e . && secops_mcp"
],
"env": {
"CHRONICLE_PROJECT_ID": "your-project-id",
"CHRONICLE_CUSTOMER_ID": "01234567-abcd-4321-1234-0123456789ab",
"CHRONICLE_REGION": "us"
},
"disabled": false,
"autoApprove": [
],
"alwaysAllow": [
]
},
"gti": {
"command": "/bin/bash",
"args": [
"-c",
"cd /path/to/the/repo/server/gti && pip install -e . && gti_mcp"
],
"env": {
"VT_APIKEY": "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef"
},
"disabled": false,
"autoApprove": [
],
"alwaysAllow": [
]
},
"scc-mcp": {
"command": "/bin/bash",
"args": [
"-c",
"cd /path/to/the/repo/server/scc && pip install -e . && scc_mcp"
],
"env": {
},
"disabled": false,
"autoApprove": [],
"alwaysAllow": []
},
"secops-soar": {
"autoApprove": [
],
"disabled": false,
"timeout": 60,
"command": "/bin/bash",
"args": [
"-c",
"cd /path/to/the/repo/server/secops-soar && pip install -e . && python secops_soar_mcp/server.py"
],
"env": {
"SOAR_URL": "https://yours-here.siemplify-soar.com:443",
"SOAR_APP_KEY": "01234567-abcd-4321-1234-0123456789ab"
},
"transportType": "stdio"
}
}
}
UV_ENV_FILE--env-file 选项允许 uv 使用 .env 文件来设置环境变量。您可以创建这个文件或使用系统环境变量,具体操作请参阅使用指南。
另外,您可以设置 UV_ENV_FILE 为您的 .env 文件,并省略配置中的 --env-file 部分。
有关如何设置这些环境变量的详细说明,请参阅 使用指南。
从命令行运行 MCP 服务器(并在 MCP 客户端之外运行)可以帮助发现问题:
uv --verbose \
--directory "/Users/dandye/Projects/google-mcp-security/server/scc" \
run \
--env-file "/Users/dandye/Projects/google-mcp-security/.env" \
scc_mcp.py
检查您的 PATH:
which uv # 安装 uv 后可能需要重启 MCP 客户端
which python || which python3
python --version || python3 --version
要在 Claude Desktop 中使用 MCP 服务器:
claude_desktop_config.json 文件(替换路径为您实际的路径)cline_mcp_settings.json 文件(替换路径为您实际的路径)Apache 2.0