# ecs_mcp_server **Repository Path**: mirrors_Qihoo360/ecs_mcp_server ## Basic Information - **Project Name**: ecs_mcp_server - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-07-31 - **Last Updated**: 2025-08-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 360 AI 云盘 MCP 360 AI 云盘的 Model Context Protocol 接入服务,让 AI 模型能够通过 MCP 协议直接操作云盘,提供完整的云盘文件管理能力。 ## 📚 简介 本项目为 360 AI 云盘的 MCP(Model Context Protocol)服务实现,允许各类 AI 模型(如大语言模型)通过标准的 MCP 协议与 360 AI 云盘进行交互。通过这种方式,AI 模型可以帮助用户管理云盘文件,极大地提升了文件管理的智能化和便捷性。 ## 🔧 配置方式(在 Cursor 中配置) ### Stdio 接入方式 在 `~/.cursor/mcp.json` 文件中添加以下配置,连接 360 AI 云盘 MCP 服务: ```json { "mcpServers": { "360-mcp-server-disk": { "command": "npx", "args": [ "-y", "@aicloud360/mcp-server-disk" ], "env": { "API_KEY": "_xxxxxxxxx" } } } } ``` ### Streamable HTTP 接入方式 如果您希望通过HTTP方式接入,可以使用以下配置: ```json { "mcpServers": { "mcp-server-disk-http": { "url": "https://mcp.yunpan.com/mcp?api_key=_xxxxxxxxx" } } } ``` Streamable HTTP接入方式的特点: - 无需安装 nodejs 环境 - 无需下载到本地运行 - 通过URL参数传递API_KEY进行认证 - 适合需要HTTP接口的集成场景 ### SSE 接入方式 如果您希望通过SSE(Server-Sent Events)方式接入,可以使用以下配置: ```json { "mcpServers": { "mcp-server-disk-sse": { "url": "https://mcp.yunpan.com/sse?api_key=_xxxxxxxxx" } } } ``` SSE接入方式的特点: - 基于HTTP长连接的服务器推送技术 - 实时性更强,适合需要即时响应的场景 - 单向通信,服务器向客户端推送数据 - 无需安装额外环境,浏览器原生支持 - 通过URL参数传递API_KEY进行认证 ## 🔐 认证配置 使用 360 AI 云盘 MCP 服务需要以下认证信息: - `API_KEY`:360AI云盘 API 密钥,格式为 "yunpan_" 开头的字符串 您可以通过以下方式获取API_KEY: - 参照 [快速接入](https://open.yunpan.360.cn/docs/mcp-server/preparation) MCP Server ### 360 AI 云盘开放平台优势 360 AI 云盘开放平台提供了多元化的产品能力和一站式文件服务: - **账号一键关联**:无需重新注册账号,现有360 AI 云盘账号一键关联,实现"多平台,一账号"的无缝登录体验 - **支持 MCP 协议接入**:支持 Stdio/SSH/Streamable HTTP/SSE 协议,通过 MCP Client 轻松接入 - **丰富接口能力**:提供文件上传、下载、搜索、新建、重命名、移动、分享等 API,满足不同场景需求 访问 [360 AI 云盘开放平台官网](https://open.yunpan.360.cn) 获取更多详细信息和最新的开发文档。 ## ✨ 功能概览 本 MCP 服务提供与 360AI 云盘交互的多种操作,包括: - 📁 文件列表浏览 - 查看云盘目录内容 - 🔍 文件搜索 - 根据关键词搜索云盘文件 - ⬆️ 文件上传 - 将文件上传至 360 云盘 - ⬇️ 文件下载 - 获取云盘文件下载链接并支持直接下载 - 🎬 视频下载 - 通过URL下载视频到云盘,支持批量下载和实时进度监控 - 💾 文件保存 - 通过URL或文本内容保存文件到云盘 - 📂 目录创建 - 在云盘中创建新文件夹 - ✏️ 文件重命名 - 修改云盘文件或文件夹名称 - 🚚 文件移动 - 将文件移动到其他位置 - 🔗 文件分享 - 将指定文件生成分享链接 - 🔑 用户个人信息 - 获取用户信息 ## 🛠️ 工具使用指南 当连接到 360 AI 云盘 MCP 服务后,可以使用以下工具与云盘交互: ### 文件上传 (file-upload-stdio) - 仅支持Stdio接入方式 将本地文件上传到 360 AI云盘指定路径。 **参数:** - `filePaths`: 本地文件的完整路径(必填,可以是字符串数组包含多个文件) - `uploadPath`: 上传到云盘的目标目录,默认为根目录 `/` **示例:** ```json { "filePaths": ["/Users/username/Documents/报告.docx", "/Users/username/Documents/数据.xlsx"], "uploadPath": "/工作文件" } ``` **单文件上传示例:** ```json { "filePaths": "/Users/username/Desktop/测试文档.pdf", "uploadPath": "/文档" } ``` ### 文件下载 (file-download-stdio) - 仅支持Stdio接入方式 获取云盘中指定文件的下载链接并支持直接下载文件。 **参数:** - `nid`: 文件的唯一标识ID,可通过文件列表或搜索获取(必填) - `auto`: 是否直接下载文件,默认为true - `downloadDir`: 指定下载目录,必须有读写权限,默认为用户主目录下的.mcp-downloads文件夹 **仅获取下载链接示例:** ```json { "nid": "12345678", "auto": false } ``` **下载到指定目录示例:** ```json { "nid": "12345678", "auto": true, "downloadDir": "/Users/username/Downloads" } ``` ### 文件列表查询 (file-list) 获取 360 AI云盘指定路径下的文件和文件夹列表。 **参数:** - `path`: 要查询的路径,默认为根目录 `/` - `page`: 页码,默认为 0 - `page_size`: 每页显示条数,默认为 50 **示例:** ```json { "path": "/文档", "page": 1, "page_size": 20 } ``` ### 文件搜索 (file-search) 根据关键词搜索 360 AI云盘文件。 **参数:** - `key`: 搜索关键词(必填) - `file_category`: 文件类型(-1:全部,0:其他,1:图片,2:文档,3:音乐,4:视频),默认为 -1 - `page`: 页码,默认为 1 - `page_size`: 每页显示条数,默认为 20 **示例:** ```json { "key": "报告", "file_category": 2, "page": 1 } ``` ### 文件保存 (file-save) 通过URL或文本内容保存文件到云盘。 **参数:** - `url`: 文件下载地址(url或content必传1个) - `content`: 文件内容,支持markdown格式(url或content必传1个) - `upload_path`: 云盘存储路径,必须以/开头,默认为"/来自:mcp_server/" **通过URL保存示例:** ```json { "url": "https://example.com/sample.pdf", "upload_path": "/文档/下载/" } ``` **通过文本内容保存示例:** ```json { "content": "# 标题\n这是一段Markdown格式的文本内容", "upload_path": "/笔记/" } ``` ### 视频下载 (video-download) 通过URL下载视频到云盘,支持批量下载和实时进度监控。此操作可能需要较长时间,建议客户端设置更长的超时时间(建议300秒以上)。 **参数:** - `urls`: 视频URL,多个URL使用英文竖线'|'分隔(必填) **单视频下载示例:** ```json { "urls": "https://example.com/video.mp4" } ``` **批量视频下载示例:** ```json { "urls": "https://example.com/video1.mp4|https://example.com/video2.mp4|https://example.com/video3.mp4" } ``` **功能特点:** - 🎯 **批量下载**:支持同时下载多个视频URL - 📊 **实时进度**:提供详细的下载进度监控,包括任务状态分布 - 🔄 **自动轮询**:自动轮询任务状态直到完成,无需手动查询 - 📁 **云盘存储**:下载的视频直接保存到云盘,提供云盘文件链接 - ⚡ **状态跟踪**:实时跟踪任务状态(待开始/下载中/下载成功/上传成功/失败) - 🔗 **便捷访问**:完成后提供云盘文件链接,方便直接访问 **返回结果说明:** - 成功下载的视频会显示云盘文件路径、文件大小、访问链接等信息 - 失败的视频会显示具体的失败原因 - 支持结构化数据返回,便于程序处理 ### 创建文件夹 (make-dir) 在 360 AI云盘中创建新文件夹。 **参数:** - `fname`: 文件夹路径,例如:`/新文件夹/`(必填) **示例:** ```json { "fname": "/工作文件/项目A/" } ``` ### 文件分享 (file-share) 将指定文件生成分享链接。 **参数:** - `paths`: 要分享的文件路径,多个文件路径用竖线(|)隔开(必填) **示例:** ```json { "paths": "/文档/报告.docx|/文档/数据.xlsx" } ``` ### 移动文件 (file-move) 移动 360 AI云盘中的文件或文件夹到新位置。 **参数:** - `src_name`: 文件原路径,多个路径用竖线隔开(必填) - `new_name`: 目标路径(必填) **示例:** ```json { "src_name": "/文档/报告.docx|/文档/数据.xlsx", "new_name": "/归档文件夹/" } ``` ### 重命名文件 (file-rename) 重命名 360AI 云盘中的文件或文件夹。 **参数:** - `src_name`: 原路径名称,如:`/文件夹/旧文件名.txt`(必填) - `new_name`: 新名称,如:`新文件名.txt`(必填) **示例:** ```json { "src_name": "/文档/草稿.docx", "new_name": "最终报告.docx" } ``` ### 用户个人信息 (user-info) 获取 360 AI云盘用户个人信息。 **参数:** - 无 ## 🧠 AI 应用场景 通过 360 AI 云盘 MCP 接入,AI 可以帮助用户实现以下场景: - **智能文件整理**:AI 可以分析用户文件内容,并自动归类整理 - **文档智能检索**:使用自然语言描述查找云盘内的文档 - **自动文件备份**:根据用户习惯,提供智能备份建议 - **文件内容分析**:分析文档内容并提供摘要或见解 - **基于对话的文件操作**:用户可以通过对话方式管理云盘文件 - **文件上传及分享**:用户可以通过对话方式保存文件到云盘,并生成文件分享链接,方便把文件分享给他人 - **网络资源保存**:用户可以通过提供URL,让AI帮助将网络资源保存到云盘 - **文件内容创建与保存**:AI可以根据用户需求创建文档内容,并直接保存到云盘 - **云盘文件下载**:用户可以通过对话方式从云盘下载文件到本地 - **视频资源下载**:用户可以通过提供视频URL,让AI帮助将视频下载到云盘,支持批量下载和进度监控 ## 🔑 关键词 - 360 AI 云盘 - mcp - modelcontextprotocol - ai助手 - 文件管理 - 视频下载 - 批量下载 - sse - streamable http ## 📄 许可证 Apache-2.0