ocireg
About
An SSE-based MCP server that allows LLM-powered applications to interact with OCI registries. It provides tools for retrieving information about container images, listing tags, and more.
Details
- Author
- StacklokLabs
- GitHub stars
- 13
- Downloads
- 171
- Categories
- Developer Tools, Infrastructure, Other
Jump to
- Get detailed information about OCI images.
- List tags for a given repository.
- Retrieve image manifests and configs.
- Supports bearer token, username/password, and Docker config authentication.
- SSE-based transport for MCP clients.
The easiest way is to run it using ToolHive with thv run oci-registry, or directly with the binary. Authentication is handled via HTTP Authorization header, environment variables (OCI_TOKEN, OCI_USERNAME, OCI_PASSWORD), or Docker config. The server port can be set with the MCP_PORT environment variable or the -port flag.
- Get image details— Ask for digest, size, architecture, OS, creation date, and layer count of any public image usingget_image_info.
- List repository tags— Retrieve all available tags for a given repository withlist_tags.
- Fetch raw image manifest— Obtain the full manifest of an image reference viaget_image_manifest.
- Fetch image configuration— Get the image config (e.g., entrypoint, environment, exposed ports) withget_image_config.
This project implements an SSE-based MCP server that allows LLM-powered applications to interact with OCI registries. It provides tools for retrieving information about container images, listing tags, and more.
- Get information about OCI images
- List tags for repositories
- Get image manifests
- Get image configs
The server provides the following MCP tools:
- image_ref: The image reference (e.g., docker.io/library/alpine:latest)
- Image information including digest, size, architecture, OS, creation date, and number of layers
- repository: The repository name (e.g., docker.io/library/alpine)
- image_ref: The image reference (e.g., docker.io/library/alpine:latest)
- image_ref: The image reference (e.g., docker.io/library/alpine:latest)
The easiest way to run the OCI Registry MCP server is usingToolHive, which provides secure, containerized deployment of MCP servers:
# Install ToolHive (if not already installed) # See: https://docs.stacklok.com/toolhive/guides-cli/install # Register a supported client so ToolHive can auto-configure your environment thv client setup # Run the OCI Registry MCP server (packaged as 'oci-registry' in ToolHive) thv run oci-registry # List running servers thv list # Get detailed information about the server thv registry info oci-registry
The server will be available to your MCP-compatible clients and can query OCI registries for image information.
If you need to access private registries, you can provide authentication credentials using ToolHive's secret management:
# For bearer token authentication thv secret set oci-token # Enter your bearer token when prompted thv run --secret oci-token,target=OCI_TOKEN oci-registry # For username/password authentication thv secret set oci-username thv secret set oci-password # Enter your credentials when prompted thv run --secret oci-username,target=OCI_USERNAME --secret oci-password,target=OCI_PASSWORD oci-registry
- Go 1.21 or later
- Access to OCI registries
The server supports the following authentication methods for accessing private OCI registries (in order of priority):
-
HTTP Authorization Header(Highest Priority): Include a bearer token in the HTTP request'sAuthorizationheader:
- Authorization: Bearer <your-token>
- This method takes precedence over all other authentication methods
- When present, environment variables and Docker config are ignored
Bearer Token Environment Variable: Set the following environment variable:
- OCI_TOKEN: Bearer token for registry authentication
Username and Password: Set the following environment variables:
- OCI_USERNAME: Username for registry authentication
- OCI_PASSWORD: Password for registry authentication
Docker Config(Lowest Priority): If no other authentication is provided, the server will use the default Docker keychain, which reads credentials from~/.docker/config.json.
# HTTP Authorization header (for per-request authentication) # This is handled automatically by the MCP client when making requests # Example: curl -H "Authorization: Bearer mytoken" http://localhost:8080/... # Bearer token authentication via environment variable export OCI_TOKEN=mytoken # Username/password authentication via environment variables export OCI_USERNAME=myuser export OCI_PASSWORD=mypassword
The server can be configured to listen on a specific port using either:
- MCP_PORT: The port number to listen on (must be between 0 and 65535)
- If not set or invalid, defaults to port 8080
- -port: Overrides the environment variable setting (must be between 0 and 65535)
- If invalid port provided it defaults to port 8080
- Example:./ocireg-mcp -port 9090
We welcome contributions to this MCP server! If you'd like to contribute, please review theCONTRIBUTING guidefor details on how to get started.
If you run into a bug or have a feature request, pleaseopen an issuein the repository or join us in the#mcp-serverschannel on ourcommunity Discord server.
This project is licensed under the Apache v2 License - see the LICENSE file for details.
This is a web browser that enables your coding agent, such as Claude Code, to visit websites on your behalf and assist you in identifying bugs or creating UI test cases.
Access and interact with Harness platform data, including pipelines, repositories, logs, and artifact registries.
The Railway MCP Server enables natural language interaction with your Railway projects and infrastructure. Ask your IDE or AI assistant to create projects, deploy templates, manage environments, pull variables, redeploy services, and more.
The Shipyard CLI provides an MCP server for agents to manage Shipyard environments directly: by pulling logs, comparing branches, running tests, and stopping/starting environments..
A server for automated provisioning, supporting both local and remote communication protocols.
Manage Laravel Forge servers and sites using the Forge API.
A CLI tool to automate packaging MCP servers as Docker images and deploying them to AWS ECS.
A command-line tool to automate the deployment of MCP servers to AWS ECS.
A Nix-based configuration framework for deploying MCP servers with ready-to-use packages, supporting modular and reproducible builds.
Integrate with PipeCD to manage applications and deployments.
Paid remote MCP for Skybridge, structured receipts, usage logs, and audit-ready JSON evidence.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.





