OpenAI Tools MCP Server

Tags

registry.modelcontextprotocol.io

Configuration

{
  "mcpServers": {
    "openai-tools": {
      "url": "https://openai-tools.run.mcp.com.ai/mcp",
      "type": "http"
    }
  },
  "requiresAuth": true,
  "requiresOAuth": false
}

Available Tools (9)

createImage

Creates an image given a prompt.

Input Schema
{
  "type": "object",
  "required": [
    "createImageBody"
  ],
  "properties": {
    "createImageBody": {
      "type": "object",
      "required": [
        "prompt"
      ],
      "properties": {
        "n": {
          "type": "integer",
          "maximum": 10,
          "minimum": 1,
          "description": "The number of images to generate. Must be between 1 and 10."
        },
        "size": {
          "enum": [
            "256x256",
            "512x512",
            "1024x1024"
          ],
          "type": "string",
          "description": "The size of the generated images. Must be one of `256x256`, `512x512`, or `1024x1024`."
        },
        "user": {
          "type": "string",
          "description": "A unique identifier representing your end-user, which can help OpenAI to monitor and detect abuse. [Learn more](/docs/guides/safety-best-practices/end-user-ids).\n"
        },
        "prompt": {
          "type": "string",
          "description": "A text description of the desired image(s). The maximum length is 1000 characters."
        },
        "response_format": {
          "enum": [
            "url",
            "b64_json"
          ],
          "type": "string",
          "description": "The format in which the generated images are returned. Must be one of `url` or `b64_json`."
        }
      }
    },
    "x-hapi-auth-state": {
      "type": "string"
    }
  }
}

createImageEdit

Creates an edited or extended image given an original image and a prompt.

Input Schema
{
  "type": "object",
  "required": [
    "createImageEditBody"
  ],
  "properties": {
    "x-hapi-auth-state": {
      "type": "string"
    },
    "createImageEditBody": {
      "type": "object",
      "required": [
        "prompt",
        "image"
      ],
      "properties": {
        "n": {
          "type": "integer",
          "maximum": 10,
          "minimum": 1,
          "description": "The number of images to generate. Must be between 1 and 10."
        },
        "mask": {
          "type": "string",
          "format": "binary",
          "description": "An additional image whose fully transparent areas (e.g. where alpha is zero) indicate where `image` should be edited. Must be a valid PNG file, less than 4MB, and have the same dimensions as `image`."
        },
        "size": {
          "enum": [
            "256x256",
            "512x512",
            "1024x1024"
          ],
          "type": "string",
          "description": "The size of the generated images. Must be one of `256x256`, `512x512`, or `1024x1024`."
        },
        "user": {
          "type": "string",
          "description": "A unique identifier representing your end-user, which can help OpenAI to monitor and detect abuse. [Learn more](/docs/guides/safety-best-practices/end-user-ids).\n"
        },
        "image": {
          "type": "string",
          "format": "binary",
          "description": "The image to edit. Must be a valid PNG file, less than 4MB, and square. If mask is not provided, image must have transparency, which will be used as the mask."
        },
        "prompt": {
          "type": "string",
          "description": "A text description of the desired image(s). The maximum length is 1000 characters."
        },
        "response_format": {
          "enum": [
            "url",
            "b64_json"
          ],
          "type": "string",
          "description": "The format in which the generated images are returned. Must be one of `url` or `b64_json`."
        }
      }
    }
  }
}

createImageVariation

Creates a variation of a given image.

Input Schema
{
  "type": "object",
  "required": [
    "createImageVariationBody"
  ],
  "properties": {
    "x-hapi-auth-state": {
      "type": "string"
    },
    "createImageVariationBody": {
      "type": "object",
      "required": [
        "image"
      ],
      "properties": {
        "n": {
          "type": "integer",
          "maximum": 10,
          "minimum": 1,
          "description": "The number of images to generate. Must be between 1 and 10."
        },
        "size": {
          "enum": [
            "256x256",
            "512x512",
            "1024x1024"
          ],
          "type": "string",
          "description": "The size of the generated images. Must be one of `256x256`, `512x512`, or `1024x1024`."
        },
        "user": {
          "type": "string",
          "description": "A unique identifier representing your end-user, which can help OpenAI to monitor and detect abuse. [Learn more](/docs/guides/safety-best-practices/end-user-ids).\n"
        },
        "image": {
          "type": "string",
          "format": "binary",
          "description": "The image to use as the basis for the variation(s). Must be a valid PNG file, less than 4MB, and square."
        },
        "response_format": {
          "enum": [
            "url",
            "b64_json"
          ],
          "type": "string",
          "description": "The format in which the generated images are returned. Must be one of `url` or `b64_json`."
        }
      }
    }
  }
}

createTranscription

Transcribes audio into the input language.

Input Schema
{
  "type": "object",
  "required": [
    "createTranscriptionBody"
  ],
  "properties": {
    "x-hapi-auth-state": {
      "type": "string"
    },
    "createTranscriptionBody": {
      "type": "object",
      "required": [
        "file",
        "model"
      ],
      "properties": {
        "file": {
          "type": "string",
          "format": "binary",
          "description": "The audio file object (not file name) to transcribe, in one of these formats: mp3, mp4, mpeg, mpga, m4a, wav, or webm.\n"
        },
        "model": {
          "type": "string",
          "description": "ID of the model to use. Only `whisper-1` is currently available.\n"
        },
        "prompt": {
          "type": "string",
          "description": "An optional text to guide the model's style or continue a previous audio segment. The [prompt](/docs/guides/speech-to-text/prompting) should match the audio language.\n"
        },
        "language": {
          "type": "string",
          "description": "The language of the input audio. Supplying the input language in [ISO-639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format will improve accuracy and latency.\n"
        },
        "temperature": {
          "type": "number",
          "description": "The sampling temperature, between 0 and 1. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic. If set to 0, the model will use [log probability](https://en.wikipedia.org/wiki/Log_probability) to automatically increase the temperature until certain thresholds are hit.\n"
        },
        "response_format": {
          "type": "string",
          "description": "The format of the transcript output, in one of these options: json, text, srt, verbose_json, or vtt.\n"
        }
      },
      "additionalProperties": false
    }
  }
}

createTranslation

Translates audio into English.

Input Schema
{
  "type": "object",
  "required": [
    "createTranslationBody"
  ],
  "properties": {
    "x-hapi-auth-state": {
      "type": "string"
    },
    "createTranslationBody": {
      "type": "object",
      "required": [
        "file",
        "model"
      ],
      "properties": {
        "file": {
          "type": "string",
          "format": "binary",
          "description": "The audio file object (not file name) translate, in one of these formats: mp3, mp4, mpeg, mpga, m4a, wav, or webm.\n"
        },
        "model": {
          "type": "string",
          "description": "ID of the model to use. Only `whisper-1` is currently available.\n"
        },
        "prompt": {
          "type": "string",
          "description": "An optional text to guide the model's style or continue a previous audio segment. The [prompt](/docs/guides/speech-to-text/prompting) should be in English.\n"
        },
        "temperature": {
          "type": "number",
          "description": "The sampling temperature, between 0 and 1. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic. If set to 0, the model will use [log probability](https://en.wikipedia.org/wiki/Log_probability) to automatically increase the temperature until certain thresholds are hit.\n"
        },
        "response_format": {
          "type": "string",
          "description": "The format of the transcript output, in one of these options: json, text, srt, verbose_json, or vtt.\n"
        }
      },
      "additionalProperties": false
    }
  }
}

listModels

Lists the currently available models, and provides basic information about each one such as the owner and availability.

Input Schema
{
  "type": "object",
  "properties": {
    "x-hapi-auth-state": {
      "type": "string"
    }
  }
}

retrieveModel

Retrieves a model instance, providing basic information about the model such as the owner and permissioning.

Input Schema
{
  "type": "object",
  "required": [
    "model"
  ],
  "properties": {
    "model": {
      "type": "string"
    },
    "x-hapi-auth-state": {
      "type": "string"
    }
  }
}

deleteModel

Delete a fine-tuned model. You must have the Owner role in your organization.

Input Schema
{
  "type": "object",
  "required": [
    "model"
  ],
  "properties": {
    "model": {
      "type": "string"
    },
    "x-hapi-auth-state": {
      "type": "string"
    }
  }
}

createModeration

Classifies if text violates OpenAI's Content Policy

Input Schema
{
  "type": "object",
  "required": [
    "createModerationBody"
  ],
  "properties": {
    "x-hapi-auth-state": {
      "type": "string"
    },
    "createModerationBody": {
      "type": "object",
      "required": [
        "input"
      ],
      "properties": {
        "input": {
          "type": "string",
          "description": "The input text to classify"
        },
        "model": {
          "type": "string",
          "description": "Two content moderations models are available: `text-moderation-stable` and `text-moderation-latest`.\n\nThe default is `text-moderation-latest` which will be automatically upgraded over time. This ensures you are always using our most accurate model. If you use `text-moderation-stable`, we will provide advanced notice before updating the model. Accuracy of `text-moderation-stable` may be slightly lower than for `text-moderation-latest`.\n"
        }
      }
    }
  }
}