网易云 MCP 歌单策划器 1.6.0 —— Windows 公开预览分发包
===================================================

这是 MCP 服务，不是一个应用。安装、登录、能力说明和策划引导都由你的 AI 客户端对话完成。
没有独立窗口、固定菜单、播放器或选曲问卷。浏览器仅用于本机扫码授权，不承载策划界面。
需要 Windows 10/11 x64、已安装的正常 Python 3.10+ 和支持本地 MCP stdio 的 AI 客户端。
不捆绑 Python，也不另开模型或要求额外 LLM API key；不是网易云官方产品。

接入一次；之后在对话里使用
------------------------
完整解压 ZIP。你可以把本说明交给有本地工具权限的 Agent，并说：
  “帮我安装并接入这个网易云 MCP。检查环境，使用随包文件，不覆盖已有 MCP 服务；
   接入后在对话里引导我登录。不要让我把 Cookie 或二维码发到聊天。”

Agent 可运行 install.cmd；没有本地执行工具时，你自己双击 install.cmd。
它只把 wheel 离线安装到用户缓存的独立环境，检查 MCP，输出不含凭证的客户端配置。
不需要管理员，不改系统 Python/全局 PATH，也不安装全局 Node。
配置中保留 NETEASE_LOGIN_BUNDLE：它指向本包的扫码组件目录，不是凭证。
将生成的 mcp-config.json 服务项合并到客户端设置，不要覆盖其他服务；重连 MCP。
configure.cmd 只是备用的配置文件查看入口，不是使用向导。
MCP 必须先接入宿主，才能在聊天中调用工具；不能承诺服务自行配置尚未连接的客户端。
没有 Python 时安装官网正常版本及 launcher：https://www.python.org/downloads/windows/
安装完重开 install.cmd；不要用 embeddable ZIP。没有 Node 无需额外安装。

第一次对话
----------
在客户端里说：“帮我开始使用网易云 MCP。”
Agent 应调用 nc_setup 查看离线配置事实，再用 nc_status 验证登录与权限。
本地有会话文件不等于登录有效；网络检查失败也不等于会话过期。
初始化不会读取账号、自动扫码或访问收听记录。只有你请求账号使用并同意后才登录。
如需登录，Agent 解释本地存储和授权边界，再征得你的同意：
  · nc_login(action=start, confirm=true) 启动随包临时本地登录网关；
  · 二维码只在本机浏览器显示，用网易云官方 App 扫码并确认；
  · Agent 调用 nc_login(action=status) 获取非敏感进度，再调用 nc_status；
  · 显示二维码、等待授权都不是登录成功。保存后还要验证网关关闭后的直连。
可在对话中说“取消登录”。宿主断开也会通知登录助手停止；本地取消不撤销已批准的服务器会话。
不要把密码、MUSIC_U、Cookie、二维码图片/链接、session.bin 发给 AI 或工单。
Agent 不应重复启动扫码；失败先检查状态，再经你同意决定是否重新登录。
支持 MCP Prompts 的客户端可选 getting_started；不支持菜单也可以直接自然语言聊天。

准备好后，直接描述歌单
----------------------
例如：“给我做一张从午夜城市走向清晨海边的 12 首歌单，不要现场版；先解释选曲理由和顺序。”
当前宿主 LLM 理解原文、策划候选和叙事；MCP 校验曲目、返回事实并提供受保护的写入。
不要先填数值权重或问卷。是否参考收藏/近期播放，按你的描述决定，不自动读完整历史。
不想登录也可以试公开搜索和非个性化预览，但无法访问个人收藏/历史或创建歌单。
默认只读。实际写入须在宿主配置启用 NETEASE_ENABLE_WRITES=1 并重连；
Agent 应解释这一步，且每次仍要预览、明确同意、confirm=true、dry_run=false。
随包有独立的 mcp-config-write-opt-in.json，配置切换本身不会修改账号。
出现 partial-or-unknown / needs-review，先在官方客户端检查，不盲目重复创建。

登录实现与备用路径（供 Agent/进阶用户）
--------------------------------------
完整包内含私有 Node 24.19.0 + 固定 API Enhanced 4.41.1 及依赖/许可证/来源清单。
只在同意登录后启动，仅绑定 127.0.0.1 临时端口，开放扫码/账号验证接口；不用常驻网关。
不公开部署、不解灰、不代理或下载音频。QR/临时文件隔离；结束后清理。
自动管理仅属于完整 Windows x64 ZIP；轻量包 LIGHT_PACKAGE.txt 不含运行时。
独立 wheel/源码 nc-login qr 仍需要用户自行运行的可信 loopback 网关。
备用 login-import.cmd / nc-login import --save 仅在本机终端隐藏输入你自己的令牌。
如何取得：官方网页登录 → F12 → Application/Storage → Cookies → music.163.com
→ MUSIC_U → Value。只在本机隐藏输入粘贴，按 Enter；没有星号是正常现象。
之后清除该条剪贴板历史/同步。不要把凭证交给 Agent 代操作；不熟悉时优先扫码。

问题和边界也通过对话解释
----------------------
看不到工具：Agent 核对生成配置的绝对命令/参数/环境变量，重连并实际调用工具验证。
扫码组件缺失/损坏：重新完整解压可信 ZIP、重新安装/生成配置，不关闭系统安全保护。
不要移动/删除接入配置所指的解压目录；变更后重新生成并导入配置。
登录失败：区分网络、会话过期和助手未配置，不反复快速扫码。接口可能因风控或变化失效。
同版本新构建按 wheel SHA256 创建新环境，失败保留旧安装；成功后重新导入配置。
只取到一页：Agent 按 has_more / next_offset 翻页，不能把一页当全部。
没有可靠音频特征：报告未知，不凭歌名猜 BPM/调性。搜索命中不保证有播放版权。
容器/远程机器不等于本机桌面，不能假定能打开用户浏览器；Windows DPAPI 不可复制到 Linux。

退出与隐私
----------
当前 Windows 用户 DPAPI 加密保存 am-playlist/netease/session.bin；不防同用户恶意进程。
忘记登录先运行 forget-login.cmd 并确认；只删本地共享会话，不撤销服务器令牌。
卸载先停用宿主服务，再运行 uninstall.cmd 确认；不动系统 Python、Apple 配置或云端歌单。
最后手动移除宿主服务项与解压目录。不要分享会话文件或个人收听记录。
程序无遥测；宿主/模型可能接收工具返回的音乐信息，请检查其隐私设置。
CHECKSUMS.sha256 与组件哈希检测损坏，不代替发布者身份验证；脚本未签名，只用可信分发渠道。
进阶文档 docs/netease-port.md；英文说明 README_EN.md。
反馈：https://github.com/Z-Han-Z/apple-music-playlists/issues （只提供版本、步骤、脱敏错误）
