用 AI 助手只读查制品库:AngusRepo MCP 怎么接入
Coding Agent 要在对话里问「这个坐标在哪个仓、依赖和漏洞计数是什么」并不需要把mvn/npm/docker搬进模型上下文。AngusRepo 把这条能力做成进程内的MCP 只读端点宿主连上之后调用具名工具服务端回环本进程管理 API返回元数据投影。结论Repo MCP全部只读——默认暴露 8 个以repo_开头的工具不代理/maven、/npm、/v2等协议路径不下载二进制、不签发令牌、不执行清理。社区版不含 MCP团队版 / 企业版 / 云服务版按文档接入。身份必须是门户签发的用户访问令牌PATDeploy Tokenrepod_会被 401。控制台与客户端怎么接 MCP见文末参考「通过 MCP 连接 AngusRepo」。本文说明只读八工具怎么划分、鉴权为何区分 PAT 与 Deploy Token以及限流与版本边界。缓存一致性见文末参考「缓存架构设计与实践」。1. Agent 常问的五类只读问题对话里反复出现的大致是这五类定位已入库制品并说明是否隔离、是否扫过。查看依赖、声明许可与漏洞计数。按仓库格式给出客户端配置示例口令占位符。预览已有清理策略会影响什么不执行。读取仓库或租户已有的安全评分快照。明确不做上传、删除、发布、下载、触发扫描、签发令牌。协议拉包继续走 PAT 或 Deploy Token不进 MCP。2. 形态进程内端点 回环IDE / Agent --POST {网关}/repo/mcp-- Boot /mcp --回环 Bearer-- /api/v1/**白名单 GET选择进程内端点是因为权限和审计已经在 REST 上再做一个外部 Node 去包 REST会把策略复制一份。回环没有通用 path 参数协议路径和下载接口不会被模型拼出来。项口径传输无状态POST默认路径/mcp经网关为{host}/repo/mcp回环基址本机 Repo 端口Bearer 原样转发带X-Angus-Client-Source: mcp注册面只注册tools不注册 MCP resources / prompts / samplingGM不新增 GM 资源工具显隐跟现有PPS权限码走实例开关发行配置口径与用户文档一致配置作用angus.mcp.enabled环境变量ANGUS_MCP_ENABLED未设置时为truefalse时不注册端点制品托管不受影响angus.mcp.write-enabled产品侧固定false无写工具限流每个账号每分钟最多30次合法tools/call非法参数在计入限流前返回。社区版不种子「系统 → MCP」Tab并强制关闭/mcp。3. 八个工具名称以文档为准系统管理员或持有全部只读权限时tools/list应看到恰好 8 个工具权限要点做什么repo_find_artifactArtifacts:VIEW按名称片段等检索至少一项过滤条件pageSize夹到 1–20repo_locate_versionArtifacts:VIEW精确定位主文件多条时ambiguous 候选不猜一条repo_inspect_dependencies制品字段Artifacts:VIEW许可证发现另需SecurityScans:VIEW依赖、声明许可、漏洞计数不触发扫描repo_list_repositoriesRepositories:VIEW可见仓库列表不含 settingsrepo_client_setupRepositories:VIEW与控制台同源模板口令为占位符repo_artifact_security扫描历史等另需SecurityScans:VIEW隔离、已有漏洞计数与扫描历史不触发扫描repo_repository_scoreSecurityScans:VIEW仓库/租户评分快照不是单个包的分数repo_cleanup_previewCleanupPolicies:VIEW只走 GET preview不创建执行记录结果投影刻意丢掉downloadUrl、校验和、README 与许可证全文降低模型侧误用与泄密面。明确不在列表中repo_search、repo_compare_versions后续项、默认不注册、repo_invoke_read、repo_connection_check以及任何 publish / delete / execute cleanup / mint token。secure为空或scanTrustUNKNOWN表示尚未扫描不等于安全。门禁默认关Repo 执法、Security 引擎分工与产品文档 FAQ 一致。4. 鉴权边界容易踩坑凭证结果门户签发的用户访问令牌PAT可进 MCP工具集随角色收窄repod_Deploy Token401无工具列表OAuth 刷新令牌 / 其他产品令牌401无 Bearer401避免收成工具内错误导致模型盲重试可见范围等于该用户在/api/v1的范围与控制台一致MCP不单独再解释协议路径上的repo:read/repo:write。PAT 上的repo:write只表示协议可写不表示 MCP 可写。个人令牌右上角头像 →我的/profile签发。CI 用服务账号不要把个人登录态写进仓库。5. 宿主接入与手册对齐的最小片段令牌放环境变量勿写入仓库{mcpServers:{angus-repo:{url:https://gateway-host/repo/mcp,headers:{Authorization:Bearer ${ANGUS_REPO_TOKEN}}}}}宿主配置文件以各宿主文档为准Cursor项目.cursor/mcp.json或用户级~/.cursor/mcp.jsonClaudeclaude_desktop_config.jsonVS Code工作区.vscode/mcp.json仅 stdio 的宿主可用anguskit/mcp --product repo转发该进程读ANGUS_TOKEN/ANGUS_BASE_URL与上面的ANGUS_REPO_TOKEN不是同一变量名。若默认 npm 源没有该包文档建议改用https://repo.anguskit.com/npm/npm-public/。完整宿主表见文末参考MCP 文档。5.1 一次真实对话用户问 → 工具 → 期望形态步骤内容用户问log4j-api 2.24.1 在哪个仓隔离了吗应调用先repo_locate_version坐标/名称 版本精确定位若需漏洞计数与隔离字段再repo_artifact_security或定位结果里已有的安全投影字段以实际返回为准期望字段 / 形态制品id为十进制字符串仓库名、格式、版本可核对多条主文件时返回ambiguous并列出候选不由模型任选一条不应出现downloadUrl、完整校验和、许可证全文也不应触发新扫描连上后也可先让助手tools/list确认恰好八个repo_*再指定一条真实 Maven 坐标调用repo_locate_version做冒烟。6. 与业界形态的对照极短形态代表与 AngusRepo一句话托管情报 MCPSonatype Guide查公开组件情报不读客户仓平台宽工具面JFrog Platform MCP含写操作面AngusRepo 选窄只读进程内窄工具AngusRepo回环本进程 REST协议路径隔离对照说明产品取舍不是采购排名。细节以各厂商当日文档为准。7. 边界与翻车表现象原因处理连不上社区版 /enabledfalse/ URL 错换版本或开开关核对/repo/mcp401用了repod_或刷新令牌改用「我的」里签发的 PAT工具很少角色缺权限码按文档补Artifacts:VIEW等想让 Agent 拉 jar误以为 MCP 代理协议用 mvn/npm/docker 走协议路径把仓库分当成包分误读repo_repository_score制品看漏洞计数与隔离字段ambiguous同坐标多条主文件列出候选让人挑不任选rate_limited超过 30 次/分钟稍后再试合并提问FAQMCP 会不会删包或执行清理不会。写开关恒关清理只有 preview。和 Skill 什么关系Skill 描述该问哪些制品风险MCP 提供可调用的查询工具。两者可同时用产品文档口径。为什么不做通用只读网关具名工具限制回环白名单避免把管理 API 整面暴露给模型并便于投影脱敏。Deploy Token 为什么不能连 MCPrepod_是单仓 CI 凭据。若能调管理面 MCP会把自动化令牌变成对话身份——鉴权前直接 401。小结核心取舍只读、八工具、回环 REST、协议路径隔离。接入核心网关/repo/mcp PATDeploy Token 不行。社区版没有这条能力需要时对照团队/企业/云服务版文档与控制台开关。参考文章通过 MCP 连接 AngusRepohttps://www.anguskit.com/zh/docs/repo/get-started/mcpAngusRepo 产品介绍https://www.anguskit.com/zh/docs/repo/get-started/introductionAngusRepo 缓存架构设计与实践https://www.anguskit.com/zh/blog/angusrepo-cache-architecture制品入库怎么拦住漏洞和许可证问题https://www.anguskit.com/zh/blog/artifact-repo-vulnerability-license-scanningDeploy Token 与 ACLhttps://www.anguskit.com/zh/blog/angusrepo-deploy-token-pat-acl-guide