Skip to content

Commit 501ec88

Browse files
Update ToolHive reference docs for v0.2.15 (#150)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
1 parent c0eebb3 commit 501ec88

File tree

5 files changed

+37
-2
lines changed

5 files changed

+37
-2
lines changed

docs/toolhive/reference/cli/thv_client_register.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ Valid clients:
2626
- claude-code: Claude Code CLI
2727
- cline: Cline extension for VS Code
2828
- cursor: Cursor editor
29+
- lm-studio: LM Studio application
2930
- roo-code: Roo Code extension for VS Code
3031
- vscode: Visual Studio Code
3132
- vscode-insider: Visual Studio Code Insiders edition

docs/toolhive/reference/cli/thv_client_remove.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ Valid clients:
2626
- claude-code: Claude Code CLI
2727
- cline: Cline extension for VS Code
2828
- cursor: Cursor editor
29+
- lm-studio: LM Studio application
2930
- roo-code: Roo Code extension for VS Code
3031
- vscode: Visual Studio Code
3132
- vscode-insider: Visual Studio Code Insiders edition

docs/toolhive/reference/cli/thv_proxy.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ This command starts a standalone proxy without creating a workload, providing:
2424
- Automatic authentication detection via WWW-Authenticate headers
2525
- OIDC-based access control for incoming proxy requests
2626
- Secure credential handling via files or environment variables
27+
- Dynamic client registration (RFC 7591) for automatic OAuth client setup
2728

2829
#### Authentication modes
2930

@@ -42,6 +43,15 @@ OAuth client secrets can be provided via (in order of precedence):
4243
2. --remote-auth-client-secret-file flag (secure file-based approach)
4344
3. TOOLHIVE_REMOTE_OAUTH_CLIENT_SECRET environment variable
4445

46+
#### Dynamic client registration
47+
48+
When no client credentials are provided, the proxy automatically registers an OAuth client
49+
with the authorization server using RFC 7591 dynamic client registration:
50+
51+
- No need to pre-configure client ID and secret
52+
- Automatically discovers registration endpoint via OIDC
53+
- Supports PKCE flow for enhanced security
54+
4555
#### Examples
4656

4757
Basic transparent proxy:
@@ -75,6 +85,11 @@ Auto-detect authentication requirements:
7585
thv proxy my-server --target-uri https://protected-api.com \
7686
--remote-auth-client-id my-client-id
7787

88+
Dynamic client registration (automatic OAuth client setup):
89+
90+
thv proxy my-server --target-uri https://protected-api.com \
91+
--remote-auth --remote-auth-issuer https://auth.example.com
92+
7893
```
7994
thv proxy [flags] SERVER_NAME
8095
```

docs/toolhive/reference/cli/thv_run.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,15 @@ ToolHive supports five ways to run an MCP server:
5858
This allows remote MCP servers to be managed like local workloads with full
5959
support for client configuration, tool filtering, import/export, etc.
6060

61+
#### Dynamic client registration
62+
63+
When no client credentials are provided, ToolHive automatically registers an OAuth client
64+
with the authorization server using RFC 7591 dynamic client registration:
65+
66+
- No need to pre-configure client ID and secret
67+
- Automatically discovers registration endpoint via OIDC
68+
- Supports PKCE flow for enhanced security
69+
6170
The container will be started with the specified transport mode and
6271
permission profile. Additional configuration can be provided via flags.
6372

static/api-specs/toolhive-api.yaml

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,7 @@ components:
123123
- AmpCursor
124124
- AmpVSCodeInsider
125125
- AmpWindsurf
126+
- LMStudio
126127
client.MCPClientStatus:
127128
properties:
128129
client_type:
@@ -142,6 +143,7 @@ components:
142143
- AmpCursor
143144
- AmpVSCodeInsider
144145
- AmpWindsurf
146+
- LMStudio
145147
installed:
146148
description: Installed indicates whether the client is installed on the
147149
system
@@ -634,8 +636,6 @@ components:
634636
type: string
635637
clientSecretFile:
636638
type: string
637-
enableRemoteAuth:
638-
type: boolean
639639
envVars:
640640
description: Environment variables for the client
641641
items:
@@ -967,6 +967,7 @@ components:
967967
- AmpCursor
968968
- AmpVSCodeInsider
969969
- AmpWindsurf
970+
- LMStudio
970971
type: array
971972
uniqueItems: false
972973
type: object
@@ -1015,6 +1016,7 @@ components:
10151016
- AmpCursor
10161017
- AmpVSCodeInsider
10171018
- AmpWindsurf
1019+
- LMStudio
10181020
type: object
10191021
v1.createClientResponse:
10201022
properties:
@@ -1041,6 +1043,7 @@ components:
10411043
- AmpCursor
10421044
- AmpVSCodeInsider
10431045
- AmpWindsurf
1046+
- LMStudio
10441047
type: object
10451048
v1.createGroupRequest:
10461049
properties:
@@ -1071,6 +1074,9 @@ components:
10711074
type: string
10721075
description: Environment variables to set in the container
10731076
type: object
1077+
group:
1078+
description: Group name this workload belongs to
1079+
type: string
10741080
host:
10751081
description: Host to bind to
10761082
type: string
@@ -1355,6 +1361,9 @@ components:
13551361
type: string
13561362
description: Environment variables to set in the container
13571363
type: object
1364+
group:
1365+
description: Group name this workload belongs to
1366+
type: string
13581367
host:
13591368
description: Host to bind to
13601369
type: string

0 commit comments

Comments
 (0)