前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >腾讯云存储率先推出COS MCP Server,打造 AI 时代的存储与处理智能枢纽

腾讯云存储率先推出COS MCP Server,打造 AI 时代的存储与处理智能枢纽

作者头像
腾讯开源
发布于 2025-05-01 15:01:00
发布于 2025-05-01 15:01:00
18900
代码可运行
举报
运行总次数:0
代码可运行

腾讯云存储近年来在数据处理领域持续探索,从智能存储理念到MetaInsight智能检索技术,始终以前沿技术为核心驱动力。在当下 AI 领域的风口,腾讯云对象存储 COS 与数据处理服务数据万象 CI 共同推出了基于 MCP 协议的开发接口,涵盖文件上传下载、智能图文检索、文档转pdf、图片水印、视频封面等功能,为用户提供最前沿的 AI 体验,助力开发者们实现"自然语言驱动云端资源管理"的终极愿景。

MCP 介绍

AI 的突破性进展正加速各行业智能化转型,其中 AI 与外部资源的协同运作能力成为技术商业化的重要基石。面对市场呈现的差异化应用场景,开发者群体已构建起庞大的辅助工具生态,然而技术框架的差异导致工具复用存在显著壁垒——不同架构的智能平台往往需要重复开发适配模块,这种技术隔阂严重制约了产业资源的整合效率。在此背景下,开放协议 MCP(Model Context Protocol)通过建立通用型接口规范,有效打通了 AI 模型与功能插件的交互通道,为 AI 技术的规模化部署提供了关键性支撑。

MCP 全称是 Model Context Protocol,中文名:模型上下文协议。 是由Anthropic 于 2024 年推出的开放协议,旨在为大型语言模型(LLM)与外部数据源、工具之间建立标准化的通信框架。 它通过统一的接口打破数据孤岛,让 AI 模型能够安全高效地连接各类资源,类似于 AI 应用领域的 "USB-C 接口"。

COS MCP Server 是什么?

在 AI 与云原生技术深度融合的今天,开发者面临的核心挑战是如何让 AI 高效地调用、管理资源。对此,腾讯云对象存储 COS 数据处理服务数据万象 CI 共同推出了基于 MCP 协议的开发接口,助力开发者们实现"自然语言驱动云端资源管理"的终极愿景。

✊其核心价值在于:

AI 时代的存储基建

开发者无需为 AI 业务编写 COS 的 SDK 或 API 适配代码,通过COS MCP Server 直接以自然语言指令操作资源。例如,你可以直接将一张图片发送给语言大模型,并说:“帮我保存图片”,大模型会自动将这张图片保存至预设的存储桶中。

自然语言驱动的多模态数据检索

开发者可以通过自然语言指令触发 COS MCP Server 操作,AI 大模型识别语义后调用 Server 中的文件元数据查询、图片信息查询等工具精准定位对象,替代传统路径检索模式。

支持跨类型数据关联查询,例如通过“找出与人物相关的图片”指令,COS MCP Server 进行语义分析和图片内容分析,实现非结构化数据的跨模态检索。

动态上下文感知的数据处理

在涉及多步骤操作时(如上传图片→添加水印),COS MCP Server 可携带历史操作状态,确保流程连贯性。例如,你可以将一张图片发送给语言大模型,并说:“帮我打上'腾讯云'水印,并生成可分享的图片链接”,大模型会自动串联 COS 上传、CI 持久化图片水印,最终返回给你一个打好水印的图片链接。

COS MCP Server 有什么?

COS MCP Server 提供了以下能力:

🗃️对象存储COS接口:上传/下载对象;获取对象列表

🖥️ 数据万象CI接口:文档转PDF;图片文字水印;图片二维码识别;图片质量评分;图片超分;图片通用抠图;图片智能裁剪;智能检索 MetaInsight(文搜图、图搜图);视频智能封面

COS MCP Server 怎么用?

COS MCP Server 支持两种通信传输方式:SSE 模式和Command 模式(即stdio 模式)

1.使用 npm 安装

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 安装
npm install -g cos-mcp@latest

启动

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 运行开启 SSE 模式
cos-mcp --Region=yourRegion --Bucket=yourBucket --SecretId=yourSecretId --SecretKey=yourSecretKey --DatasetName=yourDatasetname --port=3001 --connectType=sse
# 或通过 JSON 配置
cos-mcp --cos-config='{"Region":"yourRegion","Bucket":"BucketName-APPID","SecretId":"yourSecretId","SecretKey":"yourSecretKey","DatasetName":"datasetName"}' --port=3001 --connectType=sse
# 参数说明: 
# connectType 代表连接方式,可以是stdio (本地) 或 sse (远程)
# port 代表监听端口(sse模式有用)
# SecretId 和 SecretKey 可以从腾讯云COS https://console.cloud.tencent.com/cam/capi 获取
# bucket 是存储的桶名称
# region 是存储桶所在的区域
# datasetName 是数据集名,非必填参数,数据智能检索操作需要此参数

2.使用源码安装

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 克隆仓库
git clone https://github.com/tencent/cos-mcp.git
cd cos-mcp
#安装依赖
npm i
#构建项目
npm run build

配置

使用.env 文件,在项目根目录创建.env文件,参考.env.example模板

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
cosConfig='{"Region":"yourRegion","Bucket":"BucketName-APPID","SecretId":"yourSecretId","SecretKey":"yourSecretKey","DatasetName":"datasetName"}'
connectType='sse'
port='3001'

启动

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 开启 stdio 模式
npm start 
# 开启 sse 模式
npm run start:sse
# 开启测试平台
npm run inspect 

3.使用 npx 启动

配置

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{
  "mcpServers": {
    "cos-mcp": {
      "command": "npx",
      "args": [
        "cos-mcp",
"--cos-config='{\"Region\":\"yourRegion\",\"Bucket\":\"yourBucket\",\"SecretId\":\"yourSecretId\",\"SecretKey\":\"yourSecretKey\",\"DatasetName\":\"yourDatasetname\"}'",
        "--port=9000",
        "--connectType=stdio"
      ]
    }
  }
}

4.与 Cursor 配置集成

下面以常用的 AI 编程工具 Cursor 为例(VSCode Cline类似),给大家说明如何使用COS MCP Server:

1、打开 Cursor 设置

2、点击 MCP 添加新的mcp服务

在 mcp.json 中配置

3、返回 mcp 设置检查是否设置成功

4、打开聊天窗口进行对话

场景应用案例

场景一:上传文件至 COS

开发者可以结合其他获取文件的 MCP Server ,如servers/src/filesystem at main · modelcontextprotocol/servers · GitHub,取得文件后,然后上传至 COS。

示例:请把1.txt上传到存储桶

场景二:图片多维度信息展示

基于万象图片基础信息和质量评分能力,返回图片的格式/大小/位深、清晰度、美学度等信息。

示例:请帮我查看下1.jpg的信息

场景三:智能增强图片清晰度

自动判断图片质量,通过图片超分能力对低质量图片进行清晰度增强。

示例:对图片质量不好的进行超分

场景四:图片加水印

根据口语化内容给图片打文字水印,并返回水印图链接。

示例:请对水印图.png打上“test-ci-1234569”的水印

场景五:文档转pdf

支持将文档转换为pdf。

示例:请将test.ppt转换为pdf

场景六:自然语言搜索相似图片

根据输入的口语化文本内容,检索与之相关的图片。

示例:检索与人物相关的图片

场景七:视频封面

智能分析视频,帮视频提供一张最合适作为封面的截帧。

示例:请帮视频.mp4生成一张合适的封面

未来展望

随着功能覆盖度的不断增加,用户可以指定任意非结构化数据并通过口语化表达预期的处理效果,COS MCP Server 将自动从几十上百种处理功能中选择适合的功能进行联合处理,成为真正的智能处理+检索+存储中枢!

资源直达

项目地址/Github 主仓库

https://github.com/Tencent/cos-mcp

COS MCP Server 现已登陆腾讯云开发 MCP Server 模版市场

腾讯云云开发支提供从开发到部署的一站式服务,可在云开发平台托管和搭建自己的 MCP 服务。现已推出 MCP Server 市场,支持几十个 MCP Server。

👀详情可参见

COS MCP Server 支持部署在腾讯云 Serverless

MCP 协议通过标准化接口实现 AI 模型与外部工具的无缝连接,而 Serverless 架构提供弹性计算资源,两者结合可解决 AI 代理的动态资源需求。

👀详情可参见

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-04-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 腾讯开源 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Pytest跳过执行之@pytest.mark.skip()详解
在我们自动化测试过程中,经常会遇到功能阻塞、功能未实现、环境等一系列外部因素问题导致的一些用例执行不了,这时我们就可以用到跳过skip用例,如果我们注释掉或删除掉,后面还要进行恢复操作。
王大力测试进阶之路
2019/12/15
6.6K1
Pytest Hooks方法之pytest_runtest_makereport获取测试用例结果
pytest提供的钩子(Hooks)方法之pytest_runtest_makereport,可以更清晰的了解用例的执行过程,并获取到每个用例的执行结果。
王大力测试进阶之路
2020/05/20
2.6K0
Python Pytest中fixture之yield唤醒teardown和终结函数addfinalizer
引入 我们之前学习的都是测试用例的前置固件,也就是相当于“setup”。说到这,细心的你可能想到了,那有没有什么方式可以表示出“teardown”?这就是我们今天学习的yield和addfinalizer。
王大力测试进阶之路
2019/10/25
1.3K0
Pytest自定义标记mark及指定文件/类/方法/用例执行
pytest.main(['-s','test01.py','-m=test'])
王大力测试进阶之路
2019/12/15
1.9K0
Pytest Hooks方法之pytest_collection_modifyitems改变测试用例执行顺序
pytest默认执行用例顺序是根据项目下文件名称按ascii码去收集运行的,文件里的用例是从上往下按顺序执行的.
王大力测试进阶之路
2020/05/25
2.2K0
Python Pytest前置setup和后置teardown详解
pytest用例运行级别: ●模块级(setup_module/teardown_module)开始于模块始末,全局的(类外生效、函数中生效) ●函数级(setup_function/teardown_function)只对函数用例生效(类外有函数时生效) ●类级(setup_class/teardown_class)只在类中前后运行一次(在类中生效,类外不生效) ●方法级(setup_method/teardown_method)开始于方法始末(在类中生效,类外不生效) ●类里面的(setup/teardown)运行在调用方法的前后(类中生效、类外有函数时生效)
王大力测试进阶之路
2019/10/25
1.6K0
Python Pytest装饰器@pytest.mark.parametrize详解
Pytest中装饰器@pytest.mark.parametrize('参数名',list)可以实现测试用例参数化,类似DDT 如:@pytest.mark.parametrize('请求方式,接口地址,传参,预期结果',[('get','www.baidu.com','{"page":1}','{"code":0,"msg":"成功"})',('post','www.baidu.com','{"page":2}','{"code":0,"msg":"成功"}')])
王大力测试进阶之路
2019/10/25
8.2K0
Pytest脚本中用例运行方式
脚本树如下: test1文件下test_01.py存放test1和test2用例 test1文件下test_02.py存放test1和test2用例 test2文件下test_03.py存放test1
王大力测试进阶之路
2019/11/09
1.1K0
iOS自动化探索(四)自动化测试框架pytest - 安装和使用
pytest是Python最流行的单元测试框架之一, 帮助更便捷的编写测试脚本, 并支持多种功能复杂的测试场景, 能用来做app测试也能用作函数测试
周希
2019/10/15
1.4K0
Pytest fixture之request传参
Pytest中我们经常会用到数据参数化,我们来介绍下装饰器@pytest.fixture()配合request传参的使用
王大力测试进阶之路
2019/11/28
8820
Pytest之@pytest.mark.usefixtures()、叠加usefixtures、(autouse=True)详解
如果fixture有返回值,那么usefixture就无法获取到返回值,这个是装饰器usefixture与用例直接传fixture参数的区别。
王大力测试进阶之路
2019/10/25
2.4K0
Python pytest框架之@pytest.fixture()和conftest详解
一、fixture简介 学pytest就不得不说fixture,fixture是pytest的精髓所在,类似unittest中setup/teardown这种前后置东西。但是比它们要强大、灵活很多,它的优势是可以跨文件共享 fixture的目的是提供一个固定基线,在该基线上测试可以可靠地和重复地执行。fixture提供了区别于传统单元测试(setup/teardown)有显著改进 1、有独立的命名,并通过声明它们从测试函数、模块、类或整个项目中的使用来激活。 2、按模块化的方式实现,每个fixture都可以互相调用。 3、fixture的范围从简单的单元扩展到复杂的功能测试,允许根据配置和组件选项对fixture和测试用例进行参数化,或者跨函数function、类class、模块module或整个测试会话sessio范围。
王大力测试进阶之路
2019/10/25
5.9K0
python pytest测试框架
2.2使用装饰器@pytest.mark.usefixtures()修饰需要运行的用例
狼啸风云
2020/02/11
1.6K0
Pytest和Allure测试框架-超详细版+实战
:1. 简单灵活,容易上手;支持参数化; 测试用例的skip和xfail 处理; 2. 能够支持简单的单元测试和复杂的功能测试,还可以用来做 selenium/appium等自动化测试、接口自动化测试 (pytest+requests); 3. pytest具有很多第三方插件,并且可以自定义扩展, 比较好 用的如 pytest-allure(完美html测试报告生成) pytest-xdist (多CPU分发)等; 4. 可以很好的和jenkins集成;** 5. **
全栈程序员站长
2022/09/17
2.4K0
Pytest和Allure测试框架-超详细版+实战
pytest文档4-测试用例setup和teardown
学过unittest的都知道里面用前置和后置setup和teardown非常好用,在每次用例开始前和结束后都去执行一次。 当然还有更高级一点的setupClass和teardownClass,需配合@classmethod装饰器一起使用,在做selenium自动化的时候,它的效率尤为突然,可以只启动一次浏览器执行多个用例。 pytest框架也有类似于setup和teardown的语法,并且还不止这四个
上海-悠悠
2018/08/03
1.1K0
pytest文档2-用例运行规则
1.查看pytest命令行参数,可以用pytest -h 或pytest —help查看
上海-悠悠
2018/08/03
1.1K0
Pytest配置文件pytest.ini
pytest.ini文件是pytest的主配置文件,可以改变pytest的运行方式,它是一个固定的文件pytest.ini文件,读取配置信息,按指定的方式去运行。pytest.ini的位置:一般放在项目工程的根目录(即当前项目的顶级文件夹下)
王大力测试进阶之路
2020/09/15
2.1K0
Pytest配置文件pytest.ini
Pytest标记用例失败之xfail
项目自动化测试中,如果接口2依赖接口1的响应结果值,或者用例2依赖用例1的响应结果值,自然需要与接口1或用例1进行关联,但是当接口1或用例1执行失败,接口2或用例2一定也是失败的,所以这时不必要再进行接口2和用例2的执行,只需要判断当接口1或用例1执行失败,直接标记接口2或用例2失败xfail
王大力测试进阶之路
2019/12/15
5680
软件测试|教你用skip灵活跳过用例
日常工作中,我们难免会遇到本次执行不需要所有用例都跑一遍的情况,或者说,我们就是希望某些用例不执行,来看看报错。
霍格沃兹测试开发Muller老师
2023/02/10
5170
Pytest之pytest-assume同用例多断言,断言1失败会执行后续代码及断言2
一般我们做自动化测试时,一个用例会写多个断言,当第一个断言失败后,后面的代码就不会执行了,于是我们引进了pytest-assume插件可以解决断言失败后继续断言的问题。
王大力测试进阶之路
2020/05/29
3.3K0
推荐阅读
相关推荐
Pytest跳过执行之@pytest.mark.skip()详解
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验