> ## Documentation Index
> Fetch the complete documentation index at: https://smithery.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Publish a server

> Submit a release via multipart form. Supports hosted (JS module upload), external (URL), and stdio (MCPB bundle) release types.



## OpenAPI

````yaml https://app.stainless.com/api/spec/documented/smithery/openapi.documented.yml put /servers/{qualifiedName}/releases
openapi: 3.1.0
info:
  title: Smithery Platform API
  description: >-
    API for the Smithery platform — discover, deploy, and manage MCP (Model
    Context Protocol) servers. Provides endpoints for browsing the server
    registry, managing deployments, creating scoped access tokens, and
    connecting to MCP servers.
  version: 1.0.0
servers:
  - url: https://api.smithery.ai
security:
  - bearerAuth: []
tags:
  - name: servers
    description: >-
      Browse the MCP server registry, manage server configuration, and handle
      deployments
  - name: skills
    description: Discover and search reusable prompt-based skills for MCP servers
  - name: tools
    description: Search for MCP tools across all registered servers
paths:
  /servers/{qualifiedName}/releases:
    put:
      tags:
        - servers
      summary: Publish a server
      description: >-
        Submit a release via multipart form. Supports hosted (JS module upload),
        external (URL), and stdio (MCPB bundle) release types.
      operationId: putServers:namespaceReleases
      parameters:
        - schema:
            type: string
          in: path
          name: qualifiedName
          required: true
          description: >-
            The server's qualified name (e.g. 'namespace/server' or 'namespace'
            for namespace-only servers). Use %2F to encode the slash.
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                payload:
                  type: string
                  description: >-
                    JSON-encoded release payload. See DeployPayload schema for
                    structure.
                module:
                  type: string
                  format: binary
                  description: JavaScript module file (for hosted releases)
                sourcemap:
                  type: string
                  format: binary
                  description: Source map file (for hosted releases)
                bundle:
                  type: string
                  format: binary
                  description: MCPB bundle file (for stdio releases)
              required:
                - payload
      responses:
        '202':
          description: Release accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeployResponse'
        '400':
          description: Invalid payload
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeploymentError'
      x-codeSamples:
        - lang: JavaScript
          source: >-
            import fs from 'fs';

            import Smithery from '@smithery/api';


            const client = new Smithery({
              apiKey: process.env['SMITHERY_API_KEY'], // This is the default and can be omitted
            });


            const response = await
            client.servers.releases.deploy('qualifiedName', { payload: 'payload'
            });


            console.log(response.deploymentId);
components:
  schemas:
    DeployResponse:
      type: object
      properties:
        deploymentId:
          type: string
          format: uuid
          pattern: >-
            ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
          description: Unique identifier for this release.
          example: 123e4567-e89b-12d3-a456-426614174000
        status:
          type: string
          description: Initial status. Will be WORKING while the release is in progress.
          example: WORKING
        mcpUrl:
          type: string
          format: uri
          description: The MCP endpoint URL for connecting to this server once published.
          example: https://slug.run.tools
        warnings:
          description: Non-fatal warnings encountered during submission.
          type: array
          items:
            type: string
      required:
        - deploymentId
        - status
        - mcpUrl
      additionalProperties: false
    DeploymentError:
      type: object
      properties:
        error:
          type: string
          example: Server not found
      required:
        - error
      additionalProperties: false
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Smithery API key as Bearer token

````