Access Alibaba Cloud observability products such as SLS, ARMS, and CloudMonitor.
阿里云可观测 MCP服务,提供了一系列访问阿里云可观测各产品的工具能力,覆盖产品包含阿里云日志服务SLS、阿里云应用实时监控服务ARMS、阿里云云监控等,任意支持 MCP 协议的智能体助手都可快速接入。
目前提供的 MCP 工具以阿里云日志服务为主,其他产品会陆续支持,工具详细如下:
可以查看 CHANGELOG.md
可以查看 FAQ.md
工具名称 | 用途 | 关键参数 | 最佳实践 |
---|---|---|---|
sls_list_projects | 列出SLS项目,支持模糊搜索和分页 | projectName :项目名称(可选,模糊搜索)limit :返回项目数量上限(默认50,范围1-100)regionId :阿里云区域ID | - 在不确定可用项目时,首先使用此工具- 使用合理的limit 值避免返回过多结果 |
sls_list_logstores | 列出项目内的日志存储,支持名称模糊搜索 | project :SLS项目名称(必需)logStore :日志存储名称(可选,模糊搜索)limit :返回结果数量上限(默认10)isMetricStore :是否筛选指标存储logStoreType :日志存储类型regionId :阿里云区域ID | - 确定项目后使用此工具查找相关日志存储- 可通过logStoreType 筛选特定类型日志存储 |
sls_describe_logstore | 检索日志存储的结构和索引信息 | project :SLS项目名称(必需)logStore :SLS日志存储名称(必需)regionId :阿里云区域ID | - 在查询前使用此工具了解可用字段及其类型- 检查所需字段是否启用了索引 |
sls_execute_sql_query | 在指定时间范围内对日志存储执行SQL查询 | project :SLS项目名称(必需)logStore :SLS日志存储名称(必需)query :SQL查询语句(必需)fromTimestampInSeconds :查询开始时间戳(必需)toTimestampInSeconds :查询结束时间戳(必需)limit :返回结果数量上限(默认10)regionId :阿里云区域ID | - 使用适当的时间范围优化查询性能- 限制返回结果数量避免获取过多数据 |
sls_translate_text_to_sql_query | 将自然语言描述转换为SLS SQL查询语句 | text :查询的自然语言描述(必需)project :SLS项目名称(必需)logStore :SLS日志存储名称(必需)regionId :阿里云区域ID | - 适用于不熟悉SQL语法的用户- 对于复杂查询,可能需要优化生成的SQL |
sls_diagnose_query | 诊断SLS查询问题,提供失败原因分析 | query :待诊断的SLS查询(必需)errorMessage :查询失败的错误信息(必需)project :SLS项目名称(必需)logStore :SLS日志存储名称(必需)regionId :阿里云区域ID | - 查询失败时使用此工具了解根本原因- 根据诊断建议修改查询语句 |
工具名称 | 用途 | 关键参数 | 最佳实践 |
---|---|---|---|
arms_search_apps | 根据应用名称搜索ARMS应用 | appNameQuery : 应用名称查询字符串(必需)regionId : 阿里云区域ID(必需,格式:'cn-hangzhou')pageSize : 每页结果数量(默认:20,范围:1-100)pageNumber : 页码(默认:1) | - 用于查找特定名称的应用- 用于获取其他ARMS操作所需的应用PID- 使用合理的分页参数优化查询结果- 查看用户拥有的应用列表 |
arms_generate_trace_query | 根据自然语言问题生成ARMS追踪数据的SLS查询 | user_id : 阿里云账户ID(必需)pid : 应用PID(必需)region_id : 阿里云区域ID(必需)question : 关于追踪的自然语言问题(必需) | - 用于查询应用的追踪信息- 分析应用性能问题- 跟踪特定请求的执行路径- 分析服务调用关系- 集成了自动重试机制处理瞬态错误 |
arms_get_application_info | 获取特定ARMS应用的详细信息 | pid : 应用PID(必需)regionId : 阿里云区域ID(必需) | - 当用户明确请求应用信息时使用- 确定应用的开发语言- 在执行其他操作前先获取应用基本信息 |
arms_profile_flame_analysis | 分析ARMS应用火焰图性能热点 | pid : 应用PID(必需)startMs : 分析开始时间戳(必需)endMs : 分析结束时间戳(必需)profileType : 分析类型,如'cpu'、'memory'(默认:'cpu')ip : 服务主机IP(可选)thread : 线程ID(可选)threadGroup : 线程组(可选)regionId : 阿里云区域ID(必需) | - 用于分析应用性能热点问题- 支持CPU和内存类型的性能分析- 可筛选特定IP、线程或线程组- 适用于Java和Go应用 |
arms_diff_profile_flame_analysis | 对比不同时间段的火焰图性能变化 | pid : 应用PID(必需)currentStartMs : 当前时间段开始时间戳(必需)currentEndMs : 当前时间段结束时间戳(必需)referenceStartMs : 参考时间段开始时间戳(必需)referenceEndMs : 参考时间段结束时间戳(必需)profileType : 分析类型,如'cpu'、'memory'(默认:'cpu')ip : 服务主机IP(可选)thread : 线程ID(可选)threadGroup : 线程组(可选)regionId : 阿里云区域ID(必需) | - 用于发布前后性能对比- 分析性能优化效果- 识别性能退化点- 支持CPU和内存类型的性能对比- 适用于Java和Go应用 |
工具名称 | 用途 | 关键参数 | 最佳实践 |
---|---|---|---|
cms_translate_text_to_promql | 将自然语言描述转换为PromQL查询语句 | text : 要转换的自然语言文本(必需)project : SLS项目名称(必需)metricStore : SLS指标存储名称(必需)regionId : 阿里云区域ID(必需) | - 提供清晰、具体的指标描述- 如已知,可在描述中提及特定的指标名称、标签或操作- 排除项目或指标存储名称本身- 检查并优化生成的查询以提高准确性和性能 |
为了确保 MCP Server 能够成功访问和操作您的阿里云可观测性资源,您需要配置以下权限:
阿里云访问密钥 (AccessKey):
当你初始化时候不传入 AccessKey 和 AccessKey Secret 时,会使用默认凭据链进行登录
RAM 授权 (重要):
sls:CallAiTools
的权限请务必关注以下安全事项和部署最佳实践:
密钥安全:
访问控制 (关键):
在使用 MCP Server 之前,需要先获取阿里云的 AccessKeyId 和 AccessKeySecret,请参考 阿里云 AccessKey 管理
⚠️ 需要 Python 3.10 及以上版本。
直接使用 pip 安装即可,安装命令如下:
pip install mcp-server-aliyun-observability
python -m mcp_server_aliyun_observability --transport sse --access-key-id <your_access_key_id> --access-key-secret <your_access_key_secret>
可通过命令行传递指定参数:
--transport
指定传输方式,可选值为 sse
或 stdio
,默认值为 stdio
--access-key-id
指定阿里云 AccessKeyId,不指定时会使用环境变量中的ALIBABA_CLOUD_ACCESS_KEY_ID--access-key-secret
指定阿里云 AccessKeySecret,不指定时会使用环境变量中的ALIBABA_CLOUD_ACCESS_KEY_SECRET--log-level
指定日志级别,可选值为 DEBUG
、INFO
、WARNING
、ERROR
,默认值为 INFO
--transport-port
指定传输端口,默认值为 8000
,仅当 --transport
为 sse
时有效uvx --from 'mcp-server-aliyun-observability==0.2.1' mcp-server-aliyun-observability
uvx run mcp-server-aliyun-observability
# clone 源码
git clone git@github.com:aliyun/alibabacloud-observability-mcp-server.git
# 进入源码目录
cd alibabacloud-observability-mcp-server
# 安装
pip install -e .
# 运行
python -m mcp_server_aliyun_observability --transport sse --access-key-id <your_access_key_id> --access-key-secret <your_access_key_secret>
以 SSE 启动方式为例,transport 端口为 8888,实际使用时需要根据实际情况修改
{
"mcpServers": {
"alibaba_cloud_observability": {
"url": "http://localhost:7897/sse"
}
}
}
--directory
参数,指定源码目录,最好是绝对路径{
"mcpServers": {
"alibaba_cloud_observability": {
"command": "uv",
"args": [
"--directory",
"/path/to/your/alibabacloud-observability-mcp-server",
"run",
"mcp-server-aliyun-observability"
],
"env": {
"ALIBABA_CLOUD_ACCESS_KEY_ID": "<your_access_key_id>",
"ALIBABA_CLOUD_ACCESS_KEY_SECRET": "<your_access_key_secret>"
}
}
}
}
{
"mcpServers": {
"alibaba_cloud_observability": {
"command": "uv",
"args": [
"run",
"mcp-server-aliyun-observability"
],
"env": {
"ALIBABA_CLOUD_ACCESS_KEY_ID": "<your_access_key_id>",
"ALIBABA_CLOUD_ACCESS_KEY_SECRET": "<your_access_key_secret>"
}
}
}
}
Integrate with Salesforce to perform actions like testing connections and running queries.
Send emails using AWS Simple Email Service (SES). Supports plain text, HTML, CC, BCC, reply-to, and email scheduling.
Provides cloud migration services, including asset usage analysis, technology stack evaluation, and migration planning.
Interact with Speckle, the collaborative data hub that connects with your AEC tools.
Manage Cloudflare DNS records for your domains.
A remote, auth-less MCP server deployable on Cloudflare Workers or locally via npm.
An MCP server deployed on Cloudflare Workers, featuring OAuth login and data storage via Cloudflare KV.
MCP Server that connects AI agents to Chargebee platform.
Interact with the Linode API to manage cloud resources.
A server for interacting with the Alpaca trading API. Requires API credentials via environment variables.