Provides containerized deployment of the YggTorrent MCP server with Docker and Docker Compose for easy setup and isolation.
Supports configuration through environment variables using .env files for storing sensitive information like the YggTorrent passkey.
Enables cloning the YggTorrent MCP repository directly from GitHub for local installation and development.
Allows installation of the YggTorrent MCP package directly via pip from the Python Package Index.
Supports direct integration with Python applications through a wrapper library that can be imported and used programmatically.
YggTorrent MCP Server & Wrapper
This repository provides a Python wrapper for the YggTorrent website and an MCP (Model Context Protocol) server to interact with it programmatically. This allows for easy integration of YggTorrent functionalities into other applications or services.
Features
- API wrapper for YggAPI, an unofficial API for YggTorrent.
- Your Ygg passkey is injected locally into the torrent file/magnet link, ensuring it's not exposed externally.
- MCP server interface for standardized communication.
- Search for torrents on YggTorrent (MCP tool).
- Get details for a specific torrent (MCP tool).
- Retrieve magnet links (MCP tool).
- Retrieve torrent files (wrapper only).
- Retrieve torrent categories (MCP resource).
Setup
There are two primary ways to set up and run this project: using a local Python environment or using Docker.
Prerequisites
- An active YggTorrent account with a passkey.
- Python 3.10+ (for local Python setup)
- pip (Python package installer, for local Python setup)
- Docker and Docker Compose (for Docker setup)
Install from PyPI
1. Local Python Environment Setup
- Clone the repository:
- Create and activate a virtual environment (recommended):
- Install dependencies:
- Configure environment variables:Copy the
.env.example
file to.env
and fill in the required variables (Ygg passkey). - Run the MCP Server:The MCP server will be accessible locally on port 8000.
2. Docker Setup
This project includes a Dockerfile
and docker-compose.yaml
for easy containerization.
- Clone the repository (if you haven't already):
- Configure environment variables:Copy the
.env.example
file to.env
and fill in the required variables (Ygg passkey). - Build and run the Docker container using Docker Compose:This command will build the Docker image (if it doesn't exist) and start the service.
- Accessing the server:The MCP server will be accessible on port 8765.
Usage
As Python Wrapper
As MCP Server
Via MCP Clients
Once the MCP server is running, you can interact with it using any MCP-compatible client. The server will expose endpoints for:
search_torrents
: Search for torrents.get_torrent_details
: Get details of a specific torrent.get_magnet_link
: Get the magnet link for a torrent.
Example for Windsurf
Contributing
Contributions are welcome! Please feel free to submit a Pull Request or open an Issue.
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
A Python MCP server that allows programmatic interaction with YggTorrent, enabling torrent search, details retrieval, and magnet link generation without exposing your Ygg passkey.
Related MCP Servers
- -securityFlicense-qualityThis is an MCP server that facilitates building tools for interacting with various APIs and workflows, supporting Python-based development with potential for customizable prompts and user configurations.Last updated -Python
- -securityAlicense-qualityA Python-based MCP server that crawls websites to extract and save content as markdown files, with features for mapping website structure and links.Last updated -1PythonMIT License
- AsecurityAlicenseAqualityA server that provides a persistent Python REPL environment through the MCP protocol, allowing execution of Python code, variable management, and package installation.Last updated -33PythonMIT License
- -securityFlicense-qualityA Python-based server that helps users easily install and configure other MCP servers across different platforms.Last updated -2Python