Empowering Enterprise AI with Custom MCP Catalogs and Profiles
Introduction
Managing the growing ecosystem of AI tooling can be a challenge for enterprises. The Model Context Protocol (MCP) offers a standardized way to connect AI models with external tools, but ensuring teams use approved, secure servers is critical. Today, we’re excited to announce the general availability of Custom MCP Catalogs and MCP Profiles—two complementary features that transform how organizations package, distribute, and manage MCP servers. Custom Catalogs allow teams to curate and distribute trusted server collections, while Profiles empower individual developers to build, run, and share portable configurations. This article walks through creating a custom catalog step by step, introduces Profiles, and explains how these tools accelerate enterprise MCP adoption.

Why Custom Catalogs Matter
As organizations adopt MCP, a common pain point emerges: teams need a single source of truth for MCP servers. Without curation, developers waste time searching the open internet for servers or accidentally use unvetted tools. Custom Catalogs solve this by letting organizations publish approved lists of MCP servers—including internally built ones—so team members can discover and use them with confidence. These catalogs can reference servers from Docker’s MCP Catalog, community sources, or proprietary servers, blending flexibility with control.
Introducing MCP Profiles
While catalogs handle curation, MCP Profiles address portability. A Profile is a named, portable grouping of MCP servers that a developer can create and share across projects or teams. Profiles make it easy to package a specific set of tools for a task—like data analysis or API testing—and reuse them consistently. They also lay the groundwork for future enhancements, such as profile inheritance or versioning.
Building a Custom Catalog: Step by Step
Let’s walk through the process of creating a custom catalog that includes both a server from the Docker MCP Catalog and a custom-built server. We’ll use the CLI and Docker Desktop, though most user-facing features are also available in the GUI.
Step 1: Create and Push a Custom MCP Server
Our example server is roll-dice (GitHub repository). It’s a simple MCP server that communicates over stdio and is packaged as a Docker image. We’ve already built and pushed the image to Docker Hub under roberthouse224/mcp-dice.
To describe the server, create a YAML file named mcp-dice.yaml with the following metadata:
name: roll-dice
title: Roll Dice
type: server
image: roberthouse224/mcp-dice@latest
description: An MCP server that can roll dice
Step 2: Assemble the Catalog
Now create a catalog that includes your custom server alongside a server from the Docker MCP Catalog. Use a catalog descriptor (e.g., my-catalog.yaml) to list the servers. For the Docker MCP Catalog server, you can reference its official name. For the custom server, point to your local YAML file.

Example catalog descriptor:
catalog:
- name: roll-dice
source: local:./mcp-dice.yaml
- name: fetch
source: docker:demos/fetch:latest
Replace the image IDs with your own Docker Hub credentials as needed.
Step 3: Distribute and Import the Catalog
Save your catalog YAML file and share it with your team (e.g., via a Git repository or internal registry). Team members can then import the catalog into Docker Desktop or use the CLI command:
docker mcp catalog import my-catalog.yaml
Once imported, the curated servers appear in Docker Desktop’s MCP interface, ready to be used by developers.
Using Catalogs and Profiles Together
Custom Catalogs and Profiles complement each other. A team lead might create a catalog of approved servers for the organization, while each developer builds a Profile that selects a subset of those servers for their current project. Profiles can reference servers from the catalog, ensuring consistency while allowing personalization. For example, a data science Profile might include roll-dice and a “math-tool” server from the catalog.
Practical Use Cases
- Enterprise onboarding: New developers can import the company’s catalog and immediately access all sanctioned MCP servers.
- Multi-team consistency: Different teams can maintain their own catalogs while adhering to a central security policy.
- Portable AI workflows: A Profile created for a specific task (e.g., “daily report generation”) can be shared across colleagues.
Looking Ahead
The current release focuses on curation and portability, but we’re already exploring advanced features like profile inheritance, versioned catalogs, and integration with CI/CD pipelines. Custom Catalogs and Profiles are foundational blocks for a more organized, secure, and efficient MCP ecosystem.
To learn more, see the full documentation or try building your own catalog today.
Related Articles
- Kubernetes v1.36 Strengthens Security with General Availability of Fine-Grained Kubelet Authorization
- Apple Crime Roundup: iCloud Abuse, AirTag Stalking, and iPad Thefts
- Mastering Organizational Restructuring for the AI Era
- Kubernetes v1.36: Tackling Controller Staleness with Atomic FIFO and Enhanced Observability
- How to Set Up Centralized Cross-Account Safeguards in Amazon Bedrock
- AWS Launches NVIDIA Nemotron 3 Super and Nova Forge SDK in Major Enterprise AI Push
- AWS Launches Express Configuration for Aurora PostgreSQL Serverless: Create Databases in Seconds
- Kubernetes v1.36 Beta: Dynamic Resource Tuning for Suspended Jobs