关于 ORAS
ORAS 是面向 VS Code Agent 模式中注册表对话的 MCP 服务。它基于 `oras-go`,无需依赖 `oras` 命令行,即可查询 OCI 兼容注册表中的制品信息。
主要功能
- 01发现 OCI 注册表中的制品
- 02支持 VS Code 注册表相关对话
- 03使用 `oras-go`,无需 `oras` 命令行
- 04使用 ORAS 或 Docker CLI 凭据
适用场景
- 01询问容器镜像支持的平台
- 02查看注册表中的近期镜像
- 03检查制品签名及类型
MCP 相关
作为 stdio MCP 服务运行,可配置用于 VS Code Agent 模式,并向 MCP 客户端提供注册表制品发现能力。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
ORAS MCP 服务
使用方法
配置 ORAS MCP 服务,使其在 VS Code 代理模式中运行,以便在聊天中感知注册表。
该服务使用 oras-go 库实现,不依赖 oras 命令行工具。
使用 Docker 设置
使用 Docker 运行 ORAS MCP 服务更简单。
为 VS Code 设置
将以下代码添加到 .vscode/mcp.json:
{
"servers": {
"oras-mcp-server": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"ghcr.io/oras-project/oras-mcp:main",
"serve"
]
}
}
}
挂载 Docker 凭据(仅限 Linux)
Linux 用户可以通过挂载配置文件来共享 docker login 凭据:
{
"servers": {
"oras-mcp-server": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-v",
"${env:HOME}/.docker/config.json:/root/.docker/config.json:ro",
"ghcr.io/oras-project/oras-mcp:main",
"serve"
]
}
}
}
如果凭据保存在 ${env:DOCKER_CONFIG} 下,请相应调整路径。容器仅支持内联 auths 条目;基于辅助程序的配置(credsStore、credHelpers)无法使用。在 macOS/Windows 上,请改为安装已发布的二进制文件。
从已发布的二进制文件设置
-
访问 GitHub 发布页面,下载与你的操作系统和 CPU 架构匹配的存档(Linux 或 macOS 使用
oras-mcp_<version>_<os>_<arch>.tar.gz,Windows 使用oras-mcp_<version>_windows_<arch>.zip)。 -
解压存档;文件夹中包含一个名为
oras-mcp的可执行文件(Windows 上为oras-mcp.exe)和一份项目许可证副本。 -
将二进制文件移至
PATH中的目录(例如,Linux/macOS 上的/usr/local/bin或 Windows 上的%LOCALAPPDATA%\Programs\oras-mcp),也可以直接引用其解压位置。 -
运行
oras-mcp serve --help(或oras-mcp.exe serve --help),确认该二进制文件可以在你的系统上运行。 -
要与 VS Code 代理模式集成,请更新
.vscode/mcp.json,使其指向解压后的二进制文件:{ "servers": { "oras-mcp-server": { "type": "stdio", "command": "/absolute/path/to/oras-mcp", "args": [ "serve" ] } } }在 Windows 上,设置
"command": "C:/path/to/oras-mcp.exe"。
身份验证
oras-mcp 从 ORAS 和 Docker CLI 使用的相同存储中读取凭据,但你需要将这些存储提供给服务进程:
- 已发布的二进制文件——在主机上运行
oras login <registry>或docker login <registry>;二进制文件会自动读取缓存的凭据。 - Docker 容器——在 Linux 上,你可以按凭据部分所示挂载 Docker 配置;请确保文件包含内联
auths条目。Docker Desktop(macOS/Windows)依赖钥匙串辅助程序,因此请在这些平台上使用已发布的二进制文件。
示例聊天
问:镜像 ghcr.io/oras-project/oras 支持什么平台?
答:镜像 ghcr.io/oras-project/oras 支持以下平台:
- Linux (amd64)
- Linux (arm64)
- Linux (arm,variant v7)
- Linux (s390x)
- Linux (ppc64le)
如果你需要更多详情,请告诉我!
问:MCR 中最新的 Azure Linux 3.0 镜像是什么?它有签名吗?签名的类型是什么?
答:Microsoft Container Registry (MCR) 中最新的 Azure Linux 3.0 镜像标记为 3.0.20250402。它有签名,签名类型为 application/vnd.cncf.notary.signature。
发布流程
维护者可在发布清单中查看完整的发布步骤。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。