> ## Documentation Index
> Fetch the complete documentation index at: https://developer.watson-orchestrate.ibm.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create A Toolkit



## OpenAPI

````yaml post /v1/toolkits
openapi: 3.1.0
info:
  title: WxO Server API
  summary: API for the next gen watsonx Orchestrate stack
  description: >+

    The watsonx Orchestrate Server provides a set of APIs to power the watsonx
    Orchestrate AI assistant. This includes the following core services:


    * Orchestrate Assistant - a built-in AI assistant that powers the
    Orchestrate end-user experience.

    * Custom Assistants - a service layer for interacting with existing AI
    assistatns (such as those in watsonx Assistant).

    * Message Threads - a chat history and async message tracking store.

    * Document Store - manage collections of documents in nearly any format
    including text, pdf, html and many more.

    * Information Extraction - automatically extract clean text and images from
    any document in the Document Store.  Also extract other useful metadata like
    questions answered, keywords, and named entities.

    * Embedding - generate vector embeddings for text and images in the Document
    Store.

    * Vector Index and Retrieval - automatically index documents with rich
    metadata for vector search or hybrid search.

    * Search Engine - create a Gen AI powered search engine that works like Bing
    or Google.

    * Query Engine - configure your own RAG (Retrieval Augmented Generation)
    engine supporting advanced retrieval patterns and automated data management.

    * Model Proxy - create your own LLM model endpoints for chat completions and
    embeddings.  Supports IBM watsonx.ai, IBM BAM, OpenAI, MistralAI, or Ollama
    for local models.


    WxO API Server utilizes the following open source projects:


    * [PostgreSQL](https://www.postgresql.org/)

    * [PGVector](https://github.com/pgvector/pgvector)

    * [LlamaIndex](https://docs.llamaindex.ai/en/stable/)

    * [LangChain](https://python.langchain.com/docs/get_started/introduction)

    * [FastAPI](https://fastapi.tiangolo.com/)

    * [Unstructured](https://unstructured.io/)

    * [Celery](https://docs.celeryproject.org/en/stable/)

  version: 0.1.0
servers:
  - url: https://{api_endpoint}
    description: version
security: []
paths:
  /v1/toolkits:
    post:
      tags:
        - Toolkits
      summary: Create A Toolkit
      operationId: Create_a_Toolkit_v1_toolkits_post
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateToolKit'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: object
                additionalProperties: true
                title: Response Create A Toolkit V1 Toolkits Post
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
        - HTTPBearer: []
components:
  schemas:
    CreateToolKit:
      properties:
        name:
          type: string
          title: Name
          description: Name of the toolkit
        description:
          type: string
          title: Description
          description: Optional description of the toolkit
        mcp:
          $ref: '#/components/schemas/MCPToolKitConfig'
          description: >-
            Optional MCP configuration. Required only if tools are imported from
            MCP.
      type: object
      required:
        - name
        - description
      title: CreateToolKit
      description: A specification for a toolkit which comprises of tools
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    MCPToolKitConfig:
      properties:
        source:
          anyOf:
            - type: string
              enum:
                - files
                - public-registry
            - type: 'null'
          title: Source
          description: >-
            Source of the MCP either file upload, github respository, or remote
            server
        server_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Server Url
          description: URL of the MCP server (if source is remote
        transport:
          anyOf:
            - type: string
            - type: 'null'
          title: Transport
          description: Transport protocol for remote MCP
        command:
          anyOf:
            - type: string
            - type: 'null'
          title: Command
          description: Command to start the MCP server
        args:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Args
          description: Startup arguments for the MCP server
        env:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Env
          description: Environment variables to be set
        tools:
          anyOf:
            - items:
                type: string
              type: array
            - type: string
              const: '*'
            - type: 'null'
          title: Tools
          description: List of tools to import from MCP. Use ['*'] to import all
        connections:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Connections
          description: details of the connections of the MCP toolkit
      type: object
      title: MCPToolKitConfig
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
  securitySchemes:
    HTTPBearer:
      type: http
      scheme: bearer

````