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.
MCP client ID
MCP client configuration for updating an existing client (includes tool_pricing)
Unique identifier for the MCP client
Display name for the MCP client
Whether this client is available in code mode
Connection type for MCP client
http, stdio, sse, inprocess HTTP or SSE URL (required for HTTP or SSE connections)
STDIO configuration for MCP client
Authentication type for the MCP connection
none, headers, oauth OAuth config ID for OAuth authentication. References the oauth_configs table. Only relevant when auth_type is "oauth".
Custom headers to include in requests. Only used when auth_type is "headers".
Include-only list for tools. ["*"] => all tools are included [] => no tools are included ["tool1", "tool2"] => include only the specified tools
List of tools that can be auto-executed without user approval. Must be a subset of tools_to_execute. ["*"] => all executable tools can be auto-executed [] => no tools are auto-executed ["tool1", "tool2"] => only specified tools can be auto-executed
Per-tool cost in USD for execution. 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.
When true, this MCP client's tools are accessible to all virtual keys without requiring explicit per-key assignment. All tools are allowed by default. If a virtual key has an explicit MCP config for this client, that config takes precedence and overrides this behaviour.
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.