> ## 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.

# Create a server

> Create a new server. Idempotent — returns success if the server already exists and is owned by the caller.



## OpenAPI

````yaml https://app.stainless.com/api/spec/documented/smithery/openapi.documented.yml put /servers/{qualifiedName}
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}:
    put:
      tags:
        - servers
      summary: Create a server
      description: >-
        Create a new server. Idempotent — returns success if the server already
        exists and is owned by the caller.
      operationId: putServers:namespace
      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:
          application/json:
            schema:
              type: object
              properties:
                displayName:
                  example: My Server
                  type: string
                description:
                  example: A simple server
                  type: string
              id: CreateNamespaceServerRequest
      responses:
        '201':
          description: Server created successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  namespace:
                    type: string
                    example: myorg
                  server:
                    type: string
                    example: ''
                  displayName:
                    example: My Server
                    type: string
                  description:
                    example: A simple server
                    type: string
                  createdAt:
                    type: string
                    example: '2024-01-01T00:00:00.000Z'
                required:
                  - namespace
                  - server
                  - displayName
                  - description
                  - createdAt
                id: CreateNamespaceServerResponse
        '400':
          description: Bad request (invalid name format)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RegistryError'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RegistryError'
        '403':
          description: >-
            Forbidden (namespace not owned by user or missing servers:write
            permission)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RegistryError'
        '404':
          description: Namespace not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RegistryError'
      x-codeSamples:
        - lang: JavaScript
          source: |-
            import Smithery from '@smithery/api';

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

            const server = await client.servers.create('qualifiedName');

            console.log(server.createdAt);
components:
  schemas:
    RegistryError:
      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

````