---
title: "Catalog schemas"
version: "v0.27.0"
canonical: "https://docs.obot.ai/v0.27.0/reference/catalog-schemas"
unreleased: false
---

# Catalog schemas

Use these references when authoring MCP server and vMCP definitions in Git. A catalog entry defines how a server runs or where it is reached. A separate `type: vmcp` item defines components, configuration policies, tool selections, and profiles.

| Format                                                                     | Reference                                                                                                                                                                                                                                     |
| -------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Catalog metadata, runtime, configuration values, and resource requirements | [Catalog YAML structure](https://docs.obot.ai/v0.27.0/configuration/mcp-server-gitops.md#obot-doc-yaml-configuration-structure)                                                                                                               |
| Supported Obot versions for an entry                                       | [Obot version range](https://docs.obot.ai/v0.27.0/configuration/mcp-server-gitops.md#obot-doc-obot-version-range)                                                                                                                             |
| Catalog file selection and validation                                      | [Selecting files](https://docs.obot.ai/v0.27.0/configuration/mcp-server-gitops.md#obot-doc-selecting-catalog-files) and [CLI validation](https://docs.obot.ai/v0.27.0/configuration/mcp-server-gitops.md#obot-doc-validating-catalog-entries) |
| vMCP components, profiles, and fixed configuration                         | [vMCP definitions](https://docs.obot.ai/v0.27.0/configuration/mcp-server-gitops.md#obot-doc-vmcp-definitions)                                                                                                                                 |
| Registry contribution example                                              | [MCP Registry API](https://docs.obot.ai/v0.27.0/functionality/mcp-registry-api.md#obot-doc-server-entry-format)                                                                                                                               |
| Per-server domain egress settings                                          | [Egress YAML examples](https://docs.obot.ai/v0.27.0/configuration/mcp-server-egress-control.md#obot-doc-yaml-configuration-examples)                                                                                                          |
| OpenAPI schema sources and credential configuration                        | [OpenAPI GitOps examples](https://docs.obot.ai/v0.27.0/configuration/mcp-server-gitops.md#obot-doc-openapi-schemas) and [import requirements](https://docs.obot.ai/v0.27.0/concepts/mcp-hosting.md#obot-doc-openapi-import-an-http-api)       |

Validate changes with `obot mcp validate-catalog` before synchronizing a source. The validator for the installed Obot version is authoritative for supported fields. `runtime: composite` is not accepted; build endpoints from catalog entries using [Create vMCP](https://docs.obot.ai/v0.27.0/mcp-gateway/server-types.md).

For existing Git-synced composites, use the [migration command](https://docs.obot.ai/v0.27.0/configuration/mcp-server-gitops.md#obot-doc-migrating-git-synced-composites-to-vmcps) to generate matching vMCP definitions while retaining component IDs and connections. See [Git Catalogs](https://docs.obot.ai/v0.27.0/configuration/mcp-server-gitops.md) for source setup and validation commands.
