Skip to content

[Story] Support groups in the registry #860

@eleftherias

Description

@eleftherias

Story Title

Show groups that are part of the registry and allow users to run the group

Description

User Story

As a user
I want to see the groups that are part of the registry
So that I can pick a group that's appropriate for my task

As a user
I want to run a group from the registry
So that I can quickly set up all the MCP servers I need for my task

Acceptance Criteria

Success path

Viewing

  • Given a group named dev exists in the registry, when I view the registry, then I see the group dev in the list with its description and a tag showing that it's a group
  • Given a group named dev exists in the registry, when I click on dev, then I see the group description, the MCP servers that are part of the group, and I have the option to create the group

Running

  • Given a group named dev exists in the registry, when I run the group dev, then a new group named dev is created
  • Given a group named dev exists in the registry and has an MCP server named fetch, when I run the group dev, then the fetch MCP server is created
  • Given a group named dev exists in the registry and has an MCP server named fetch and fetch has an environment variable name TOKEN, when I run the group dev, then I have the option to set the environment variable name TOKEN for fetch
  • same as above for secrets, storage volumes, network isolation and all other workload configuration options

Failure path

  • Given a group named dev exists in the registry, and I have an existing group in my ToolHive instance with the name dev, when I run the group dev, then I get an error saying the group already exists AND no group or MCP servers are created
  • Given a group named dev exists in the registry and has an MCP server named fetch and I have an existing MCP server named fetch in my ToolHive instance, when I run the group dev, then I get an error saying the MCP server fetch already exists

Target Release

none

Priority

High

Additional Context

The API will return groups in the following format. Servers and remote servers will follow the usual format that already exists in the registry:

  "groups": [
    {
      "name": "Mobile App Team Toolkit",
      "description": "MCP servers for the mobile app development team's workflows",
      "servers": [
        /* server entries following same format as top-level servers */
      ],
      "remote_servers": [
        /* remote server entries following same format as top-level remote_servers */
      ]
    }
  ]

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions