Skip to main content
PATCH
/
api
/
mcp-servers
/
{mcpServerId}
curl -X PATCH "https://api.zudu.ai/api/mcp-servers/mcp_abc123def456" \
  -H "X-API-KEY: sk_Abc123Def456..." \
  -H "X-API-SECRET: s3cr3t_Xyz789..." \
  -d '{
    "config": {
      "name": "Updated Server Name",
      "description": "Updated description",
      "transport": "STREAMABLE_HTTP",
      "approval_policy": "require_approval_all",
      "request_headers": {
        "Authorization": "Bearer new_token"
      }
  }'
{
  "message": "MCP server updated successfully",
  "status": "success",
  "error": null,
  "data": {
    "id": "mcp_abc123def456",
    "organization_id": "org_1234567890",
    "server_url": "https://example.com/mcp-server",
    "server_name": "Updated Server Name",
    "approval_policy": "require_approval_all",
    "transport": "STREAMABLE_HTTP",
    "description": "Updated description",
    "request_headers": {
      "Authorization": "Bearer new_token"
    },
    "updated_at": 1705321000000
  }
Update one or more configuration fields of an existing MCP server. Only provided fields will be updated.
curl -X PATCH "https://api.zudu.ai/api/mcp-servers/mcp_abc123def456" \
  -H "X-API-KEY: sk_Abc123Def456..." \
  -H "X-API-SECRET: s3cr3t_Xyz789..." \
  -d '{
    "config": {
      "name": "Updated Server Name",
      "description": "Updated description",
      "transport": "STREAMABLE_HTTP",
      "approval_policy": "require_approval_all",
      "request_headers": {
        "Authorization": "Bearer new_token"
      }
  }'
{
  "message": "MCP server updated successfully",
  "status": "success",
  "error": null,
  "data": {
    "id": "mcp_abc123def456",
    "organization_id": "org_1234567890",
    "server_url": "https://example.com/mcp-server",
    "server_name": "Updated Server Name",
    "approval_policy": "require_approval_all",
    "transport": "STREAMABLE_HTTP",
    "description": "Updated description",
    "request_headers": {
      "Authorization": "Bearer new_token"
    },
    "updated_at": 1705321000000
  }

Headers

X-API-KEY
string
required
Your API key (format: sk_...)
X-API-SECRET
string
required
Your API secret (format: s3cr3t_...)

Path Parameters

mcpServerId
string
required
The MCP server ID to update (format: mcp_...)Example: mcp_abc123def456

Request Body

config
object
required
MCP server configuration update objectAt least one field must be provided for update.
config.name
string
Updated name for the MCP server
  • Maximum length: 255 characters
  • Must be unique within your organization if changed
Example: "Updated Server Name"
config.url
string
Updated MCP server URL
  • Maximum length: 1000 characters
  • Must start with http:// or https://
Example: "https://new-example.com/mcp-server"
config.approval_policy
string
Updated approval policy for tool callsOptions:
  • auto_approve_all - Automatically approve all tool calls
  • require_approval_all - Require approval for all tool calls
  • require_approval_per_tool - Require approval per tool
config.transport
string
Updated transport type for MCP communicationOptions:
  • SSE - Server-Sent Events
  • STREAMABLE_HTTP - HTTP-based streaming
config.description
string
Updated description of the MCP serverMaximum length: 5000 characters
config.request_headers
object
Updated custom HTTP headers to include in requestsExample:
{
  "Authorization": "Bearer new_token",
  "X-Custom-Header": "new_value"
}
config.secret_token
object
Updated secret token configuration
  • secret_id: Secret identifier (max 255 characters)

Response Fields

id
string
Unique identifier for the MCP server
server_name
string
Updated server name
server_url
string
Updated server URL
approval_policy
string
Updated approval policy
transport
string
Updated transport type
description
string
Updated description
updated_at
number
Unix timestamp (milliseconds) of the update

Error Responses

error
string
Bad Request - Validation error or no fields provided
{
  "message": "Validation failed",
  "status": "error",
  "error": "At least one field must be provided for update"
}
error
string
Not Found - MCP server does not exist
{
  "message": "MCP server not found",
  "status": "error",
  "error": "MCP server with ID 'mcp_abc123' does not exist in organization"
}
error
string
Conflict - MCP server name already exists
{
  "message": "MCP server name already exists",
  "status": "error",
  "error": "MCP server with name 'Updated Server Name' already exists in organization"
}
error
string
Unauthorized - Missing or invalid API key/secret

Notes

  • Only fields provided in the request will be updated
  • At least one field must be provided in the config object
  • Server name must be unique within your organization if changed
  • URL validation is performed if URL is being updated
  • The updated_at timestamp is automatically updated