alibaba-cloud-ops-mcp-server 0.8.1__py3-none-any.whl → 0.8.2__py3-none-any.whl

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.
@@ -0,0 +1,9 @@
1
+ from alibabacloud_credentials.client import Client as CredClient
2
+ from alibabacloud_tea_openapi.models import Config
3
+
4
+
5
+ def create_config():
6
+ credentialsClient = CredClient()
7
+ config = Config(credential=credentialsClient)
8
+ config.user_agent = 'alibaba-cloud-ops-mcp-server'
9
+ return config
@@ -11,6 +11,7 @@ from alibabacloud_tea_util import models as util_models
11
11
  from alibabacloud_tea_openapi.client import Client as OpenApiClient
12
12
  from alibabacloud_openapi_util.client import Client as OpenApiUtilClient
13
13
  from alibaba_cloud_ops_mcp_server.alibabacloud.api_meta_client import ApiMetaClient
14
+ from alibaba_cloud_ops_mcp_server.alibabacloud.utils import create_config
14
15
 
15
16
 
16
17
  type_map = {
@@ -24,12 +25,7 @@ type_map = {
24
25
 
25
26
 
26
27
  def create_client(service: str, region_id: str) -> OpenApiClient:
27
- config = open_api_models.Config(
28
- access_key_id=os.getenv('ALIBABA_CLOUD_ACCESS_KEY_ID'),
29
- access_key_secret=os.getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET'),
30
- security_token=os.getenv('ALIBABA_CLOUD_SECURITY_TOKEN'),
31
- user_agent='alibaba-cloud-ops-mcp-server',
32
- )
28
+ config = create_config()
33
29
  if isinstance(service, str):
34
30
  service = service.lower()
35
31
  config.endpoint = f'{service}.{region_id}.aliyuncs.com'
@@ -4,10 +4,8 @@ import os
4
4
  import json
5
5
 
6
6
  from alibabacloud_cms20190101.client import Client as cms20190101Client
7
- from alibabacloud_tea_openapi import models as open_api_models
8
7
  from alibabacloud_cms20190101 import models as cms_20190101_models
9
- from alibabacloud_tea_util import models as util_models
10
- from alibabacloud_tea_util.client import Client as UtilClient
8
+ from alibaba_cloud_ops_mcp_server.alibabacloud.utils import create_config
11
9
 
12
10
 
13
11
  END_STATUSES = ['Success', 'Failed', 'Cancelled']
@@ -17,12 +15,7 @@ tools = []
17
15
 
18
16
 
19
17
  def create_client(region_id: str) -> cms20190101Client:
20
- config = open_api_models.Config(
21
- access_key_id=os.getenv('ALIBABA_CLOUD_ACCESS_KEY_ID'),
22
- access_key_secret=os.getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET'),
23
- security_token=os.getenv('ALIBABA_CLOUD_SECURITY_TOKEN'),
24
- user_agent='alibaba-cloud-ops-mcp-server',
25
- )
18
+ config = create_config()
26
19
  config.endpoint = f'metrics.{region_id}.aliyuncs.com'
27
20
  return cms20190101Client(config)
28
21
 
@@ -5,8 +5,8 @@ import json
5
5
  import time
6
6
 
7
7
  from alibabacloud_oos20190601.client import Client as oos20190601Client
8
- from alibabacloud_tea_openapi import models as open_api_models
9
8
  from alibabacloud_oos20190601 import models as oos_20190601_models
9
+ from alibaba_cloud_ops_mcp_server.alibabacloud.utils import create_config
10
10
 
11
11
 
12
12
  END_STATUSES = ['Success', 'Failed', 'Cancelled']
@@ -14,13 +14,9 @@ END_STATUSES = ['Success', 'Failed', 'Cancelled']
14
14
 
15
15
  tools = []
16
16
 
17
+
17
18
  def create_client(region_id: str) -> oos20190601Client:
18
- config = open_api_models.Config(
19
- access_key_id=os.getenv('ALIBABA_CLOUD_ACCESS_KEY_ID'),
20
- access_key_secret=os.getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET'),
21
- security_token=os.getenv('ALIBABA_CLOUD_SECURITY_TOKEN'),
22
- user_agent='alibaba-cloud-ops-mcp-server',
23
- )
19
+ config = create_config()
24
20
  config.endpoint = f'oos.{region_id}.aliyuncs.com'
25
21
  return oos20190601Client(config)
26
22
 
@@ -5,6 +5,7 @@ import alibabacloud_oss_v2 as oss
5
5
  from pydantic import Field
6
6
  from alibabacloud_oss_v2 import Credentials
7
7
  from alibabacloud_oss_v2.credentials import EnvironmentVariableCredentialsProvider
8
+ from alibabacloud_credentials.client import Client as CredClient
8
9
 
9
10
 
10
11
  tools = []
@@ -12,10 +13,10 @@ tools = []
12
13
 
13
14
  class CredentialsProvider(EnvironmentVariableCredentialsProvider):
14
15
  def __init__(self) -> None:
15
- super().__init__()
16
- access_key_id = os.getenv('ALIBABA_CLOUD_ACCESS_KEY_ID')
17
- access_key_secret = os.getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET')
18
- session_token = os.getenv('ALIBABA_CLOUD_SESSION_TOKEN', None)
16
+ credentialsClient = CredClient()
17
+ access_key_id = credentialsClient.get_credential().access_key_id
18
+ access_key_secret = credentialsClient.get_credential().access_key_secret
19
+ session_token = credentialsClient.get_credential().security_token
19
20
 
20
21
  self._credentials = Credentials(
21
22
  access_key_id, access_key_secret, session_token)
@@ -27,6 +28,7 @@ class CredentialsProvider(EnvironmentVariableCredentialsProvider):
27
28
  def create_client(region_id: str) -> oss.Client:
28
29
  credentials_provider = CredentialsProvider()
29
30
  cfg = oss.config.load_default()
31
+ cfg.user_agent = 'alibaba-cloud-ops-mcp-server'
30
32
  cfg.credentials_provider = credentials_provider
31
33
  cfg.region = region_id
32
34
  return oss.Client(cfg)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: alibaba-cloud-ops-mcp-server
3
- Version: 0.8.1
3
+ Version: 0.8.2
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
@@ -13,10 +13,14 @@ Requires-Dist: click>=8.1.8
13
13
  Requires-Dist: mcp[cli]>=1.6.0
14
14
  Description-Content-Type: text/markdown
15
15
 
16
- # alibaba-cloud-ops-mcp-server
16
+ # Alibaba Cloud Ops MCP Server
17
+
18
+ [![GitHub stars](https://img.shields.io/github/stars/aliyun/alibaba-cloud-ops-mcp-server?style=social)](https://github.com/aliyun/alibaba-cloud-ops-mcp-server)
17
19
 
18
20
  [中文版本](./README_zh.md)
19
21
 
22
+ Alibaba Cloud Ops MCP Server is a [Model Context Protocol (MCP)](https://modelcontextprotocol.io/introduction) server that provides seamless integration with Alibaba Cloud APIs, enabling AI assistants to operation resources on Alibaba Cloud, supporting ECS, Cloud Monitor, OOS andother widely used cloud products.
23
+
20
24
  ## Prepare
21
25
 
22
26
  Install [uv](https://github.com/astral-sh/uv)
@@ -50,6 +54,19 @@ To use `alibaba-cloud-ops-mcp-server` MCP Server with any other MCP Client, you
50
54
  }
51
55
  ```
52
56
 
57
+ ## MCP Maketplace Integration
58
+
59
+ * [Cline](https://cline.bot/mcp-marketplace)
60
+ * [ModelScope](https://www.modelscope.cn/mcp/servers/@aliyun/alibaba-cloud-ops-mcp-server?lang=en_US)
61
+ * [Lingma](https://lingma.aliyun.com/)
62
+ * [Smithery AI](https://smithery.ai/server/@aliyun/alibaba-cloud-ops-mcp-server)
63
+
64
+ ## Know More
65
+
66
+ * [Alibaba Cloud MCP Server is ready to use out of the box!!](https://developer.aliyun.com/article/1661348)
67
+ * [Setup Alibaba Cloud MCP Server on Bailian](https://developer.aliyun.com/article/1662120)
68
+ * [Build your own Alibaba Cloud OpenAPI MCP Server with 10 lines of code](https://developer.aliyun.com/article/1662202)
69
+
53
70
  ## Tools
54
71
 
55
72
  | **Product** | **Tool** | **Function** | **Implematation** | **Status** |
@@ -93,7 +110,3 @@ To use `alibaba-cloud-ops-mcp-server` MCP Server with any other MCP Client, you
93
110
  If you have any questions, please join the [Alibaba Cloud Ops MCP discussion group](https://qr.dingtalk.com/action/joingroup?code=v1,k1,iFxYG4jjLVh1jfmNAkkclji7CN5DSIdT+jvFsLyI60I=&_dt_no_comment=1&origin=11) (DingTalk group: 113455011677) for discussion.
94
111
 
95
112
  <img src="https://oos-public-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/alibaba-cloud-ops-mcp-server/Alibaba-Cloud-Ops-MCP-User-Group-en.png" width="500">
96
-
97
- ## Know More
98
-
99
- - [Alibaba Cloud MCP Server is ready to use out of the box!!](https://developer.aliyun.com/article/1661348)
@@ -0,0 +1,16 @@
1
+ alibaba_cloud_ops_mcp_server/__init__.py,sha256=BaluUNyRz8Qw-X7Y0ywDezwbkqiSvWlSYn2452XeGcA,213
2
+ alibaba_cloud_ops_mcp_server/config.py,sha256=Nq6AT8bqSVa6zu9xjInaSjFcxA-GC7MLlCsV1q53yO0,514
3
+ alibaba_cloud_ops_mcp_server/server.py,sha256=nwn04rpm68GI3UJ_hQ0E3pny86dJ47Lw1LncQiBIfW8,896
4
+ alibaba_cloud_ops_mcp_server/alibabacloud/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
+ alibaba_cloud_ops_mcp_server/alibabacloud/api_meta_client.py,sha256=inOmW1no1YsR6_ezOZfgJtzGKo5nRTDufkf2qUTuNOs,7605
6
+ alibaba_cloud_ops_mcp_server/alibabacloud/utils.py,sha256=jWQtP59P4ejh7N6xiYSDq1WgCd3Les0aSZr2pLGzkls,299
7
+ alibaba_cloud_ops_mcp_server/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
+ alibaba_cloud_ops_mcp_server/tools/api_tools.py,sha256=lydogpHEYgqzLAgUP4szBy-67z7lWXiqwUaTvt_IQVM,5807
9
+ alibaba_cloud_ops_mcp_server/tools/cms_tools.py,sha256=t70H7MnYo0cuIY00_6V3cGz2btSRtJFm8qW8WWwzyCc,4155
10
+ alibaba_cloud_ops_mcp_server/tools/oos_tools.py,sha256=rbi3oR3CIbafA9hDHqGN6jLUyUQ6oCj-aReFQCZkHfE,9796
11
+ alibaba_cloud_ops_mcp_server/tools/oss_tools.py,sha256=IJDcs4BvPgF5A85oBZJ5xrJDSim_fCzRaxnCHjd0hvw,4599
12
+ alibaba_cloud_ops_mcp_server-0.8.2.dist-info/METADATA,sha256=57rILn-1UaWlfxT9NySPL1sf52Bbu3qsLbdRlFNpFaE,5020
13
+ alibaba_cloud_ops_mcp_server-0.8.2.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
14
+ alibaba_cloud_ops_mcp_server-0.8.2.dist-info/entry_points.txt,sha256=ESGAWXKEp184forhs7VzTD4P1AUdZz6vCW6hRUKITGw,83
15
+ alibaba_cloud_ops_mcp_server-0.8.2.dist-info/licenses/LICENSE,sha256=gQgVkp2ttRCjodiPpXZZR-d7JnrYIYNiHk1YDUYgpa4,11331
16
+ alibaba_cloud_ops_mcp_server-0.8.2.dist-info/RECORD,,
@@ -1,15 +0,0 @@
1
- alibaba_cloud_ops_mcp_server/__init__.py,sha256=BaluUNyRz8Qw-X7Y0ywDezwbkqiSvWlSYn2452XeGcA,213
2
- alibaba_cloud_ops_mcp_server/config.py,sha256=Nq6AT8bqSVa6zu9xjInaSjFcxA-GC7MLlCsV1q53yO0,514
3
- alibaba_cloud_ops_mcp_server/server.py,sha256=nwn04rpm68GI3UJ_hQ0E3pny86dJ47Lw1LncQiBIfW8,896
4
- alibaba_cloud_ops_mcp_server/alibabacloud/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
- alibaba_cloud_ops_mcp_server/alibabacloud/api_meta_client.py,sha256=inOmW1no1YsR6_ezOZfgJtzGKo5nRTDufkf2qUTuNOs,7605
6
- alibaba_cloud_ops_mcp_server/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
- alibaba_cloud_ops_mcp_server/tools/api_tools.py,sha256=HMB7-PdBU8qiyok-gtymt83Cs4eGVSNNCubC0nN9NqE,6000
8
- alibaba_cloud_ops_mcp_server/tools/cms_tools.py,sha256=ZrOgVqd97EGcGy47Uy5Nwsf1Nqu9rLIfxN9SDZ2Wyzs,4529
9
- alibaba_cloud_ops_mcp_server/tools/oos_tools.py,sha256=8cIhpy61Ca7sT9aMR6rCtY4V1u6oFuLsY51gtVvkkyk,10051
10
- alibaba_cloud_ops_mcp_server/tools/oss_tools.py,sha256=Fb15QUCnllEh8J9TppUEAoA2fB46FhSihUP3_dSfVRM,4449
11
- alibaba_cloud_ops_mcp_server-0.8.1.dist-info/METADATA,sha256=4eS0pIQhD_KP5g_js_DoP1-jcf48tFQRDUfsSwQQAnc,4033
12
- alibaba_cloud_ops_mcp_server-0.8.1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
13
- alibaba_cloud_ops_mcp_server-0.8.1.dist-info/entry_points.txt,sha256=ESGAWXKEp184forhs7VzTD4P1AUdZz6vCW6hRUKITGw,83
14
- alibaba_cloud_ops_mcp_server-0.8.1.dist-info/licenses/LICENSE,sha256=gQgVkp2ttRCjodiPpXZZR-d7JnrYIYNiHk1YDUYgpa4,11331
15
- alibaba_cloud_ops_mcp_server-0.8.1.dist-info/RECORD,,