Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
335 changes: 322 additions & 13 deletions docs/openapi/openapi.json

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions docs/openapi/paths/management/mcp.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -120,6 +120,7 @@ client-by-id:
description: |
Updates an existing MCP client's configuration.
Unlike client creation, tool_pricing can be included to set per-tool execution costs since tools are already fetched.
Optionally provide vk_configs to manage which virtual keys have access to this MCP server and with which tools. When provided, this fully replaces all existing VK assignments in a single atomic transaction.
tags:
- MCP
parameters:
Expand Down
53 changes: 52 additions & 1 deletion docs/openapi/schemas/management/mcp.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,6 @@ MCPClientCreateRequestBase:
["*"] => all executable tools can be auto-executed
[] => no tools are auto-executed
["tool1", "tool2"] => only specified tools can be auto-executed

MCPClientCreateRequestHTTP:
allOf:
- $ref: '#/MCPClientCreateRequestBase'
Expand Down Expand Up @@ -228,6 +227,34 @@ MCPClientUpdateRequest:
Key is the tool name, value is the cost per execution.
Example: {"read_file": 0.001, "write_file": 0.002}
Note: Only available when updating an existing client after tools have been fetched.
vk_configs:
type: array
items:
$ref: '#/MCPVKConfig'
description: |
When provided, replaces all virtual key assignments for this MCP client.
Each entry specifies a virtual key and the tools it is allowed to call.
To remove all VK access, provide an empty array [].
Omit this field to leave existing VK assignments unchanged.

MCPVKConfig:
type: object
description: Per-virtual-key tool access configuration for an MCP client
required:
- virtual_key_id
- tools_to_execute
properties:
virtual_key_id:
type: string
description: ID of the virtual key
tools_to_execute:
type: array
items:
type: string
description: |
Tools this virtual key is allowed to call on this MCP server.
["*"] => all tools allowed
["tool1", "tool2"] => only the specified tools

Comment thread
Pratham-Mishra04 marked this conversation as resolved.
MCPClientConfig:
type: object
Expand Down Expand Up @@ -308,6 +335,25 @@ ChatToolFunction:
strict:
type: boolean

MCPVKConfigResponse:
type: object
description: Per-virtual-key tool access configuration as returned in list/get responses
properties:
virtual_key_id:
type: string
description: ID of the virtual key
virtual_key_name:
type: string
description: Display name of the virtual key
tools_to_execute:
type: array
items:
type: string
description: |
Tools this virtual key is allowed to call on this MCP client.
["*"] => all tools allowed
["tool1", "tool2"] => only the specified tools

MCPClient:
type: object
description: Connected MCP client with its tools
Expand All @@ -320,6 +366,11 @@ MCPClient:
$ref: '#/ChatToolFunction'
state:
$ref: '#/MCPConnectionState'
vk_configs:
type: array
items:
$ref: '#/MCPVKConfigResponse'
description: Virtual key assignments for this MCP client

ExecuteToolRequest:
oneOf:
Expand Down
Loading
Loading