-
Notifications
You must be signed in to change notification settings - Fork 2
Document groups in the UI #228
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
+189
−4
Merged
Changes from 9 commits
Commits
Show all changes
11 commits
Select commit
Hold shift + click to select a range
d4da525
document groups in the UI
kantord ab374ea
wording fixes
kantord 1c0f2cc
make it more similar to cli
kantord 4deb24e
improve wording
kantord 7597903
.
kantord 363f5ec
fixes
kantord ceaefb4
fixes
kantord 227ecc0
Merge branch 'main' into document-groups-in-ui
kantord 63a7418
.
kantord 89d24b3
Merge branch 'main' into document-groups-in-ui
danbarr 270c477
Update page title to match CLI guide
danbarr File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Some comments aren't visible on the classic Files Changed page.
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,148 @@ | ||
--- | ||
title: Organize servers with groups | ||
description: | ||
How to organize MCP servers into groups and configure client access in the | ||
ToolHive UI. | ||
--- | ||
|
||
This guide explains how to organize your MCP servers into groups and configure | ||
which groups your MCP clients can access. Groups help you organize servers by | ||
project, environment, or team, and control which tools are available to | ||
different clients. | ||
|
||
## Why use groups? | ||
|
||
Groups let you organize MCP servers and control client access: | ||
|
||
- **Project isolation**: Keep development and production servers separate | ||
- **Environment management**: Organize servers by development stage | ||
- **Client customization**: Configure different tool sets for different clients | ||
|
||
:::info[What's the default behavior?] | ||
|
||
The `default` group always exists and cannot be deleted. When you add an MCP | ||
server, the `default` group is preselected in the group field unless you choose | ||
a different group. | ||
|
||
::: | ||
|
||
## View and navigate groups | ||
|
||
The **MCP Servers** page includes a sidebar on the left that lists all your | ||
groups. The active group is highlighted. | ||
|
||
To view servers in a different group, click on the group name in the sidebar. | ||
The **MCP Servers** page updates to show only the servers in that group. | ||
|
||
## Create a group | ||
|
||
To create a new group: | ||
|
||
1. Open the **MCP Servers** page. | ||
2. Click **Add a group** in the sidebar. | ||
3. Enter a unique name for the group. | ||
4. Click **Create**. | ||
|
||
:::note | ||
|
||
Group names must be unique. If you try to create a group with a name that | ||
already exists, you'll see an error message. | ||
|
||
::: | ||
|
||
## Assign servers to groups | ||
|
||
When you install or configure an MCP server, you assign it to a group. All | ||
server types (registry, custom local, and remote) include a **Group** field in | ||
their configuration forms. | ||
|
||
### Assign a server during installation | ||
|
||
When installing a new MCP server from the registry or adding a custom server: | ||
|
||
1. Fill in the server configuration. | ||
2. In the **Group** field, select the group where you want to add the server. | ||
3. Click **Install server**. | ||
|
||
### Copy a server to a different group | ||
|
||
You can copy a server to a different group: | ||
|
||
1. On the **MCP Servers** page, find the server you want to copy. | ||
2. Click the menu (︙) on the server card. | ||
3. Select **Copy server to a group**. | ||
4. Choose the destination group. | ||
5. Click **Copy**. | ||
|
||
This creates a complete copy of the server in the destination group, preserving | ||
all configuration including secrets, environment variables, and storage volumes. | ||
The original server remains in its current group. | ||
|
||
## Manage client access per group | ||
|
||
You can control which AI clients have access to servers in each group. This lets | ||
you configure different tool sets for different clients or environments. | ||
|
||
To manage client access for a group: | ||
|
||
1. Navigate to the group by clicking its name in the sidebar. | ||
2. Click **Manage Clients**. | ||
3. Toggle the switches to enable or disable clients for this group. | ||
4. Click **Save**. | ||
|
||
When you enable a client for a group, ToolHive registers that client to access | ||
all servers in the group. When you disable a client for a group, ToolHive | ||
unregisters the client from that group. | ||
|
||
:::tip | ||
|
||
You can enable the same client for multiple groups. The client will have access | ||
to servers from all groups where it's enabled. | ||
|
||
::: | ||
|
||
## Delete a group | ||
|
||
To delete a group: | ||
|
||
1. Navigate to the group by clicking its name in the sidebar. | ||
2. Click the group actions menu (⋮) in the header. | ||
3. Select **Delete group**. | ||
4. Confirm the deletion in the dialog. | ||
|
||
:::warning | ||
|
||
Deleting a group permanently removes all servers in that group. This action | ||
cannot be undone. If you want to preserve the servers, copy them to another | ||
group before deleting. | ||
|
||
::: | ||
|
||
You cannot delete the `default` group. | ||
|
||
## Example workflows | ||
|
||
### Separate development and production servers | ||
|
||
1. Create two groups: "development" and "production". | ||
2. Install your MCP servers, assigning development tools to the "development" | ||
group and production tools to the "production" group. | ||
3. Configure your primary AI client (like GitHub Copilot) to access only the | ||
"development" group for day-to-day coding work. | ||
4. Use a different client or manually configure clients to access the | ||
"production" group when needed. | ||
|
||
### Project-based organization | ||
|
||
1. Create groups for each project: "webapp-frontend", "webapp-backend", and | ||
"mobile-app". | ||
2. Install project-specific MCP servers in each group (for example, React tools | ||
in "webapp-frontend", database tools in "webapp-backend"). | ||
3. Configure different AI clients or workspaces to access the appropriate groups | ||
for each project. | ||
|
||
## Related information | ||
|
||
- [Run MCP servers](./run-mcp-servers.mdx) | ||
- [Client configuration](./client-configuration.mdx) | ||
- [Secrets management](./secrets-management.md) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.