Cloud Music MCP Server
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., "@Cloud Music MCP ServerPlay my daily recommended songs."
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.
网易云音乐 MCP 服务器
基于 网易云音乐开发平台 标准 API 实现
🎵 为您的 AI Agent 插上音乐的翅膀
这是一个基于 网易云音乐 官方API 的本地MCP服务器。可以让用户通过 Claude Code, OpenCode 等 AI Agent以原生 API 的方式点歌!
📢 Update
2026-06-29 🎉 新增歌单管理 — AI 现在可以帮你创建歌单并批量添加歌曲,一句话完成「搜歌 → 建单 → 加歌」全流程。
2026-06-29 🔎 新增资料查询 — 支持查询歌单详情、专辑信息、歌手信息以及你的收藏列表。
2026-06-16 🔧 修复安装问题 — 替换已失效的 PyPI pyncm 为自维护 fork,补齐 build-system,并清除误提交的登录态等敏感文件。
Related MCP server: qq-music-mcp
✨ 功能特性
🤖 让 AI Agent 为你播放音乐:通过自然语言指令控制音乐播放。只需说“给我放首热血的歌”,Agent 就会为你搞定一切。
🔓 扫码登录:支持使用手机 App 扫码安全登录。登录状态(Cookies)仅保存在本地,保护您的隐私。
🧠 个性化推荐:完美接入您的每日推荐和歌单。Agent 会根据您的听歌品味来播放音乐。
🔍 搜歌功能:支持按关键词搜索歌曲、歌手或专辑,并直接播放。
📝 歌单管理:不只是放歌,还能帮你创建歌单、批量加歌。说一句"建个某个主题的歌单",AI 就会自动搜歌、建单、加歌一气呵成。
🎛️ 桌面端联动:通过 URL Scheme 唤起网易云音乐客户端播放,无缝衔接原生体验。
🛠️ 工具列表
本服务器向 AI Agent 暴露以下工具:
工具名称 (Tool Name) | 参数 (Parameters) | 功能描述 (Description) |
| 无 | 启动扫码登录流程 (模拟官方 App)。 |
| 无 | 检查当前登录状态和用户信息。 |
| 无 | 获取今日推荐歌曲列表。 |
| 无 | 获取用户的所有歌单(包括创建的和收藏的)。 |
|
| 获取歌单详情及歌单内所有歌曲。 |
|
| 创建新歌单。 |
|
| 批量添加歌曲到指定歌单。 |
|
| 按关键词搜索歌曲、专辑、歌手或歌单。 |
|
| 获取专辑详情及歌曲列表。 |
|
| 获取歌手详情和热门歌曲 Top 10。 |
|
| 获取收藏的歌手或专辑列表。 |
|
| 播放指定的歌曲或歌单(自动唤起桌面应用)。 |
🚀 安装与使用
前置条件
操作系统:macOS 或 Windows
Python 版本:3.10 或更高
macOS:通常自带,运行
python3 --version检查Windows:从 python.org 下载安装
安装网易云音乐桌面客户端(
LLM 客户端(如 Claude Desktop、OpenCode 等)
安装步骤
1. 安装 uv 包管理器
# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows (PowerShell)
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"2. 克隆项目并安装依赖
# 克隆项目
git clone https://github.com/Code-MonkeyZhang/cloud-music-mcp.git
cd cloud-music-mcp
# 创建虚拟环境
uv venv
# 激活虚拟环境
source .venv/bin/activate # macOS/Linux
# .venv\Scripts\activate # Windows
# 安装项目(可编辑模式)
uv pip install -e .配置 LLM 客户端
Claude Desktop
找到配置文件:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%/Claude/claude_desktop_config.json
添加以下配置:
{
"mcpServers": {
"cloud-music": {
"command": ["/绝对路径到/cloud-music-mcp/.venv/bin/cloud-music-mcp"],
"enabled": true
}
}
}重要:将
/绝对路径/到/cloud-music-mcp替换为项目的实际绝对路径。Windows 用户请使用双反斜杠\\或正斜杠/。
开启日志(可选)
如需调试,可在配置中添加环境变量:
{
"mcpServers": {
"cloud-music": {
"command": ["/绝对路径/到/cloud-music-mcp/.venv/bin/cloud-music-mcp"],
"enabled": true,
"env": {
"MCP_LOG_ENABLE": "true"
}
}
}
}日志说明:
默认状态:日志功能默认关闭
开启后:日志会以
session_YYYYMMDD_HHMMSS.log的格式保存在项目根目录的logs/文件夹中
使用方法
重启 LLM 客户端(如 Claude Desktop)
登录网易云音乐
在对话中输入:"帮我扫码登录网易云音乐"
AI 会调用
cloud_music_login工具,弹出二维码用手机网易云 App 扫码登录
登录状态(Cookies)仅保存在本地,保护隐私
开始使用
播放音乐:"给我放首歌"
获取推荐:"看看今日推荐有什么"
搜索歌曲:"搜一下周杰伦的歌"
创建歌单:"帮我建个周杰伦热门歌曲的歌单"
播放歌单:"播放我的收藏歌单"
Available Tools
12 toolscloud_music_add_to_playlistC
添加歌曲到指定歌单 args: playlist_id: 目标歌单 ID track_ids: 要添加的歌曲 ID 列表,例如 [123, 456]
| Name | Required | Description | Default |
|---|---|---|---|
| track_ids | Yes | ||
| playlist_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description does not disclose behavioral traits beyond the basic operation. It does not mention error handling, rate limits, or whether the tool is idempotent.
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 extremely concise, consisting of two lines with no redundant information. Every word serves a purpose.
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?
For a simple mutation tool with no output schema and no annotations, the description is too sparse. It does not specify behavior like whether duplicates are handled or what happens on success/failure.
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 0%, but the description adds basic parameter names and examples in Chinese, providing some meaning beyond raw schema types. However, it lacks details like value ranges or uniqueness constraints.
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 'Add songs to specified playlist', which is a specific verb-resource pair and distinguishes from sibling tools like create_playlist or playlist_detail.
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 alternatives, such as whether it appends or replaces tracks, or any prerequisites like needing a valid playlist ID.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cloud_music_album_infoB
获取专辑详情,包括专辑信息和歌曲列表 args: album_id: 专辑 ID
| Name | Required | Description | Default |
|---|---|---|---|
| album_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must bear full burden. It only states the tool retrieves album details and song list, with no mention of behavioral traits like read-only nature, authentication requirements, rate limits, or error handling.
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 extremely concise with two sentences, front-loading the purpose. Every word contributes meaning; there is no redundancy or filler.
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 tool's simplicity (one parameter, no output schema), the description covers the basic purpose. However, it omits any mention of authentication or expected behavior, which would be helpful for a complete understanding. It is minimally adequate.
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 0%. The description merely repeats the parameter name and type ('album_id: 专辑 ID') without adding any context such as where to find the album_id, format constraints, or default values. This adds no value beyond the schema.
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 explicitly states '获取专辑详情,包括专辑信息和歌曲列表' (Get album details, including album info and song list), clearly identifying the tool's function as retrieving album details and song list. It is distinct from sibling tools like cloud_music_artist_info or cloud_music_playlist_detail.
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 album details are needed, but lacks explicit guidance on when to use this tool over alternatives or any prerequisites. No exclusions or contextual conditions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cloud_music_artist_infoB
获取歌手详情和热门歌曲 Top 10 args: artist_id: 歌手 ID
| Name | Required | Description | Default |
|---|---|---|---|
| artist_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It does not disclose behavioral traits such as read-only nature, authentication requirements, rate limits, or side effects. The description only states the action and one parameter, leaving the agent uninformed about operational characteristics.
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 very short (two lines), front-loaded with the purpose, and contains no fluff. The 'args:' line is slightly redundant but not harmful. Efficient for a simple tool.
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 tool's simplicity (one parameter, no output schema), the description minimally explains the outcome (artist details and top 10 songs). However, it lacks specifics about return structure, error handling, or usage context. Not fully complete but adequate for a basic retrieval tool.
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 0%, but the description adds meaning for the single parameter: 'artist_id: 歌手 ID' (artist ID). This clarifies the parameter's purpose beyond the schema's type-only definition. However, it lacks details like where to find the ID or any constraints.
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 explicitly states '获取歌手详情和热门歌曲 Top 10' (get artist details and top 10 popular songs), which is a specific verb+resource combination. It clearly distinguishes from siblings like album_info or search by focusing on artist details and top songs.
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 vs alternatives (e.g., search, album_info). No mention of prerequisites, context, or exclusions. The description only states what it does, not when to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cloud_music_create_playlistC
创建新歌单 args: name: 歌单名称 privacy: 是否设为隐私歌单,默认为 False
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| privacy | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It only mentions the action and parameters, but does not describe side effects (e.g., overwriting existing playlists), authentication needs, or success/failure 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 short and front-loaded with the action. However, it is under-specified; conciseness should not sacrifice completeness. It earns a 3 as it is not verbose but lacks necessary detail.
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 no output schema and low parameter count, the description should cover return value, errors, and usage. It provides none of that, leaving a gap in how the agent should handle responses or edge cases.
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 0%, so description must add value. It lists parameters with basic labels ('name: 歌单名称', 'privacy: ...默认 False') but provides no additional detail beyond the schema (e.g., allowed name length, privacy implications). Insufficient for parameter understanding.
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 '创建新歌单' meaning 'create new playlist', specifying the verb and resource. It distinguishes from sibling tools like cloud_music_add_to_playlist and cloud_music_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 alternatives. Missing context such as prerequisites (e.g., login requirement) or when creation might fail.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cloud_music_get_daily_recommendA
获取今日推荐歌曲 返回歌曲列表 (包含 ID, 歌名, 歌手)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It discloses that the tool returns a list of songs with specific fields, which informs the agent about the output. However, it does not mention if authentication is required or if the tool is read-only, which are relevant behavioral traits.
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 extremely concise: two short sentences, zero wasted words. It front-loads the purpose and immediately states what is returned.
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 simplicity of the tool (no parameters, no output schema), the description is complete. It explains what the tool does and what the response contains, which is sufficient for an agent to decide to invoke it.
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?
There are no parameters, and schema coverage is 100% (empty schema). The description adds no parameter info because none exist. According to guidelines, 0 parameters yields a baseline of 4.
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) and the resource (今日推荐歌曲 - today's recommended songs). It specifies that it returns a song list with ID, name, and singer, which is distinct from sibling tools like search or play.
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 usage (when you want today's recommendations), but does not explicitly state when to use it over siblings or mention any prerequisites like login. However, the context signals (0 params) and simple function make the usage context clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cloud_music_loginA
登录网易云音乐 (模拟 OAuth 流程) 调用此工具后,电脑会弹出一张二维码图片。 请用网易云音乐 App 扫描该二维码。 扫描成功后,工具会自动保存登录状态。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description fully explains behavior: pops up QR image, requires app scan, saves login state. No contradictions.
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?
Two sentences, front-loaded with purpose, no wasted 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?
For a zero-parameter login tool with no output schema, the description sufficiently covers the process and outcome.
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?
No parameters exist; schema coverage is 100%. Description adds no param info, but baseline for 0 params is 4.
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?
Description clearly states the verb '登录' (login) and resource '网易云音乐' (NetEase Cloud Music), and distinguishes from siblings as the only authentication tool.
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?
Describes the interactive process (QR code, scanning, saving state) and implicitly when to use (when authentication needed). No explicit alternatives, but none exist among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cloud_music_my_playlistsA
获取我的歌单 (包括创建的歌单和红心歌单)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Only states basic retrieval, no details on auth, side effects, or response structure. For a simple read tool, more transparency expected.
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 clear sentence, no wasted words. Front-loaded with action and resource.
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?
For a parameter-less tool, description covers core purpose and playlist types. Lacks output specification but acceptable given simplicity.
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?
No parameters; description does not need to add semantics. Schema coverage is 100% (trivially). Baseline 4 applies.
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?
Description clearly states verb '获取' (get) and resource '我的歌单' (my playlists), including specific categories created and hearted. Distinguishes from sibling tools like cloud_music_playlist_detail.
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?
Implies use when needing user's own playlists, but no explicit when-not or alternatives. Context is clear but lacks exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cloud_music_my_subscriptionsA
获取我收藏的歌手或专辑 args: category: 类型,'artists'(歌手) 或 'albums'(专辑),默认为 'artists'
| Name | Required | Description | Default |
|---|---|---|---|
| category | No | artists |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description only states '获取' (get), implying read-only behavior. It fails to disclose authentication requirements, rate limits, or whether the tool returns a list or single item. The description adds minimal context beyond the obvious.
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 extremely concise with two lines: first line states the purpose, second line details the parameter. Every word earns its place, no redundancy.
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?
The tool is simple with one parameter and no output schema. The description covers purpose and parameter meaning, but it omits what the return value looks like (e.g., list of items) and whether authentication is required. Given its simplicity, it is adequate but not comprehensive.
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?
The input schema has 0% description coverage, but the description explicitly explains the 'category' parameter: its type, allowed values ('artists' or 'albums'), and default ('artists'). This adds meaning beyond the schema, compensating for the lack of schema-level documentation.
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 verb '获取' (get) and the resource '我收藏的歌手或专辑' (my subscribed singers or albums). It distinguishes from siblings like 'cloud_music_my_playlists' by focusing on subscriptions to artists/albums rather than playlists.
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 alternatives such as 'cloud_music_search' or 'cloud_music_my_playlists'. There are no conditions, exclusions, or prerequisites mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cloud_music_playA
唤起客户端播放指定歌曲或歌单 args: id: 歌曲ID 或 歌单ID type: 'song' (单曲) 或 'playlist' (歌单)
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| type | No | song |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description mentions invoking a client (唤起客户端) which implies an external action, but does not disclose side effects, required client state, or what happens on failure. No annotations to fill gaps, so description carries full burden but is insufficient.
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 extremely concise: one sentence for purpose, then clear parameter explanations. Every part is useful with no redundancy. Front-loaded with the main action.
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?
For a simple 2-parameter tool with no output schema, the description covers the basic function and parameters. However, it lacks info on return values, error handling, and client dependencies, leaving some gaps for an agent.
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?
With 0% schema description coverage, the description adds meaning: id is explained as '歌曲ID 或 歌单ID' and type as 'song' or 'playlist'. This clarifies the parameters beyond the raw schema types, though format details are missing.
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 tool plays a specified song or playlist (唤起客户端播放指定歌曲或歌单), distinguishing it from siblings like cloud_music_add_to_playlist or cloud_music_status. The verb 'play' and resource 'song/playlist' are specific.
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 vs alternatives, e.g., when to choose this over cloud_music_my_playlists or cloud_music_status. No exclusions or prerequisites mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cloud_music_playlist_detailC
获取歌单详情,包括歌单内所有歌曲 args: playlist_id: 歌单 ID
| Name | Required | Description | Default |
|---|---|---|---|
| playlist_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It only states the basic function (get details with songs). It does not disclose side effects, permissions, error behavior, or rate limits. As a read operation, it could hint at non-destructiveness, but it remains implicit.
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 concise (one sentence plus an args line) with no wasted words. It is appropriately front-loaded. However, it is slightly terse; additional context would not harm conciseness.
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 no output schema and no annotations, the description should explain the return structure (e.g., list of songs) and potential errors. It mentions 'including all songs' but lacks details on format or pagination. For a simple tool, it is incomplete.
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?
The description adds minimal meaning beyond the schema: it labels 'playlist_id' as '歌单 ID' (playlist ID). With 0% schema description coverage, the description should elaborate on the parameter's source, format, or constraints, but it only repeats the parameter name.
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 '获取歌单详情,包括歌单内所有歌曲' (Get playlist details, including all songs in the playlist). It uses a specific verb ('Get') and resource ('playlist details'), and the scope (all songs) distinguishes it from sibling tools like add_to_playlist or create_playlist.
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 no guidance on when to use this tool vs alternatives. It does not mention use cases, prerequisites, or when not to use it. Given the sibling tools (e.g., search, my_playlists), the agent lacks context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cloud_music_searchA
搜索歌曲、专辑、歌手或歌单 args: keyword: 搜索关键词(歌名、歌手名、专辑名等) category: 搜索类型,可选 'song'(歌曲)、'album'(专辑)、'artist'(歌手)、'playlist'(歌单),默认为 'song'
| Name | Required | Description | Default |
|---|---|---|---|
| keyword | Yes | ||
| category | No | song |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must divulge behavioral traits. It states the tool searches but does not specify if it is read-only, how results are returned, or any limits. It adds some context but leaves gaps.
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 concise: two sentences defining the tool's action and a clear parameter list. It front-loads the core purpose without wasted 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 no output schema, the description could explain return values. It is adequate for a search tool but lacks details on response format or result count. Still, it covers key inputs and search scope.
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 0%, so the description must compensate. It fully explains keyword and category parameters, including default value and possible values for category (song, album, artist, playlist). This adds essential meaning beyond the schema.
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 that the tool searches for songs, albums, artists, or playlists using a keyword. It distinguishes itself from sibling tools like cloud_music_album_info and cloud_music_artist_info, which are for specific info retrieval.
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 usage for general search but does not explicitly contrast with siblings or provide when-not-to-use guidance. It lacks directions on when to choose this over specific info tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cloud_music_statusA
检查网易云音乐当前是否已登录
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It only states the action, but does not disclose any behavioral traits such as what happens if not logged in or any side effects. However, the tool is inherently benign and read-only.
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 sentence with no extraneous information. It is front-loaded and concise, with every word serving a purpose.
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?
The tool is simple with no parameters, no output schema, and no annotations. The description adequately covers the tool's purpose and behavior for its intended use.
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?
The tool has no parameters, so the schema already provides complete information. The description adds no extra parameter details, which is acceptable given zero parameters.
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 tool's function: checking login status of NetEase Cloud Music. It uses a specific verb 'check' and resource 'login status', and effectively distinguishes from sibling tools like playlists and 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?
The description implies when to use this tool (to verify login status), and no explicit alternatives are needed given the simplistic nature. However, it does not provide explicit when-not or alternative guidance.
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.
12 tool updates
v0.1.0- First observed
cloud_music_add_to_playlist - First observed
cloud_music_album_info - First observed
cloud_music_artist_info - First observed
cloud_music_create_playlist - First observed
cloud_music_get_daily_recommend - First observed
cloud_music_login - First observed
cloud_music_my_playlists - First observed
cloud_music_my_subscriptions - First observed
cloud_music_play - First observed
cloud_music_playlist_detail - First observed
cloud_music_search - First observed
cloud_music_status
TDQS
Every tool has a clearly distinct purpose, from login and search to playlist management and playback. There is no ambiguity between tools.
All tools follow a consistent 'cloud_music_' prefix with snake_case verb_noun pattern (e.g., add_to_playlist, create_playlist, get_daily_recommend), making naming predictable.
12 tools are appropriate for a cloud music server, covering search, details, playlist management, login, and playback. Slightly over the ideal range but each tool earns its place.
Core workflows like search, get details, create playlist, add tracks, and play are covered. However, notable gaps exist: no tools to remove tracks, delete playlists, or manage likes, limiting full lifecycle coverage.
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
Connect AI to your flomo notes. Search, create, edit notes and manage tags via MCP.
Turn any task into the right API calls: discover, evaluate, and integrate public APIs.
Pay-per-use tool marketplace for AI agents. Search, price-check, and call APIs via MCP.
Automate 1,000+ services from any MCP-compatible AI agent: build Applets, run actions and queries.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to create, manage, and populate Spotify playlists using the Spotify Web API.3MIT
- AlicenseAqualityDmaintenanceIntegrates QQ Music API with MCP, enabling LLMs to search music, retrieve song details, lyrics, and playback URLs.105MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to search Spotify, inspect playback state, manage devices, and control music through the official Spotify Web API using OAuth authentication.2MIT
- AlicenseNot gradedqualityCmaintenanceControls the official NetEase Cloud Music desktop client on Windows, enabling AI to search, play, manage queues, and adjust playback settings via a local control channel.1MIT
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/Code-MonkeyZhang/cloud-music-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server