A favicon of Project Siesta

Project Siesta

Create a versatile music bot for Telegram that caters to all your music needs. Enjoy seamless integration with various music services and manage your music library effortlessly. Enhance your Telegram experience with a powerful bot designed for music enthusiasts.

Installation

Installing for Claude Desktop

Manual Configuration Required

This MCP server requires manual configuration. Run the command below to open your configuration file:

npx mcpbar@latest edit -c claude

This will open your configuration file where you can add the Project Siesta MCP server manually.

Project-Siesta

GitHub Repo stars GitHub forks Docker Pulls Static Badge

AIO Bot for your music needs on Telegram.

Note: This is not a music streaming / VC Bot

FEATURES

Currently the project is in early development stage and features are incomplete

Feels free to check the repo and report bugs / features

A complete guide for downloading (coughs..) ehmm.... can be found here

INSTALLATION

1) LOCAL DEPLOYMENT

Requirements

  • Python>=3.10 (3.12 recommended)
  • Git installed (optional)
  • Rclone (optional)
  • ffmpeg (optional)

Steps

  • Git clone (or download) the repo
  • Create virtual environment and run
virtualenv -p python3 VENV
. ./VENV/bin/activate
  • Edit and fill out the essentials environment variables in sample.env (refer here)
  • Rename sample.env to .env
  • Finally run
pip install -r requirements.txt
python -m bot

2) USING DOCKER (Manual Build)

Requirements

  • Git installed (optional)
  • Of course Docker installed (how would ya do docker method without docker 🤷‍)

Steps

  • Git clone (or download) the repo
  • Fill out the required variables in sample.env (refer here)
  • Build the image using the Docker build command
sudo docker build . -t project-siesta
  • Now run the created Docker image
sudo docker run -d --env-file sample.env --name siesta project-siesta
  • At this point your bot will be running (if everything correct)

3) USING DOCKER (Prebuilt Image)

Premade Docker Images are available at Dockerhub repo weebzbots/project-siesta These images are made using GitHub Actions

  • Supported architectures
    • arm64
    • amd64
  • Build Tags
    • latest - Latest stable releases from main branch
    • beta - Latest beta releases from beta branch (early feature testing)
    • <commit-hash> - You can use specific commit hash for specific versions

Requirements

  • Of course Docker installed (how would ya do docker method without docker 🤷‍)

Steps

  • Pull the Docker image
sudo docker pull weebzcloud/project-siesta
  • Somewhere in your server, create a .env file with required variables (refer here)
  • Run the image
sudo docker run -d --env-file .env --name siesta project-siesta
  • At this point your bot will be running (if everything correct)

VARIABLES INFO

ESSENTIAL VARIABLES

  • TG_BOT_TOKEN - Telegeam bot token (get it from BotFather)
  • APP_ID - Your Telegram APP ID (get it from my.telegram.org) (int)
  • API_HASH - Your Telegram APP HASH (get it from my.telegram.org) (str)
  • DATABASE_URL - Postgres database URL (self hosted or any service) (str)
  • BOT_USERNAME - Your Telegram Bot username (with or without @) (str)
  • ADMINS - List of Admin users for the Bot (seperated by space) (str)

OPTIONAL VARIABLES

  • DOWNLOAD_BASE_DIR - Downloads folder for the bot (folder is inside the working directory of bot) (str)
  • LOCAL_STORAGE - Folder (full path needed) where you want to store the downloaded file the server itself rather than uploading (str)
  • RCLONE_CONFIG - Rclone config as text or URL to file (can ignore this if you add file manually to root of repo) (str)
  • RCLONE_DEST - Rclone destination as remote-name:folder-in-remote (str)
  • INDEX_LINK - If index link needed for Rclone uploads (testes with alist) (no trailing slashes / ) (str)
  • MAX_WORKERS - Multithreading limit (kind of more speed) (int)
  • TRACK_NAME_FORMAT - Naming format for tracks (check metadata section for tags supported) (str)
  • PLAYLIST_NAME_FORMAT - Similar to TRACK_NAME_FORMAT but for Playlists (Note: all tags might not be available) (str)
  • QOBUZ_EMAIL - Email ID for logging into Qobuz (str)
  • QOBUZ_PASSWORD - Password for logging into Qobuz (str)
  • QOBUZ_USER - User ID for Qobuz (either use Email or this) (int)
  • QOBUZ_TOKEN - User token for Qobuz (either use password or this) (str)
  • ENABLE_TIDAL - To enable the Tidal module - True/False (bool)
  • TIDAL_MOBILE - To enable Tidal Mobile sessions - True/False (bool)
  • TIDAL_MOBILE_TOKEN - HiRes Mobile token for Tidal (str)
  • TIDAL_ATMOS_MOBILE_TOKEN - Atmos Mobile token for Tidal (str)
  • TIDAL_TV_TOKEN - TV/Auto Token for Tidal (str)
  • TIDAL_TV_SECRET - TV/Auto Token for Tidal (str)
  • TIDAL_CONVERT_M4A - Convert the MAX quality tracks to FLAC (bool)

CREDITS

Support Me ❤️

ko-fi

TON - UQBBPkWSnbMWXrM6P-pb96wYxQzLjZ2hhuYfsO-N2pVmznCG

Share:
Details:
  • Stars


    0
  • Forks


    0
  • Last commit


    5 months ago
  • Repository age


    11 months
View Repository

Auto-fetched from GitHub .

MCP servers similar to Project Siesta:

 

 
 
  • Stars


  • Forks


  • Last commit


 

 
 
  • Stars


  • Forks


  • Last commit


 

 
 
  • Stars


  • Forks


  • Last commit