> ## Documentation Index
> Fetch the complete documentation index at: https://context7.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Docs7 configuration

> Configure Docs7-only fields in docs.json

Docs7 supports the `docs.json` format that was established by Mintlify. We also support options beyond this spec to make your documentation easier to navigate and to create custom content groups.

## Validate docs.json in your editor

Point `$schema` at the Docs7 schema. Your editor then completes and checks the Mintlify fields and the Docs7-only fields on this page.

```json docs.json theme={null}
{
  "$schema": "https://context7.com/schema/docs7.json"
}
```

## Group products

Product groups add a product switcher to the sidebar. A reader picks a product, and the sidebar shows only the pages for that product.

![Docs7 sidebar showing the Products and Utility Tools product groups](https://mintcdn.com/context7/5U3bU4WBaie41tqk/images/docs7/product-groups.png?fit=max\&auto=format\&n=5U3bU4WBaie41tqk\&q=85\&s=2522d58a21a71c0107a66a0677966794)

Before a reader picks a product, the sidebar lists the tab's own pages and every product group.

![Docs7 sidebar with Redis selected in the product switcher](https://mintcdn.com/context7/5U3bU4WBaie41tqk/images/docs7/product-groups-selected.png?fit=max\&auto=format\&n=5U3bU4WBaie41tqk\&q=85\&s=7e793bb0b1a6855b089ce3d37e8881b7)

After picking Redis, the sidebar shows only Redis pages. The dropdown at the top switches products.

To set this up, add a `productGroups` list to one tab. That tab shows the product switcher. The tab's own pages fill the sidebar until the reader picks a product. Each product then lists its own pages. If your docs have several versions or languages, add the list to one tab in each of them.

```json docs.json theme={null}
{
  "navigation": {
    "tabs": [
      {
        "tab": "Documentation",
        "pages": ["index"],
        "productGroups": [
          {
            "group": "Products",
            "products": [
              {
                "product": "Redis",
                "icon": "/images/redis.svg",
                "description": "Serverless Redis",
                "pages": ["redis/overview", "redis/get-started"]
              }
            ]
          },
          {
            "group": "Utility",
            "products": [
              {
                "product": "Rate Limit",
                "pages": ["ratelimit/overview", "ratelimit/get-started"]
              }
            ]
          }
        ]
      },
      {
        "tab": "API Reference",
        "pages": ["api/introduction"]
      }
    ]
  }
}
```

In this example:

* The Documentation tab shows the product switcher. Until the reader picks a product, the sidebar shows the index page.
* Redis and Rate Limit are the two products. Each one lists the pages that appear when it is selected.
* The API Reference tab is a normal tab and does not use product groups.

Rules:

* Each product needs either a list of pages or a list of groups, not both.
* That list must have at least one entry.
* Inside one tab, product names must be unique, and group names must be unique.

If you do not add product groups, Docs7 uses your regular navigation.

## Enable sidebar filtering

Set `filterSidebar` to `true` to add a filter above the sidebar. Readers can press `/` to focus it.

```json docs.json theme={null}
{
  "filterSidebar": true
}
```

![Docs7 sidebar with the filter box above the page list](https://mintcdn.com/context7/5U3bU4WBaie41tqk/images/docs7/filter-sidebar.png?fit=max\&auto=format\&n=5U3bU4WBaie41tqk\&q=85\&s=8397850fcd70430e914cb3d64894c14a)

The filter box sits above the sidebar. Typing in it narrows the sidebar to matching pages.

The default value is `false`.

## Show Docs7 attribution

Set `poweredByDocs7` to `true` to add a **Built with Docs7** link to the footer. The link opens [the Docs7 page](https://context7.com/docs7).

```json docs.json theme={null}
{
  "poweredByDocs7": true
}
```

The default value is `false`. Docs7 always shows this link for sites on the Free plan.

## Ask for cookie consent

Set `consentBanner` to `true` to ask visitors for cookie consent before your analytics and marketing integrations load.

```json docs.json theme={null}
{
  "consentBanner": true,
  "integrations": {
    "ga4": { "measurementId": "G-XXXXXXXXXX" }
  }
}
```

New visitors see a banner with **Reject all**, **Accept all**, and **Customize**. **Customize** lets them turn each category on or off:

* **Analytics**: Adobe Analytics, Google Analytics, Google Tag Manager, Heap, Microsoft Clarity, Plausible, and Segment.
* **Marketing**: Clearbit and Koala.

An integration loads only after the visitor accepts its category. The footer shows a **Cookie settings** link, so visitors can change their choice at any time.

The banner shows only when your site uses at least one of these integrations. It does not show in previews.

The banner does not control Intercom. The Intercom chat widget loads for every visitor, with or without the banner.

The default value is `false`. Without the banner, your integrations load for every visitor.

## Add an agent setup menu

Set `agentSetup` to add a second button next to **Copy as Markdown** on every page. Use it to give readers what their coding agent needs: a prompt, your MCP server URL, or a command that installs your skills.

```json docs.json theme={null}
{
  "agentSetup": [
    {
      "title": "Copy prompt",
      "description": "Paste it into Claude Code, Cursor or any agent.",
      "copy": "Set up Acme in this project. Read https://docs.acme.com/llms.txt first."
    },
    {
      "title": "Copy remote MCP URL",
      "copy": "https://mcp.acme.com/mcp"
    },
    {
      "title": "Copy skills command",
      "copy": "npx skills add acme/skills"
    },
    {
      "title": "See all agent resources",
      "href": "/agent-resources"
    }
  ]
}
```

The first item is the button. A chevron next to it opens the other items. Each item has these fields:

* `title` (required): the label of the item.
* `copy` or `href` (one of the two is required): `copy` puts the text on the clipboard. `href` opens the link in a new tab. A link must be an `http://` or `https://` URL, or a path on your site.
* `description`: text under the title in the menu. When the button copies its text, the description also shows under the button.
* `icon`: an icon name, as in other `icon` fields. The default is a copy icon for `copy` and an arrow for `href`.

Without `agentSetup`, Docs7 does not show the menu.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.