Skip to content

Commit 6a995e8

Browse files
authored
Minor improvements and fixes for UI docs (#212)
* Fix up order of steps, move examples to a partial * Polish the thv list explanation * Update note about network isolation support --------- Signed-off-by: Dan Barr <[email protected]> Co-authored-by: Dan Barr <[email protected]>
1 parent 581f83b commit 6a995e8

File tree

4 files changed

+168
-160
lines changed

4 files changed

+168
-160
lines changed
Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
#### Remote MCP server with dynamic client registration
2+
3+
Dynamic client registration is the preferred approach for any MCP server that
4+
supports it, as ToolHive handles all authentication setup automatically with
5+
minimal configuration required. Notion's remote MCP server is one example that
6+
supports this feature:
7+
8+
1. Configuration settings:
9+
- **Server name**: `notion-remote`
10+
- **Server URL**: `https://mcp.notion.com/mcp`
11+
- **Transport**: Streamable HTTP
12+
- **Authorization method**: Dynamic Client Registration
13+
- **Callback port**: `45673` (or any available port on your system)
14+
1. When you install the server, ToolHive discovers the OAuth endpoints,
15+
registers a new client, and handles the authentication process.
16+
1. Your browser opens for authentication. After you authorize access, the remote
17+
MCP server appears in your server list with a "Running" status.
18+
19+
#### Remote MCP server with OAuth2 authentication
20+
21+
GitHub's remote MCP server requires manual OAuth configuration. You'll need to
22+
create a GitHub OAuth app and provide the details in ToolHive.
23+
24+
First, create a GitHub OAuth app:
25+
26+
1. Go to [GitHub Developer Settings](https://github.com/settings/developers)
27+
1. Click **New OAuth App**
28+
1. Fill in the application details:
29+
- **Application name**: Choose a descriptive name (e.g., "ToolHive GitHub
30+
MCP")
31+
- **Homepage URL**: Your application's homepage or `http://localhost`
32+
- **Authorization callback URL**: `http://localhost:45673/callback` (the port
33+
number must match the **Callback port** you will enter in ToolHive)
34+
1. Click **Register application**
35+
1. Copy the **Client ID** and generate a **Client secret** for use in ToolHive
36+
37+
Configure the remote MCP server in ToolHive:
38+
39+
1. Configuration settings:
40+
- **Server name**: `github-remote`
41+
- **Server URL**: `https://api.githubcopilot.com/mcp/`
42+
- **Transport**: Streamable HTTP
43+
- **Authorization method**: OAuth 2.0
44+
- **Callback port**: `45673` (or any available port on your system)
45+
- **Authorize URL**: `https://github.com/login/oauth/authorize`
46+
- **Token URL**: `https://github.com/login/oauth/access_token`
47+
- **Client ID**: Your GitHub OAuth app client ID (e.g.,
48+
`Og44jirLIaUgSiTDNGA3`)
49+
- **Client secret**: Your GitHub OAuth app client secret (optional if PKCE is
50+
enabled)
51+
- **Scopes**: `repo,user:email` (comma-separated list of required
52+
permissions)
53+
- **PKCE**: Enable this option for enhanced security without requiring a
54+
client secret
55+
1. When you install the server, ToolHive opens your browser to authenticate with
56+
GitHub and authorize the application.
57+
1. After you authenticate successfully, the remote MCP server appears in your
58+
server list with a "Running" status.
59+
60+
#### Remote MCP server with OIDC authentication
61+
62+
GitHub's remote MCP server also supports OIDC authentication, which provides
63+
additional security features and standardized token handling. Use the same
64+
GitHub OAuth app from the previous example.
65+
66+
1. Fill in the configuration form:
67+
- **Server name**: `github-remote`
68+
- **Server URL**: `https://api.githubcopilot.com/mcp/`
69+
- **Transport**: Streamable HTTP
70+
- **Authorization method**: OIDC
71+
- **Callback port**: `45673` (or any available port on your system)
72+
- **Issuer URL**: `https://github.com/login/oauth`
73+
- **Client ID**: Your GitHub OAuth app client ID (e.g.,
74+
`Og44jirLIaUgSiTDNGA3`)
75+
- **Client secret**: Your GitHub OAuth app client secret (optional if PKCE is
76+
enabled)
77+
- **PKCE**: Enable this option for enhanced security without requiring a
78+
client secret
79+
1. When you install the server, ToolHive opens your browser to authenticate with
80+
GitHub using OIDC.
81+
1. After you authenticate successfully, the remote MCP server appears in your
82+
server list with a "Running" status.

docs/toolhive/guides-cli/manage-mcp-servers.md

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,9 @@ To see all currently running MCP servers:
1717
thv list
1818
```
1919

20-
This shows the server name, package, status, url, port, tool type, group, and
21-
created at. Remote servers display their target URL in the URL column. The word
22-
'remote' is indicated in both the package and tool type columns, making it easy
23-
to identify remote servers.
20+
This shows details about each running server, including its name, package
21+
(container image), status, URL for connecting clients, group, and when it was
22+
created.
2423

2524
To include stopped servers in the list:
2625

docs/toolhive/guides-ui/network-isolation.mdx

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,9 @@ protocols are not supported.
2424

2525
## Enabling network isolation
2626

27-
Currently, network isolation is available for MCP servers installed from the
28-
ToolHive registry.
27+
Network isolation is available for local MCP servers installed from the registry
28+
or custom servers. It is not available for remote MCP servers, which are hosted
29+
and outside of ToolHive.
2930

3031
During the MCP server installation, select the **Network isolation** tab in the
3132
configuration form. Click the toggle to enable it.

0 commit comments

Comments
 (0)