4c3aea84345c90bc9406f35325dfb6e56ad8e016
🎵 Suno MCP Server
MCP сервер для Suno API — генерация AI-музыки, текстов, видео, обработка аудио прямо из opencode.
24 инструмента, rate limiter, proxy support, полное покрытие эндпоинтов. Встроенный Prompt Engineering Guide для Suno v5/v5.5 с разметкой Lyrics/Style/Negative Prompt, золотыми правилами по жанрам и управлением вокалом.
🚀 Быстрый старт
git clone https://git.hidosi.ru/Hidosi/suno-mcp-server.git
cd suno-mcp-server/suno-server
npm install
Сервер уже скомпилирован в dist/ — можно запускать сразу.
⚙️ Подключение к opencode
Добавь в свой opencode.json:
"mcp": {
"suno": {
"type": "local",
"command": ["node", "/путь/к/suno-server/dist/index.js"],
"env": {
"SUNO_API_KEY": "твой-api-ключ"
}
}
}
Готовый конфиг лежит здесь: .opencode/opencode.json.
Перезапусти opencode. Агентам будет доступен skill suno с инструкцией на русском и Prompt Engineering Guide.
🎹 Skill для агентов
В комплекте идёт .opencode/skills/suno/SKILL.md — инструкция, по которой агенты учатся правильно формировать промпты для Suno:
- Три блока промпта: Lyrics (с мета-тегами
[Verse],[Chorus],[Bridge]), Style (иерархия: genre → vocal → instrumentation → recording), Negative Prompt (через запятые безno) - Золотые правила: Disco, Latin, Blues, Brazilian Funk, Electronic, Rock, Jazz
- Управление вокалом: octave higher, dry vocal, no vocal intro, harmonies
- Лимиты символов: Style до 200 (V4) или 1000 (V4.5/V5/V5.5)
- Пример готового промпта: рок-трек «Восхождение»
- Чек-лист перед отправкой
🔧 Переменные окружения
| Переменная | Назначение |
|---|---|
SUNO_API_KEY |
API ключ (обязательно) |
SUNO_HTTP_PROXY |
HTTP/S прокси (приоритет) |
HTTPS_PROXY |
HTTP/S прокси |
HTTP_PROXY |
HTTP прокси |
🧪 Проверка
cd suno-server
SUNO_API_KEY=твой-ключ node test-real.js
Сделает два безопасных вызова:
suno_get_credits— проверит аутентификацию и покажет балансsuno_boost_style— 0.4 кредита, улучшит описание стиля
С прокси:
SUNO_API_KEY=твой-ключ SUNO_HTTP_PROXY=http://proxy:8080 node test-real.js
🛠️ Инструменты (24 шт)
| Инструмент | Эндпоинт | Кредиты |
|---|---|---|
suno_generate_music |
POST /generate |
12 |
suno_generate_lyrics |
POST /lyrics |
0.4 |
suno_generate_sounds |
POST /generate/sounds |
2.5 |
suno_extend_music |
POST /generate/extend |
12 |
suno_replace_section |
POST /generate/replace-section |
5 |
suno_add_vocals |
POST /generate/add-vocals |
12 |
suno_add_instrumental |
POST /generate/add-instrumental |
12 |
suno_upload_and_cover |
POST /generate/upload-cover |
12 |
suno_upload_and_extend |
POST /generate/upload-extend |
12 |
suno_generate_mashup |
POST /generate/mashup |
12 |
suno_separate_vocals |
POST /vocal-removal/generate |
10 |
suno_separate_stems |
POST /vocal-removal/generate (split_stem) |
20 |
suno_create_video |
POST /generate/video |
2 |
suno_create_cover |
POST /generate/cover |
0 |
suno_convert_to_wav |
POST /generate/wav |
0.4 |
suno_boost_style |
POST /style/generate |
0.4 |
suno_generate_persona |
POST /generate/persona |
0 |
suno_get_task_status |
GET /generate/record-info |
0 |
suno_get_timestamped_lyrics |
GET /generate/timestamped-lyrics |
0.5 |
suno_get_lyrics_details |
GET /generate/lyrics-info |
0 |
suno_get_wav_details |
GET /generate/wav-info |
0 |
suno_get_vocal_separation_details |
GET /vocal-removal/record-info |
0 |
suno_get_video_details |
GET /generate/video-info |
0 |
suno_get_credits |
GET /generate/credit |
0 |
📊 Модели
| Модель | Длина | Особенности |
|---|---|---|
V4 |
до 4 мин | Лучшее качество звука |
V4_5 |
до 8 мин | Умные промпты, быстрее |
V4_5PLUS |
до 8 мин | Более насыщенный звук |
V4_5ALL |
до 8 мин | Лучшая структура песни |
V5 |
до 8 мин | Музыкальность + скорость |
V5_5 |
до 8 мин | Кастомные голоса |
📋 Лимиты
- Rate limit: 20 запросов / 10 секунд
- Кредиты: не истекают
- Стоимость: $0.005 USD / кредит
- Файлы: хранятся 15 дней после генерации
📁 Структура проекта
suno-mcp-server/
├── suno-server/
│ ├── src/
│ │ ├── index.ts # Точка входа — MCP Server (stdio)
│ │ ├── client.ts # HTTP клиент + rate limiter + прокси
│ │ ├── schemas.ts # Zod схемы валидации параметров
│ │ ├── tools.ts # 24 MCP tool definitions → JSON Schema
│ │ └── handlers.ts # Обработчики + polling async-задач
│ ├── dist/ # Скомпилированный JS
│ ├── test-real.js # Тестовый скрипт с реальным API
│ ├── package.json
│ └── tsconfig.json
├── .opencode/
│ ├── opencode.json # Пример конфига
│ └── skills/suno/SKILL.md # Skill для агентов + Prompt Engineering Guide
└── README.md
👩💻 Разработка
cd suno-server
npm install
npm run build # однократная сборка
npm run dev # watch-режим
🔗 Ссылки
Languages
TypeScript
91.1%
JavaScript
8.9%