# mitune — full reference for AI agents > mitune is an independent music bot for Micup (micup.gg) voice channels. This file lists everything an agent needs to answer questions about it: what it does, every command, languages, limits, live capacity and statistics, and recent changes. Summary: https://mitune.net/llms.txt. Machine-readable JSON: https://mitune.net/bot.json. mitune is an independent bot made by volunteer developers. It is not affiliated with micup.gg Inc. ## Getting started 1. Open the invite link and choose a Micup server where you may add bots: https://micup.gg/oauth2/authorize?client_id=1567588228457304064&scope=bot&permissions=31525678465007424 2. Join a voice channel and make sure the bot may connect and transmit audio there. 3. Use `/play ` (or `mi!play`) and pick a result. Control music from chat or from the web panel: https://music.mitune.net Example: `mi!play Tarkan Kuzu Kuzu` → pick a result. History is shown newest first; replay a link with `mi!play `. You must be in the same voice channel as the bot to control music. Help and history do not require a voice channel. You can also mention the bot to give commands. ## Product information - Facts last verified: 2026-11-13 (product documentation review, not live status) - Audio: Opus, target bitrate 96 kbps, 48 kHz stereo. Perceived quality also depends on the source recording. - These documents describe the bot; they are not an authenticated playback API. Playback controls require Micup authorization and the applicable voice-channel / DJ permissions. - Live counts are point-in-time snapshots. Check the reported timestamp; re-fetch bot.json for current values. When complete is false, server and member counts are observed minimums. ## Frequently asked questions ### Is audio streamed directly from Spotify? No. Track information from the Spotify link is used to find a playable YouTube recording. Audio is not streamed from Spotify. ### Which music sources are supported? Add YouTube, Spotify and SoundCloud links to the same queue. Your music does not have to come from just one source. ### Can I play music in more than one voice channel? Lo-fi in one channel, rock in another. When the main bot is busy, an available helper joins another channel. Each channel keeps its own music, queue and volume settings. ### Can I add my Spotify and YouTube playlists? Yes. Paste a public Spotify, YouTube or YouTube Music playlist link into a list in the music panel or into the bot, and its tracks are imported into your personal list. In the bot you can also add them straight to the queue without creating a list. The first 100 tracks of Spotify playlists and the first 500 of YouTube playlists are imported; private playlists are not supported. ### What audio quality does the bot stream at? mitune streams stereo audio in Opus format at 48 kHz with a target bitrate of 96 kbps. The quality you hear also depends on the quality of the source recording. ## Live statistics - Status: All systems operational (reported 2026-11-14T01:49:47.407734331Z) - Micup servers using mitune: 89 (partial count, observed minimum) - Members in those servers: 10,382 (partial count, observed minimum) - Listening right now: 0 - Nodes (machines): 6 healthy of 6 - Voice workers: 36 healthy of 36, 10/20/60 sessions each - Playback capacity: 1,330 concurrent voice sessions (15 in use) - Gateway shards: 1 ready of 1 - Uptime, last 90 days: 98.63122677014069% - Snapshot taken: 2026-11-14T01:49:47.726Z Counts come from the bot's Core service through the public status API and refresh every few seconds; the shared server snapshot is cached for 15 seconds and this HTTP response may be cached for another 60 seconds. "Capacity" is the number of voice sessions the workers accept, not a measured guarantee of simultaneous playback. ## Features - Music in Micup voice channels with a shared queue per voice channel - Bot pool: when the main bot is busy, helper bots join other voice channels; every channel keeps its own queue, playback and volume - Slash commands in the server language with live song suggestions while typing /play - Text commands with a prefix or by mentioning the bot; localized command names and aliases - Web music panel (sign in with Micup): search, queue, playback, volume, personal playlists and listening history - Panel permissions decide who may control playback from the browser - Personal playlists: save a voice channel queue, play a list, import public Spotify, YouTube and YouTube Music playlists - Listening history: your last 100 playback requests, replayable - Repeat once, repeat track, repeat queue; shuffle, seek, previous track - Music request channel: members post a song name or link without a command - Next track is prepared in the background for smooth transitions; queue and position survive worker restarts - Per-server language in 10 languages, chosen from a flag menu - Public status page with servers, members, nodes, workers, shards and 90-day uptime ## Music sources - YouTube: song search by text, video links - SoundCloud: track links and search - Spotify: track links are matched to a playable YouTube recording from the Spotify metadata; audio is not streamed from Spotify - Public Spotify, YouTube and YouTube Music playlists can be imported into personal lists in the web panel or through the bot; the bot can also add them directly to the queue ## Limits and behavior - Playlist import: first 100 Spotify tracks or first 500 YouTube / YouTube Music tracks; private playlists are not supported - Volume: 0–100 - Seek: 0–86400 seconds into the current track - Queue: up to 100 tracks per queue (production default). - Personal list: up to 500 tracks, name up to 100 characters. - Listening history: last 100 requests per user - Queue and history pages show 5 tracks each - Leaves an empty voice channel after 30 seconds and an idle channel with an empty queue after 5 minutes. - Help and history work without a voice channel; controlling music requires being in the same voice channel as the bot ## Commands Every command works as a slash command, with the `mi!` prefix, or by mentioning the bot (for example `@miTune help`). Prefix commands accept the English name, the localized names below and the listed aliases. Slash names appear in the server language; on servers without a saved language each member sees their own Micup language. ### Playback - `/play ` — Play a track: pick one of the results shown as you type, or search (prefix: `mi!play `) - `query` required string — Song title, artist or link - `/search ` — Search music by song name (prefix: `mi!search `) - `query` required string — Song or artist to search for - `/now` — Show the current track (prefix: `mi!now`) - `/pause` — Pause the current track (prefix: `mi!pause`) - `/resume` — Resume the paused track (prefix: `mi!resume`) - `/skip` — Skip to the next track (prefix: `mi!skip`) - `/previous` — Go back to the previous track (prefix: `mi!previous`) ### Queue - `/queue [page]` — Show the queue (prefix: `mi!queue [page]`) - `page` optional integer 1– — Page number - `/remove ` — Remove a track from the queue (prefix: `mi!remove `) - `position` required integer 1– — Position in the queue - `/shuffle` — Shuffle the queue (prefix: `mi!shuffle`) - `/clear` — Clear the upcoming tracks (prefix: `mi!clear`) - `/stop` — Stop playback and empty the queue (prefix: `mi!stop`) ### Volume and repeat - `/volume ` — Set the volume (prefix: `mi!volume <0–100>`) - `level` required integer 0–100 — From 0 to 100 - `/seek ` — Jump to a second in the track (prefix: `mi!seek `) - `seconds` required integer 0–86400 — Seconds from the start of the track - `/loop ` — Choose the repeat mode (prefix: `mi!repeat `) - `mode` required string (off | once | track | queue) — Repeat mode ### Lists - `/list [action] [name]` — Open your personal lists or save and play a list (prefix: `mi!list`) - `action` optional string (play | save) — Optional list action - `name` optional string — List name for the selected action ### History and connection - `/history [page]` — Tracks you played recently (prefix: `mi!history [page]`) - `page` optional integer 1– — Page number - `/join` — Join your voice channel (prefix: `mi!join`) - `/leave` — Leave the voice channel (prefix: `mi!leave`) - `/help` — Show the commands (prefix: `mi!help`) - `/invite` — Invite the bot to your server (prefix: `mi!invite`) - `/ping` — Measure the bot's latency (prefix: `mi!ping`) ### Language · Music request channel · DJ settings - `/dj` — DJ settings (prefix: `mi!dj`; requires Manage Server) - `/language` — Show or change the server language (prefix: `mi!language`; requires Manage Server) - `/music-channel [channel]` — Set or disable the command-free music request channel (prefix: `mi!music-channel set #channel`; requires Manage Server) - `action` required string (set | off) — Set a channel or turn requests off - `channel` optional channel — Text channel in this server ## Localized command names - play: tr: /çal, az: /çal, en: /play, pt: /tocar, fr: /jouer, de: /abspielen, es: /reproducir, it: /riproduci, hi: /bajao, ar: /تشغيل; prefix names: `mi!play`, `mi!çal`, `mi!cal`, `mi!tocar`, `mi!jouer`, `mi!abspielen`, `mi!reproducir`, `mi!riproduci`, `mi!bajao`, `mi!تشغيل` - search: tr: /ara, az: /axtar, en: /search, pt: /buscar, fr: /chercher, de: /suchen, es: /buscar, it: /cerca, hi: /khojo, ar: /بحث; prefix names: `mi!search`, `mi!ara`, `mi!axtar`, `mi!buscar`, `mi!chercher`, `mi!suchen`, `mi!cerca`, `mi!khojo`, `mi!بحث` - now: tr: /şimdi, az: /indi, en: /now, pt: /agora, fr: /maintenant, de: /jetzt, es: /ahora, it: /ora, hi: /abhi, ar: /الآن; prefix names: `mi!now`, `mi!şimdi`, `mi!simdi`, `mi!indi`, `mi!agora`, `mi!maintenant`, `mi!jetzt`, `mi!ahora`, `mi!ora`, `mi!abhi`, `mi!الآن` - pause: tr: /duraklat, az: /pauza, en: /pause, pt: /pausar, fr: /pause, de: /pause, es: /pausar, it: /pausa, hi: /roko, ar: /إيقاف_مؤقت; prefix names: `mi!pause`, `mi!duraklat`, `mi!pauza`, `mi!pausar`, `mi!pausa`, `mi!roko`, `mi!إيقاف_مؤقت` - resume: tr: /devam, az: /davam, en: /resume, pt: /retomar, fr: /reprendre, de: /fortsetzen, es: /reanudar, it: /riprendi, hi: /jaari, ar: /استئناف; prefix names: `mi!resume`, `mi!devam`, `mi!davam`, `mi!retomar`, `mi!reprendre`, `mi!fortsetzen`, `mi!reanudar`, `mi!riprendi`, `mi!jaari`, `mi!استئناف` - skip: tr: /atla, az: /keç, en: /skip, pt: /pular, fr: /passer, de: /überspringen, es: /saltar, it: /salta, hi: /agla, ar: /تخطي; prefix names: `mi!skip`, `mi!atla`, `mi!kec`, `mi!keç`, `mi!pular`, `mi!passer`, `mi!überspringen`, `mi!saltar`, `mi!salta`, `mi!agla`, `mi!تخطي` - previous: tr: /geri, az: /əvvəlki, en: /previous, pt: /anterior, fr: /précédent, de: /zurück, es: /anterior, it: /precedente, hi: /pichhla, ar: /السابق; prefix names: `mi!previous`, `mi!geri`, `mi!evvelki`, `mi!əvvəlki`, `mi!anterior`, `mi!précédent`, `mi!zurück`, `mi!precedente`, `mi!pichhla`, `mi!السابق` - queue: tr: /kuyruk, az: /növbə, en: /queue, pt: /fila, fr: /file, de: /warteschlange, es: /cola, it: /coda, hi: /katar, ar: /قائمة_الانتظار; prefix names: `mi!queue`, `mi!kuyruk`, `mi!novbe`, `mi!növbə`, `mi!fila`, `mi!file`, `mi!warteschlange`, `mi!cola`, `mi!coda`, `mi!katar`, `mi!قائمة_الانتظار` - remove: tr: /sil, az: /sil, en: /remove, pt: /remover, fr: /retirer, de: /entfernen, es: /quitar, it: /rimuovi, hi: /hatao, ar: /حذف; prefix names: `mi!remove`, `mi!sil`, `mi!remover`, `mi!retirer`, `mi!entfernen`, `mi!quitar`, `mi!rimuovi`, `mi!hatao`, `mi!حذف` - shuffle: tr: /karıştır, az: /qarışdır, en: /shuffle, pt: /embaralhar, fr: /mélanger, de: /mischen, es: /mezclar, it: /mescola, hi: /milao, ar: /خلط; prefix names: `mi!shuffle`, `mi!karıştır`, `mi!karistir`, `mi!qarisdir`, `mi!qarışdır`, `mi!embaralhar`, `mi!mélanger`, `mi!mischen`, `mi!mezclar`, `mi!mescola`, `mi!milao`, `mi!خلط` - clear: tr: /temizle, az: /təmizlə, en: /clear, pt: /limpar, fr: /vider, de: /leeren, es: /limpiar, it: /svuota, hi: /saaf, ar: /مسح; prefix names: `mi!clear`, `mi!temizle`, `mi!təmizlə`, `mi!limpar`, `mi!vider`, `mi!leeren`, `mi!limpiar`, `mi!svuota`, `mi!saaf`, `mi!مسح` - stop: tr: /durdur, az: /dayandır, en: /stop, pt: /parar, fr: /arrêter, de: /stopp, es: /detener, it: /ferma, hi: /band, ar: /إيقاف; prefix names: `mi!stop`, `mi!durdur`, `mi!dayandir`, `mi!dayandır`, `mi!parar`, `mi!arrêter`, `mi!stopp`, `mi!detener`, `mi!ferma`, `mi!band`, `mi!إيقاف` - volume: tr: /ses, az: /səs, en: /volume, pt: /volume, fr: /volume, de: /lautstärke, es: /volumen, it: /volume, hi: /awaaz, ar: /مستوى_الصوت; prefix names: `mi!volume`, `mi!ses`, `mi!səs`, `mi!lautstärke`, `mi!volumen`, `mi!awaaz`, `mi!مستوى_الصوت` - seek: tr: /sar, az: /mövqe, en: /seek, pt: /posição, fr: /sauter, de: /spulen, es: /posición, it: /posizione, hi: /samay, ar: /انتقال; prefix names: `mi!seek`, `mi!sar`, `mi!movqe`, `mi!mövqe`, `mi!posição`, `mi!sauter`, `mi!spulen`, `mi!posición`, `mi!posizione`, `mi!samay`, `mi!انتقال` - loop: tr: /tekrar, az: /təkrar, en: /loop, pt: /repetir, fr: /répéter, de: /wiederholen, es: /repetir, it: /ripeti, hi: /dohrao, ar: /تكرار; prefix names: `mi!loop`, `mi!repeat`, `mi!tekrar`, `mi!döngü`, `mi!dongu`, `mi!təkrar`, `mi!repetir`, `mi!répéter`, `mi!wiederholen`, `mi!ripeti`, `mi!dohrao`, `mi!تكرار` - list: tr: /liste, az: /siyahı, en: /list, pt: /lista, fr: /liste, de: /liste, es: /lista, it: /lista, hi: /suchi, ar: /القوائم; prefix names: `mi!list`, `mi!lists`, `mi!playlist`, `mi!liste`, `mi!listeler`, `mi!siyahi`, `mi!siyahı`, `mi!lista`, `mi!suchi`, `mi!القوائم` - history: tr: /geçmiş, az: /tarixçə, en: /history, pt: /histórico, fr: /historique, de: /verlauf, es: /historial, it: /cronologia, hi: /itihas, ar: /السجل; prefix names: `mi!history`, `mi!geçmiş`, `mi!gecmis`, `mi!tarixce`, `mi!tarixçə`, `mi!histórico`, `mi!historique`, `mi!verlauf`, `mi!historial`, `mi!cronologia`, `mi!itihas`, `mi!السجل` - join: tr: /katıl, az: /qoşul, en: /join, pt: /entrar, fr: /rejoindre, de: /beitreten, es: /unirse, it: /entra, hi: /judo, ar: /انضمام; prefix names: `mi!join`, `mi!katıl`, `mi!katil`, `mi!qosul`, `mi!qoşul`, `mi!entrar`, `mi!rejoindre`, `mi!beitreten`, `mi!unirse`, `mi!entra`, `mi!judo`, `mi!انضمام` - leave: tr: /ayrıl, az: /ayrıl, en: /leave, pt: /sair, fr: /quitter, de: /verlassen, es: /salir, it: /esci, hi: /chhodo, ar: /مغادرة; prefix names: `mi!leave`, `mi!ayrıl`, `mi!ayril`, `mi!sair`, `mi!quitter`, `mi!verlassen`, `mi!salir`, `mi!esci`, `mi!chhodo`, `mi!مغادرة` - help: tr: /yardım, az: /kömək, en: /help, pt: /ajuda, fr: /aide, de: /hilfe, es: /ayuda, it: /aiuto, hi: /madad, ar: /مساعدة; prefix names: `mi!help`, `mi!yardım`, `mi!yardim`, `mi!komutlar`, `mi!commands`, `mi!komek`, `mi!komandalar`, `mi!kömək`, `mi!ajuda`, `mi!aide`, `mi!hilfe`, `mi!ayuda`, `mi!aiuto`, `mi!madad`, `mi!مساعدة` - invite: tr: /davet, az: /dəvət, en: /invite, pt: /convidar, fr: /inviter, de: /einladen, es: /invitar, it: /invita, hi: /aamantran, ar: /دعوة; prefix names: `mi!invite`, `mi!davet`, `mi!dəvət`, `mi!convidar`, `mi!inviter`, `mi!einladen`, `mi!invitar`, `mi!invita`, `mi!aamantran`, `mi!دعوة` - ping: tr: /ping, az: /ping, en: /ping, pt: /ping, fr: /ping, de: /ping, es: /ping, it: /ping, hi: /ping, ar: /ping; prefix names: `mi!ping`, `mi!gecikme` - dj: tr: /dj, az: /dj, en: /dj, pt: /dj, fr: /dj, de: /dj, es: /dj, it: /dj, hi: /dj, ar: /dj; prefix names: `mi!dj` - language: tr: /dil, az: /dil, en: /language, pt: /idioma, fr: /langue, de: /sprache, es: /idioma, it: /lingua, hi: /bhasha, ar: /اللغة; prefix names: `mi!language`, `mi!dil`, `mi!lang`, `mi!idioma`, `mi!langue`, `mi!sprache`, `mi!lingua`, `mi!bhasha`, `mi!اللغة` - musicchannel: tr: /müzik-kanalı, az: /music-channel, en: /music-channel, pt: /music-channel, fr: /music-channel, de: /music-channel, es: /music-channel, it: /music-channel, hi: /music-channel, ar: /music-channel; prefix names: `mi!musicchannel`, `mi!music-channel`, `mi!müzik-kanalı`, `mi!muzik-kanali` ## Languages - Türkçe (`tr`): website https://mitune.net/, commands https://mitune.net/commands - Azərbaycanca (`az`): website https://mitune.net/az, commands https://mitune.net/az/commands - English (`en`): website https://mitune.net/en, commands https://mitune.net/en/commands - Português (Brasil) (`pt`): website https://mitune.net/pt, commands https://mitune.net/pt/commands - Français (`fr`): website https://mitune.net/fr, commands https://mitune.net/fr/commands - Deutsch (`de`): website https://mitune.net/de, commands https://mitune.net/de/commands - Español (`es`): website https://mitune.net/es, commands https://mitune.net/es/commands - Italiano (`it`): website https://mitune.net/it, commands https://mitune.net/it/commands - हिन्दी (`hi`): website https://mitune.net/hi, commands https://mitune.net/hi/commands - العربية (`ar`, right-to-left): website https://mitune.net/ar, commands https://mitune.net/ar/commands Members with Manage Server change the bot's server language from the flag menu opened by `/language` (`mi!dil`, `mi!language`). ## Recent release notes ### Audio quality improvements (2026-11-13) - You can now seek to any position in a track while it's playing. - Tracks now fade in and out smoothly at the start and end. - Loudness normalization keeps volume consistent across tracks. - Added an option to improve audio reliability in poor network conditions. - Improved audio processing for better quality and lower latency. ### Music Bot Updates (2026-11-13) - Improved audio playback quality and stability. - Updated commands and the web panel. - Refined search settings and selection playback. ### Mitune Update (2026-11-13) - Added Spotify playlist import. - Added a confirmation step before stopping playback. - Improved YouTube playlist support. - Updated translations for all supported languages. ### Bot Update (2026-11-12) - Help command descriptions and command list have been updated. - Spotify playlist support has been improved. - Library import feature has been updated. - Translations have been updated for all supported languages. ### Command suggestions and translation updates (2026-11-12) - Added command suggestions: you'll see helpful commands as you type. - Updated translations for all supported languages. ### New music features and improvements (2026-11-12) - Music requests can now be made with step-by-step guided prompts. - When a command isn't recognized, the bot suggests the right commands. - The playback queue can be edited directly, like reordering or removing tracks. - Stopping playback now asks for confirmation to prevent accidental stops. - Spotify playlists can be imported to your personal lists or straight into the queue, with progress updates. - A new /search command lets you search for music. - Server and channel managers can bypass DJ restrictions, while voice channel rules still apply. - Music starts faster thanks to a new audio cache, and songs are cached for 90 days. ### Music requests, queue editing, and Spotify imports (2026-11-12) - Music requests now guide you through the process step by step. - You'll see command suggestions as you type to help you find what you need. - You can now edit the playback queue directly. - Stopping playback asks for confirmation first. - Import Spotify playlists into your personal list or straight to the queue. - Spotify imports show progress automatically. - A new slash search command helps you find music faster. ### Playlist Order Fix (2026-11-11) - Playlist track order is now preserved correctly. ### Search Source Menu Removed from Player (2026-11-11) - The search source menu no longer appears on the player. ### New search settings, provider icons and faster loading (2026-11-11) - Search settings are here: you can choose which source results come from. - Tracks now show their provider icon (YouTube, Spotify, SoundCloud) in the queue and player. - Search commands now offer autocomplete suggestions as you type. - New media statistics are available. - Tracks load faster thanks to improved caching. ### Music bot improvements (2026-11-10) - Improved the DJ menu and playback controls. - Improved the web music panel. - Improved search and track selection. - Updated translations for all supported languages. ### Duplicate track handling and Spotify verification (2026-11-09) - Tracks added to your library are now automatically deduplicated. - Spotify metadata is verified to ensure accurate song information. ### Panel permissions and bot pool (2026-11-09) - You can now set permissions for the web music panel, so only allowed people can control playback. - We added a bot pool to handle more requests at once and keep music playing reliably. - The bot now sends clearer messages when the pool is busy or unavailable. ### Live server count in bot status (2026-11-08) - The bot status now shows the live server count and updates automatically. - This text appears in English. ### Music request channels and list menus (2026-11-08) - Music request channels are here: you can now request songs from dedicated channels. - Added list menus for the library, making it easier to browse. - The help menu has been updated to reflect the new features. - Interface translations have been updated for supported languages. ### Mitune Update (2026-11-08) - Updated the help menu and command catalog. - Improved the language selection menu. - Updated song pool replies. - Added feedback when the prefix is used. - Improved ownership checks and error messages. ### New bot languages (2026-11-08) - The bot now supports Portuguese, French, German, Spanish, Italian, Hindi and Arabic. ### Slash commands now follow your language (2026-11-07) - When the server has no language set, slash commands now appear in each user's own language. ### Library feature and Spotify improvements (2026-11-07) - Added a new library feature: save your songs and playlists. - Import playlists from Spotify. - Search results now include items from your library. - Improved Spotify playlist handling. ### False outage reports fixed (2026-11-07) - Fixed an issue that could make the bot appear offline when it was actually running. More: https://mitune.net/en/updates