Skip to main content
PUT
/
servers
/
:name
Update Server
curl --request PUT \
  --url https://api.example.com/servers/:name \
  --header 'Content-Type: application/json' \
  --data '
{
  "version": "<string>",
  "description": "<string>",
  "license": "<string>",
  "repository": {
    "type": "<string>",
    "url": "<string>"
  },
  "pricing": {
    "currency": "<string>",
    "amount": 123
  },
  "metadata": {
    "homepage": "<string>"
  }
}
'
{
  "status": "success",
  "message": "Server 'weather-mcp' updated successfully",
  "server": {
    "name": "weather-mcp",
    "version": "1.3.0",
    "description": "Enhanced weather server with 10-day forecasts and alerts",
    "author": "areeb",
    "lang": "python",
    "license": "MIT",
    "entrypoint": "main.py",
    "repository": {
      "type": "git",
      "url": "https://github.com/areeb/weather-mcp"
    },
    "pricing": {
      "currency": "INR",
      "amount": 0
    }
  }
}

Endpoint

Authentication

This endpoint requires authentication. You must be the server owner.
Only the server owner can update server metadata

Path Parameters

name
string
required
Unique server identifier to update. Example: weather-mcp

Request Body

All fields are optional. Only include fields you want to update.
version
string
New semantic version number. Format: MAJOR.MINOR.PATCH. Must be greater than the current version.
description
string
Updated description. Length: 20-500 characters
license
string
Updated software license. Examples: MIT, Apache-2.0, GPL-3.0
repository
object
Updated repository information
Changing the repository URL will trigger a new security scan
pricing
object
Updated pricing configuration
Pricing changes take effect immediately for new users
metadata
object
Optional metadata updates

Response

status
string
"success" on success, "error" on failure
message
string
Human-readable confirmation message
server
object
The updated server object (same structure as the Get Server response)

Examples

# Update version and description
curl -X PUT "https://api.superbox.ai/api/v1/servers/weather-mcp" \
  -H "Authorization: Bearer $SUPERBOX_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "version": "1.3.0",
    "description": "Enhanced weather server with 10-day forecasts"
  }'

# Update pricing
curl -X PUT "https://api.superbox.ai/api/v1/servers/weather-mcp" \
  -H "Authorization: Bearer $SUPERBOX_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "pricing": {
      "currency": "INR",
      "amount": 99
    }
  }'

Response Examples

{
  "status": "success",
  "message": "Server 'weather-mcp' updated successfully",
  "server": {
    "name": "weather-mcp",
    "version": "1.3.0",
    "description": "Enhanced weather server with 10-day forecasts and alerts",
    "author": "areeb",
    "lang": "python",
    "license": "MIT",
    "entrypoint": "main.py",
    "repository": {
      "type": "git",
      "url": "https://github.com/areeb/weather-mcp"
    },
    "pricing": {
      "currency": "INR",
      "amount": 0
    }
  }
}

Update Scenarios

When to bump versions:
  • Patch (1.0.0 to 1.0.1): Bug fixes, minor changes
  • Minor (1.0.0 to 1.1.0): New features, backward compatible
  • Major (1.0.0 to 2.0.0): Breaking changes
await fetch(url, {
  method: 'PUT',
  headers,
  body: JSON.stringify({ version: '1.0.1' })
});
// Make server free
await fetch(url, {
  method: 'PUT',
  headers,
  body: JSON.stringify({
    pricing: { currency: 'INR', amount: 0 }
  })
});
Existing users keep their current pricing until the next billing cycle
requests.put(url, headers=headers, json={
    'description': 'Now with 10-day forecasts and weather alerts!'
})
Repository changes trigger a new security scan
await fetch(url, {
  method: 'PUT',
  headers,
  body: JSON.stringify({
    repository: {
      type: 'git',
      url: 'https://github.com/new-org/weather-mcp'
    }
  })
});

Best Practices

Semantic Versioning

Follow semver strictly to communicate changes clearly to users

Document Changes

Update your README and changelog when making updates

Test Before Update

Test changes in your repository before updating the server

Notify Users

For breaking changes, notify users through your communication channels