---
title: "Register a new client"
method: POST
path: "/api/v1beta/clients"
tags: ["clients"]
---

# Register a new client

`POST /api/v1beta/clients`

Register a new client with ToolHive

## Request body

- union
  - object
  - PkgApiV1CreateClientRequest
    - `groups` string[] — Groups is the list of groups configured on the client.
    - `name` 'roo-code' | 'cline' | 'cursor' | 'vscode-insider' | 'vscode' | 'claude-code' | 'windsurf' | 'windsurf-jetbrains' | 'amp-cli' | 'lm-studio' | 'goose' | 'trae' | 'continue' | 'opencode' | 'kiro' | 'antigravity' | 'zed' | 'gemini-cli' | 'vscode-server' | 'mistral-vibe' | 'codex' | 'kimi-cli' | 'factory' | 'copilot-cli' | 'qoder' — ClientType is the type of MCP client

## Response `200`

OK

- PkgApiV1CreateClientResponse
  - `groups` string[] — Groups is the list of groups configured on the client.
  - `name` 'roo-code' | 'cline' | 'cursor' | 'vscode-insider' | 'vscode' | 'claude-code' | 'windsurf' | 'windsurf-jetbrains' | 'amp-cli' | 'lm-studio' | 'goose' | 'trae' | 'continue' | 'opencode' | 'kiro' | 'antigravity' | 'zed' | 'gemini-cli' | 'vscode-server' | 'mistral-vibe' | 'codex' | 'kimi-cli' | 'factory' | 'copilot-cli' | 'qoder' — ClientType is the type of MCP client

## Other responses

- `400` — Invalid request or unsupported client type

---

[API](https://skmtc.dev/stacklok/apis/toolhive-api.md) · [All operations](https://skmtc.dev/stacklok/apis/toolhive-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/stacklok/toolhive-api/revisions/e9f942effcda/schema)
