阿里云百炼 MCP 部署

记录一下阿里云MCP 部署,首先我们这边是有个现有的mcp 服务

url : https://cloud-findaxxxxx/mcp/

aurthorization: 1pzSGPxxxxxxxxxxx (也就是api key 啦)

tool :"extract_and_align_entities"

arguments={

"query": "腾讯控股在2024年第一季度发布了财报,净利润达到500亿港元。",

"entity_list": "机构-公司", "时间",

}

创建选项

阿里云有很多创建选项,然后我试的是 插件 和 脚本部署

- 插件 = 接"通用外部 API"

- 脚本部署 = 平台帮你"把 MCP 服务跑起来"

- AI 网关 = 接"企业内部已经管理好的服务"

- 阿里云 OpenAPI = 接"阿里云体系里的 API 服务"

然而,插件不支持已经写好的mcp, 它是把你的HTTP服务包成mcp,否则调用会出错

所以我们选择了脚本部署

脚本部署

通过http 模式,填入我们已经部署好的mcp

{

"mcpServers": {

"findata-mcp": {

"url": "https://cloud-findxxxxxxx/mcp/",

"type": "streamableHttp",

"headers": {

"Authorization": "Bearer 1pzxxxxxxx"

}

}

}

}

然后平台可以自动检测你有的工具,无需手动设计参数

然后这里也可以测试部署的服务的tool 的使用

测试成功之后就开始尝试外部调用了↓

外部调用

平台提供了一系列外部调用的方式,包括cherry studio, cursor 和 qwen code, 这里我们直接SDK 调用,平台会给我们一个api key, 这就相当于是这个aliyun 服务的api key了,和我们之前的原始api key 不一样。

测试脚本

python 复制代码
#!/usr/bin/env python3
# -*- coding: utf-8 -*-

import asyncio
import httpx
from mcp import ClientSession
from mcp.client.streamable_http import streamable_http_client

API_KEY = "sk-0xxxxxxxxxxxxxxxxxxxxxx"
BASE_URL = "https://dashscope.aliyuncs.com/api/v1/mcps/mcp-ZjYxZDI5YTJmNzIx/mcp"


async def main():
    headers = {
        "Authorization": f"Bearer {API_KEY}"
    }

    async with httpx.AsyncClient(
        headers=headers,
        timeout=httpx.Timeout(30, read=300),
    ) as http_client:
        async with streamable_http_client(
            BASE_URL,
            http_client=http_client,
        ) as (read, write, _get_session_id):
            async with ClientSession(read, write) as session:
                await session.initialize()

                tools = await session.list_tools()
                print("Available tools:", [t.name for t in tools.tools])

                result = await session.call_tool(
                    "extract_and_align_entities",
                    arguments={
                        "query": "腾讯控股在2024年第一季度发布了财报,净利润达到500亿港元。",
                        "entity_list": ["机构-公司", "时间"],
                    },
                )
                print("Tool result:", result)


if __name__ == "__main__":
    asyncio.run(main())

跑一下测试成功~ 阿里云MCP 创建成功

计费部分需要通过阿里云网关部署另外的服务啥的,我盘了半天没盘出来,交给我的mentor 大人了

相关推荐
xiao5kou4chang6kai42 天前
MATLAB机器学习、深度学习--从数据预处理到模型训练
深度学习·机器学习·matlab·数据预处理
renhongxia13 天前
世界模型作为AGI落地底层底座的作用
人工智能·深度学习·生成对抗网络·自然语言处理·知识图谱·agi
Inhand陈工3 天前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
计算机科研狗@OUC3 天前
(cvpr26) AIMDepth: Asymmetric Image-Event Mamba for Monocular Depth Estimation
人工智能·深度学习·计算机视觉
Database_Cool_3 天前
什么是数据仓库物化视图?AnalyticDB MySQL 实时物化视图能力解析
人工智能·mysql·阿里云
Database_Cool_3 天前
大规模数据分析降本指南:AnalyticDB Serverless 弹性架构实战
数据仓库·阿里云·架构·数据分析·serverless
β添砖java3 天前
深度学习(22)网络中的网络NiN
人工智能·深度学习
Kobebryant-Manba3 天前
深度学习时候d2l报错和使用问题
人工智能·深度学习
zhangfeng11333 天前
deepspeed zero3 结合 llamafactory 微调 ,save_only_model: true 导致保存时候出错
开发语言·python·深度学习
大模型最新论文速读3 天前
06-16 · LLM 最新论文速览
论文阅读·人工智能·深度学习·机器学习·自然语言处理