{
  "name": "ytapi",
  "version": "1.0.0",
  "description": "YouTube Transcript & Metadata API streamable HTTP MCP Server",
  "transport": {
    "type": "http",
    "url": "https://ytapi.dev/api/mcp"
  },
  "authentication": {
    "type": "bearer",
    "header": "Authorization",
    "tokenPrefix": "yta_"
  },
  "tools": [
    {
      "name": "get_transcript",
      "description": "Get the full transcript (timestamped segments) of a YouTube video. 1 credit on success.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "video": {
            "type": "string",
            "description": "YouTube video URL or 11-character video ID"
          },
          "lang": {
            "type": "string",
            "description": "BCP-47 language code (optional)"
          }
        },
        "required": [
          "video"
        ]
      }
    },
    {
      "name": "get_video_metadata",
      "description": "Get metadata (title, channel, views, likes, duration, publish date) of a YouTube video. 1 credit on success.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "video": {
            "type": "string",
            "description": "YouTube video URL or video ID"
          }
        },
        "required": [
          "video"
        ]
      }
    },
    {
      "name": "search_youtube",
      "description": "Search YouTube for videos or channels. 1 credit per page.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "video",
              "channel"
            ]
          },
          "page": {
            "type": "number"
          }
        },
        "required": [
          "query"
        ]
      }
    },
    {
      "name": "list_latest_videos",
      "description": "List the latest videos of a YouTube channel (RSS, up to 15). Free (0 credits).",
      "inputSchema": {
        "type": "object",
        "properties": {
          "channel": {
            "type": "string",
            "description": "Channel ID (UC...), @handle, or custom URL path"
          }
        },
        "required": [
          "channel"
        ]
      }
    }
  ]
}