alibaba-cloud-ops-mcp-server 0.9.9__tar.gz → 0.9.10__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/PKG-INFO +1 -1
  2. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/pyproject.toml +1 -1
  3. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/src/alibaba_cloud_ops_mcp_server/tools/oos_tools.py +18 -8
  4. alibaba_cloud_ops_mcp_server-0.9.10/uv.lock +1558 -0
  5. alibaba_cloud_ops_mcp_server-0.9.9/uv.lock +0 -1555
  6. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/.github/workflows/python-ci.yml +0 -0
  7. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/.gitignore +0 -0
  8. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/Dockerfile +0 -0
  9. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/LICENSE +0 -0
  10. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/README.md +0 -0
  11. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/README_mcp_args.md +0 -0
  12. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/README_zh.md +0 -0
  13. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/examples/openapi_mcp_quickstart/server.py +0 -0
  14. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/image/Alibaba-Cloud-Ops-MCP-User-Group-en.png +0 -0
  15. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/image/Alibaba-Cloud-Ops-MCP-User-Group-zh.png +0 -0
  16. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/image/alibaba-cloud.png +0 -0
  17. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/src/__init__.py +0 -0
  18. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/src/alibaba_cloud_ops_mcp_server/__init__.py +0 -0
  19. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/src/alibaba_cloud_ops_mcp_server/__main__.py +0 -0
  20. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/src/alibaba_cloud_ops_mcp_server/alibabacloud/__init__.py +0 -0
  21. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/src/alibaba_cloud_ops_mcp_server/alibabacloud/api_meta_client.py +0 -0
  22. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/src/alibaba_cloud_ops_mcp_server/alibabacloud/exception.py +0 -0
  23. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/src/alibaba_cloud_ops_mcp_server/alibabacloud/static/PROMPT_UNDERSTANDING.md +0 -0
  24. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/src/alibaba_cloud_ops_mcp_server/alibabacloud/static/__init__.py +0 -0
  25. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/src/alibaba_cloud_ops_mcp_server/alibabacloud/utils.py +0 -0
  26. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/src/alibaba_cloud_ops_mcp_server/config.py +0 -0
  27. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/src/alibaba_cloud_ops_mcp_server/server.py +0 -0
  28. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/src/alibaba_cloud_ops_mcp_server/settings.py +0 -0
  29. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/src/alibaba_cloud_ops_mcp_server/tools/__init__.py +0 -0
  30. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/src/alibaba_cloud_ops_mcp_server/tools/api_tools.py +0 -0
  31. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/src/alibaba_cloud_ops_mcp_server/tools/cms_tools.py +0 -0
  32. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/src/alibaba_cloud_ops_mcp_server/tools/common_api_tools.py +0 -0
  33. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/src/alibaba_cloud_ops_mcp_server/tools/oss_tools.py +0 -0
  34. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/tests/alibabacloud/test_api_meta_client.py +0 -0
  35. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/tests/alibabacloud/test_exception.py +0 -0
  36. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/tests/alibabacloud/test_utils.py +0 -0
  37. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/tests/test_init.py +0 -0
  38. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/tests/test_server.py +0 -0
  39. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/tests/tools/test_api_tools.py +0 -0
  40. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/tests/tools/test_cms_tools.py +0 -0
  41. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/tests/tools/test_oos_tools.py +0 -0
  42. {alibaba_cloud_ops_mcp_server-0.9.9 → alibaba_cloud_ops_mcp_server-0.9.10}/tests/tools/test_oss_tools.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: alibaba-cloud-ops-mcp-server
3
- Version: 0.9.9
3
+ Version: 0.9.10
4
4
  Summary: A MCP server for Alibaba Cloud
5
5
  Author-email: Zheng Dayu <dayu.zdy@alibaba-inc.com>
6
6
  License-File: LICENSE
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "alibaba-cloud-ops-mcp-server"
3
- version = "0.9.9"
3
+ version = "0.9.10"
4
4
  description = "A MCP server for Alibaba Cloud"
5
5
  readme = "README.md"
6
6
  authors = [
@@ -150,7 +150,12 @@ def OOS_RunInstances(
150
150
  SystemDiskPerformanceLevel: str = Field(description='The performance level of the ESSD used as the system disk. Valid values: PL0, PL1, PL2, PL3', default='PL1'),
151
151
  PrivateIpAddress: str = Field(description='The private IP address of the instance. For VPC type ECS instances, the private IP address must be selected from the available IP range of the VSwitch', default=''),
152
152
  SystemDiskAutoSnapshotPolicyId: str = Field(description='The ID of the automatic snapshot policy to apply to the system disk', default=''),
153
- DataDiskParameters: str = Field(description='Data disk configuration in JSON format. Example: [{"Size":"100","DiskName":"data-disk-1","Description":"","Category":"cloud_essd","PerformanceLevel":"PL1","AutoSnapshotPolicyId":""}]', default='')
153
+ DataDiskParameters: str = Field(description='Data disk configuration in JSON format. Example: [{"Size":"100","DiskName":"data-disk-1","Description":"","Category":"cloud_essd","PerformanceLevel":"PL1","AutoSnapshotPolicyId":""}]', default=''),
154
+ Tags: list = Field(description='The tag of an ECS instance, for example: [{"Key":"oos","Value":"test"}]', default=[]),
155
+ ResourceGroupId: str = Field(description='Resource group ID', default=''),
156
+ Description: str = Field(description='The description of the ECS instances', default=''),
157
+ HostName: str = Field(description='The host name of the ECS instance', default=''),
158
+ ZoneId: str = Field(description='The ID of the zone where the ECS instances are deployed', default=''),
154
159
  ):
155
160
  """批量创建ECS实例,适用于需要同时创建多台ECS实例的场景,例如应用部署和高可用性场景。"""
156
161
 
@@ -164,8 +169,7 @@ def OOS_RunInstances(
164
169
  'amount': Amount,
165
170
  'instanceName': InstanceName
166
171
  }
167
-
168
- # 添加系统盘相关参数
172
+
169
173
  if SystemDiskCategory:
170
174
  parameters['systemDiskCategory'] = SystemDiskCategory
171
175
  if SystemDiskSize:
@@ -180,17 +184,23 @@ def OOS_RunInstances(
180
184
  parameters['privateIpAddress'] = PrivateIpAddress
181
185
  if SystemDiskAutoSnapshotPolicyId:
182
186
  parameters['systemDiskAutoSnapshotPolicyId'] = SystemDiskAutoSnapshotPolicyId
183
-
184
- # 处理数据盘参数
187
+ if Tags:
188
+ parameters['tags'] = Tags
189
+ if ResourceGroupId:
190
+ parameters['resourceGroupId'] = ResourceGroupId
191
+ if Description:
192
+ parameters['description'] = Description
193
+ if HostName:
194
+ parameters['hostName'] = HostName
195
+ if ZoneId:
196
+ parameters['zoneId'] = ZoneId
197
+
185
198
  if DataDiskParameters:
186
199
  try:
187
- # 解析 JSON 字符串为列表
188
200
  data_disks = json.loads(DataDiskParameters) if isinstance(DataDiskParameters, str) else DataDiskParameters
189
201
  if isinstance(data_disks, list) and len(data_disks) > 0:
190
- # 将数据盘列表转换为 OOS 模板需要的格式
191
202
  parameters['dataDiskParameters'] = data_disks
192
203
  except (json.JSONDecodeError, TypeError) as e:
193
- # 如果解析失败,忽略数据盘参数
194
204
  pass
195
205
 
196
206
  return _start_execution_sync(region_id=RegionId, template_name='ACS-ECS-RunInstances', parameters=parameters)