关于 CYBO Attest
CYBO Attest 是面向 cDSO 流水线中应用安全扫描和发布授权团队的托管 MCP 服务。它帮助查看阻塞项、规划修复、运行扫描并说明无法修复的发现;最终批准仍由 Security Control Assessor 执行。
主要功能
- 01查看安全状态和构建阻塞项
- 02附带作业日志的有序修复计划
- 03检查发现项和扫描证据
- 04启动扫描并跟踪进度
- 05管理应用和 Dockerfile 修复
- 06起草并提交发现项说明
适用场景
- 01查明构建受阻原因
- 02规划依赖项和基础镜像修复
- 03重新运行扫描并跟踪进度
- 04为无法修复的发现项提交说明
MCP 相关
托管的 Streamable HTTP MCP 服务向 MCP 客户端提供 Attest 工具、提示词和资源。OAuth 登录会让每次调用遵循用户角色和权限;构建批准仍在控制台完成。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://attest.ulapcybo.app/mcpclaude mcp add --transport http app-ulapcybo-attest https://attest.ulapcybo.app/mcp{"mcpServers":{"app-ulapcybo-attest":{"type":"http","url":"https://attest.ulapcybo.app/mcp"}}}在 Cursor 中打开{"servers":{"app-ulapcybo-attest":{"type":"http","url":"https://attest.ulapcybo.app/mcp"}}}在 VS Code 中打开{"mcpServers":{"app-ulapcybo-attest":{"type":"http","url":"https://attest.ulapcybo.app/mcp"}}}{"mcpServers":{"app-ulapcybo-attest":{"serverUrl":"https://attest.ulapcybo.app/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
详细介绍
CYBO Attest MCP 服务
CYBO Attest 是基于 cDSO(Community DevSecOps)流水线构建的应用的授权控制台。它的 MCP 服务让你、你的 Agent 和机器人可以通过任何 MCP 客户端使用 Attest:查看每次构建受阻的原因,获取按顺序排列的修复计划,启动扫描,并为无法修复的问题提供理由,直到构建获准发布。
此仓库介绍该服务。服务本身由 Ulap 托管,无需安装任何内容。
服务地址: https://attest.ulapcybo.app/mcp(Streamable HTTP)
注册表名称: app.ulapcybo/attest
文档: https://docs.ulapcybo.app/developer/connecting-an-ai-agent/
功能
- 安全态势。 每个容器的最新扫描结果:其判定、未通过的关卡、受阻原因以及后续操作。
- 修复计划。 针对某次构建的有序计划:经批准、用于重新构建的基础映像标签,需要升级到的程序包版本,以及必须修复的问题,并附上失败作业的日志。
- 发现项。 每个发现项的完整信息、清单中的对应行、修复易受攻击程序包的命令,以及关于发现项对应用意味着什么的可解释 AI 回答。
- 扫描。 启动应用扫描,逐步跟踪其构建和扫描进度,并查看每个扫描器的证据和作业日志。
- 应用。 添加 GitHub 仓库,将应用与其仓库中的最新提交同步,使用 Attest 修正后的 Dockerfile,并将版本提交审核。
- 理由。 为无法修复的发现项起草理由并进行编辑,然后提交理由,并说明安全控制评估员可以核查的原因。
批准或拒绝构建仍由控制台中的安全控制评估员负责。任何工具都不能执行此操作。
开始之前
你需要拥有 CYBO Attest 账户,网址为 https://attest.ulapcybo.app。MCP 服务会通过 OAuth 在浏览器中为你登录,每个工具都会以你的身份运行,并遵循你自己的角色权限:它只能执行你在控制台中能执行的操作,绝不会更多。每项更改都会记录你的姓名和所用客户端。
配置客户端
VS Code 与 GitHub Copilot
将服务添加到工作区中的 .vscode/mcp.json(或添加到用户 MCP 配置中):
{
"servers": {
"cybo-attest": {
"type": "http",
"url": "https://attest.ulapcybo.app/mcp"
}
}
}
从该文件或 MCP 服务列表启动服务,然后在 VS Code 打开浏览器时登录。使用 Agent 模式下 Copilot Chat 中的工具。
Claude Code
claude mcp add --transport http cybo-attest https://attest.ulapcybo.app/mcp
然后在 Claude Code 中运行 /mcp,并选择 CYBO Attest 进行登录。
其他客户端
任何支持 Streamable HTTP 和 OAuth 的 MCP 客户端都可以连接到 https://attest.ulapcybo.app/mcp。服务会在 https://attest.ulapcybo.app/.well-known/oauth-protected-resource/mcp 发布登录信息,客户端会自动查找这些信息。
使用方法
用自然语言提问。例如:
- “CYBO Attest 中哪些问题阻止了我的应用通过审核?”
- “为我的示例应用最新一次构建制定修复计划,然后修复 Dockerfile 和依赖项。”
- “解释此发现项,并告诉我能否修复,还是必须提供理由。”
- “重新启动扫描,并在扫描完成时告诉我。”
- “为此发现项起草一份理由,供我编辑。”
建议的顺序:运行 get_security_posture 查看受阻情况,对某次构建运行 plan_fixes,修复代码,运行 start_scan,然后持续运行 get_application_progress,直到扫描完成。只有在无法修复发现项时,才为其提供理由。
工具
客户端可以看到哪些工具,取决于你的角色以及登录时授予的访问权限。
读取信息
| 工具 | 功能 |
|---|---|
whoami | 查看你以哪个身份登录 |
get_security_posture | 查看每个容器的最新扫描结果:判定、未通过的门禁、被阻止的原因和后续操作 |
plan_fixes | 查看修复一个构建的有序计划 |
list_applications, get_application | 查看你的应用、组件和源 |
list_intake_applications | 查看 Attest 为你配置的应用 |
get_application_progress | 逐步查看最新构建和扫描 |
get_application_config | 查看 Attest 提交的 cDSO 配置 |
get_dockerfile_fix | 查看你的 Dockerfile 和 Attest 修正后的版本 |
list_authorization_candidates | 查看可提交审核的版本 |
get_github, list_github_repositories | 查看 GitHub 是否已连接,以及可访问的仓库 |
list_justifications | 查看有效和已撤回的理由说明 |
console_link | 查看仅在控制台中完成的工作的控制台页面 |
list_scans, find_scans, get_scan | 查看扫描、扫描步骤、门禁和判定 |
list_findings, get_finding, get_finding_change | 查看发现项,以及如何修复存在漏洞的软件包 |
explain_finding, draft_justification | 获取关于发现项的可解释 AI 说明,以及理由说明草稿 |
explain_gate, explain_gate_controls, explain_job, explain_assessment | 获取关于门禁、门禁控制项、未通过的作业和扫描影响评估的可解释 AI 说明 |
list_scan_runs, list_scan_jobs, get_scan_job_log | 查看流水线运行记录、作业和日志 |
list_base_images, list_base_image_tags | 查看获准的基础镜像及其标签 |
get_scan_evidence, get_scan_artifact, get_scan_source | 查看扫描器记录、已发布文件和被扫描仓库中的文件 |
get_decision, get_review, get_review_summary | 查看判定和评估人员的审核结果 |
修改
| 工具 | 功能 |
|---|---|
start_scan | 开始扫描应用 |
choose_dockerfile, use_fixed_dockerfile | 选择 Dockerfile,或使用 Attest 修正后的版本构建 |
add_github_repository | 将 GitHub 仓库添加为应用 |
sync_application | 将应用更新到其仓库的最新提交 |
retry_provisioning | 恢复失败的配置过程 |
request_authorization | 为版本添加标签并提交审核 |
propose_justification, withdraw_justification, apply_justifications | 为发现项提供理由说明、撤回理由说明、重新提交理由说明 |
remove_application | 移除应用(客户端会先询问你) |
该服务还提供两个提示词:fix_blocking_findings 和 security_posture_report,以及两个资源:API 契约和扫描器、门禁及术语的参考资料。
安全
- 仓库读取令牌不会作为工具参数传递,因此不会经过模型。你只能在控制台中输入这些令牌。
- 每次调用都会根据你的组织和角色验证令牌。
- 隐私政策:https://ulapcybo.app/privacy
支持
如有问题或需要申请访问权限,请联系:[email protected]
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。