kinozal-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@kinozal-mcpsearch torrents for interstellar"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Kinozal MCP Server
MCP (Model Context Protocol) сервер для работы с торрент-трекером kinozal.tv.
Возможности
🔍 Поиск торрентов - поиск по названию с возможностью пагинации
📊 Подробная информация - получение детальных данных о торренте (название, год, жанр, качество, размер, сиды/пиры)
⬇️ Скачивание торрент-файлов - загрузка .torrent файлов на компьютер (требуется авторизация)
Related MCP server: Fr Torrent Search MCP Server
Установка
Быстрый запуск через npx (рекомендуется)
Не требует установки, запускается напрямую:
npx kinozal-mcpГлобальная установка
npm install -g kinozal-mcp
kinozal-mcpЛокальная установка
npm install kinozal-mcpУстановка из исходников
Клонируйте репозиторий:
git clone <repository-url>
cd kinozal_mcpУстановите зависимости:
npm installСоберите проект:
npm run buildНастройка авторизации
Для скачивания торрентов настройте переменные окружения:
KINOZAL_USERNAME=ваш_логин
KINOZAL_PASSWORD=ваш_парольЭто позволит скачивать торренты без передачи логина/пароля в каждом запросе.
Использование
Настройка в Claude Desktop
Добавьте следующую конфигурацию в файл claude_desktop_config.json:
MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Вариант 1: Использование npx (рекомендуется)
{
"mcpServers": {
"kinozal": {
"command": "npx",
"args": ["kinozal-mcp"],
"env": {
"KINOZAL_USERNAME": "ваш_логин",
"KINOZAL_PASSWORD": "ваш_пароль"
}
}
}
}Вариант 2: Локальная установка
{
"mcpServers": {
"kinozal": {
"command": "node",
"args": ["/путь/к/проекту/kinozal_mcp/build/index.js"],
"env": {
"KINOZAL_USERNAME": "ваш_логин",
"KINOZAL_PASSWORD": "ваш_пароль"
}
}
}
}Замените путь на актуальный путь к вашему проекту.
Использование с другими MCP клиентами
Просто запустите сервер:
npx kinozal-mcpДоступные инструменты
1. search_torrents
Поиск торрентов по запросу.
Параметры:
query(string, обязательный) - поисковый запрос (название фильма/сериала/музыки)page(number, опциональный) - номер страницы (по умолчанию: 0)
Пример:
{
"query": "matrix",
"page": 0
}Возвращает:
[
{
"id": "1980167",
"title": "Матрица (Трилогия) / The Matrix: Trilogy / 1999-2003",
"size": "42.85 ГБ",
"seeds": 12,
"peers": 3,
"comments": 11,
"uploadDate": "23.12.2025 в 05:48",
"uploader": "vitalikmd",
"category": "13"
}
]2. get_torrent_details
Получение подробной информации о торренте.
Параметры:
id(string, обязательный) - ID торрента из kinozal.tv
Пример:
{
"id": "1980167"
}Возвращает:
{
"id": "1980167",
"title": "Матрица: Трилогия",
"originalTitle": "The Matrix. Trilogy",
"year": "1999-2003",
"genre": "Фантастика, антиутопия, триллер",
"director": "Лилли Вачовски, Лана Вачовски",
"cast": "Киану Ривз, Лоуренс Фишборн...",
"description": "Фильм изображает будущее...",
"quality": "HDDVDRip (1080p)",
"video": "MPEG-H HEVC, ~ 8000 Кбит/с, 1920x800",
"audio": "...",
"size": "42.85 ГБ",
"seeds": 12,
"peers": 3,
"uploadDate": "10 июня 2023 в 08:06",
"updateDate": "23 декабря 2025 в 05:48"
}3. download_torrent
Скачивание .torrent файла (требуется учетная запись на kinozal.tv).
Параметры:
id(string, обязательный) - ID торрентаoutputPath(string, обязательный) - путь для сохранения .torrent файлаusername(string, опциональный) - логин на kinozal.tv (если не задан в .env)password(string, опциональный) - пароль на kinozal.tv (если не задан в .env)
Пример 1: Использование переменных окружения (рекомендуется)
{
"id": "1980167",
"outputPath": "/Users/user/Downloads/matrix.torrent"
}Пример 2: Передача учетных данных напрямую
{
"id": "1980167",
"outputPath": "/Users/user/Downloads/matrix.torrent",
"username": "your_username",
"password": "your_password"
}Возвращает:
{
"success": true,
"message": "Torrent file downloaded successfully",
"path": "/Users/user/Downloads/matrix.torrent"
}Структура проекта
kinozal_mcp/
├── src/
│ ├── index.ts # Основной MCP сервер
│ ├── kinozal.ts # Функции для работы с kinozal.tv
│ └── cookie-jar.ts # Управление cookies для авторизации
├── build/ # Скомпилированные JS файлы
├── package.json
├── tsconfig.json
└── README.mdРазработка
Для разработки с автоматической перекомпиляцией:
npm run watchТехнические детали
Парсинг HTML: Используется cheerio для извлечения данных из страниц
Кодировка: kinozal.tv использует Windows-1251, данные автоматически конвертируются в UTF-8
Авторизация: Для скачивания торрент-файлов используется сессионная авторизация через cookies
MCP SDK: Сервер построен на @modelcontextprotocol/sdk
Примечания
Для использования функции
download_torrentнеобходима регистрация на kinozal.tvРекомендуется: Настройте
.envфайл с учетными данными для удобства и безопасностиУчетные данные можно передавать как через
.env, так и напрямую в параметрах инструментаСервер использует публичные страницы kinozal.tv и не нарушает правила трекера
Скачивание торрентов возможно только после авторизации
Лицензия
MIT
Available Tools
3 toolsdownload_torrentA
Download .torrent file to specified path. Credentials can be provided via arguments or environment variables (KINOZAL_USERNAME, KINOZAL_PASSWORD).
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Torrent ID from kinozal.tv | |
| outputPath | Yes | Path where to save .torrent file | |
| username | No | kinozal.tv username (optional if KINOZAL_USERNAME env var is set) | |
| password | No | kinozal.tv password (optional if KINOZAL_PASSWORD env var is set) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully disclose behavioral traits. It covers authentication flexibility but omits important details such as whether the tool can overwrite existing files, rate limits, or error handling behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, with the first sentence stating the core purpose upfront. Every sentence is concise and informative without unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 4 parameters (2 required) and no output schema, the description covers the core action and authentication but is silent on return values, error handling, or file overwrite behavior. Adequate for a simple tool but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds value by clarifying that username/password can be set via environment variables, beyond the schema descriptions which only mention optionality. However, for required parameters id and outputPath, no new meaning is added.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Download .torrent file to specified path', specifying the verb (Download) and resource (.torrent file). It effectively distinguishes from siblings which are 'get_torrent_details' and 'search_torrents'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides guidance on authentication methods (arguments or environment variables), but does not advise when to use this tool over siblings or exclude scenarios. No when-not-to or alternative recommendations are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_torrent_detailsA
Get detailed information about a specific torrent by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Torrent ID from kinozal.tv |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does not mention any behavioral traits such as read-only nature, authentication requirements, rate limits, or what happens if the ID is invalid. The description is too sparse to inform the agent about side effects or constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence of 10 words with no wasted content. It efficiently conveys the core purpose without unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity (1 parameter, no output schema), the description covers the input need but fails to describe the return value or output format. For a tool that provides 'detailed information', the agent would benefit from knowing what fields or structure to expect, which is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single 'id' parameter, which already explains it's a 'Torrent ID from kinozal.tv'. The tool description adds no additional meaning beyond what the schema provides, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('get detailed information'), the resource ('specific torrent'), and the required identifier ('by ID'). It effectively distinguishes from sibling tools 'download_torrent' and 'search_torrents' by specifying a distinct purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use when a specific torrent ID is known and details are needed, but it provides no explicit when-to-use or when-not-to-use guidance, nor does it mention alternatives despite the presence of sibling tools like 'search_torrents'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_torrentsB
Search for torrents on kinozal.tv by query. Returns list of torrents with title, size, seeds, peers and ID.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query (movie/show/music title) | |
| page | No | Page number (default: 0) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must disclose behavior. Only states it returns a list; missing details like authentication needs, rate limits, result limitations (e.g., max pages). Minimally transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence efficiently conveys purpose and return value. No extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Describes return fields, but lacks pagination details like results per page or total pages. Adequate for a simple search tool, but could be more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter descriptions. Description adds no additional semantic value beyond the schema, achieving baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it searches for torrents on kinozal.tv by query and returns specific fields. Differentiates from siblings (download_torrent, get_torrent_details) by focusing on search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus siblings. Implies use for searching, but no exclusions or alternative contexts provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
3 tool updates
v1.0.0- First observed
download_torrent - First observed
get_torrent_details - First observed
search_torrents
TDQS
Scored across 3 tools
Each tool has a distinct purpose: search, get details, and download. No overlap or ambiguity.
All tools use consistent verb_noun snake_case pattern (download_torrent, get_torrent_details, search_torrents).
3 tools is well-scoped for a torrent server, covering search, details, and download without unnecessary extras.
Covers core torrent operations, but lacks features like category browsing or upload. Minor gap.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
MCP server for Russian books search, details, and recommendation candidates.
MCP server for the FFmpeg Micro video transcoding API — create, monitor, download transcodes.
MCP server for prozorro_tender_monitor_mcp
Related MCP Servers
- AlicenseAqualityAmaintenanceA Python MCP server that allows programmatic interaction to find torrents programmatically on ThePirateBay, Nyaa and YggTorrent.630PythonMIT
- AlicenseBqualityFmaintenanceA Python MCP server that allows programmatic interaction to find torrents programmatically on YggTorrent and La Cale.42MIT
- AlicenseNot gradedqualityBmaintenanceMCP server for reelgrep - browse and search your local video library from any MCP client.11MIT
- AlicenseAqualityCmaintenanceMCP server for the OMDb API - search movies, series, and episodes from any MCP-compatible client.5MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/tokezooo/kinozal-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server