mcpField
O
ORAS

ORAS

本地服务
github.com/oras-project云与基础设施656 周前更新

关于 ORAS

ORAS 是面向 VS Code Agent 模式中注册表对话的 MCP 服务。它基于 `oras-go`,无需依赖 `oras` 命令行,即可查询 OCI 兼容注册表中的制品信息。

主要功能

  1. 01发现 OCI 注册表中的制品
  2. 02支持 VS Code 注册表相关对话
  3. 03使用 `oras-go`,无需 `oras` 命令行
  4. 04使用 ORAS 或 Docker CLI 凭据

适用场景

  1. 01询问容器镜像支持的平台
  2. 02查看注册表中的近期镜像
  3. 03检查制品签名及类型

MCP 相关

作为 stdio MCP 服务运行,可配置用于 VS Code Agent 模式,并向 MCP 客户端提供注册表制品发现能力。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

ORAS MCP 服务

Build Status codecov

横幅

使用方法

配置 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 上,请改为安装已发布的二进制文件。

从已发布的二进制文件设置
  1. 访问 GitHub 发布页面,下载与你的操作系统和 CPU 架构匹配的存档(Linux 或 macOS 使用 oras-mcp_<version>_<os>_<arch>.tar.gz,Windows 使用 oras-mcp_<version>_windows_<arch>.zip)。

  2. 解压存档;文件夹中包含一个名为 oras-mcp 的可执行文件(Windows 上为 oras-mcp.exe)和一份项目许可证副本。

  3. 将二进制文件移至 PATH 中的目录(例如,Linux/macOS 上的 /usr/local/bin 或 Windows 上的 %LOCALAPPDATA%\Programs\oras-mcp),也可以直接引用其解压位置。

  4. 运行 oras-mcp serve --help(或 oras-mcp.exe serve --help),确认该二进制文件可以在你的系统上运行。

  5. 要与 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 支持以下平台:

  1. Linux (amd64)
  2. Linux (arm64)
  3. Linux (arm,variant v7)
  4. Linux (s390x)
  5. Linux (ppc64le)

如果你需要更多详情,请告诉我!

问:MCR 中最新的 Azure Linux 3.0 镜像是什么?它有签名吗?签名的类型是什么?

答:Microsoft Container Registry (MCR) 中最新的 Azure Linux 3.0 镜像标记为 3.0.20250402。它有签名,签名类型为 application/vnd.cncf.notary.signature。

发布流程

维护者可在发布清单中查看完整的发布步骤。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。