SunoMCP
](https://pypi.org/project/mcp-suno/) ](https://pypi.org/project/mcp-suno/)   
A. 模型上下文协议(MCP) 用于AI音乐生成的服务器 苏诺 通过 AceDataCloud API.
直接从Claude、VS Code或任何兼容MCP的客户端生成AI音乐、歌词并管理音频项目。
特性
- 音乐发生器 -根据文本提示创建AI生成的歌曲
- 自定义歌词和风格 -完全控制歌词、标题和音乐风格
- 歌曲扩展 -从任何时间戳继续现有歌曲
- 封面/混音 -创建不同风格的封面版本
- 歌词生成 -根据描述生成结构化歌词
- 人物管理 -保存和重用语音样式
- 任务跟踪 -监控生成进度并检索结果
工具参考
| 工具 | 说明 |
|---|---|
suno_generate_music | 使用Suno的灵感模式从文本提示生成AI音乐。 |
suno_generate_custom_music | 生成具有完全控制歌词、标题和风格的AI音乐(自定义模式)。 |
suno_extend_music | 使用新歌词从特定时间戳扩展现有歌曲。 |
suno_cover_music | 以不同的风格创建现有歌曲的封面或混音版本。 |
suno_concat_music | 将扩展的歌曲片段连接成一个完整的音频文件。 |
suno_generate_with_persona | 使用保存的艺术家角色生成音乐,以保持一致的声乐风格。 |
suno_remaster_music | 重新录制现有歌曲以提高音质。 |
suno_stems_music | 将歌曲分成单独的声部(人声和乐器)。 |
suno_replace_section | 用新生成的内容替换歌曲中的特定时间范围。 |
suno_upload_extend | 使用新的AI生成内容扩展上传的音频(您自己的音乐)。 |
suno_upload_cover | 为上传的音频(您自己的音乐)创建AI封面。 |
suno_mashup_music | 通过将多首歌曲混合在一起创建音乐混搭。 |
suno_generate_lyrics | 从文本提示生成歌词。 |
suno_get_mp4 | 获取生成歌曲的MP4视频版本。 |
suno_get_timing | 获取生成歌曲的计时和字幕数据。 |
suno_extract_vocals | 从生成的歌曲中提取声轨(词干分离)。 |
suno_get_wav | 获取生成歌曲的无损WAV格式。 |
suno_get_midi | 从生成的歌曲中提取MIDI数据。 |
suno_create_persona | 从现有音频的声音风格创建新的艺术家角色。 |
suno_optimize_style | 优化音乐风格描述以获得更好的生成结果。 |
suno_mashup_lyrics | 通过组合两组歌词生成混搭歌词。 |
suno_upload_audio | 将外部音频文件上传到Suno,以便在后续操作中使用。 |
suno_get_task | 查询音乐生成任务的状态和结果。 |
suno_get_tasks_batch | 一次查询多个音乐生成任务。 |
suno_list_models | 列出所有可用的Suno型号及其功能。 |
suno_list_actions | 列出所有可用的Suno API操作和相应的工具。 |
suno_get_lyric_format_guide | 获取关于为Suno音乐一代格式化歌词的指导。 |
快速开始
1.获取您的API代币
- 注册地址: AceDataCloud平台
- 去 API文档页
- 点击 “收购” 获取您的API令牌
- 复制令牌以在下面使用
2.使用托管服务器(推荐)
AceDataCloud托管托管MCP服务器-- 无需本地安装.
端点: https://suno.mcp.acedata.cloud/mcp
所有请求都需要一个Bearer令牌。使用步骤1中的API令牌。
Claude.ai
直接连接 Claude.ai 使用OAuth-- 不需要API令牌:
- 转到Claude.ai 设置→ 集成→ 添加更多
- 输入服务器URL:
https://suno.mcp.acedata.cloud/mcp - 完成OAuth登录流程
- 开始在对话中使用工具
克劳德桌面版
添加到您的配置(~/Library/Application Support/Claude/claude_desktop_config.json 在macOS上):
{
"mcpServers": {
"suno": {
"type": "streamable-http",
"url": "https://suno.mcp.acedata.cloud/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}光标/风帆
添加到MCP配置(.cursor/mcp.json 或 .windsurf/mcp.json):
{
"mcpServers": {
"suno": {
"type": "streamable-http",
"url": "https://suno.mcp.acedata.cloud/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}VS代码(副本)
添加到您的VS代码MCP配置中(.vscode/mcp.json):
{
"servers": {
"suno": {
"type": "streamable-http",
"url": "https://suno.mcp.acedata.cloud/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}或安装 Ace数据云MCP扩展 对于VS Code,它通过一键设置捆绑了所有15个MCP服务器。
JetBrains集成开发环境
- 首选 设置→ 工具→ AI助手→ 模型上下文协议(MCP)
- 点击 添加 → 超文本传输协议
- 粘贴:
{
"mcpServers": {
"suno": {
"url": "https://suno.mcp.acedata.cloud/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}克劳德代码
Claude Code原生支持MCP服务器:
claude mcp add suno --transport http https://suno.mcp.acedata.cloud/mcp \
-h "Authorization: Bearer YOUR_API_TOKEN"或添加到您的项目 .mcp.json:
{
"mcpServers": {
"suno": {
"type": "streamable-http",
"url": "https://suno.mcp.acedata.cloud/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}克莱恩
添加到Cline的MCP设置(.cline/mcp_settings.json):
{
"mcpServers": {
"suno": {
"type": "streamable-http",
"url": "https://suno.mcp.acedata.cloud/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}亚马逊Q开发者
添加到MCP配置中:
{
"mcpServers": {
"suno": {
"type": "streamable-http",
"url": "https://suno.mcp.acedata.cloud/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}Roo代码
添加到Roo Code MCP设置:
{
"mcpServers": {
"suno": {
"type": "streamable-http",
"url": "https://suno.mcp.acedata.cloud/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}Continue.dev
添加 .continue/config.yaml:
mcpServers:
- name: suno
type: streamable-http
url: https://suno.mcp.acedata.cloud/mcp
headers:
Authorization: "Bearer YOUR_API_TOKEN"泽德
添加到Zed的设置中(~/.config/zed/settings.json):
{
"language_models": {
"mcp_servers": {
"suno": {
"url": "https://suno.mcp.acedata.cloud/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}
}cURL测试
# Health check (no auth required)
curl https://suno.mcp.acedata.cloud/health
# MCP initialize
curl -X POST https://suno.mcp.acedata.cloud/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}}'3.或在本地运行(替代方案)
如果您更喜欢在自己的计算机上运行服务器:
# Install from PyPI
pip install mcp-suno
# or
uvx mcp-suno
# Set your API token
export ACEDATACLOUD_API_TOKEN="your_token_here"
# Run (stdio mode for Claude Desktop / local clients)
mcp-suno
# Run (HTTP mode for remote access)
mcp-suno --transport http --port 8000克劳德桌面(本地)
{
"mcpServers": {
"suno": {
"command": "uvx",
"args": ["mcp-suno"],
"env": {
"ACEDATACLOUD_API_TOKEN": "your_token_here"
}
}
}
}Docker(自托管)
docker pull ghcr.io/acedatacloud/mcp-suno:latest
docker run -p 8000:8000 ghcr.io/acedatacloud/mcp-suno:latest客户端使用自己的Bearer令牌进行连接——服务器从每个请求中提取令牌 Authorization 头球
可用工具
音乐发生器
| 工具 | 说明 |
|---|---|
generate_music | 从文本提示生成音乐(灵感模式) |
generate_custom_music | 使用自定义歌词、标题和风格生成 |
extend_music | 从时间戳扩展现有歌曲 |
cover_music | 创建封面/混音版本 |
concat_music | 将扩展片段合并为完整音频 |
generate_with_persona | 使用保存的语音样式生成 |
remaster_music | 重新录制现有歌曲以提高音质 |
stems_music | 将歌曲分成单独的声部(人声/乐器) |
replace_section | 用新生成的内容替换特定的时间范围 |
upload_extend | 使用新的AI生成内容扩展上传的音频 |
upload_cover | 创建上传音频的AI封面 |
mashup_music | 通过将多首歌曲混合在一起创建混搭 |
歌词
| 工具 | 说明 |
|---|---|
generate_lyrics | 根据提示生成歌词 |
mashup_lyrics | 通过组合两组歌词生成混搭歌词 |
optimize_style | 优化样式描述以获得更好的生成结果 |
媒体转换
| 工具 | 说明 |
|---|---|
get_mp4 | 获取生成歌曲的MP4视频版本 |
get_wav | 获取生成歌曲的无损WAV格式 |
get_midi | 从生成的歌曲中提取MIDI数据 |
get_timing | 获取生成歌曲的计时和字幕数据 |
extract_vocals | 从生成的歌曲中提取音轨 |
角色
| 工具 | 说明 |
|---|---|
create_persona | 保存语音样式以供重用 |
上传
| 工具 | 说明 |
|---|---|
upload_audio | 上传外部音频文件以供后续操作使用 |
任务
| 工具 | 说明 |
|---|---|
get_task | 查询单个任务状态 |
get_tasks_batch | 一次查询多个任务 |
信息
| 工具 | 说明 |
|---|---|
list_models | 列出可用的Suno型号 |
list_actions | 列出可用的API操作 |
get_lyric_format_guide | 获取歌词格式指南 |
用法示例
从Prompt生成音乐
User: Create a happy birthday song
Claude: I'll generate a birthday song for you.
[Calls generate_music with prompt="A happy birthday celebration song"]使用自定义歌词生成
User: Create a rock song with these lyrics:
[Verse]
Thunder in the night
Electric soul ignite
[Chorus]
We are the storm
Claude: I'll create a rock song with your lyrics.
[Calls generate_custom_music with lyrics, title="Storm", style="rock, powerful"]扩展歌曲
User: Continue this song from the 2-minute mark with a bridge section
Claude: I'll extend the song with a bridge.
[Calls extend_music with audio_id, continue_at=120, lyric="[Bridge]..."]可用模型
| 型号 | 版本 | 最大持续时间 | 功能 |
|---|---|---|---|
chirp-v5-5 | V5.5 | 8分钟 | 最新、最优质 |
chirp-v5 | V5 | 8分钟 | 高品质 |
chirp-v4-5-plus | V4.5+ | 8分钟 | 质量提升 |
chirp-v4-5 | V4.5 | 4分钟 | 声乐性别控制 |
chirp-v4 | V4 | 150秒 | 稳定 |
chirp-v3-5 | V3.5 | 120秒 | 快速 |
chirp-v3-0 | V3 | 120秒 | 传统 |
声乐性别控制 (仅限v4.5+版本):
f-女声m-男声
配置
环境变量
| 变量 | 描述 | 默认值 |
|---|---|---|
ACEDATACLOUD_API_TOKEN | 来自AceDataCloud的API令牌 | 必需 |
ACEDATACLOUD_API_BASE_URL | API基本URL | https://api.acedata.cloud |
ACEDATACLOUD_OAUTH_CLIENT_ID | OAuth客户端ID(托管模式) | -- |
ACEDATACLOUD_PLATFORM_BASE_URL | 平台基础URL | https://platform.acedata.cloud |
SUNO_DEFAULT_MODEL | 生成的默认模型 | chirp-v5-5 |
SUNO_REQUEST_TIMEOUT | 请求超时(秒) | 1800 |
LOG_LEVEL | 日志记录级别 | INFO |
命令行选项
mcp-suno --help
Options:
--version Show version
--transport Transport mode: stdio (default) or http
--port Port for HTTP transport (default: 8000)发展
设置开发环境
# Clone repository
git clone https://github.com/AceDataCloud/SunoMCP.git
cd SunoMCP
# Create virtual environment
python -m venv .venv
source .venv/bin/activate # or `.venv\Scripts\activate` on Windows
# Install with dev dependencies
pip install -e ".[dev,test]"运行测试
# Run unit tests
pytest
# Run with coverage
pytest --cov=core --cov=tools
# Run integration tests (requires API token)
pytest tests/test_integration.py -m integration代码质量
# Format code
ruff format .
# Lint code
ruff check .
# Type check
mypy core tools构建和发布
# Install build dependencies
pip install -e ".[release]"
# Build package
python -m build
# Upload to PyPI
twine upload dist/*项目结构
SunoMCP/
├── core/ # Core modules
│ ├── __init__.py
│ ├── client.py # HTTP client for Suno API
│ ├── config.py # Configuration management
│ ├── exceptions.py # Custom exceptions
│ ├── server.py # MCP server initialization
│ └── utils.py # Utility functions
├── tools/ # MCP tool definitions
│ ├── __init__.py
│ ├── audio_tools.py # Audio generation tools
│ ├── info_tools.py # Information tools
│ ├── lyrics_tools.py # Lyrics generation tools
│ ├── media_tools.py # Media conversion tools
│ ├── persona_tools.py # Persona management tools
│ └── task_tools.py # Task query tools
├── tests/ # Test suite
│ ├── conftest.py
│ ├── test_client.py
│ ├── test_config.py
│ ├── test_integration.py
│ └── test_utils.py
├── deploy/ # Deployment configs
│ └── production/
│ ├── deployment.yaml
│ ├── ingress.yaml
│ └── service.yaml
├── .env.example # Environment template
├── .gitignore
├── CHANGELOG.md
├── Dockerfile # Docker image for HTTP mode
├── docker-compose.yaml # Docker Compose config
├── LICENSE
├── main.py # Entry point
├── pyproject.toml # Project configuration
└── README.mdAPI 参考
此服务器包装 AceDataCloud Suno API:
- Suno Audios API -音乐一代
- 苏诺歌词API -歌词生成
- Suno任务API -任务查询
- Suno Persona API -Persona管理
贡献
欢迎投稿!拜托:
- 分叉存储库
- 创建要素分支(
git checkout -b feature/amazing) - 提交您的更改(
git commit -m 'Add amazing feature') - 推到分支(
git push origin feature/amazing) - 打开拉取请求
许可证
MIT许可证-请参阅 许可证 了解详情。
链接
______________________________________________________________________
用爱制作 AceDataCloud
