diff --git a/content/manuals/ai/mcp-catalog-and-toolkit/_index.md b/content/manuals/ai/mcp-catalog-and-toolkit/_index.md index c1ea01b0ce59..2e24d223bbbd 100644 --- a/content/manuals/ai/mcp-catalog-and-toolkit/_index.md +++ b/content/manuals/ai/mcp-catalog-and-toolkit/_index.md @@ -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 @@ -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. @@ -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 diff --git a/content/manuals/ai/mcp-catalog-and-toolkit/catalog.md b/content/manuals/ai/mcp-catalog-and-toolkit/catalog.md index da10ceb7348b..4b552e7b04b3 100644 --- a/content/manuals/ai/mcp-catalog-and-toolkit/catalog.md +++ b/content/manuals/ai/mcp-catalog-and-toolkit/catalog.md @@ -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" >}} diff --git a/content/manuals/ai/mcp-catalog-and-toolkit/get-started.md b/content/manuals/ai/mcp-catalog-and-toolkit/get-started.md new file mode 100644 index 000000000000..a070dce55e34 --- /dev/null +++ b/content/manuals/ai/mcp-catalog-and-toolkit/get-started.md @@ -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. + +## 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. + +{{< 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: + + ```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) diff --git a/content/manuals/ai/mcp-catalog-and-toolkit/hub-mcp.md b/content/manuals/ai/mcp-catalog-and-toolkit/hub-mcp.md index d4efe0933cba..f0ae3cc4ee9a 100644 --- a/content/manuals/ai/mcp-catalog-and-toolkit/hub-mcp.md +++ b/content/manuals/ai/mcp-catalog-and-toolkit/hub-mcp.md @@ -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 diff --git a/content/manuals/ai/mcp-catalog-and-toolkit/images/claude-desktop-example.png b/content/manuals/ai/mcp-catalog-and-toolkit/images/claude-desktop-example.png new file mode 100644 index 000000000000..a68521dee857 Binary files /dev/null and b/content/manuals/ai/mcp-catalog-and-toolkit/images/claude-desktop-example.png differ diff --git a/content/manuals/ai/mcp-catalog-and-toolkit/toolkit.md b/content/manuals/ai/mcp-catalog-and-toolkit/toolkit.md index d2cb17786f67..22d8f48595d7 100644 --- a/content/manuals/ai/mcp-catalog-and-toolkit/toolkit.md +++ b/content/manuals/ai/mcp-catalog-and-toolkit/toolkit.md @@ -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/ @@ -59,6 +59,10 @@ container as the server or in dedicated containers: {{< /tab >}} {{}} +>[!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 @@ -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. @@ -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 @@ -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).