# Catalog overview

The Gram **Catalog** is a central hub for discovering, importing, and distributing MCP servers. It serves two purposes:

- **Discover and import** curated third-party MCP servers from external registries
- **Publish and share** internal catalogs of toolsets with partner organizations

## Discovering third-party MCP servers

The Catalog page in the Gram dashboard provides access to a curated directory of official and community MCP servers, powered by the [MCP Registry](https://registry.modelcontextprotocol.io/). From the catalog:

- **Browse** available servers with search, filtering, and sorting
- **Filter** by authentication type, tool behavior (read-only, destructive, idempotent), usage volume, and update recency
- **View details** for any server including its description, available tools with annotations, usage statistics, version info, and transport endpoints
- **Add servers** to a project with a single click — Gram automatically creates the external MCP attachment and wires it into the deployment

To access the catalog, navigate to **Catalog** in the Gram dashboard sidebar.

### Adding a server from the catalog

- Browse or search for the desired server
- Click the server card to view details, including available tools and usage stats
- Click **Add** to import the server into the project
- Gram creates an external MCP attachment and includes the server tools in the deployment

Multiple servers can also be selected from the catalog grid and added in a batch.

<Callout title="Good to know" type="info">
  Servers added from the catalog appear as external MCP tool sources in the project. Include their tools in any [toolset](/docs/ai-control-plane/reference/concepts/toolsets) alongside API tools and Gram Functions.
</Callout>

### Removing a catalog server

To remove a previously added catalog server, navigate to the server detail page in the catalog and click **Remove**. This removes the external MCP attachment and any toolsets that exclusively reference it.

## Publishing internal catalogs

In addition to consuming third-party servers, internal **catalogs** can be published — named collections of [toolsets](/docs/ai-control-plane/reference/concepts/toolsets) served as private MCP registries. Internal catalogs enable:

- **Bundling toolsets** into logical groups (for example, "Customer Success Tools" or "Engineering Platform")
- **Controlling visibility** by making catalogs public or private
- **Sharing with partners** by granting specific organizations access through [sub catalogs](/docs/ai-control-plane/connect/sources/catalog/sub-catalogs)

### How internal catalogs work

Each internal catalog is identified by a **slug** (a URL-friendly identifier) and contains one or more toolsets from the project. When a catalog is published, Gram creates an internal registry that serves the tools from the included toolsets as MCP servers.

```txt
Organization
├── Toolset: CRM Tools
├── Toolset: Email Tools
├── Toolset: Analytics Tools
│
├── Catalog: "customer-success"  (CRM Tools + Email Tools)
└── Catalog: "data-platform"     (Analytics Tools)
```

### Creating an internal catalog

In the Gram dashboard, navigate to **Catalogs** in the sidebar and click **New Catalog**. Provide the following:

- **Name**: A human-readable display name for the catalog
- **Slug**: A URL-friendly identifier (auto-generated from the name, but editable)
- **Toolsets**: Select one or more toolsets to include in the catalog

<Callout title="Visibility" type="info">
  Catalogs are created as **private** by default. Private catalogs are only accessible to the owning organization and any organizations explicitly granted access.
</Callout>

### Serving catalog contents

Once published, the catalog MCP servers are accessible through the serve endpoint using the catalog slug. Each toolset in the catalog is exposed as an individual MCP server with its own streamable HTTP endpoint. Partner organizations that have been granted access can browse and connect to these servers.

## Next steps

- Learn how to share internal catalogs with partner organizations using [sub catalogs](/docs/ai-control-plane/connect/sources/catalog/sub-catalogs)
- Read about [toolsets](/docs/ai-control-plane/reference/concepts/toolsets) to understand how to organize tools before publishing them as catalogs
- Learn how to [publish a server to the public MCP Registry](/docs/ai-control-plane/distribute/mcp-servers) for broader discoverability
