{
  "name": "StemConsole",
  "description": "AI stem splitter and vocal remover. Send one to ten songs as audio links and get their stems back: vocals and instrumental, vocals, drums, bass and other, or six stems with guitar and piano. Works on the connected person's StemConsole account, plan and allowance, and every result also opens in StemConsole's in-browser practice room.",
  "version": "1.0.0",
  "supportedInterfaces": [
    { "url": "https://stemconsole.ai/a2a", "protocolBinding": "JSONRPC", "protocolVersion": "1.0" }
  ],
  "url": "https://stemconsole.ai/a2a",
  "preferredTransport": "JSONRPC",
  "provider": { "organization": "StemConsole", "url": "https://stemconsole.ai" },
  "documentationUrl": "https://stemconsole.ai/developers/",
  "iconUrl": "https://stemconsole.ai/assets/favicon.svg",
  "capabilities": { "streaming": false, "pushNotifications": false },
  "securitySchemes": {
    "stemconsole_oauth": {
      "oauth2SecurityScheme": {
        "description": "Sign in to StemConsole and approve the connecting app.",
        "oauth2MetadataUrl": "https://stemconsole.ai/.well-known/oauth-authorization-server",
        "flows": {
          "authorizationCode": {
            "authorizationUrl": "https://stemconsole.ai/oauth/authorize",
            "tokenUrl": "https://stemconsole.ai/oauth/token",
            "refreshUrl": "https://stemconsole.ai/oauth/token",
            "scopes": { "account": "Split songs, read results and manage songs and setlists on the account" },
            "pkceRequired": true
          }
        }
      }
    },
    "stemconsole_key": {
      "httpAuthSecurityScheme": {
        "scheme": "Bearer",
        "description": "An API key (sc_live_...) made at https://stemconsole.ai/developers/"
      }
    }
  },
  "securityRequirements": [
    { "schemes": { "stemconsole_oauth": { "list": ["account"] } } },
    { "schemes": { "stemconsole_key": { "list": [] } } }
  ],
  "defaultInputModes": ["text/plain", "application/json"],
  "defaultOutputModes": ["audio/mpeg", "audio/wav", "text/html", "text/plain"],
  "skills": [
    {
      "id": "split-stems",
      "name": "Split songs into stems",
      "description": "Separate one to ten songs, given as public audio links, into stems. Name the model in a data part (\"model\": \"vocals\", \"fast\" or \"full\") or in words: vocals and instrumental by default, drums and bass or four stems for Basic Split, guitar, piano or six stems for Full Separation (Pro or a credit). One song is answered as it finishes when it can be; several run as a batch, two at a time. Each stem comes back as an MP3 link (and WAV on Pro), with a link that opens the song in the practice room.",
      "tags": ["audio", "music", "stem separation", "vocal remover", "karaoke", "instrumental", "acapella"],
      "examples": [
        "Split https://example.com/song.mp3 into vocals, drums, bass and other",
        "Remove the vocals from these three songs: https://example.com/a.mp3 https://example.com/b.wav https://example.com/c.flac",
        "Isolate the guitar and piano from https://example.com/live-take.wav"
      ],
      "inputModes": ["text/plain", "application/json"],
      "outputModes": ["audio/mpeg", "audio/wav", "text/html"]
    }
  ]
}
