Skip to main content
PUT
/
servers
/
{qualifiedName}
/
releases
Publish a server
curl --request PUT \
  --url https://api.smithery.ai/servers/{qualifiedName}/releases \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: multipart/form-data' \
  --form 'payload=<string>' \
  --form module='@example-file' \
  --form sourcemap='@example-file' \
  --form bundle='@example-file'
{
  "deploymentId": "123e4567-e89b-12d3-a456-426614174000",
  "status": "WORKING",
  "mcpUrl": "https://slug.run.tools",
  "warnings": [
    "<string>"
  ]
}

Authorizations

Authorization
string
header
required

Smithery API key as Bearer token

Path Parameters

qualifiedName
string
required

The server's qualified name (e.g. 'namespace/server' or 'namespace' for namespace-only servers). Use %2F to encode the slash.

Body

multipart/form-data
payload
string
required

JSON-encoded release payload. See DeployPayload schema for structure.

module
file

JavaScript module file (for hosted releases)

sourcemap
file

Source map file (for hosted releases)

bundle
file

MCPB bundle file (for stdio releases)

Response

Release accepted

deploymentId
string<uuid>
required

Unique identifier for this release.

Example:

"123e4567-e89b-12d3-a456-426614174000"

status
string
required

Initial status. Will be WORKING while the release is in progress.

Example:

"WORKING"

mcpUrl
string<uri>
required

The MCP endpoint URL for connecting to this server once published.

Example:

"https://slug.run.tools"

warnings
string[]

Non-fatal warnings encountered during submission.