Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 11 additions & 4 deletions content/manuals/ai/mcp-catalog-and-toolkit/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,10 @@ weight: 30
description: Learn about Docker's MCP catalog on Docker Hub
keywords: Docker, ai, mcp servers, ai agents, extension, docker desktop, llm, docker hub
grid:
- title: Get started
description: Learn how to quickly install and use the MCP Toolkit to set up servers and clients.
icon: explore
link: /ai/mcp-catalog-and-toolkit/get-started/
- title: MCP Catalog
description: Learn about the benefits of the MCP Catalog, how you can use it, and how you can contribute
icon: hub
Expand All @@ -23,10 +27,13 @@ grid:

{{< summary-bar feature_name="Docker MCP Catalog and Toolkit" >}}

Docker MCP Catalog and Toolkit is a solution for securely building, sharing, and
running MCP tools.
[Model Context Protocol](https://modelcontextprotocol.io/introduction) (MCP) is
an open protocol that standardizes how applications provide context and
additional functionality to large language models. MCP functions as a
client-server protocol, where the client, for example an application such as [Gordon](/manuals/ai/gordon/_index.md) or Claude Desktop, sends requests, and the server processes those requests to deliver the necessary context to the AI.

It simplifies the developer experience across these areas:
Docker MCP Catalog and Toolkit is a solution for securely building, sharing, and
running MCP tools. It simplifies the developer experience across the following areas:

- Discovery: A central catalog with verified, versioned tools.
- Credential management: OAuth-based and secure by default.
Expand All @@ -44,7 +51,7 @@ With Docker Hub and the MCP Toolkit, you can:

## MCP servers

MCP servers are systems that use the [Model Context Protocol](https://www.anthropic.com/news/model-context-protocol) (MCP) to help manage
MCP servers are systems that use the [Model Context Protocol](https://modelcontextprotocol.io/introduction) (MCP) to help manage
and run AI or machine learning models more efficiently. MCP allows different
parts of a system, like the model, data, and runtime environment, to
communicate in a standardized way. You can see them as
Expand Down
2 changes: 1 addition & 1 deletion content/manuals/ai/mcp-catalog-and-toolkit/catalog.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ title: Docker MCP Catalog
linkTitle: MCP Catalog
description: Learn about the benefits of the MCP Catalog, how you can use it, and how you can contribute
keywords: docker hub, mcp, mcp servers, ai agents, catalog, docker
weight: 10
weight: 20
---

{{< summary-bar feature_name="Docker MCP Catalog" >}}
Expand Down
135 changes: 135 additions & 0 deletions content/manuals/ai/mcp-catalog-and-toolkit/get-started.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
---
title: Get started with Docker MCP Toolkit
linkTitle: Get started
description: Learn how to quickly install and use the MCP Toolkit to set up servers and clients.
keywords: Docker MCP Toolkit, MCP server, MCP client, AI agents
weight: 10
---

{{< summary-bar feature_name="Docker MCP Toolkit" >}}

Docker Model Context Protocol (MCP) Toolkit makes it easy to set up, manage, and run containerized MCP servers, and connect them to AI agents. It provides secure defaults, one-click setup, and support for a growing ecosystem of LLM-based clients. This page shows you how to get started quickly with the Docker MCP Toolkit.

Check warning on line 11 in content/manuals/ai/mcp-catalog-and-toolkit/get-started.md

View workflow job for this annotation

GitHub Actions / validate (vale)

[vale] reported by reviewdog 🐶 [Docker.RecommendedWords] Consider using 'select' instead of 'click' Raw Output: {"message": "[Docker.RecommendedWords] Consider using 'select' instead of 'click'", "location": {"path": "content/manuals/ai/mcp-catalog-and-toolkit/get-started.md", "range": {"start": {"line": 11, "column": 177}}}, "severity": "INFO"}

## Requirements

Before you begin, make sure you meet the following requirements to get started with Docker MCP Toolkit.

### Download and install Docker Desktop

- Install [Docker Desktop version 4.42.0](/manuals/desktop/release-notes.md#4420) and later.
- To try the MCP Toolkit Learning center walkthrough, you must install [Docker Desktop version 4.46.0](/manuals/desktop/release-notes.md#4460) and later.

### Enable Docker MCP Toolkit

1. Open the Docker Desktop settings and select **Beta features**.
2. Select **Enable Docker MCP Toolkit**.
3. Select **Apply**.

There are multiple ways to get started with Docker MCP Toolkit. You can:
- Try the [Learning center](#learning-center) walkthrough in Docker Desktop, available in [Docker Desktop version 4.46.0](/manuals/desktop/release-notes.md#4460) and later.
- Alternatively, follow the step-by-step instructions on this page to use Docker Desktop or the CLI to [Install an MCP server](#install-an-mcp-server), [add a client, and test your setup](#install-an-mcp-client-and-test-your-setup) with example prompts.

## Learning center

The **Learning center** in Docker Desktop provides walkthroughs and resources to help you get started with Docker products and features.

On the **MCP Toolkit** page, Docker Desktop shows the **Get started** walkthrough that guides you through installing an MCP server, connecting a client, and testing your setup.

## Install an MCP server

{{< tabs group="release" >}}
{{< tab name="From Docker Desktop">}}

1. In Docker Desktop, select **MCP Toolkit** and select the **Catalog** tab.
2. Search for the **GitHub Official** server from the catalog and then select the plus icon to add it.
3. In the **GitHub Official** server page, select the **Configuration** tab and select **OAuth**.

>[!NOTE]
>
> The type of configuration required depends on the server you select. For the GitHub Official server, you must authenticate using OAuth.

Your browser opens the GitHub authorization page. Follow the on-screen instructions to [authenticate via OAuth](/manuals/ai/mcp-catalog-and-toolkit/toolkit.md#authenticate-via-oauth).

4. Return to Docker Desktop when the authentication process is complete.
5. Search for the **Playwright** server from the catalog and add it.

{{< /tab >}}
{{< tab name="From the Docker CLI">}}

1. Add the GitHub Official MCP server. Run:

```console
$ docker mcp server enable github-official
```

2. Authenticate the server by running the following command:

```console
$ docker mcp oauth authorize github
```

>[!NOTE]
>
> The type of configuration required depends on the server you select. For the GitHub Official server, you must authenticate using OAuth.

Your browser opens the GitHub authorization page. Follow the on-screen instructions to [authenticate via OAuth](/manuals/ai/mcp-catalog-and-toolkit/toolkit.md#authenticate-via-oauth).

3. Add the **Playwright** server. Run:

```console
$ docker mcp server enable playwright
```
{{< /tab >}}
{{< /tabs >}}

You’ve now successfully added an MCP server. Next, install an MCP client and test your setup with an example prompt.


## Install an MCP client and test your setup

After you've installed MCP servers, you can add clients to the MCP Toolkit. These clients can interact with the installed MCP servers, turning the MCP Toolkit into a gateway. In the following section, let’s add the Claude Desktop client.
Comment thread
usha-mandya marked this conversation as resolved.

{{< tabs group="release" >}}
{{< tab name="From Docker Desktop">}}

1. In Docker Desktop, select **MCP Toolkit** and select the **Clients** tab.
2. Find **Claude Desktop** and select **Connect**.

If Claude Desktop isn't installed, select **Download** to install it, then select **Connect**.
3. Restart Claude Desktop if it's running, and it can now access all the servers in the MCP Toolkit.
4. Open Claude Desktop and run a test by submitting the following prompt using the Sonnet Opus 4.1 model:

```text
Take a screenshot of the header element on docs.docker.com
```
Claude prompts you for permissions and shares a screenshot of the header element from the Docker documentation page.

![Screenshot showing the header of Docker docs.](./images/claude-desktop-example.png)


{{< /tab >}}
{{< tab name="From the Docker CLI">}}

1. In a terminal window, run the following commands to connect the Claude Desktop client:
Comment thread
usha-mandya marked this conversation as resolved.

```console
$ docker mcp client connect claude-desktop --global
```
2. Restart Claude Desktop if it's running, and it can now access all the servers in the MCP Toolkit.
3. Open Claude Desktop and run a test by submitting the following prompt using the Sonnet 4 model:

```text
Take a screenshot of the header element on docs.docker.com
```
Claude prompts you for permissions and shares a screenshot of the header element from the Docker documentation page.

![Screenshot showing the header of Docker docs.](./images/claude-desktop-example.png)

{{< /tab >}}
{{< /tabs >}}

## Related pages

- [MCP Toolkit](/manuals/ai/mcp-catalog-and-toolkit/toolkit.md)
- [MCP Catalog](/manuals/ai/mcp-catalog-and-toolkit/catalog.md)
- [Open-source MCP Gateway](/manuals/ai/mcp-gateway/_index.md)
2 changes: 1 addition & 1 deletion content/manuals/ai/mcp-catalog-and-toolkit/hub-mcp.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ title: Docker Hub MCP server
linkTitle: Hub MCP server
description: The Docker Hub MCP Server makes Docker Hub image metadata accessible to LLMs for content discovery.
keywords: Docker Hub MCP Server, Hub MCP server, Hub MCP
weight: 30
weight: 40
---

The Docker Hub MCP Server is a Model Context Protocol (MCP) server that
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
54 changes: 10 additions & 44 deletions content/manuals/ai/mcp-catalog-and-toolkit/toolkit.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ title: Docker MCP Toolkit
linkTitle: MCP Toolkit
description: Use the MCP Toolkit to set up MCP servers and MCP clients.
keywords: Docker MCP Toolkit, MCP server, MCP client, AI agents
weight: 20
weight: 30
aliases:
- /desktop/features/gordon/mcp/gordon-mcp-server/
- /ai/gordon/mcp/gordon-mcp-server/
Expand Down Expand Up @@ -59,6 +59,10 @@ container as the server or in dedicated containers:
{{< /tab >}}
{{</tabs >}}

>[!NOTE]
>
> The Docker MCP Toolkit was originally released as an extension. This extension is now deprecated and should be uninstalled.

## Security

The Docker MCP Toolkit combines passive and active measures to reduce attack
Expand Down Expand Up @@ -87,42 +91,11 @@ Security at runtime is enforced through resource and access limitations:
- Interception of tool requests: Requests to and from tools that contain sensitive
information such as secrets are blocked.

## Enable Docker MCP Toolkit

1. Open the Docker Desktop settings and select **Beta features**.
2. Select **Enable Docker MCP Toolkit**.
3. Select **Apply**.

>[!NOTE]
>
> This feature started as the MCP Toolkit _extension_. This extension is now deprecated
>and should be uninstalled.

## Install an MCP server

To install an MCP server:

1. In Docker Desktop, select **MCP Toolkit** and select the **Catalog** tab.
When you select a server you can see the following
information:

- Tool name and description
- Partner/publisher
- The list of callable tools the server provides.

2. Find the MCP server of your choice and select the **Plus** icon.
3. Optional: Some servers require extra configuration. To configure them, select
the **Config** tab and follow the instructions available on the repository of the provider of the MCP server.

> [!TIP]
> By default, the Gordon [client](#install-an-mcp-client) is enabled,
> which means Gordon can automatically interact with your MCP servers.

To learn more about the MCP server catalog, see [Catalog](catalog.md).

### Example: Use the **GitHub Official** MCP server

Imagine you want to enable Ask Gordon to interact with your GitHub account:
Imagine you want to enable [Ask Gordon](/manuals/ai/gordon/_index.md) to interact with your GitHub account:

1. From the **MCP Toolkit** menu, select the **Catalog** tab and find
the **GitHub Official** server and add it.
Expand All @@ -137,17 +110,10 @@ Imagine you want to enable Ask Gordon to interact with your GitHub account:

Make sure to allow Gordon to interact with GitHub by selecting **Always allow** in Gordon's answer.

## Install an MCP client

When you have installed MCP servers, you can add clients to the MCP Toolkit. These clients
can interact with the installed MCP servers, turning the MCP Toolkit into a gateway.

To install a client:

1. In Docker Desktop, select **MCP Toolkit** and select the **Clients** tab.
1. Find the client of your choice and select **Connect**.
> [!TIP]
> By default, the Gordon client is enabled,
> which means Gordon can automatically interact with your MCP servers.

Your client can now interact with the MCP Toolkit.

### Example: Use Claude Desktop as a client

Expand Down Expand Up @@ -236,7 +202,7 @@ OAuth integration. For now, the MCP Toolkit only supports GitHub OAuth.
1. In the GitHub entry, select **Authorize**. Your browser opens the GitHub authorization page.
1. In the GitHub authorization page, select **Authorize Docker**. Once the authorization
is successful, you are automatically redirected to Docker Desktop.
1. Install the **GitHub Official** MCP server, see [Install an MCP server](#install-an-mcp-server).
1. Install the **GitHub Official** MCP server, see [Install an MCP server](/manuals/ai/mcp-catalog-and-toolkit/get-started.md#install-an-mcp-server).

The MCP Toolkit now has access to your GitHub account. To revoke access, select **Revoke** in the **OAuth** tab.
See an example in [Use the **GitHub Official** MCP server](#example-use-the-github-official-mcp-server).
Expand Down