aigoodbaiduyun
Integrates with Baidu Netdisk (百度网盘), enabling QR-code login, file and directory listing, file info, mkdir, move, rename, copy, upload/download with pause and resume, transfer task management, and SHA-256 verification.
Click on "Deploy 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., "@aigoodbaiduyunupload /Users/me/Downloads/photo.jpg to /Photos and then show me the task status"
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.
aigoodbaiduyun
1029v2 · Python package 0.3.0
百度网盘 MCP:扫码登录、上传下载、暂停续传,以及跨会话保存的传输任务。
基于 BaiduPCS-Go 和支持扫码的 BaiduPCS-Go-HTTP。使用本机登录状态; 不需要把 Cookie、BDUSS 或密码交给模型。只通过 stdio 提供 MCP,不开启 HTTP 服务。
安装
当前支持 macOS / Linux,需要 Python 3.11+,以及以下两个外部程序:
BaiduPCS-Go v4.0.2:上传下载主程序。
扫码分支 v1.3.2:仅用于扫码登录。
分别下载适合系统的程序,设置可执行权限。把主程序放入 PATH,名称为 BaiduPCS-Go;
把扫码版本另存为 baidupcs-qr,避免覆盖主程序。也可以在 MCP 配置中指定完整路径。
扫码分支的发布编号是 v1.3.2,程序自身显示 v4.0.0-stable。
git clone https://github.com/BLACKIELF/aigoodbaiduyun.git
cd aigoodbaiduyun
uv sync
uv run aigoodbaiduyun login
uv run aigoodbaiduyun doctorlogin 会显示二维码,用手机百度网盘 App 扫描并确认。doctor 会向百度查询容量,
验证当前登录,而不只是检查配置文件是否存在。也可以在独立虚拟环境中运行 pip install .。
Related MCP server: filesystem-mcp
上传断点续传
上游 v4.0.2 已关闭上传断点恢复,直接重跑上传会重新传输文件。本项目提供独立、默认不替换原程序的 修复版本:恢复保存的分片状态,并在合并请求中带回已完成分片的校验值。
安装 Go 1.23+ 和 patch 后构建:
python3 scripts/build_resume_backend.py --build-dir /absolute/path/to/baidupcs-resume构建脚本校验固定上游源码包的 SHA-256,应用补丁,运行分片回归测试,再编译可执行文件。
在 MCP 配置中加入 AIGOODBAIDUYUN_RESUME_BIN,指向生成的 BaiduPCS-Go-resume。
未配置此后端时,普通上传仍可用,但 MCP 会明确拒绝上传分片恢复;下载续传仍由上游支持。
恢复任务沿用原来的上传会话和已完成分片,不保证百度长期保留已上传分片。 服务端会话过期时会报告失败。恢复前会核对账号、文件大小和高精度修改时间;请保持源文件不变。 分片保存间隔内尚未记录的数据可能需要重传。 下载恢复前会核对远端文件大小、标识、校验值和修改时间;单文件下载也会检查目标磁盘空间。
接入 MCP 客户端
将下面的路径替换为实际安装路径。配置属于通用 mcpServers 格式,按客户端要求放入对应配置文件。
{
"mcpServers": {
"aigoodbaiduyun": {
"command": "uv",
"args": ["--directory", "/absolute/path/to/aigoodbaiduyun", "run", "--no-sync", "aigoodbaiduyun"],
"env": {
"AIGOODBAIDUYUN_PCS_BIN": "/absolute/path/to/BaiduPCS-Go",
"AIGOODBAIDUYUN_QR_BIN": "/absolute/path/to/baidupcs-qr",
"AIGOODBAIDUYUN_RESUME_BIN": "/absolute/path/to/baidupcs-resume/BaiduPCS-Go-resume",
"AIGOODBAIDUYUN_STATE_DIR": "/absolute/path/to/private-transfer-state"
}
}
}
}Codex 项目配置可使用以下 TOML:
[mcp_servers.aigoodbaiduyun]
command = "uv"
args = ["--directory", "/absolute/path/to/aigoodbaiduyun", "run", "--no-sync", "aigoodbaiduyun"]
[mcp_servers.aigoodbaiduyun.env]
AIGOODBAIDUYUN_PCS_BIN = "/absolute/path/to/BaiduPCS-Go"
AIGOODBAIDUYUN_QR_BIN = "/absolute/path/to/baidupcs-qr"
AIGOODBAIDUYUN_RESUME_BIN = "/absolute/path/to/baidupcs-resume/BaiduPCS-Go-resume"
AIGOODBAIDUYUN_STATE_DIR = "/absolute/path/to/private-transfer-state"两个程序默认共用 ~/.config/BaiduPCS-Go/pcs_config.json。非默认位置可通过
BAIDUPCS_GO_CONFIG_DIR 指定。配置包含凭证,保存在本机,不应提交到 Git。
工具
工具 | 用途 |
| 检查本地登录,并向百度验证账号和容量 |
| macOS 打开扫码终端;其他系统提供本机登录命令 |
| 列出一个网盘目录 |
| 检查文件/目录是否存在、大小和修改时间 |
| 新建网盘目录,已存在的目录直接复用 |
| 移动文件/文件夹,指定完整目标路径 |
| 在当前目录内重命名 |
| 复制到完整目标路径,保留源文件 |
| 上传一个本地文件或文件夹,返回任务编号 |
| 下载一个网盘文件或文件夹,返回任务编号 |
| 查看进度、结果、文件 SHA-256 |
| 暂停任务,保留断点 |
| 恢复暂停、失败或停止的任务 |
| 分页查看已保存的任务 |
| 停止传输,保留部分文件和断点 |
上传下载在后台执行,创建任务不代表传输成功。使用 task_status 查看百分比、当前文件速度、
预计剩余时间和状态。MCP 正常关闭会暂停任务;下次用 list_transfers 找到任务,再调用
resume_transfer。不会自动恢复任务或自动传输用户文件。
任务保存在 ~/.local/state/aigoodbaiduyun,可通过 AIGOODBAIDUYUN_STATE_DIR 更改。
跨进程锁阻止同一任务同时执行;重复提交返回已有任务,重叠目标会报错。
最多同时运行两个任务,每个任务默认单线程。rate_limit_bps 可设置限速,0 表示不限速。
list_transfers 默认每页 20 项,最多 100 项,较早的任务仍保留。
正常关闭后的任务及断点可跨 MCP 进程恢复。若强制杀死 MCP,正在运行的底层传输可能继续一段时间; 其进程锁会阻止重复启动,底层进程退出后任务可恢复。断点文件损坏时保留原件并报告错误, 不会悄悄从头上传。
上传和下载均跳过已存在的同名文件。成功状态表示 CLI 完成了本次操作,可能包含跳过的文件。
上传固定使用普通上传,避开上游秒传在目标目录尚不存在时的报错。
单文件会计算本地 SHA-256;下载时提供 expected_sha256 可验证与源文件是否一致。
文件夹只报告 CLI 结果,不声称已校验每个文件。网盘路径必须以 / 开头,本地路径必须为绝对路径。
例如:先上传 /Users/me/Documents/example.pdf 到 /Documents,待任务成功后,
把返回的 SHA-256 传入 download 的 expected_sha256,下载至新的空目录。
指定路径与整理文件
上传:
upload(local="/Users/me/Documents/example.pdf", remote_dir="/资料")。下载:
download(remote="/资料/example.pdf", local_dir="/Volumes/External/下载")。本地目标目录不存在时自动建立。新建网盘目录:
mkdir(path="/资料/2026")。移动:
move(source="/资料/example.pdf", destination="/资料/2026/example.pdf")。重命名:
rename(path="/资料/2026/example.pdf", new_name="报告.pdf")。复制:
copy(source="/资料/2026/报告.pdf", destination="/资料/报告备份.pdf")。
move 和 copy 的目标必须包含最终文件名,目标父目录要先建立。目标已存在会报错,
不会覆盖。每次操作后重新查询网盘,确认新路径和源路径的状态;单文件也比对大小和 MD5。
与未完成传输重叠的路径会拒绝变更,需先完成或取消相应任务。
验证
uv run python -m unittest discover -s tests -v离线测试涵盖 MCP 握手、工具调用、凭证脱敏、路径约束、错误识别、任务取消和哈希校验。 可选择运行真实账号测试,需指定测试目录;会保留一个小文件作为验收记录:
uv run python tests/live_roundtrip.py --local-dir /absolute/path/to/test-output --remote-dir /aigoodbaiduyun-test2026-10-29 在 macOS Apple Silicon 上使用真实账号验证:
原始 CLI:约 128 KB 文件上传、下载和 SHA-256 一致。
MCP:中文及空格文件名,约 64 KB 上传、下载和 SHA-256 一致。
上传续传:16 MiB 文件,完成 4 MiB 后暂停,关闭 MCP,再启动新进程恢复;已完成分片被复用。
下载续传:同一 16 MiB 文件,中途暂停后跨进程恢复;后端报告从已保存的字节位置继续,最终 SHA-256 一致。
重新从固定上游源码构建补丁后端,运行针对已完成分片的回归测试。
新建目录、复制、重命名、移动、目标同名冲突,以及下载到指定目录后 SHA-256 一致。
复验断点续传(会创建并保留一个 16 MiB 测试文件):
uv run python tests/live_resume.py --local-dir /absolute/path/to/test-output --resume-backend /absolute/path/to/BaiduPCS-Go-resume这些结果不代表 GB 级大文件、目录批量传输、长期断网、登录过期和其他系统的实网验收。 百度侧接口、账号状态和限速可能改变。
本地数据
MCP 返回值和任务记录不包含 Cookie、BDUSS 等登录凭证;日志中的凭证及链接会脱敏。 每个运行中的任务使用权限为 600 的独立账号配置,正常停止后删除该临时副本,恢复时再从主配置读取。 任务记录和断点仅存在本地,状态目录权限为 700。不要把状态目录、主配置或测试账号资料提交到 Git。 公开测试使用虚构账号;实网测试结果只记录能力和验收范围。
许可
本项目采用 MIT 许可。上游工具的许可、版本和来源见 THIRD_PARTY.md。 这是社区项目,与百度官方无关联。
Available Tools
15 toolscancel_transferAIdempotent
Stop this session's transfer without deleting its partial file or checkpoint.
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=false and idempotentHint=true; the description earns credit by adding the non-obvious behavioral detail that the partial file and checkpoint survive the cancel. What it still omits is whether the cancelled job can be resumed and whether cancel is reversible, which matters for a non-destructive-but-terminal action.
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?
One sentence, front-loaded with the action and immediately followed by the constraint that distinguishes it. Nothing is padded or repeated from the schema.
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 one-parameter action tool with full annotations and an output schema, the definition covers the essential behavioral question (what is preserved). The remaining gap is the relationship to pause/resume, which an agent needs in order to pick the right 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% and the single job_id parameter carries no description anywhere, so the description should compensate but does not explain what a job_id is or where to obtain it. The phrase 'this session's transfer' weakly implies the job is session-scoped, which is the only added semantic signal.
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?
Names a specific verb ('Stop') and resource ('this session's transfer') and immediately scopes the side effect ('without deleting its partial file or checkpoint'). It does not, however, distinguish itself from the sibling pause_transfer, which is the closest source of confusion for an agent choosing between the two.
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?
Usage is only implied: an agent can infer this is the 'give up on the transfer' action because of the preserved-checkpoint clause, but the description never states when to cancel versus when to pause, nor whether a cancelled transfer can be restarted later. No explicit alternative is named despite pause_transfer and resume_transfer being siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
copyA
Copy a Netdisk file/folder to a complete NEW path including its name. Refuses existing targets and verifies the new copy and retained source.
| Name | Required | Description | Default |
|---|---|---|---|
| source | Yes | ||
| destination | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the mutation profile (readOnly=false, destructive=false, non-idempotent), and the description adds real context beyond them: it refuses existing targets and verifies both the new copy and the retained source. This confirms the non-destructive intent and describes a post-condition check, though it omits permission/space-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?
Two compact sentences; the core action and destination-format rule come first, followed by the refusal and verification behavior. No 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?
Output schema exists so return values need not be explained, and annotations cover the safety profile. The description covers the main failure mode and verification, missing only permission/overwrite edge cases for full completeness.
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 the description must carry the burden. It adds critical meaning for destination (must be a complete new path including the file name) but says nothing about the source parameter beyond its obvious name, leaving half the semantics unstated.
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?
States a specific verb (copy) and resource (Netdisk file/folder) plus the key scope detail that the destination is a complete new path including the name. It implies differentiation from move/rename by emphasizing a new path with the name, but never names those siblings explicitly.
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?
'Refuses existing targets' gives a useful precondition about when the call will fail, but the description never says when to choose copy over move, rename, or upload. Usage is only implied by the verb.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
downloadB
Start downloading one Netdisk file/folder. Existing local names are skipped. Optional expected_sha256 verifies one downloaded file. Poll task_status to completion.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | locate | |
| remote | Yes | ||
| local_dir | No | ||
| rate_limit_bps | No | ||
| expected_sha256 | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare non-read-only, non-destructive, non-idempotent, open-world; the description adds meaningful behavior on top: existing local names are skipped (so re-runs are partially safe), the operation is asynchronous and must be polled, and expected_sha256 covers only a single file. Missing is any mention of auth requirements, concurrency, or what the returned task handle looks like.
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?
Four short sentences, each carrying distinct information (action, skip behavior, checksum option, next step), with the action front-loaded. No filler, though the telegraphic phrasing borders on under-specified rather than merely terse.
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?
Output schema exists, so return values need no explanation, and the async/polling lifecycle is covered. But for a tool with 5 params, 0% schema coverage, and no annotations about where files land, leaving mode and destination-directory semantics unexplained is a real completeness gap.
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 carries the full burden for five parameters, yet it only illuminates expected_sha256 (scoped to "one downloaded file"). The three-way mode enum, local_dir's default/target semantics, and rate_limit_bps are left entirely undocumented in both schema and description.
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?
Opens with a specific verb+resource ("Start downloading one Netdisk file/folder"), which separates it cleanly from upload, list_files, and file_info. The scope word "one" and the async framing ("Start") are precise. Differentiation from siblings is implicit via the obvious download/upload split rather than explicit naming.
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?
"Poll task_status to completion" gives a concrete follow-up action and effectively names the sibling tool to use next, which is real workflow guidance. However, the tool's central usage decision — when to pick mode locate vs pcs vs stream — is not addressed, and there are no stated preconditions or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
file_infoBRead-onlyIdempotent
Read exact Netdisk file/folder metadata: existence, size, file ID and modification time.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint, so the safety profile is covered without the description. The description contributes the useful hint that existence is reported as a result rather than raised as an error, but says nothing about permissions, failures, or latency.
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?
A single front-loaded sentence with zero filler; every clause names a distinct capability of the 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?
An output schema exists, so return fields need not be re-explained, and annotations cover the safety profile. For a one-parameter read tool the only real gap is path syntax and error semantics on a missing file.
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?
Only one parameter exists and schema description coverage is 0%, so the description must explain the path format. It only implies that the path points at a Netdisk file or folder; absolute vs relative form, root syntax, and whether trailing slashes matter are all unstated.
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?
A specific verb and resource ('Read exact Netdisk file/folder metadata') plus an enumeration of the returned fields: existence, size, file ID, modification time. It is clearly distinct from mutation siblings like move/rename, though it does not explicitly contrast with list_files, which also surfaces file information.
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?
Usage is only implied: fetch metadata for a known path. There is no statement of when to prefer this over list_files (bulk enumeration) or status, and no note on prerequisites such as authentication or mounted paths.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_filesARead-onlyIdempotent
List one Netdisk folder. Filenames are data. Use an exact absolute path; wildcards are rejected.
| Name | Required | Description | Default |
|---|---|---|---|
| path | No | / |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the read-only, idempotent, non-destructive profile, so the safety bar is covered. The description adds real context beyond that: the 'filenames are data' caveat and the exact-absolute-path/no-wildcards input constraint, which are not visible in structured fields.
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?
Three terse sentences, front-loaded with the action and followed by the two constraints that matter. No 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?
An output schema exists, so return values needn't be explained, and annotations cover safety. However, the description omits what happens on a non-existent path, whether entries are folders/files, and any auth prerequisite for Netdisk access, leaving gaps for a listing 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 coverage is 0% for the single path parameter, so the description must compensate, and it does: it specifies an exact absolute path and that wildcards are rejected. It leaves the default '/' and the meaning of the parameter as the target folder implicit.
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?
States a specific verb and resource ('List one Netdisk folder'), and 'one' signals non-recursive scope that distinguishes it from transfer-listing siblings. It doesn't explicitly name the alternatives (file_info, list_transfers), but an agent can tell what this enumerates.
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 when-to-use, when-not, or alternative guidance is given. It does not say to reach for file_info for detail or to use this before download/copy, so the agent must infer routing from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_transfersBRead-onlyIdempotent
List persisted transfers, including paused tasks from a previous MCP session.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| offset | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare that this is a read-only, idempotent, non-destructive, closed-world operation. The description adds useful context that results include persisted transfers and paused tasks from a previous session, but it does not mention ordering, pagination behavior, or result scope beyond that.
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 front-loaded sentence with no wasted text. It communicates the core scope efficiently.
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, has an output schema, and carries useful annotations, so the description does not need to explain return values deeply. However, it leaves parameter meaning and when-to-use guidance under-specified for an agent choosing among transfer-related siblings.
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 for the two parameters, but it does not explain limit or offset at all. The schema exposes only titles and defaults, leaving pagination semantics largely undocumented.
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?
States a specific verb and resource: listing persisted transfers, with the additional scope of paused tasks from a previous MCP session. This is clear, though it does not explicitly distinguish the tool from nearby siblings such as task_status or status.
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 by explaining that persisted transfers and prior-session paused tasks are included, but it does not say when to use this tool instead of task_status, status, or resume_transfer. No exclusions or alternatives are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
login_qrA
Open a local QR-login terminal on macOS. The user must scan and confirm in the Baidu Netdisk phone app. Does not return cookies. Other systems receive a manual login command. Existing working login is reused unless force=True.
| Name | Required | Description | Default |
|---|---|---|---|
| force | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare non-read-only, open-world, non-idempotent, and non-destructive behavior, and the description adds important context: interactive phone confirmation, no cookie return, and login reuse unless forced. It does not fully clarify what force=True does to an existing login beyond bypassing reuse.
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, front-loaded with the action and platform, and every sentence contributes useful information. There is no redundant or filler text.
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?
With annotations covering safety traits and an output schema covering return values, the description supplies the key operational details: platform, required user interaction, cookie behavior, and force semantics. Minor gaps remain around exact force behavior and non-macOS alternatives.
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 only parameter, force, has no schema description, but the description compensates by explaining that existing working login is reused unless force=True. This adds meaningful semantics beyond the schema, though the exact side effect of forcing a new login is not detailed.
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 states a specific action and resource: opening a local QR-login terminal on macOS for Baidu Netdisk. It is clearly distinct from the sibling file and transfer tools, though it does not explicitly differentiate from other possible authentication approaches.
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?
It gives clear usage context: macOS only, user must scan and confirm in the phone app, and other systems receive a manual login command. It also explains that an existing working login is reused unless force=True, though it does not explicitly state when not to use the tool or name alternative auth tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mkdirAIdempotent
Create a Netdisk folder at an absolute path; verify it exists. Existing folders are reused; existing files are rejected.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true, destructiveHint=false, and openWorldHint=true. The description adds meaningful context beyond those annotations by stating that existing folders are reused, existing files are rejected, and the folder's existence is verified after creation.
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, tightly structured sentence with no filler. The creation behavior is front-loaded, followed by verification and existing-file/folder semantics.
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?
An output schema exists, so return-value details are not needed. The description covers creation, idempotency, existing-folder reuse, file rejection, and verification, though it omits behavior for missing parent directories or permission errors.
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% for the single path parameter. The description compensates partially by requiring an absolute path, but it does not explain path syntax, allowed roots, or other formatting details.
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 states a specific verb and resource: create a Netdisk folder. It also specifies the absolute-path constraint and the verification behavior, making its purpose clear against siblings like list_files or file_info.
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 clearly indicates when it is used—creating a folder—and gives key conditional behavior: existing folders are reused and existing files are rejected. It does not explicitly name alternatives or when-not-to-use cases, but the context is sufficiently clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
moveADestructive
Move a Netdisk file/folder. destination is the complete NEW path, including its name, not just a parent directory. Refuses existing targets and verifies both paths afterward.
| Name | Required | Description | Default |
|---|---|---|---|
| source | Yes | ||
| destination | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, idempotentHint=false and openWorldHint=true, so the safety profile is covered. The description adds genuinely new behavior beyond that: it refuses existing targets (no silent overwrite) and verifies both paths after the operation, which tells the agent what success means and how failures surface.
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?
Three short sentences, front-loaded with the operation, then the highest-risk parameter clarification, then the behavioral guarantees. No repetition of the tool name and nothing extraneous.
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?
An output schema exists, so return values need not be explained, and the description still notes that paths are verified afterward. Combined with the destination semantics and overwrite refusal, an agent has what it needs to call this correctly; only path-format details are missing.
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 carry the burden, and it does for the critical one: destination is the complete NEW path including the name, not just a parent directory. Source is left unstated but is self-evident; a brief note on path format (absolute vs relative, separators) would close the remaining gap.
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?
States a specific verb+resource (move a Netdisk file/folder), making the operation unambiguous. It does not explicitly distinguish itself from near-siblings like rename or copy, but the verb plus the destination semantics do most of that work implicitly.
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?
Usage is only implied: an agent infers this is the tool for relocating an item to a new path, but there is no statement of when to prefer it over rename or copy, nor any prerequisite/authentication guidance. Adequate but with clear gaps.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pause_transferA
Pause a running transfer, preserving its checkpoint for resume_transfer.
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this is a non-read-only, non-idempotent, non-destructive mutation, and the description adds genuinely useful context that the checkpoint survives the pause. It does not disclose behavior on redundant calls (already-paused transfer), whether the pause is immediate or graceful, or what state the transfer transitions to.
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?
A single front-loaded sentence — verb, resource, and the critical state guarantee — with zero 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?
For a one-parameter mutation with an output schema and full annotation coverage, the description covers purpose and the main side-effect concern (checkpoint retention). Only edge-case behavior and parameter provenance are left unaddressed, which is a minor gap.
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% for the single job_id parameter, so the description must carry the burden, and it says nothing about where the id comes from or what form it takes. The name is largely self-explanatory for a one-parameter tool, which limits the harm, but no added meaning is provided.
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?
States a specific verb and resource ('Pause a running transfer') and adds the key state consequence ('preserving its checkpoint'), which distinguishes it from cancel_transfer. It references resume_transfer by name, so an agent can place it in the pause/resume pair, though it never explicitly contrasts itself with cancel_transfer.
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 phrase 'for resume_transfer' implies the intended workflow — pause only when you plan to resume — but there is no explicit when-to-use/when-not-to-use statement or precondition (e.g. 'only valid on transfers in running state'). Usage must be inferred from the checkpoint hint.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
renameADestructive
Rename a Netdisk file/folder within its current parent. Existing target names are refused.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| new_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, idempotentHint=false and openWorldHint=true. The description adds genuinely new behavioral facts: the operation is confined to the current parent, and name collisions are refused rather than overwritten — which materially reframes what "destructive" means here. It stops short of saying what permissions are needed or whether the rename is reversible.
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 short sentences, front-loaded with the action and scope, followed by the single most decision-relevant caveat. No filler or restatement of the title.
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?
An output schema exists, so return values need not be described, and annotations cover the safety profile. However, for a mutation tool with 0% schema description coverage, the definition leaves the two parameters and the permission/error model under-specified.
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% and neither parameter is named or explained. The description never says whether "path" is an absolute path, a relative path, or an ID, nor what characters are legal in "new_name"; "existing target names are refused" only indirectly hints at new_name collision behavior.
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?
States a specific verb and resource ("Rename a Netdisk file/folder") plus a scope qualifier ("within its current parent") that implicitly separates it from the move and copy siblings. An agent can tell what this does and what it does not do without opening the schema.
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 clause "within its current parent" implies the boundary against move, but no sibling is named and there is no explicit when-to-use guidance. The refusal rule for existing names is a constraint, not usage routing, so the agent must infer that move should be used for cross-parent relocation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
resume_transferA
Resume a persisted paused/failed/cancelled task, optionally changing its bandwidth limit. Upload block resume requires the patched backend. Source changes and account changes are rejected.
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes | ||
| rate_limit_bps | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare the safety profile (readOnly=false, destructive=false, idempotent=false), so the description only needs to add context — which it does: state preconditions, a backend dependency, and rejected mutation categories. It does not say what happens if the resume is issued against an ineligible task or how repeated resumes behave, but the core behavioral picture is solid.
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 tight sentences, front-loaded with the action and eligible states, followed by caveats. No 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?
For a 2-parameter mutation with an output schema and informative annotations, the description covers states, prerequisites, and rejections. The one gap is the origin/format of job_id, which matters because the schema gives it no documentation.
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% and neither parameter has a description, so the description carries the burden. It explains rate_limit_bps in prose ('optionally changing its bandwidth limit') but says nothing about job_id — where it comes from or what form it takes.
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?
States a specific verb (resume) and resource (a persisted transfer task), plus exactly which states are eligible (paused/failed/cancelled). An agent can distinguish it from pause_transfer and cancel_transfer without opening a schema.
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?
Gives a clear eligibility condition (task must be persisted and in paused/failed/cancelled state) and explicit exclusions (source changes and account changes are rejected), plus a backend prerequisite for upload block resume. It never names the alternative tools for the non-eligible cases, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
statusARead-onlyIdempotent
Check local authentication and optionally verify the account against live Netdisk quota.
| Name | Required | Description | Default |
|---|---|---|---|
| verify_remote | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, openWorld and non-destructive. The description adds real context by clarifying that the network-touching part is the live quota check against Netdisk, which explains the openWorld hint. It does not say what happens when local auth is missing (error versus status payload) or whether the remote check can fail or be slow.
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?
A single sentence with zero filler, front-loading the local check and qualifying the optional remote step. Nothing to trim.
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?
No, wait — scoring independently: the output schema exists so return values need not be described, but the description still leaves open what an unauthenticated result looks like and what the remote check costs. With one undocumented parameter and an ambiguous name competing with task_status, this is adequate but not complete.
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 single parameter has 0% schema description coverage, so the description must carry its meaning. It does explain the gist of verify_remote as 'verify the account against live Netdisk quota', but omits the default (true per schema) and any cost or failure implications of the live call.
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 names a concrete operation: checking local authentication and optionally verifying the account against live Netdisk quota. This is clearly distinct from mutation siblings and from task_status in subject matter, though it never names task_status to make the distinction explicit.
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?
Usage is only implied — an agent can infer this is a pre-flight check before file operations, and 'optionally' hints at the verify_remote trade-off. There is no explicit statement of when to call this versus login_qr or task_status, and no guidance on when to skip the remote check.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
task_statusBRead-onlyIdempotent
Get persisted transfer progress, checkpoint state and result. Jobs survive MCP restarts.
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile needs no further explanation. The description adds genuine context beyond the annotations that the job state is persisted and survives MCP restarts, but it does not cover behavior such as polling, error states, or whether completed results ever expire.
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?
It is two short sentences and front-loads the core action and return values before the persistence note. Every sentence carries information, and there is no 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?
The output schema exists, so the return values do not need to be spelled out, and the persistence note is a helpful extra. Still, for a tool whose only input is an undocumented required job_id, the description leaves a practical gap: it does not say where that identifier comes from or how the tool relates to its status and transfer siblings.
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 schema has 0% description coverage: job_id is a bare string with no description. The description never mentions job_id, its format, or how to obtain one (for example, from a transfer start or a list_transfers call), so the meaning of the only parameter is undocumented in both the schema and the description.
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?
States a specific verb ('Get') and specific resources ('transfer progress, checkpoint state and result'), so the agent knows exactly what this returns. However, it does nothing to separate the tool from the sibling tool 'status' or from 'list_transfers': the agent cannot tell from the text which of these overlapping lookups to pick.
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?
It provides no explicit guidance on when to use this tool rather than 'status' or 'list_transfers', and no prerequisite or exclusion is stated. The phrase 'Jobs survive MCP restarts' hints that this is a persistent status lookup, but it never says under what circumstances the agent should call it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
uploadA
Start uploading one absolute local file/folder into a Netdisk folder. Existing remote names are skipped. Poll task_status; file jobs also return the source SHA-256.
| Name | Required | Description | Default |
|---|---|---|---|
| local | Yes | ||
| remote_dir | Yes | ||
| rate_limit_bps | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the safety profile (readOnly=false, destructive=false, openWorld=true, idempotent=false), so the description's job is to add context — and it does: asynchronous task model, no-overwrite semantics on name collisions, and SHA-256 returned for file jobs. It doesn't explain partial-upload/resume behavior or what happens with rate limiting, but the core traits are disclosed.
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?
Three short sentences, front-loaded with the action and scope, then collision behavior, then the required follow-up. No 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?
Output schema exists, so return-shape explanation is unnecessary, and annotations cover safety. The async workflow is flagged, which is essential. The only missing piece an agent would want is what rate_limit_bps=0 means, otherwise this is callable and correct.
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 the description must carry all three parameters. It clarifies 'local' as an absolute path, 'remote_dir' as a Netdisk folder subject to skip-on-collision, but says nothing about rate_limit_bps (default 0), leaving one required-meaning gap unfilled.
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?
Specific verb+resource: 'Start uploading one absolute local file/folder into a Netdisk folder.' It also states the async nature (poll task_status) and the skip-if-exists rule, which lets an agent distinguish it from download, copy, and list_files without reading schema.
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?
'Poll task_status' is an explicit follow-up instruction, and 'Existing remote names are skipped' tells the agent the tool will not overwrite. It lacks an explicit when-not/alternative case (e.g., use copy for remote-to-remote moves), so it stops short of a 5.
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.
15 tool updates
v0.3.0- First observed
cancel_transfer - First observed
copy - First observed
download - First observed
file_info - First observed
list_files - First observed
list_transfers - First observed
login_qr - First observed
mkdir - First observed
move - First observed
pause_transfer - First observed
rename - First observed
resume_transfer - First observed
status - First observed
task_status - First observed
upload
TDQS
Scored across 15 tools
Most tools have clearly distinct purposes, but status vs task_status and move vs rename could be momentarily confused without reading descriptions. The descriptions resolve the boundaries, so selection risk is low.
All names use snake_case and are readable, but the pattern is mixed: single-word verbs (move, copy, upload), verb_noun forms (list_files, pause_transfer), and noun phrases (status, task_status, file_info). The set is understandable but not uniformly structured.
Fifteen tools is at the upper end of the typical range but appropriate for covering file operations plus transfer lifecycle management. Each tool maps to a distinct operation with no obvious filler.
The server covers authentication, listing, metadata, folder creation, move/rename/copy, upload/download, and transfer controls. However, there is no delete/remove operation for remote files or folders, which is a significant lifecycle gap for a storage service.
Maintenance
Related MCP Connectors
Connect AI assistants to authorized Windows and macOS devices for files, commands, and management.
Connect AI assistants to your approved computer for files, commands, browser and desktop tasks.
Persistent file storage for AI agents via MCP and curl. Upload, download, and version files.
File uploads for AI agents. Upload, list, and manage files. No signup required.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceEnables AI assistants to manage Synology NAS devices with file operations (create, delete, move, search) and Download Station control through secure authentication and session management.322 PyPI238MIT
- AlicenseAqualityFmaintenanceEnables AI assistants to read, write, and manage files on the local system with security features like path restrictions and optional read-only mode.92MIT
- AlicenseCqualityDmaintenanceConnects Baidu Netdisk to MCP-compatible AI clients, enabling AI to safely read selected files and generate summaries, key points, to-dos, tags, and organization suggestions.275MIT
- FlicenseNot gradedqualityCmaintenanceEnables intelligent organization and retrieval of Baidu Netdisk files through semantic scanning, event clustering, and structured queries. Adds safety with protected moves, undo history, and customizable profiles, building on the official Baidu Netdisk MCP data layer.2-