内容
# Tunetank MCP 服务器
**将 Tunetank 的音乐和音效目录作为 [MCP](https://modelcontextprotocol.io) 服务器** — 这样任何 AI 助手(Claude, ChatGPT, Cursor, …)都可以为视频、广告、播客或直播找到合适的免版税音乐或音效。
询问类似 *“为 YouTube 片头找到一个充满活力的摇滚乐,时长约 60 秒”* 或 *“一个不到 2 秒的‘嗖’音效”* 的问题,助手会搜索 Tunetank 的实际目录,并返回预览链接和 tunetank.com 上的音轨页面。
- 🎵 按情绪、类型、主题、艺术家、名称和 **目标长度(± 容差)** 搜索 **音乐**
- 🔊 按类别和长度搜索 **音效(SFX)**
- 📚 浏览类型、情绪、主题和精选播放列表
- ▶️ 每个结果都包含 **音频预览 URL** 和 **规范音轨页面** (`https://tunetank.com/track/<id>-<slug>/`)
- 🆓 **完全免费** — 无需 API 密钥,无需身份验证,无需速率限制注册。仅可读。
---
## 服务器
| | |
|---|---|
| **端点** | `https://mcp.tunetank.com` |
| **传输** | 可流式 HTTP(JSON-RPC 2.0) |
| **身份验证** | 无(公开,只读) |
| **费用** | 免费 |
---
## 设置
将任何支持 MCP 的客户端指向上述端点。以下是常见客户端的示例:
### Claude Desktop / Claude.ai (连接器)
添加一个 **自定义连接器**,网址为:
```
https://mcp.tunetank.com
```
或者,通过配置文件 (`claude_desktop_config.json`) 使用 `mcp-remote` 桥接:
```json
{
"mcpServers": {
"tunetank": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://mcp.tunetank.com"]
}
}
}
```
### Cursor
`~/.cursor/mcp.json`:
```json
{
"mcpServers": {
"tunetank": {
"url": "https://mcp.tunetank.com"
}
}
}
```
### VS Code / 其他客户端
任何支持 **远程(HTTP)MCP 服务器** 的客户端 — 只需使用网址 `https://mcp.tunetank.com`。对于仅支持 stdio 的客户端,请使用 `npx -y mcp-remote https://mcp.tunetank.com` 进行桥接。
---
## 工具
| 工具 | 参数 | 返回 |
|---|---|---|
| `search_music` | `query`, `name`, `artist`, `genre`, `mood`, `theme`, `duration`, `tolerance`, `limit` | 音轨:名称,艺术家,时长,bpm,预览 URL,音轨页面 URL,类型/情绪/主题 |
| `search_sfx` | `query`, `category`, `duration`, `tolerance`, `limit` | 音效:名称,时长,预览 URL,波形 |
| `list_genres` | — | 所有音乐类型 (`id`, `name`, `alias`) |
| `list_moods` | — | 所有音乐情绪 (`id`, `name`, `alias`) |
| `list_themes` | — | 所有音乐主题 (`id`, `name`, `alias`) |
| `list_playlists` | `limit` | 精选播放列表(名称,描述,音轨数量) |
### 参数说明
- **`query`** *(search_music)* — 自由文本;匹配 **音轨名称或艺术家名称**。
- **`genre` / `mood` / `theme`** — 接受 **名称/别名** (例如 `"rock"`,`"happy"`)或数字 **id** (来自 `list_*` 工具)。
- **`duration`** — 以 **秒** 为单位的目标长度。
- **`tolerance`** — 允许的 **± 秒** 范围内 `duration` (默认 `5`)。示例:`duration: 60, tolerance: 10` → 50 秒至 70 秒之间的音轨。
- **`category`** *(search_sfx)* — 音效类别名称或 id。
- **`limit`** — 最大结果数(默认 `20`,最大 `50`;播放列表默认 `50`,最大 `200`)。
所有字符串过滤器均为部分、不区分大小写的匹配。仅返回已发布的音轨/音效。
---
## 示例
**“充满活力摇滚,约 60 秒,用于片头”**
```json
{
"name": "search_music",
"arguments": { "genre": "rock", "mood": "energetic", "duration": 60, "tolerance": 10, "limit": 5 }
}
```
**“一个短的‘嗖’音效,时长不到 2 秒”**
```json
{
"name": "search_sfx",
"arguments": { "query": "whoosh", "duration": 1.5, "tolerance": 1.5 }
}
```
**音轨结果示例**
```json
{
"id": 2270,
"name": "Adventures",
"artist": "A Himitsu",
"duration": 138,
"bpm": 120,
"url": "https://tunetank.com/track/2270-adventures/",
"preview": "https://…/preview.mp3",
"genres": ["Pop"],
"moods": ["Happy", "Inspiring"],
"themes": ["Vlog"]
}
```
---
## 尝试(原始 JSON-RPC)
传输符合规范,因此请包含 `Content-Type` 和 `Accept` 头部:
```bash
# 列出可用工具
curl -s https://mcp.tunetank.com \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
# 搜索音乐
curl -s https://mcp.tunetank.com \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"search_music","arguments":{"mood":"happy","duration":60,"tolerance":10,"limit":3}}}'
```
---
## 许可
所有音乐 **免费用于个人和非商业用途**。
对于其他用途(商业项目、广告、盈利内容、客户工作等),请前往 [tunetank.com](https://tunetank.com) 并查看许可条款。
---
## 关于
音乐和音效来自 [Tunetank](https://tunetank.com) — 面向创作者的免版税音频。此 MCP 服务器是一个 **发现** 频道:它返回预览和音轨页面,以便您可以聆听并在 tunetank.com 上获取音轨。下载和许可在网站上进行。
有问题或疑问吗?请联系 **support@tunetank.com**。