Skip to main content

GET /api/groups

Get a list of all groups.

POST /api/groups

Create a new group.

GET /api/groups/:id

Get details of a specific group.

PUT /api/groups/:id

Update an existing group.

DELETE /api/groups/:id

Delete a group.

POST /api/groups/:id/servers

Add a server to a group.

DELETE /api/groups/:id/servers/:serverName

Remove a server from a group.

PUT /api/groups/:id/servers/batch

Batch update servers in a group.

GET /api/groups/:id/server-configs

Get detailed server configurations in a group.

PUT /api/groups/:id/server-configs/:serverName/tools

Update tool selection for a server in a group.

Get All Groups

Retrieves a list of all server groups.
  • Endpoint: /api/groups
  • Method: GET
  • Success Response:

Create a New Group

Creates a new server group.
  • Endpoint: /api/groups
  • Method: POST
  • Body:
    • name (string, required): The name of the group.
    • description (string, optional): A description for the group.
    • servers (array, optional): A list of server names or capability-scoped server configuration objects.
  • Request Example:

Get a Group

Retrieves details for a specific group by its ID or name.
  • Endpoint: /api/groups/:id
  • Method: GET
  • Parameters:
    • :id (string, required): The ID or name of the group.

Update a Group

Updates an existing group’s name, description, or server list.
  • Endpoint: /api/groups/:id
  • Method: PUT
  • Parameters:
    • :id (string, required): The ID or name of the group to update.
  • Body:
    • name (string, optional): The new name for the group.
    • description (string, optional): The new description for the group.
    • servers (array, optional): The new list of servers for the group. See Batch Update Group Servers for format.
  • Request Example:

Delete a Group

Deletes a group by its ID or name.
  • Endpoint: /api/groups/:id
  • Method: DELETE
  • Parameters:
    • :id (string, required): The ID or name of the group to delete.

Add Server to Group

Adds a single server to a group.
  • Endpoint: /api/groups/:id/servers
  • Method: POST
  • Parameters:
    • :id (string, required): The ID or name of the group.
  • Body:
    • serverName (string, required): The name of the server to add.
  • Request Example:

Remove Server from Group

Removes a single server from a group.
  • Endpoint: /api/groups/:id/servers/:serverName
  • Method: DELETE
  • Parameters:
    • :id (string, required): The ID or name of the group.
    • :serverName (string, required): The name of the server to remove.

Batch Update Group Servers

Replaces all servers in a group with a new list. The list can be simple strings or detailed configuration objects.
  • Endpoint: /api/groups/:id/servers/batch
  • Method: PUT
  • Parameters:
    • :id (string, required): The ID or name of the group.
  • Body:
    • servers (array, required): An array of server names (strings) or server configuration objects.
  • Request Example (Simple):
  • Request Example (Detailed):
Each detailed server object accepts these optional capability selectors:
  • tools: "all" or an array of tool names.
  • prompts: "all" or an array of prompt names.
  • resources: "all" or an array of resource URIs.

Get Group Server Configs

Retrieves the detailed configuration for all servers within a group, including which tools, prompts, and resources are enabled.
  • Endpoint: /api/groups/:id/server-configs
  • Method: GET
  • Parameters:
    • :id (string, required): The ID or name of the group.
  • Success Response:

Update Group Server Tools

Updates the tool selection for a specific server within a group.
  • Endpoint: /api/groups/:id/server-configs/:serverName/tools
  • Method: PUT
  • Parameters:
    • :id (string, required): The ID or name of the group.
    • :serverName (string, required): The name of the server to update.
  • Body:
    • tools (string or array of strings, required): Either the string "all" to enable all tools, or an array of tool names to enable specifically.
  • Request Example: