{
  "id": "audio.transcribe",
  "object": "tool",
  "name": "Transcribe audio",
  "summary": "Speech to text with timestamps.",
  "description": "Transcribes speech with Whisper large-v3 turbo: full text, timestamped segments, detected language, plus SRT and VTT subtitle files. Can translate into English. WAV and MP3 of any length up to 100 MB are split and transcribed in pieces; other formats (M4A, OGG, FLAC, WebM) are limited to 20 MB per file. For longer audio in those formats, or video, use video.captions.",
  "category": "audio",
  "hosted_by": "Opentools",
  "runtime": "ai",
  "side_effects": false,
  "status": "live",
  "credits": 3,
  "price": "$0.0030",
  "providers": [
    {
      "id": "opentools",
      "name": "Opentools",
      "price": "$0.0030"
    },
    {
      "id": "deepgram",
      "name": "Deepgram",
      "price": "$0.0150"
    }
  ],
  "mcp_name": "audio_transcribe",
  "input_schema": {
    "type": "object",
    "properties": {
      "file": {
        "anyOf": [
          {
            "type": "object",
            "properties": {
              "url": {
                "type": "string",
                "format": "uri",
                "description": "Public http(s) URL of the file"
              }
            },
            "required": [
              "url"
            ]
          },
          {
            "type": "object",
            "properties": {
              "file_id": {
                "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": "An id returned by POST /v1/files"
              }
            },
            "required": [
              "file_id"
            ]
          },
          {
            "type": "object",
            "properties": {
              "base64": {
                "type": "string",
                "description": "Base64-encoded file bytes (up to 10 MB)"
              },
              "name": {
                "type": "string",
                "description": "File name, e.g. invoice.pdf"
              },
              "content_type": {
                "type": "string"
              }
            },
            "required": [
              "base64",
              "name"
            ]
          },
          {
            "type": "object",
            "properties": {
              "connection": {
                "type": "string",
                "minLength": 1,
                "maxLength": 64,
                "description": "A storage connection id or name (see storage.connections)"
              },
              "path": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024,
                "description": "Path of the file in that connection, e.g. reports/q3.pdf"
              }
            },
            "required": [
              "connection",
              "path"
            ]
          }
        ],
        "x-file": true,
        "description": "The audio: MP3, WAV, M4A, OGG, FLAC or WebM"
      },
      "language": {
        "description": "Spoken language as an ISO 639-1 code, e.g. \"en\". Detected if omitted.",
        "type": "string",
        "pattern": "^[a-z]{2,3}$"
      },
      "prompt": {
        "description": "Context to guide spelling: names, jargon, the topic",
        "type": "string",
        "maxLength": 1000
      },
      "task": {
        "default": "transcribe",
        "description": "translate: output English text",
        "type": "string",
        "enum": [
          "transcribe",
          "translate"
        ]
      },
      "vad_filter": {
        "default": true,
        "description": "Skip silence before transcribing",
        "type": "boolean"
      }
    },
    "required": [
      "file"
    ]
  },
  "kind": "tool"
}