Skip to main content
Glama

Alibaba Cloud Operations MCP Server

by RadiumGu
QCLI_COMPATIBILITY_FIX.md4.33 kB
# Q CLI 兼容性临时解决方案 ## 问题描述 Amazon Q CLI 的 MCP 客户端实现与标准 MCP 协议存在兼容性问题: 1. 发送的初始化通知格式为 `"method": "initialized"`,而标准格式应为 `"method": "notifications/initialized"` 2. 工具列表请求在初始化完成前发送,导致请求失败 ## 解决方案 创建了一个兼容性适配器 `qcli_compatible_server.py`,它: - 处理 Q CLI 的非标准初始化通知格式 - 正确管理初始化状态 - 提供完整的工具列表和调用功能 - 保持与原始阿里云 MCP 服务器相同的功能 ## 文件说明 ### 核心文件 - `qcli_compatible_server.py` - 兼容性适配器主文件 - `qcli_server` - 启动脚本(已设置可执行权限) ### 测试文件 - `test_compatible.sh` - 兼容性测试脚本 - `debug_server.py` - 调试版本服务器 - `minimal_test.py` - 最小化测试 ## 使用方法 ### 1. 确认配置已更新 MCP 配置文件 `~/.aws/amazonq/mcp.json` 已更新为使用兼容服务器: ```json { "alibaba-cloud-ops-mcp-server": { "command": "/Users/glei/genai/alibaba-cloud-ops-mcp-server/qcli_server", "args": ["--services", "ecs,vpc,rds,oss"], "env": { "ALIBABA_CLOUD_ACCESS_KEY_ID": "your-access-key-id", "ALIBABA_CLOUD_ACCESS_KEY_SECRET": "your-access-key-secret", "ALIBABA_CLOUD_REGION": "cn-beijing" } } } ``` ### 2. 重启 Q CLI ```bash # 如果 Q CLI 正在运行,先退出 # 然后重新启动 q chat ``` ### 3. 测试功能 在 Q CLI 中测试: ``` 你能列出可用的阿里云工具吗? ``` ## 可用工具 兼容服务器提供以下工具: ### 核心工具 - `PromptUnderstanding` - 理解用户查询并转换为阿里云专家建议 - `ListAPIs` - 获取服务的 API 列表 - `GetAPIInfo` - 获取特定 API 的详细信息 - `CommonAPICaller` - 执行 API 调用 ### ECS 管理工具 - `OOS_RunCommand` - 批量在 ECS 实例上运行命令 - `OOS_StartInstances` - 批量启动 ECS 实例 - `OOS_StopInstances` - 批量停止 ECS 实例 - `OOS_RebootInstances` - 批量重启 ECS 实例 - `OOS_RunInstances` - 批量创建 ECS 实例 - `OOS_ResetPassword` - 批量修改 ECS 实例密码 - `OOS_ReplaceSystemDisk` - 批量替换系统盘 ### RDS 管理工具 - `OOS_StartRDSInstances` - 批量启动 RDS 实例 - `OOS_StopRDSInstances` - 批量停止 RDS 实例 - `OOS_RebootRDSInstances` - 批量重启 RDS 实例 ### 监控工具 - `CMS_GetCpuUsageData` - 获取 CPU 使用率 - `CMS_GetCpuLoadavgData` - 获取 CPU 负载 - `CMS_GetMemUsedData` - 获取内存使用量 - `CMS_GetMemUsageData` - 获取内存利用率 - `CMS_GetDiskUsageData` - 获取磁盘利用率 ### OSS 工具 - `OSS_ListBuckets` - 列出存储空间 - `OSS_ListObjects` - 列出对象 - `OSS_PutBucket` - 创建存储空间 - `OSS_DeleteBucket` - 删除存储空间 ### Claude AI 工具 - `list_claude_models` - 列出可用的 Claude 模型 - `generate_claude_completion` - 生成 Claude 完成 ## 故障排除 ### 1. 权限问题 确保启动脚本有执行权限: ```bash chmod +x /Users/glei/genai/alibaba-cloud-ops-mcp-server/qcli_server ``` ### 2. 环境变量问题 检查阿里云凭证是否正确设置在 MCP 配置中。 ### 3. 依赖问题 确保虚拟环境中安装了所有依赖: ```bash cd /Users/glei/genai/alibaba-cloud-ops-mcp-server source .venv/bin/activate pip install -e . ``` ### 4. 测试兼容性 运行测试脚本验证功能: ```bash ./test_compatible.sh ``` ## 日志和调试 兼容服务器会输出详细的日志信息,包括: - 服务器启动信息 - 初始化状态 - 工具调用详情 - 错误信息 ## 注意事项 1. **临时解决方案**:这是一个临时解决方案,等待 Amazon Q CLI 团队修复 MCP 协议兼容性问题。 2. **功能完整性**:兼容服务器提供与原始服务器相同的功能,只是增加了协议兼容性处理。 3. **性能影响**:由于增加了适配层,可能会有轻微的性能影响,但在正常使用中应该不明显。 4. **更新建议**:定期检查 Amazon Q CLI 更新,一旦官方修复了兼容性问题,可以切换回原始服务器。 ## 联系支持 如果遇到问题,可以: 1. 检查日志输出 2. 运行测试脚本验证 3. 向 Amazon Q 团队报告 MCP 协议兼容性问题

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/RadiumGu/alicloud-ops-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server