netease-music-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| NETEASE_CSRF | No | CSRF token for authentication, used with NETEASE_MUSIC_U if not using full NETEASE_COOKIE. | |
| NETEASE_COOKIE | No | Full cookie for authentication. Alternatively use NETEASE_MUSIC_U and NETEASE_CSRF. | |
| NETEASE_MUSIC_U | No | MUSIC_U cookie value for authentication, used with NETEASE_CSRF if not using full NETEASE_COOKIE. | |
| NETEASE_USER_ID | No | User ID used for accessing private music library when not passed as a tool argument. | |
| NETEASE_WRITE_OPERATIONS_ENABLED | No | Set to true to enable write operations (create/update playlist, like songs). Default is false. | false |
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| music_searchB | Search songs, artists, albums, or playlists with compact paginated results. |
| get_recommendationsA | Read a page of NetEase's read-only recommended playlists. |
| get_similar_songsA | Read a page of songs similar to one NetEase song. |
| get_new_songsA | Read a page of recommended new songs by region. |
| get_rankingsA | Read a page of NetEase ranking boards with compact top tracks. |
| get_songsA | Fetch metadata for multiple songs in one call while preserving input order. |
| get_albumA | Fetch album metadata and optionally one page of tracks. |
| get_artistB | Fetch artist metadata and optionally a bounded list of top songs. |
| get_playlistA | Fetch playlist metadata and optionally one bounded page of tracks. |
| get_lyricsB | Fetch a bounded lyric page with optional aligned translation and romanization. |
| get_user_libraryA | Read one authenticated, paginated section of a user's music library. |
| get_playlist_statisticsB | Compute deterministic duration, artist, album, year, and availability statistics. |
| create_playlistA | Create a NetEase playlist after explicit confirmation. |
| update_playlist_tracksB | Add or remove songs from a NetEase playlist after confirmation. |
| set_song_likeA | Like or unlike one NetEase song after explicit confirmation. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 15 tools
Each tool targets a distinct resource or action: search vs discovery feeds vs entity fetch vs lyrics vs library vs stats vs mutations. Overlaps like get_playlist and get_playlist_statistics are clearly separated by description and output intent.
Most tools follow a verb_noun pattern with get_/create_/update_/set_ prefixes, which is consistent and readable. music_search deviates as noun_verb; a name like search_music would align better.
15 tools is well-scoped for a music service, covering discovery, metadata, lyrics, library access, and playlist/like mutations. Each tool has a recognizable purpose without excessive surface area.
Core workflows are covered: search, discovery, entity metadata, lyrics, user library, stats, playlist creation/update, and like/unlike. However, playlist lifecycle lacks delete/rename operations, and user-library modifications beyond likes are not exposed, leaving minor gaps.