Skip to main content
Glama
WalterT812

netease-desktop-mcp

by WalterT812

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
NETEASE_MCP_PORTNo调试端口,默认9229,须与启动脚本的端口一致。9229
NETEASE_MUSIC_PATHYes必填项,网易云音乐客户端可执行文件的路径。

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
netease_get_statusA

Read the current visible song label, playback and heart state. null means unknown. trackKey hashes the visible title/artist, not a unique catalog ID; identical labels are indistinguishable.

netease_searchA

Search songs in the desktop UI. Changes the visible search page; returns a partial list and a token valid for two minutes in this MCP session. Does not play music.

netease_play_resultA

Play an exact row from the latest search. Requires its token and string index. Refuses changed/stale rows. Success means the UI shows the chosen title/artist playing; it does not prove audible output.

netease_set_playbackA

Explicitly play or pause and verify the UI state. Does not blindly toggle. Unknown UI state refuses the action.

netease_skip_trackA

Move to next/previous track once and verify a changed visible song label. Unchanged/identical labels are reported as unverified; do not automatically retry.

netease_set_likedA

Set the current song heart only when explicitly requested. Supply trackKey from a fresh status result. Refuses unknown heart state or changed labels. Visible UI verification is not server-side persistence verification.

netease_create_playlistA

Create one empty owned playlist after user authorization. Private by default. Requires NETEASE_ENABLE_PLAYLIST_CREATE=1. Refuses an existing exact name; verifies returned ID, ownership, privacy and preservation of other playlists. Never retry an uncertain result automatically.

netease_list_playlistsA

Refresh owned, collected and system playlists through the desktop client. Does not move the mouse, focus or navigate. Account identifiers are omitted.

netease_prepare_playlist_deleteA

Preview deletion of an exact owned playlist ID and name; returns a single-use token valid for two minutes. Requires NETEASE_ENABLE_PLAYLIST_DELETE=1. Collected, system and configured protected playlists are refused. Preview is not user consent.

netease_delete_playlistA

After explicit user authorization, consume a deletion preview token and delete that owned playlist once. Rechecks account, name, count, update time and protections, then verifies removal and preservation of other playlists. Never automatically retry an uncertain result. Track-list backups cannot restore original IDs or followers.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.3/5.0

Scored across 10 tools

Disambiguation5/5

Each tool targets a distinct action: observing status, searching, playing a specific result, toggling playback, skipping, liking, and playlist creation/listing/deletion. The two-step playlist delete preview is clearly separated from the actual delete, and playback controls are differentiated by target and behavior.

Naming Consistency4/5

Tool names follow a consistent netease_ prefix and mostly use verb_noun (netease_get_status, netease_create_playlist, netease_delete_playlist). Minor deviations like netease_search (verb only) and netease_set_liked (verb + adjective rather than a noun) keep the overall pattern readable but not fully uniform.

Tool Count5/5

Ten tools is a well-scoped size for controlling a desktop music app and managing playlists. Each tool covers a distinct capability without redundant helpers or excessive granularity.

Completeness3/5

Core playback/search/like flows are well covered, and playlists create/list/delete exists as a lifecycle. However, there is no tool to add or remove tracks from a playlist or inspect playlist contents, so a created playlist remains an empty dead end for many real workflows.

Maintenance

ActivityMaintained
ResponsivenessNo issues