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
13 changes: 10 additions & 3 deletions content/manuals/ai/mcp-catalog-and-toolkit/catalog.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,9 +67,16 @@ Local servers offer predictable performance, complete data privacy, and independ

### Remote MCP servers

Remote MCP servers are hosted services that you connect to through the internet. Service providers maintain and update these servers, ensuring access to current features and live data without requiring local updates or maintenance. Remote servers display a cloud icon {{< inline-image src="../../offload/images/cloud-mode.png" alt="cloud icon" >}} to indicate their hosted nature and external connectivity requirements.

Remote servers excel when you need always-current data, want to minimize local resource usage, or require capabilities that benefit from provider-managed infrastructure and scaling.
Remote MCP servers are hosted services that run on the provider's
infrastructure and connect to external services like GitHub, Notion, and
Linear. Many remote servers use OAuth authentication. When a remote server
requires OAuth, the MCP Toolkit handles authentication automatically - you
authorize access through your browser, and the Toolkit manages credentials
securely. You don't need to manually create API tokens or configure
authentication.

Remote servers display a cloud icon in the catalog. For setup instructions, see
[MCP Toolkit](toolkit.md#oauth-authentication).

## Use an MCP server from the catalog

Expand Down
14 changes: 14 additions & 0 deletions content/manuals/ai/mcp-catalog-and-toolkit/faqs.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,20 @@ In the upcoming versions of Docker Desktop, Docker plans to support pluggable st

No. MCP servers are not technically uninstalled since they exist as Docker containers pulled to your local Docker Desktop. Removing an MCP server stops the container but leaves the image on your system. Even if the container is deleted, credentials remain stored until you remove them manually.

### Why don't I see remote MCP servers in the catalog?

If remote MCP servers aren't visible in the Docker Desktop catalog, your local
catalog may be out of date. Remote servers are indicated by a cloud icon and
include services like GitHub, Notion, and Linear.

Update your catalog by running:

```console
$ docker mcp catalog update
```

After the update completes, refresh the **Catalog** tab in Docker Desktop.

## Related pages

- [Get started with MCP Toolkit](/manuals/ai/mcp-catalog-and-toolkit/get-started.md)
Expand Down
63 changes: 54 additions & 9 deletions content/manuals/ai/mcp-catalog-and-toolkit/toolkit.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,15 +82,60 @@ are invoked, enforced through resource and access limitations.

### OAuth authentication

Some MCP servers require authentication to access external services. The MCP
Toolkit handles OAuth flows for supported services, currently limited to
GitHub. When you authorize the MCP Toolkit to access your GitHub account, any
installed MCP server that needs GitHub access can use those credentials without
requiring separate authentication.
Some MCP servers require authentication to access external services like
GitHub, Notion, and Linear. The MCP Toolkit handles OAuth authentication
automatically. You authorize access through your browser, and the Toolkit
manages credentials securely. You don't need to manually create API tokens or
configure authentication for each service.

To set up OAuth for a service, use the **OAuth** tab in the MCP Toolkit section
in Docker Desktop. Once authorized, the credentials are available to any MCP
server that needs them. You can revoke access at any time from the same tab.
#### Authorize a server with OAuth

{{< tabs >}}
{{< tab name="Docker Desktop">}}

1. In Docker Desktop, go to **MCP Toolkit** and select the **Catalog** tab.
2. Find and add an MCP server that requires OAuth.
3. In the server's **Configuration** tab, select the **OAuth** authentication
method. Follow the link to begin the OAuth authorization.
4. Your browser opens the authorization page for the service. Follow the
on-screen instructions to complete authentication.
5. Return to Docker Desktop when authentication is complete.

View all authorized services in the **OAuth** tab. To revoke access, select
**Revoke** next to the service you want to disconnect.

{{< /tab >}}
{{< tab name="CLI">}}

Enable an MCP server:

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

If the server requires OAuth, authorize the connection:

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

Your browser opens the authorization page. Complete the authentication process,
then return to your terminal.

View authorized services:

```console
$ docker mcp oauth ls
```

Revoke access to a service:

```console
$ docker mcp oauth revoke github
```

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

## Usage examples

Expand All @@ -102,7 +147,7 @@ interact with your GitHub account:

1. From the **MCP Toolkit** menu in Docker Desktop, select the **Catalog** tab
and find the **GitHub Official** server and add it.
2. In the server's **Config** tab, authenticate via OAuth.
2. In the server's **Configuration** tab, authenticate via OAuth.
3. In the **Clients** tab, ensure Gordon is connected.
4. From the **Ask Gordon** menu, you can now send requests related to your
GitHub account, in accordance to the tools provided by the GitHub Official
Expand Down