summaryrefslogtreecommitdiff
path: root/data/zh_cn/openapiexplorer/2024-11-30
diff options
context:
space:
mode:
Diffstat (limited to 'data/zh_cn/openapiexplorer/2024-11-30')
-rw-r--r--data/zh_cn/openapiexplorer/2024-11-30/api-docs.php5216
1 files changed, 5216 insertions, 0 deletions
diff --git a/data/zh_cn/openapiexplorer/2024-11-30/api-docs.php b/data/zh_cn/openapiexplorer/2024-11-30/api-docs.php
new file mode 100644
index 0000000..3f48be3
--- /dev/null
+++ b/data/zh_cn/openapiexplorer/2024-11-30/api-docs.php
@@ -0,0 +1,5216 @@
+<?php return [
+ 'version' => '1.0',
+ 'info' => [
+ 'style' => 'ROA',
+ 'product' => 'OpenAPIExplorer',
+ 'version' => '2024-11-30',
+ ],
+ 'directories' => [
+ [
+ 'children' => [
+ 'UpdateApiMcpServerUserConfig',
+ 'GetApiMcpServerUserConfig',
+ ],
+ 'type' => 'directory',
+ 'title' => 'ApiMcpServer全局配置',
+ 'id' => 251985,
+ ],
+ [
+ 'children' => [
+ 'GetApiDefinition',
+ 'ListApiDefinitions',
+ 'GetProductEndpoints',
+ 'GenerateCLICommand',
+ ],
+ 'type' => 'directory',
+ 'title' => '开放元数据',
+ 'id' => 248636,
+ ],
+ [
+ 'children' => [
+ 'CreateApiMcpServer',
+ 'UpdateApiMcpServer',
+ 'GetApiMcpServer',
+ 'DeleteApiMcpServer',
+ 'ListApiMcpServers',
+ 'ApiMcpServerValidateHcl',
+ 'ListApiMcpServerSystemTools',
+ ],
+ 'type' => 'directory',
+ 'title' => 'ApiMcpServer',
+ 'id' => 247902,
+ ],
+ [
+ 'children' => [
+ 'GetErrorCodeSolutions',
+ 'GetRequestLog',
+ 'GetOwnRequestLog',
+ ],
+ 'type' => 'directory',
+ 'title' => '诊断',
+ 'id' => 247910,
+ ],
+ ],
+ 'components' => [
+ 'schemas' => [],
+ ],
+ 'apis' => [
+ 'ApiMcpServerValidateHcl' => [
+ 'path' => '/terraform/validate',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREopenapiexplorer7MPML0',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '请求 body。',
+ 'type' => 'object',
+ 'properties' => [
+ 'code' => [
+ 'description' => 'Terraform HCL 代码内容。[HCL 语言概述](https://help.aliyun.com/zh/terraform/terraform-configuration-and-hcl-language-overview)',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'variable "name" {'."\n"
+ .' default = "terraform-example"'."\n"
+ .'}'."\n"
+ ."\n"
+ .'provider "alicloud" {'."\n"
+ .' region = "cn-beijing"'."\n"
+ .'}'."\n"
+ ."\n"
+ .'resource "alicloud_vpc" "default" {'."\n"
+ .' ipv6_isp = "BGP"'."\n"
+ .' description = "test"'."\n"
+ .' cidr_block = "10.0.0.0/8"'."\n"
+ .' vpc_name = var.name'."\n"
+ .' enable_ipv6 = true'."\n"
+ .'}',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => '请求结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => ' '."\n"
+ .'9BFC4AC1-6BE4-5405-BDEC-CA288D404812'."\n",
+ ],
+ 'hash' => [
+ 'description' => 'Terraform HCL 代码的唯一标识。',
+ 'type' => 'string',
+ 'example' => '0628e13692023222bef9d6377dd03da3304b689e1b2df60f584ea27b4163bf07',
+ ],
+ 'isValid' => [
+ 'description' => '代码内容是否有效。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'errors' => [
+ 'description' => '错误信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '错误信息内容。',
+ 'type' => 'string',
+ 'example' => 'Unclosed configuration block: There is no closing brace for this block before the end of the file. This may be caused by incorrect brace nesting elsewhere in this file.',
+ ],
+ ],
+ 'warnings' => [
+ 'description' => '警告信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '警告信息内容。',
+ 'type' => 'string',
+ 'example' => 'Warning.',
+ ],
+ ],
+ 'parameters' => [
+ 'description' => '参数列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '参数内容。',
+ 'type' => 'any',
+ 'example' => '{'."\n"
+ .' "schema": {'."\n"
+ .' "writeOnly": false,'."\n"
+ .' "nullable": false,'."\n"
+ .' "description": "要修改的VPC名称。\\n\\n名称长度为1~128个字符,不能以`http://`或`https://`开头。",'."\n"
+ .' "readOnly": false,'."\n"
+ .' "type": "string",'."\n"
+ .' "required": false'."\n"
+ .' },'."\n"
+ .' "deprecated": false,'."\n"
+ .' "allowEmptyValue": false,'."\n"
+ .' "name": "name",'."\n"
+ .' "required": false,'."\n"
+ .' "example": "terraform-example"'."\n"
+ .' }',
+ ],
+ ],
+ 'diagnosticReport' => [
+ 'description' => '代码内容的诊断报告。',
+ 'type' => 'any',
+ 'example' => 'Argument or block definition required: An argument or block definition is required here.',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParam.Code',
+ 'errorMessage' => 'Empty code is not valid.',
+ 'description' => 'Code参数为无效的空字符串。',
+ ],
+ [
+ 'errorCode' => 'Missing.Code',
+ 'errorMessage' => 'Code is mandatory for this action.',
+ 'description' => '缺少必填参数Code。',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalServerError',
+ 'errorMessage' => 'The request has failed due to a temporary failure of the server.',
+ 'description' => '由于服务器暂时故障,请求失败。',
+ ],
+ ],
+ ],
+ 'title' => '验证 Terraform 的 HCL 语法',
+ 'summary' => '验证 Terraform 的 HCL 语法。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'openapiexplorer:ApiMcpServerValidateHcl',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ [
+ 'validationType' => 'always',
+ 'product' => 'OpenAPIExplorer',
+ 'resourceType' => '全部资源',
+ 'arn' => '*',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"\\\\t\\\\n9BFC4AC1-6BE4-5405-BDEC-CA288D404812\\\\n\\",\\n \\"hash\\": \\"0628e13692023222bef9d6377dd03da3304b689e1b2df60f584ea27b4163bf07\\",\\n \\"isValid\\": true,\\n \\"errors\\": [\\n \\"Unclosed configuration block: There is no closing brace for this block before the end of the file. This may be caused by incorrect brace nesting elsewhere in this file.\\"\\n ],\\n \\"warnings\\": [\\n \\"Warning.\\"\\n ],\\n \\"parameters\\": [\\n \\"{\\\\n \\\\\\"schema\\\\\\": {\\\\n \\\\\\"writeOnly\\\\\\": false,\\\\n \\\\\\"nullable\\\\\\": false,\\\\n \\\\\\"description\\\\\\": \\\\\\"要修改的VPC名称。\\\\\\\\n\\\\\\\\n名称长度为1~128个字符,不能以`http://`或`https://`开头。\\\\\\",\\\\n \\\\\\"readOnly\\\\\\": false,\\\\n \\\\\\"type\\\\\\": \\\\\\"string\\\\\\",\\\\n \\\\\\"required\\\\\\": false\\\\n },\\\\n \\\\\\"deprecated\\\\\\": false,\\\\n \\\\\\"allowEmptyValue\\\\\\": false,\\\\n \\\\\\"name\\\\\\": \\\\\\"name\\\\\\",\\\\n \\\\\\"required\\\\\\": false,\\\\n \\\\\\"example\\\\\\": \\\\\\"terraform-example\\\\\\"\\\\n }\\"\\n ],\\n \\"diagnosticReport\\": \\"Argument or block definition required: An argument or block definition is required here.\\"\\n}","type":"json"}]',
+ ],
+ 'CreateApiMcpServer' => [
+ 'path' => '/apimcpserver',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREopenapiexplorer7MPML0',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '创建API MCP服务。',
+ 'type' => 'object',
+ 'properties' => [
+ 'clientToken' => [
+ 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken 只支持 ASCII 字符,且不能超过 64 个字符,建议使用UUID。过期时间为3天。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-426655440000',
+ ],
+ 'description' => [
+ 'description' => 'API MCP服务的描述信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '这是一个API MCP服务。',
+ ],
+ 'language' => [
+ 'description' => 'API MCP服务的文档语言。支持选择中文或英文API文档,不同的语言提示词对AI的回复效果可能产生差异。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ZH_CN',
+ 'enum' => [
+ 'EN_US',
+ 'ZH_CN',
+ ],
+ ],
+ 'apis' => [
+ 'description' => '添加的API列表。不可为空。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'API列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'product' => [
+ 'description' => '产品CODE。'."\n"
+ ."\n"
+ .'- 调用GetRequestLog接口,从返回结果中获取产品CODE。'."\n"
+ ."\n"
+ .'- 通过OpenAPI门户的URL,找到对应的产品CODE。例如,<props="china">短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>'."\n"
+ .'<props="intl">短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Ecs',
+ ],
+ 'apiVersion' => [
+ 'description' => '透出到 MCP SERVER 的 API 所属的 POP version。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2014-05-26',
+ ],
+ 'selectors' => [
+ 'description' => 'API名称匹配规则列表。不可为空。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'API名称匹配规则。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '*Bucket',
+ ],
+ 'required' => true,
+ ],
+ ],
+ 'required' => true,
+ ],
+ 'required' => true,
+ ],
+ 'additionalApiDescriptions' => [
+ 'description' => '补充的API描述信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '补充的API描述信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'product' => [
+ 'description' => '产品CODE。'."\n"
+ ."\n"
+ .'- 调用GetRequestLog接口,从返回结果中获取产品CODE。'."\n"
+ ."\n"
+ .'- 通过OpenAPI门户的URL,找到对应的产品CODE。例如,<props="china">短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>'."\n"
+ .'<props="intl">短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Ecs',
+ ],
+ 'apiVersion' => [
+ 'description' => '透出到 MCP SERVER 的 API 所属的 POP version。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2014-05-26',
+ ],
+ 'apiName' => [
+ 'description' => 'API名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'DescribeRegions',
+ ],
+ 'apiOverrideJson' => [
+ 'description' => 'API元数据JSON 格式,参考格式 https://api.aliyun.com/meta/v1/products/Ecs/versions/2014-05-26/apis/DescribeInstances/api.json,支持覆盖其中的summary、parameters。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{'."\n"
+ .' "summary": "本接口支持根据不同请求条件查询实例列表,并关联查询实例的详细信息。"'."\n"
+ .'}',
+ ],
+ 'executeCliCommand' => [
+ 'description' => '是否返回CLI的执行命令,这个模式下,不真实执行API调用,返回对应的CLI命令,适用于长耗时的任务,需要搭配使用阿里云CLI执行。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ 'enableOutputSchema' => [
+ 'description' => '是否返回出参的schema,返回出参schema时会增加整个API MCP SERVER的体积。默认值为 null,表示不返回出参的schema。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ 'constParameters' => [
+ 'description' => '常量入参列表,在API参数解析时,不再输出这部分参数。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '常量入参。',
+ 'type' => 'object',
+ 'properties' => [
+ 'key' => [
+ 'description' => '参数名称。仅支持一级参数名称,对于ROA风格的API,支持设置到body.xx,不允许设置超出顶级参数的值。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'InstanceId',
+ ],
+ 'value' => [
+ 'description' => '参数的值。',
+ 'type' => 'any',
+ 'required' => false,
+ 'example' => '1234',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ 'prompts' => [
+ 'description' => 'prompt配置列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'prompt配置',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => [
+ 'description' => 'prompt名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ ],
+ 'description' => [
+ 'description' => '描述信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'prompt description',
+ ],
+ 'content' => [
+ 'description' => 'prompt 的内容信息,其变量通过 {{xxx}} 格式指定。xxx为变量,需要从 arguments 参数中定义。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'prompt正文,{{name}}',
+ ],
+ 'arguments' => [
+ 'description' => 'prompt支持的参数列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'prompt支持的参数。',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => [
+ 'description' => '参数名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ ],
+ 'description' => [
+ 'description' => '参数的描述信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'argument description',
+ ],
+ 'required' => [
+ 'description' => '参数是否必填。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ 'name' => [
+ 'description' => 'MCP SERVER 名称信息,由 a-z0-9 组成,3-64 位,不以数字开头,同主账号下必须唯一。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'mcp-demo',
+ ],
+ 'systemTools' => [
+ 'description' => '系统工具列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '系统工具。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'FetchRamActionDetails',
+ ],
+ 'required' => false,
+ ],
+ 'oauthClientId' => [
+ 'description' => '选择自定义OAuth配置时的自定义OAuth Client ID。'."\n"
+ ."\n"
+ .'`仅支持 Web/Native 应用,且 OAuth 范围必须包含 /acs/mcp-server`',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '403*************370',
+ ],
+ 'instructions' => [
+ 'description' => 'MCP 指令,用于提示大模型如何使用该 MCP,需要客户端支持 MCP 标准协议的 Instructions 字段。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ ],
+ 'enableAssumeRole' => [
+ 'description' => '是否开启多账号访问。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ 'assumeRoleName' => [
+ 'description' => '开启多账号访问进行跨账号操作时,扮演的目标账号 RAM角色名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ ],
+ 'assumeRoleExtraPolicy' => [
+ 'description' => '开启多账号访问时,角色扮演额外的策略,该策略存在时,角色扮演的权限以当前值为准,覆盖角色本身的权限定义。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{'."\n"
+ .' "Version": "1",'."\n"
+ .' "Statement": ['."\n"
+ .' {'."\n"
+ .' "Effect": "Allow",'."\n"
+ .' "Action": ['."\n"
+ .' "ecs:Describe*",'."\n"
+ .' "vpc:Describe*",'."\n"
+ .' "vpc:List*"'."\n"
+ .' ],'."\n"
+ .' "Resource": "*"'."\n"
+ .' }'."\n"
+ .' ]'."\n"
+ .'}',
+ ],
+ 'publicAccess' => [
+ 'description' => '是否开启公网。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'on',
+ 'enum' => [
+ 'on',
+ 'off',
+ 'follow',
+ ],
+ ],
+ 'enableCustomVpcWhitelist' => [
+ 'description' => '是否开启自定义VPC白名单,不开启则跟随账户级别的配置。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ 'terraformTools' => [
+ 'description' => 'Terraform Tool 列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'Terraform Tool。',
+ 'type' => 'object',
+ 'properties' => [
+ 'code' => [
+ 'description' => 'Terraform Tool 代码。[HCL 语言概述](https://help.aliyun.com/zh/terraform/terraform-configuration-and-hcl-language-overview)',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'variable "name" {'."\n"
+ .' default = "terraform-example"'."\n"
+ .'}'."\n"
+ ."\n"
+ .'provider "alicloud" {'."\n"
+ .' region = "cn-beijing"'."\n"
+ .'}'."\n"
+ ."\n"
+ .'resource "alicloud_vpc" "default" {'."\n"
+ .' ipv6_isp = "BGP"'."\n"
+ .' description = "test"'."\n"
+ .' cidr_block = "10.0.0.0/8"'."\n"
+ .' vpc_name = var.name'."\n"
+ .' enable_ipv6 = true'."\n"
+ .'}',
+ ],
+ 'name' => [
+ 'description' => 'Terraform Tool 名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ ],
+ 'description' => [
+ 'description' => 'Terraform Tool 描述信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'terraform tool description',
+ ],
+ 'async' => [
+ 'description' => '是否为异步执行,即发起一个任务执行之后会立即处理下一个任务,而不等待每个资源操作完成。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ 'destroyPolicy' => [
+ 'description' => '删除策略,任务执行完成后,系统根据任务执行状态对临时资源采取以下清理策略。'."\n"
+ ."\n"
+ .'- NEVER 不删除:无论任务执行成功或失败,均不删除所有创建的资源'."\n"
+ .'- ALWAYS 总是删除:无论任务执行成功或失败,执行完成立即销毁所有相关资源'."\n"
+ .'- ON_FAILURE 失败时删除:仅当任务执行失败时,删除相关资源;当任务执行成功时,则保留这些资源',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ON_FAILURE',
+ 'enum' => [
+ 'NEVER',
+ 'ALWAYS',
+ 'ON_FAILURE',
+ ],
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ 'vpcWhitelists' => [
+ 'description' => '关闭公网访问后,限定来源的VPC白名单,不设置或为空表示不限制来源。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '每一个限定的VPC白名单,值为来源VPC ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vpc-j6cgd2if5lg**0xs6m5se',
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => '请求结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => ' '."\n"
+ .'9BFC4AC1-6BE4-5405-BDEC-CA288D404812'."\n",
+ ],
+ 'id' => [
+ 'description' => '创建成功的 API MCP 服务 ID。',
+ 'type' => 'string',
+ 'example' => 'v6ZZ7ftCzEILW***',
+ ],
+ 'urls' => [
+ 'description' => 'API MCP 服务连接信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'sse' => [
+ 'description' => 'SSE 协议连接信息。',
+ 'type' => 'string',
+ 'example' => 'https://mcpserverinner-pre.cn-zhangjiakou.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/sse',
+ ],
+ 'mcp' => [
+ 'description' => 'streamable HTTP 协议连接信息,推荐使用。',
+ 'type' => 'string',
+ 'example' => 'https://mcpserverinner-pre.cn-zhangjiakou.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/mcp',
+ ],
+ 'vpcSse' => [
+ 'description' => 'VPC 下 SSE 协议连接地址。',
+ 'type' => 'string',
+ 'example' => 'https://openapi-mcp-cn.vpc-proxy.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/sse',
+ ],
+ 'vpcMcp' => [
+ 'description' => 'VPC 下 streamable HTTP 协议连接地址。',
+ 'type' => 'string',
+ 'example' => 'https://openapi-mcp-cn.vpc-proxy.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/mcp',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParam.Name',
+ 'errorMessage' => 'Name must be 3 to 64 characters long and can only contain lowercase letters, numbers, underscore, and hyphens.',
+ 'description' => '名称长度必须为 3 到 64 个字符,并且只能包含小写字母、数字、下划线和连字符。',
+ ],
+ [
+ 'errorCode' => 'InvalidParam.Apis.PopVersion',
+ 'errorMessage' => 'Unsupported product version: %s of product code: %s.',
+ 'description' => '产品%s不支持%s版本。',
+ ],
+ [
+ 'errorCode' => 'IdempotentParameterMismatch',
+ 'errorMessage' => 'The request uses the same client token as a previous request but with different parameters. Client tokens should not be reused across non-identical requests. Each unique request must have a distinct client token.',
+ 'description' => '请求使用了与之前请求相同的客户端令牌,但参数不同。请勿在参数不同的请求中重复使用同一令牌,每个独立请求必须使用唯一的令牌。 ',
+ ],
+ [
+ 'errorCode' => 'Missing.Apis.PopCode',
+ 'errorMessage' => 'Apis.PopCode is mandatory for this action.',
+ 'description' => 'Apis参数中缺少必填参数popCode。',
+ ],
+ [
+ 'errorCode' => 'Missing.Apis.PopVersion',
+ 'errorMessage' => 'Apis.PopVersion is mandatory for this action.',
+ 'description' => '缺少必填参数Apis.PopVersion。',
+ ],
+ [
+ 'errorCode' => 'InvalidParam.Apis.PopCode',
+ 'errorMessage' => 'Unsupported product code: %s.',
+ 'description' => '指定的产品名称不存在。',
+ ],
+ [
+ 'errorCode' => 'Missing.Apis.Selectors',
+ 'errorMessage' => 'Apis.Selectors is mandatory for this action.',
+ 'description' => 'Apis.Selectors是必填参数',
+ ],
+ [
+ 'errorCode' => 'Missing.Name',
+ 'errorMessage' => 'Name is mandatory for this action.',
+ 'description' => 'Name是必填参数',
+ ],
+ [
+ 'errorCode' => 'Missing.Apis',
+ 'errorMessage' => 'Apis is mandatory for this action.',
+ 'description' => '缺少必填参数Apis',
+ ],
+ [
+ 'errorCode' => 'InvalidParam.Language',
+ 'errorMessage' => 'Unsupported language: %s.',
+ 'description' => '指定多语言无效。',
+ ],
+ [
+ 'errorCode' => 'InvalidParam.AdditionalApiDescription.PopVersion',
+ 'errorMessage' => 'Unsupported product version: %s of product code: %s.',
+ 'description' => '产品%s不支持%s版本。 ',
+ ],
+ [
+ 'errorCode' => 'InvalidParam.AdditionalApiDescription.PopCode',
+ 'errorMessage' => 'Unsupported product code: %s.',
+ 'description' => '指定的产品名称不存在',
+ ],
+ [
+ 'errorCode' => 'InvalidParam.SystemTools',
+ 'errorMessage' => 'System tool %s is not supported.',
+ 'description' => '指定的系统工具无效。',
+ ],
+ [
+ 'errorCode' => 'Missing.TerraformTools.Description',
+ 'errorMessage' => 'TerraformTools.Description is mandatory for this action.',
+ 'description' => '缺少必填参数TerraformTools.Description',
+ ],
+ [
+ 'errorCode' => 'Missing.TerraformTools.Code',
+ 'errorMessage' => 'TerraformTools.Code is mandatory for this action.',
+ 'description' => '缺少必填参数TerraformTools.Code。',
+ ],
+ [
+ 'errorCode' => 'Missing.TerraformTools.Name',
+ 'errorMessage' => 'TerraformTools.Name is mandatory for this action.',
+ 'description' => 'Terraform工具名称是必填参数。',
+ ],
+ [
+ 'errorCode' => 'InvalidParam.TerraformTools.Name',
+ 'errorMessage' => 'TerraformTools.Name: %s must be 3 to 64 characters long and can only contain lowercase letters, numbers, underscores, and hyphens.',
+ 'description' => 'Terraform工具名称长度必须为 3 到 63 个字符,并且只能包含小写字母、数字、下划线和连字符。',
+ ],
+ [
+ 'errorCode' => 'Missing.AccountId',
+ 'errorMessage' => 'x-acs-account-id is mandatory in request header for this action.',
+ 'description' => '请求头中缺少必填参数x-acs-account-id。',
+ ],
+ [
+ 'errorCode' => 'Missing.CallerUid',
+ 'errorMessage' => 'x-acs-caller-uid is mandatory in request header for this action.',
+ 'description' => '请求头中缺少必填参数x-acs-caller-uid。',
+ ],
+ [
+ 'errorCode' => 'Missing.PrincipalId',
+ 'errorMessage' => 'x-acs-sts-token-principal-id is mandatory in request header in STS assumeRole scenario for this action.',
+ 'description' => 'STS角色扮演场景下,请求头中缺少必填参数x-acs-sts-token-principal-id。',
+ ],
+ [
+ 'errorCode' => 'InvalidParam.TerraformTools.Code',
+ 'errorMessage' => 'The Terraform tool code is not valid: %s. Please check the syntax and try again.',
+ 'description' => '指定的TerraformTools.Code参数无效。',
+ ],
+ [
+ 'errorCode' => 'InvalidParam.ClientToken',
+ 'errorMessage' => 'The specified client token is not valid.',
+ 'description' => '该幂等参数有误,请检查。',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => 'Exists.Name',
+ 'errorMessage' => 'The MCP server name already exists.',
+ 'description' => '同一个主账号ID下已存在该名称。',
+ ],
+ [
+ 'errorCode' => 'Exists.TerraformTools.Name',
+ 'errorMessage' => 'The Terraform tool name already exists.',
+ 'description' => '指定的Terraform 工具名称已经存在。',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'QuotaExceeded',
+ 'errorMessage' => 'The number of MCP server created by the user has reached the upper limit.',
+ 'description' => '用户创建的MCP服务器数量已达到上限。',
+ ],
+ ],
+ ],
+ 'title' => '创建 API MCP 服务',
+ 'summary' => '创建 API MCP 服务。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'openapiexplorer:CreateApiMcpServer',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ [
+ 'validationType' => 'always',
+ 'product' => 'OpenAPIExplorer',
+ 'resourceType' => 'ApiMcpServer',
+ 'arn' => 'acs:openapiexplorer::{#accountId}:apimcpserver/*',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"\\\\t\\\\n9BFC4AC1-6BE4-5405-BDEC-CA288D404812\\\\n\\",\\n \\"id\\": \\"v6ZZ7ftCzEILW***\\",\\n \\"urls\\": {\\n \\"sse\\": \\"https://mcpserverinner-pre.cn-zhangjiakou.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/sse\\",\\n \\"mcp\\": \\"https://mcpserverinner-pre.cn-zhangjiakou.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/mcp\\",\\n \\"vpcSse\\": \\"https://openapi-mcp-cn.vpc-proxy.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/sse\\",\\n \\"vpcMcp\\": \\"https://openapi-mcp-cn.vpc-proxy.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/mcp\\"\\n }\\n}","type":"json"}]',
+ ],
+ 'DeleteApiMcpServer' => [
+ 'summary' => '删除单个API MCP服务。',
+ 'path' => '/apimcpserver',
+ 'methods' => [
+ 'delete',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREopenapiexplorer7MPML0',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'clientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken 只支持 ASCII 字符,且不能超过 64 个字符,建议使用UUID。过期时间为3天。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-426655440000',
+ ],
+ ],
+ [
+ 'name' => 'id',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'API MCP 服务的 ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'v6ZZ7ftCzEILW***',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => '请求结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '9BFC4AC1-6BE4-5405-BDEC-CA288D404812',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Missing.Id',
+ 'errorMessage' => 'Id is mandatory for this action.',
+ 'description' => '缺少必填参数Id。',
+ ],
+ [
+ 'errorCode' => 'IdempotentParameterMismatch',
+ 'errorMessage' => 'The request uses the same client token as a previous request but with different parameters. Client tokens should not be reused across non-identical requests. Each unique request must have a distinct client token.',
+ 'description' => '请求使用了与之前请求相同的客户端令牌,但参数不同。请勿在参数不同的请求中重复使用同一令牌,每个独立请求必须使用唯一的令牌。 ',
+ ],
+ [
+ 'errorCode' => 'InvalidParam.ClientToken',
+ 'errorMessage' => 'The specified client token is not valid.',
+ 'description' => '该幂等参数有误,请检查。',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'OperationNotAllowed.SystemServer',
+ 'errorMessage' => 'System type servers are not allowed to be updated or deleted.',
+ 'description' => '系统级别的服务不允许更新或删除操作。',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'NotFound.ApiMcpServer',
+ 'errorMessage' => 'Specified MCP server not found.',
+ 'description' => '指定id的MCP服务不存在。',
+ ],
+ ],
+ ],
+ 'title' => '删除 API MCP 服务',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'openapiexplorer:DeleteApiMcpServer',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ [
+ 'validationType' => 'always',
+ 'product' => 'OpenAPIExplorer',
+ 'resourceType' => 'ApiMcpServer',
+ 'arn' => 'acs:openapiexplorer::{#accountId}:apimcpserver/{#id}',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"9BFC4AC1-6BE4-5405-BDEC-CA288D404812\\"\\n}","type":"json"}]',
+ ],
+ 'GenerateCLICommand' => [
+ 'summary' => '动态生成Aliyun CLI命令。',
+ 'path' => '/api/cli/makeCode',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREopenapiexplorerCHYMZJ',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'product',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '产品CODE。'."\n"
+ ."\n"
+ .'- 调用GetRequestLog接口,从返回结果中获取产品CODE。'."\n"
+ ."\n"
+ .'- 通过OpenAPI门户的URL,找到对应的产品CODE。例如,<props="china">短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>'."\n"
+ .'<props="intl">短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Ecs',
+ ],
+ ],
+ [
+ 'name' => 'apiVersion',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => 'API的版本。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2014-05-26',
+ ],
+ ],
+ [
+ 'name' => 'api',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => 'API的名称。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'DescribeRegions',
+ ],
+ ],
+ [
+ 'name' => 'regionId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '服务区域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'apiParams',
+ 'in' => 'formData',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '请求参数。',
+ 'type' => 'object',
+ 'deprecated' => true,
+ 'required' => false,
+ 'additionalProperties' => [
+ 'type' => 'any',
+ 'description' => '请求参数。',
+ 'example' => '{'."\n"
+ .' "InstanceChargeType": "PostPaid",'."\n"
+ .' "ResourceType": "instance",'."\n"
+ .' "AcceptLanguage": "en-US"'."\n"
+ .'}',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'jsonApiParams',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => 'JSON格式的API入参,优先级低于apiParams,当apiParams设置时,此参数无效。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{'."\n"
+ .' "InstanceChargeType": "PostPaid",'."\n"
+ .' "ResourceType": "instance",'."\n"
+ .' "AcceptLanguage": "en-US"'."\n"
+ .'}',
+ ],
+ ],
+ [
+ 'name' => 'aggregatePagination',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '是否使用聚合能力,若开启,CLI会自动以分页的方式读取全量数据并对结果聚合。'."\n"
+ ."\n"
+ .'<warning>只有支持分页的List类型的接口才能使用这个开关。</warning>'."\n"
+ ."\n"
+ .'- true:开启'."\n"
+ .'- false:关闭',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => '请求结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'cli' => [
+ 'title' => 'command of the request',
+ 'description' => 'CLI指令。',
+ 'type' => 'string',
+ 'example' => 'aliyun ecs DescribeRegions --ResourceType instance',
+ ],
+ 'requestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'A707AFA8-1A4C-5B2A-A165-8436C1EA38DB',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParam.Product',
+ 'errorMessage' => 'Product name is required and cannot be null or empty.',
+ 'description' => '',
+ ],
+ [
+ 'errorCode' => 'InvalidParam.ApiVersion',
+ 'errorMessage' => 'API version is required and cannot be null or empty.',
+ 'description' => '',
+ ],
+ [
+ 'errorCode' => 'InvalidParam.ApiName',
+ 'errorMessage' => 'API name is required and cannot be null or empty.',
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'title' => '动态生成Aliyun CLI命令',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'openapiexplorer:GenerateCLICommand',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ [
+ 'validationType' => 'always',
+ 'product' => 'OpenAPIExplorer',
+ 'resourceType' => '全部资源',
+ 'arn' => '*',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"cli\\": \\"aliyun ecs DescribeRegions --ResourceType instance\\",\\n \\"requestId\\": \\"A707AFA8-1A4C-5B2A-A165-8436C1EA38DB\\"\\n}","type":"json"}]',
+ ],
+ 'GetApiDefinition' => [
+ 'path' => '/api/definition',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREopenapiexplorerY5UU1D',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'product',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '产品CODE。'."\n"
+ ."\n"
+ .'- 调用GetRequestLog接口,从返回结果中获取产品CODE。'."\n"
+ ."\n"
+ .'- 通过OpenAPI门户的URL,找到对应的产品CODE。例如,<props="china">短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>'."\n"
+ .'<props="intl">短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Ecs',
+ ],
+ ],
+ [
+ 'name' => 'apiVersion',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'API的版本。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2014-05-26',
+ ],
+ ],
+ [
+ 'name' => 'api',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'API的名称。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'DescribeRegions',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => '接口的开放元数据信息。',
+ 'type' => 'object',
+ 'properties' => [],
+ ],
+ ],
+ ],
+ 'errorCodes' => [],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'title' => '获取产品相关接口的开放元数据',
+ 'summary' => '获取产品相关接口的开放元数据。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [],
+ 'responseDemo' => '[{"errorExample":"","example":"{}","type":"json"}]',
+ ],
+ 'GetApiMcpServer' => [
+ 'summary' => '查询API MCP服务详细信息。',
+ 'path' => '/apimcpserver',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREopenapiexplorer7MPML0',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'id',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'API MCP 服务 ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'v6ZZ7ftCzEILW***',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => '请求结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => ' '."\n"
+ .'9BFC4AC1-6BE4-5405-BDEC-CA288D404812'."\n",
+ ],
+ 'id' => [
+ 'description' => 'API MCP 服务 ID。',
+ 'type' => 'string',
+ 'example' => 'v6ZZ7ftCzEILW***',
+ ],
+ 'description' => [
+ 'description' => 'API MCP服务器的描述信息。',
+ 'type' => 'string',
+ 'example' => '这是一个API MCP 服务器',
+ ],
+ 'apis' => [
+ 'description' => 'API信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'API信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'product' => [
+ 'description' => '产品CODE。'."\n"
+ ."\n"
+ .'- 调用GetRequestLog接口,从返回结果中获取产品CODE。'."\n"
+ ."\n"
+ .'- 通过OpenAPI门户的URL,找到对应的产品CODE。例如,<props="china">短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>'."\n"
+ .'<props="intl">短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>',
+ 'type' => 'string',
+ 'example' => 'Ecs',
+ ],
+ 'apiVersion' => [
+ 'description' => '透出到 MCP SERVER 的 API 所属的 POP version。',
+ 'type' => 'string',
+ 'example' => '2014-05-26',
+ ],
+ 'selectors' => [
+ 'description' => 'API名称匹配规则列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'API名称匹配规则。',
+ 'type' => 'string',
+ 'example' => '*Bucket',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'additionalApiDescriptions' => [
+ 'description' => '补充的API描述信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '补充的API描述信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'apiVersion' => [
+ 'description' => '透出到 MCP SERVER 的 API 所属的 POP version。',
+ 'type' => 'string',
+ 'example' => '2014-05-26',
+ ],
+ 'product' => [
+ 'description' => '产品CODE。'."\n"
+ ."\n"
+ .'- 调用GetRequestLog接口,从返回结果中获取产品CODE。'."\n"
+ ."\n"
+ .'- 通过OpenAPI门户的URL,找到对应的产品CODE。例如,<props="china">短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>'."\n"
+ .'<props="intl">短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>',
+ 'type' => 'string',
+ 'example' => 'Ecs',
+ ],
+ 'apiName' => [
+ 'description' => 'API名称。',
+ 'type' => 'string',
+ 'example' => 'DescribeRegions',
+ ],
+ 'apiOverrideJson' => [
+ 'description' => 'API元数据JSON 格式,参考格式 https://api.aliyun.com/meta/v1/products/Ecs/versions/2014-05-26/apis/DescribeInstances/api.json,支持覆盖其中的summary、parameters。',
+ 'type' => 'string',
+ 'example' => '{'."\n"
+ .' "summary": "本接口支持根据不同请求条件查询实例列表,并关联查询实例的详细信息。"'."\n"
+ .'}',
+ ],
+ 'executeCliCommand' => [
+ 'description' => '是否返回CLI的执行命令,这个模式下,不真实执行API调用,返回对应的CLI命令,适用于长耗时的任务,需要搭配使用阿里云CLI执行。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'enableOutputSchema' => [
+ 'description' => '是否返回出参的schema,返回出参schema时会增加整个API MCP SERVER的体积。默认值为 null,表示不返回出参的schema。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'constParameters' => [
+ 'description' => '常量入参列表,在API参数解析时,不再输出这部分参数。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '常量入参。',
+ 'type' => 'object',
+ 'properties' => [
+ 'key' => [
+ 'description' => '参数名称。仅支持一级参数名称,对于ROA风格的API,支持设置到body.xx,不允许设置超出顶级参数的值。',
+ 'type' => 'string',
+ 'example' => 'InstanceId',
+ ],
+ 'value' => [
+ 'description' => '参数的值。',
+ 'type' => 'any',
+ 'example' => '1234',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'createTime' => [
+ 'description' => 'API MCP服务器的创建时间。',
+ 'type' => 'string',
+ 'example' => '2025-02-07T02:17:46Z',
+ ],
+ 'updateTime' => [
+ 'description' => 'API MCP服务器的修改时间。',
+ 'type' => 'string',
+ 'example' => '2025-02-05T02:26:04Z',
+ ],
+ 'prompts' => [
+ 'description' => 'prompt配置列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'prompt配置',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => [
+ 'description' => 'prompt名称。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'description' => [
+ 'description' => '描述信息。',
+ 'type' => 'string',
+ 'example' => 'prompt description',
+ ],
+ 'content' => [
+ 'description' => 'prompt 的内容信息,其变量通过 {{xxx}} 格式指定。xxx为变量,需要从 arguments 参数中定义。',
+ 'type' => 'string',
+ 'example' => 'prompt正文,{{name}}',
+ ],
+ 'arguments' => [
+ 'description' => 'prompt支持的参数列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'prompt支持的参数。',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => [
+ 'description' => '参数名称。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'description' => [
+ 'description' => '参数的描述信息。',
+ 'type' => 'string',
+ 'example' => 'argument description',
+ ],
+ 'required' => [
+ 'description' => '该参数是否必填。',
+ 'type' => 'boolean',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'language' => [
+ 'description' => 'API MCP服务的文档语言。支持选择中文或英文API文档,不同的语言提示词对AI的回复效果可能产生差异。',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'EN_US' => 'EN_US',
+ 'ZH_CN' => 'ZH_CN',
+ ],
+ 'example' => 'ZH_CN',
+ ],
+ 'urls' => [
+ 'description' => 'MCP SERVER 连接信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'sse' => [
+ 'description' => 'SSE 协议连接信息。',
+ 'type' => 'string',
+ 'example' => 'https://openapi-mcp.cn-hangzhou.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/sse',
+ ],
+ 'vpcSse' => [
+ 'description' => 'VPC 下 SSE 协议连接地址。',
+ 'type' => 'string',
+ 'example' => 'https://openapi-mcp-cn.vpc-proxy.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/sse',
+ ],
+ 'mcp' => [
+ 'description' => 'streamable HTTP 协议连接信息,推荐使用。',
+ 'type' => 'string',
+ 'example' => 'https://openapi-mcp.cn-hangzhou.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/mcp',
+ ],
+ 'vpcMcp' => [
+ 'description' => 'VPC 下 streamable HTTP 协议连接地址。',
+ 'type' => 'string',
+ 'example' => 'https://openapi-mcp-cn.vpc-proxy.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/mcp',
+ ],
+ ],
+ ],
+ 'systemTools' => [
+ 'description' => '系统工具列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '系统工具名称。',
+ 'type' => 'string',
+ 'example' => 'FetchRamActionDetails',
+ ],
+ ],
+ 'name' => [
+ 'description' => 'MCP SERVER 名称信息,由 a-z0-9 组成,3-64 位,不以数字开头,同主账号下必须唯一。',
+ 'type' => 'string',
+ 'example' => 'mcp-demo',
+ ],
+ 'requiredRAMPolicy' => [
+ 'description' => '该 API MCP 服务需要的 RAM 权限策略。',
+ 'type' => 'string',
+ 'example' => '{'."\n"
+ .' "Version": "1",'."\n"
+ .' "Statement": ['."\n"
+ .' {'."\n"
+ .' "Effect": "Allow",'."\n"
+ .' "Action": ['."\n"
+ .' "ecs:Describe*",'."\n"
+ .' "vpc:Describe*",'."\n"
+ .' "vpc:List*"'."\n"
+ .' ],'."\n"
+ .' "Resource": "*"'."\n"
+ .' }'."\n"
+ .' ]'."\n"
+ .'}',
+ ],
+ 'apiInfos' => [
+ 'description' => 'API MCP 服务的 API 信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'API MCP 服务的 API 信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'product' => [
+ 'description' => '产品CODE。'."\n"
+ ."\n"
+ .'- 调用GetRequestLog接口,从返回结果中获取产品CODE。'."\n"
+ ."\n"
+ .'- 通过OpenAPI门户的URL,找到对应的产品CODE。例如,<props="china">短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>'."\n"
+ .'<props="intl">短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>',
+ 'type' => 'string',
+ 'example' => 'Ecs',
+ ],
+ 'apiVersion' => [
+ 'description' => '透出到 MCP SERVER 的 API 所属的 POP version。',
+ 'type' => 'string',
+ 'example' => '2014-05-26',
+ ],
+ 'apiName' => [
+ 'description' => 'API名称。',
+ 'type' => 'string',
+ 'example' => 'DescribeRegions',
+ ],
+ ],
+ ],
+ ],
+ 'sourceType' => [
+ 'description' => 'API MCP 服务类型。'."\n"
+ ."\n"
+ .'- custom 自定义服务'."\n"
+ ."\n"
+ .'- system 系统服务',
+ 'type' => 'string',
+ 'example' => 'system',
+ ],
+ 'systemMcpServerInfo' => [
+ 'description' => '系统 MCP 服务列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'product' => [
+ 'description' => '产品CODE。'."\n"
+ ."\n"
+ .'- 调用GetRequestLog接口,从返回结果中获取产品CODE。'."\n"
+ ."\n"
+ .'- 通过OpenAPI门户的URL,找到对应的产品CODE。例如,<props="china">短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>'."\n"
+ .'<props="intl">短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>',
+ 'type' => 'string',
+ 'example' => 'Ecs',
+ ],
+ 'name' => [
+ 'description' => '系统 MCP 服务名称。',
+ 'type' => 'string',
+ 'example' => 'mcp-system',
+ ],
+ ],
+ ],
+ 'oauthClientId' => [
+ 'description' => '选择自定义OAuth配置时的自定义OAuth Client ID。'."\n"
+ ."\n"
+ .'`仅支持 Web/Native 应用,且 OAuth 范围必须包含 /acs/mcp-server`',
+ 'type' => 'string',
+ 'example' => '403*************370',
+ ],
+ 'terraformTools' => [
+ 'description' => 'Terraform Tool 列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'Terraform Tool。',
+ 'type' => 'object',
+ 'properties' => [
+ 'code' => [
+ 'description' => 'Terraform Tool 代码。[HCL 语言概述](https://help.aliyun.com/zh/terraform/terraform-configuration-and-hcl-language-overview)',
+ 'type' => 'string',
+ 'example' => 'variable "name" {'."\n"
+ .' default = "terraform-example"'."\n"
+ .'}'."\n"
+ ."\n"
+ .'provider "alicloud" {'."\n"
+ .' region = "cn-beijing"'."\n"
+ .'}'."\n"
+ ."\n"
+ .'resource "alicloud_vpc" "default" {'."\n"
+ .' ipv6_isp = "BGP"'."\n"
+ .' description = "test"'."\n"
+ .' cidr_block = "10.0.0.0/8"'."\n"
+ .' vpc_name = var.name'."\n"
+ .' enable_ipv6 = true'."\n"
+ .'}',
+ ],
+ 'name' => [
+ 'description' => 'Terraform Tool 名称。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'description' => [
+ 'description' => 'Terraform Tool 描述信息。',
+ 'type' => 'string',
+ 'example' => 'Terraform Tool description',
+ ],
+ 'async' => [
+ 'description' => '是否为异步执行,即发起一个任务执行之后会立即处理下一个任务,而不等待每个资源操作完成。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'destroyPolicy' => [
+ 'description' => '删除策略,任务执行完成后,系统根据任务执行状态对临时资源采取以下清理策略。'."\n"
+ ."\n"
+ .'- NEVER 不删除:无论任务执行成功或失败,均不删除所有创建的资源'."\n"
+ .'- ALWAYS 总是删除:无论任务执行成功或失败,执行完成立即销毁所有相关资源'."\n"
+ .'- ON_FAILURE 失败时删除:仅当任务执行失败时,删除相关资源;当任务执行成功时,则保留这些资源',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'ON_FAILURE' => 'ON_FAILURE',
+ 'NEVER' => 'NEVER',
+ 'ALWAYS' => 'ALWAYS',
+ ],
+ 'example' => 'ON_FAILURE',
+ ],
+ ],
+ ],
+ ],
+ 'instructions' => [
+ 'description' => 'MCP 指令,用于提示大模型如何使用该 MCP,需要客户端支持 MCP 标准协议的 Instructions 字段。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'enableAssumeRole' => [
+ 'description' => '是否开启多账号访问。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'assumeRoleName' => [
+ 'description' => '开启多账号访问进行跨账号操作时,扮演的目标账号 RAM角色名称。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'assumeRoleExtraPolicy' => [
+ 'description' => '开启多账号访问时,角色扮演额外的策略,该策略存在时,角色扮演的权限以当前值为准,覆盖角色本身的权限定义。',
+ 'type' => 'string',
+ 'example' => '{'."\n"
+ .' "Version": "1",'."\n"
+ .' "Statement": ['."\n"
+ .' {'."\n"
+ .' "Effect": "Allow",'."\n"
+ .' "Action": ['."\n"
+ .' "ecs:Describe*",'."\n"
+ .' "vpc:Describe*",'."\n"
+ .' "vpc:List*"'."\n"
+ .' ],'."\n"
+ .' "Resource": "*"'."\n"
+ .' }'."\n"
+ .' ]'."\n"
+ .'}',
+ ],
+ 'publicAccess' => [
+ 'description' => '是否开启公网。',
+ 'type' => 'string',
+ 'example' => 'on',
+ 'enum' => [
+ 'on',
+ 'off',
+ 'follow',
+ ],
+ ],
+ 'enableCustomVpcWhitelist' => [
+ 'description' => '是否开启自定义VPC白名单,不开启则跟随账户级别的配置。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'vpcWhitelists' => [
+ 'description' => '关闭公网访问后,限定来源的VPC白名单,不设置或为空表示不限制来源。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '每一个限定的VPC白名单,值为来源VPC ID。',
+ 'type' => 'string',
+ 'example' => 'vpc-j6cgd2if5lg**0xs6m5se',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Missing.Id',
+ 'errorMessage' => 'Id is mandatory for this action.',
+ 'description' => '缺少必填参数Id。',
+ ],
+ ],
+ 404 => [
+ [
+ 'errorCode' => 'NotFound.ApiMcpServer',
+ 'errorMessage' => 'Specified MCP server not found.',
+ 'description' => '指定id的MCP服务不存在。',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalServerError',
+ 'errorMessage' => 'The request has failed due to a temporary failure of the server.',
+ 'description' => '由于服务器暂时故障,请求失败。',
+ ],
+ ],
+ ],
+ 'title' => '查询API MCP服务详细信息',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'openapiexplorer:GetApiMcpServer',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ [
+ 'validationType' => 'always',
+ 'product' => 'OpenAPIExplorer',
+ 'resourceType' => 'ApiMcpServer',
+ 'arn' => 'acs:openapiexplorer::{#accountId}:apimcpserver/{#id}',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"\\\\t\\\\n9BFC4AC1-6BE4-5405-BDEC-CA288D404812\\\\n\\",\\n \\"id\\": \\"v6ZZ7ftCzEILW***\\",\\n \\"description\\": \\"这是一个API MCP 服务器\\",\\n \\"apis\\": [\\n {\\n \\"product\\": \\"Ecs\\",\\n \\"apiVersion\\": \\"2014-05-26\\",\\n \\"selectors\\": [\\n \\"*Bucket\\"\\n ]\\n }\\n ],\\n \\"additionalApiDescriptions\\": [\\n {\\n \\"apiVersion\\": \\"2014-05-26\\",\\n \\"product\\": \\"Ecs\\",\\n \\"apiName\\": \\"DescribeRegions\\",\\n \\"apiOverrideJson\\": \\"{\\\\n \\\\\\"summary\\\\\\": \\\\\\"本接口支持根据不同请求条件查询实例列表,并关联查询实例的详细信息。\\\\\\"\\\\n}\\",\\n \\"executeCliCommand\\": true,\\n \\"enableOutputSchema\\": true,\\n \\"constParameters\\": [\\n {\\n \\"key\\": \\"InstanceId\\",\\n \\"value\\": \\"1234\\"\\n }\\n ]\\n }\\n ],\\n \\"createTime\\": \\"2025-02-07T02:17:46Z\\",\\n \\"updateTime\\": \\"2025-02-05T02:26:04Z\\",\\n \\"prompts\\": [\\n {\\n \\"name\\": \\"test\\",\\n \\"description\\": \\"prompt description\\",\\n \\"content\\": \\"prompt正文,{{name}}\\",\\n \\"arguments\\": [\\n {\\n \\"name\\": \\"test\\",\\n \\"description\\": \\"argument description\\",\\n \\"required\\": true\\n }\\n ]\\n }\\n ],\\n \\"language\\": \\"ZH_CN\\",\\n \\"urls\\": {\\n \\"sse\\": \\"https://openapi-mcp.cn-hangzhou.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/sse\\",\\n \\"vpcSse\\": \\"https://openapi-mcp-cn.vpc-proxy.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/sse\\",\\n \\"mcp\\": \\"https://openapi-mcp.cn-hangzhou.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/mcp\\",\\n \\"vpcMcp\\": \\"https://openapi-mcp-cn.vpc-proxy.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/mcp\\"\\n },\\n \\"systemTools\\": [\\n \\"FetchRamActionDetails\\"\\n ],\\n \\"name\\": \\"mcp-demo\\",\\n \\"requiredRAMPolicy\\": \\"{\\\\n \\\\\\"Version\\\\\\": \\\\\\"1\\\\\\",\\\\n \\\\\\"Statement\\\\\\": [\\\\n {\\\\n \\\\\\"Effect\\\\\\": \\\\\\"Allow\\\\\\",\\\\n \\\\\\"Action\\\\\\": [\\\\n \\\\\\"ecs:Describe*\\\\\\",\\\\n \\\\\\"vpc:Describe*\\\\\\",\\\\n \\\\\\"vpc:List*\\\\\\"\\\\n ],\\\\n \\\\\\"Resource\\\\\\": \\\\\\"*\\\\\\"\\\\n }\\\\n ]\\\\n}\\",\\n \\"apiInfos\\": [\\n {\\n \\"product\\": \\"Ecs\\",\\n \\"apiVersion\\": \\"2014-05-26\\",\\n \\"apiName\\": \\"DescribeRegions\\"\\n }\\n ],\\n \\"sourceType\\": \\"system\\",\\n \\"systemMcpServerInfo\\": {\\n \\"product\\": \\"Ecs\\",\\n \\"name\\": \\"mcp-system\\"\\n },\\n \\"oauthClientId\\": \\"403*************370\\",\\n \\"terraformTools\\": [\\n {\\n \\"code\\": \\"variable \\\\\\"name\\\\\\" {\\\\n default = \\\\\\"terraform-example\\\\\\"\\\\n}\\\\n\\\\nprovider \\\\\\"alicloud\\\\\\" {\\\\n region = \\\\\\"cn-beijing\\\\\\"\\\\n}\\\\n\\\\nresource \\\\\\"alicloud_vpc\\\\\\" \\\\\\"default\\\\\\" {\\\\n ipv6_isp = \\\\\\"BGP\\\\\\"\\\\n description = \\\\\\"test\\\\\\"\\\\n cidr_block = \\\\\\"10.0.0.0/8\\\\\\"\\\\n vpc_name = var.name\\\\n enable_ipv6 = true\\\\n}\\",\\n \\"name\\": \\"test\\",\\n \\"description\\": \\"Terraform Tool description\\",\\n \\"async\\": true,\\n \\"destroyPolicy\\": \\"ON_FAILURE\\"\\n }\\n ],\\n \\"instructions\\": \\"test\\",\\n \\"enableAssumeRole\\": true,\\n \\"assumeRoleName\\": \\"test\\",\\n \\"assumeRoleExtraPolicy\\": \\"{\\\\n \\\\\\"Version\\\\\\": \\\\\\"1\\\\\\",\\\\n \\\\\\"Statement\\\\\\": [\\\\n {\\\\n \\\\\\"Effect\\\\\\": \\\\\\"Allow\\\\\\",\\\\n \\\\\\"Action\\\\\\": [\\\\n \\\\\\"ecs:Describe*\\\\\\",\\\\n \\\\\\"vpc:Describe*\\\\\\",\\\\n \\\\\\"vpc:List*\\\\\\"\\\\n ],\\\\n \\\\\\"Resource\\\\\\": \\\\\\"*\\\\\\"\\\\n }\\\\n ]\\\\n}\\",\\n \\"publicAccess\\": \\"on\\",\\n \\"enableCustomVpcWhitelist\\": true,\\n \\"vpcWhitelists\\": [\\n \\"vpc-j6cgd2if5lg**0xs6m5se\\"\\n ]\\n}","type":"json"}]',
+ ],
+ 'GetApiMcpServerUserConfig' => [
+ 'summary' => '查询用户全局API MCP Server配置,当前能力包含配置是否开启公网访问及配置在VPC下请求的来源VPC ID白名单。',
+ 'path' => '/userconfig/get',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREopenapiexplorer7MPML0',
+ ],
+ ],
+ 'parameters' => [],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'A707AFA8-1A4C-5B2A-A165-8436C1EA38DB',
+ ],
+ 'accountId' => [
+ 'description' => '您的阿里云账号(主账号)ID。',
+ 'type' => 'string',
+ 'example' => '162302724684579*',
+ ],
+ 'enablePublicAccess' => [
+ 'description' => '是否开启账户下所有API MCP Server(包含系统MCP Server)的公网访问能力,默认为开启,关闭后只能通过VPC域名访问。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'vpcWhitelists' => [
+ 'description' => '关闭公网访问后,限定来源的VPC白名单,不设置或为空表示不限制来源。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '每一个限定的VPC白名单,值为来源VPC ID。',
+ 'type' => 'string',
+ 'example' => 'vpc-j6cgd2if5lg**0xs6m5se',
+ ],
+ ],
+ 'gmtCreate' => [
+ 'description' => '创建时间',
+ 'type' => 'string',
+ 'example' => '2025-11-10T06:58:39Z',
+ ],
+ 'gmtModified' => [
+ 'description' => '更新时间',
+ 'type' => 'string',
+ 'example' => '2025-11-10T06:58:39Z',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [],
+ 'title' => '获取API MCP Server全局配置',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'openapiexplorer:GetApiMcpServerUserConfig',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ [
+ 'validationType' => 'always',
+ 'product' => 'OpenAPIExplorer',
+ 'resourceType' => '全部资源',
+ 'arn' => '*',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"A707AFA8-1A4C-5B2A-A165-8436C1EA38DB\\",\\n \\"accountId\\": \\"162302724684579*\\",\\n \\"enablePublicAccess\\": true,\\n \\"vpcWhitelists\\": [\\n \\"vpc-j6cgd2if5lg**0xs6m5se\\"\\n ],\\n \\"gmtCreate\\": \\"2025-11-10T06:58:39Z\\",\\n \\"gmtModified\\": \\"2025-11-10T06:58:39Z\\"\\n}","type":"json"}]',
+ ],
+ 'GetErrorCodeSolutions' => [
+ 'summary' => '根据提供的错误码获取对应的错误诊断解决方案',
+ 'description' => '该接口查询的是公开信息,不涉及账号特殊归属等信息,故不支持授权。',
+ 'path' => '/getErrorCodeSolutions',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREopenapiexplorerFS9SI4',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'errorCode',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '发生错误时收到的错误码Code。'."\n"
+ .'以如下报错信息为例,请传入NoPermission作为errorCode参数值:'."\n"
+ .'"Code": "NoPermission",'."\n"
+ .'"Message": "You are not authorized to perform this action.",'."\n"
+ .'"AccessDeniedDetail": {***},'."\n"
+ .'"Recommend": "https://api.aliyun.com/troubleshoot?q=NoPermission&product=***&requestId=***",'."\n"
+ .'"RequestId": "***",'."\n"
+ .'"HostId": "***.aliyuncs.com"',
+ 'description' => '需要查询诊断方案的错误码。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'IncorrectStatus.TransitRouter',
+ ],
+ ],
+ [
+ 'name' => 'errorMessage',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '收到报错的错误信息Message字段。'."\n"
+ ."\n"
+ .'Code与Message为一个完整的二元组,匹配诊断方案首先以errorCode必填参数匹配,返回匹配同一Code下的所有诊断解决方案(solutions)。如传入errorMessage参数,则通过errorCode+errorMessage作为一个独立的二元组匹配对应解决方案。'."\n"
+ ."\n"
+ .'以如下错误消息为例,传入NoPermission作为errorCode参数值,传入You are not authorized to perform this action作为errorMessage参数值:'."\n"
+ .'"Code": "NoPermission",'."\n"
+ .'"Message": "You are not authorized to perform this action.",'."\n"
+ .'"AccessDeniedDetail": {***},'."\n"
+ .'"Recommend": "https://api.aliyun.com/troubleshoot?q=NoPermission&product=***&requestId=***",'."\n"
+ .'"RequestId": "***",'."\n"
+ .'"HostId": "***.aliyuncs.com"',
+ 'description' => '需查询诊断方案的错误消息,必须搭配错误码(errorCode)参数共同使用。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'The resource is not in a valid state for the operation.',
+ ],
+ ],
+ [
+ 'name' => 'product',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '筛选特定产品。'."\n"
+ ."\n"
+ .'当errorCode匹配到solutions存在于多个产品下时,通过product参数指定特定的产品solution。如指定的产品的code没有solution,则会抛出报错,详见错误码列表。',
+ 'description' => '产品CODE。'."\n"
+ ."\n"
+ .'- 调用GetRequestLog接口,从返回结果中获取产品CODE。'."\n"
+ ."\n"
+ .'- 通过OpenAPI门户的URL,找到对应的产品CODE。例如,<props="china">短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>'."\n"
+ .'<props="intl">短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Ecs',
+ ],
+ ],
+ [
+ 'name' => 'acceptLanguage',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '限定solutions的语言,目前支持中文(zh-CN)与英文(en-US),并非所有solutions具备英文内容。',
+ 'description' => '查询对应语言的诊断方案,支持中文(zh-CN)与英文(en-US)。需要注意的是并非所有诊断方案具备英文内容,如诊断方案无英文内容,则返回为空。'."\n"
+ .'<props="china">zh-CN</props>'."\n"
+ ."\n"
+ .'<props="intl">en-US</props>',
+ 'type' => 'string',
+ 'required' => false,
+ 'enumValueTitles' => [
+ 'en-US' => 'en-US',
+ 'zh-CN' => 'zh-CN',
+ ],
+ 'example' => 'zh-CN',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'description' => '查询成功',
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'solutions' => [
+ 'title' => '解决方案列表,并非每个报错都具备诊断方案,如有需求可以通过提交工单或者通过API门户反馈给我们。'."\n"
+ .'每个元素包含以下属性:'."\n",
+ 'description' => '解决方案列表,并非所有报错都有对应的诊断方案,且解决方案可能因业务逻辑的调整而发生变化。如有需求,您可以通过提交工单或访问 API 门户向我们反馈。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '诊断方案列表。每个元素包含以下属性:',
+ 'type' => 'object',
+ 'properties' => [
+ 'content' => [
+ 'title' => '**解决方案内容**:主要内容,统一以markdown格式返回。一般可能包含“标题”、“触发条件”、“解决步骤”等段落信息。',
+ 'description' => '错误码诊断方案,以markdown格式返回。',
+ 'type' => 'string',
+ 'example' => 'Unsupported transit router status\\n====\\n\\nCause\\n----\\n\\nThe transit router is in an unstable state.\\n\\n* * *\\n\\nSolution\\n----\\n\\nTry again after the transit router enters a stable state. You can check whether the transit router is in a stable state based on the following information.\\n\\nExample\\n------\\n\\nBefore you proceed, make sure that the transit route is in a stable state.\\n\\n1. Go to the console. If the status of the transit router in the Transit Router list is Available, the transit router is in a stable state.\\n\\n2. Call the ListTransitRouters operation. If Active is returned for Status, the transit router is in a stable state.',
+ ],
+ 'solutionId' => [
+ 'title' => '本次查询的解决方案的唯一 ID。',
+ 'description' => '解决方案 ID'."\n",
+ 'type' => 'string',
+ 'example' => '0017-00000502',
+ ],
+ 'product' => [
+ 'title' => '本次查询的错误码所属的产品code。',
+ 'description' => '诊断方案所属的产品CODE。',
+ 'type' => 'string',
+ 'example' => 'Ecs',
+ ],
+ 'productName' => [
+ 'title' => '本条错误码所属的产品名称,为OpenAPI门户所显示的产品名称。',
+ 'description' => '诊断方案所属的产品服务名称。',
+ 'type' => 'string',
+ 'example' => 'Elastic Compute Service',
+ ],
+ 'errorCode' => [
+ 'title' => '本次查询的解决方案对应的错误码。'."\n",
+ 'description' => '诊断方案所对应的错误码。',
+ 'type' => 'string',
+ 'example' => 'IncorrectStatus.TransitRouter',
+ ],
+ 'errorMessage' => [
+ 'title' => '本次查询的解决方案对应的错误消息。',
+ 'description' => '诊断方案所对应的错误消息。',
+ 'type' => 'string',
+ 'example' => 'The resource is not in a valid state for the operation.',
+ ],
+ ],
+ ],
+ ],
+ 'requestId' => [
+ 'title' => '本次请求的requestId。',
+ 'description' => '本次请求的Request ID。',
+ 'type' => 'string',
+ 'example' => 'A707AFA8-1A4C-5B2A-A165-8436C1EA38DB',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParam.AcceptLanguage',
+ 'errorMessage' => 'Accepted language should only be zh-CN or en-US.',
+ 'description' => '参数无效,接受的语言只能是zh-CN或en-US。',
+ ],
+ [
+ 'errorCode' => 'InvalidParam.ErrorCode',
+ 'errorMessage' => 'The errorCode should be a string and cannot be empty.',
+ 'description' => 'ErrorCode参数无效,应该是字符串,不能为空。',
+ ],
+ [
+ 'errorCode' => 'InvalidParam.ErrorMessage',
+ 'errorMessage' => 'The errorMessage should be a string or null.',
+ 'description' => '参数 errorMessage 无效。ErrorMessage应该是字符串或null。',
+ ],
+ [
+ 'errorCode' => 'InvalidParam.Product',
+ 'errorMessage' => 'The product should be a string or null.',
+ 'description' => '参数 product 无效,应该是字符串或null。',
+ ],
+ ],
+ 404 => [
+ [
+ 'errorCode' => 'NotFound.Product',
+ 'errorMessage' => 'The provided product does not exist.',
+ 'description' => '您提供的产品名称不存在。',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"solutions\\": [\\n {\\n \\"content\\": \\"Unsupported transit router status\\\\\\\\n====\\\\\\\\n\\\\\\\\nCause\\\\\\\\n----\\\\\\\\n\\\\\\\\nThe transit router is in an unstable state.\\\\\\\\n\\\\\\\\n* * *\\\\\\\\n\\\\\\\\nSolution\\\\\\\\n----\\\\\\\\n\\\\\\\\nTry again after the transit router enters a stable state. You can check whether the transit router is in a stable state based on the following information.\\\\\\\\n\\\\\\\\nExample\\\\\\\\n------\\\\\\\\n\\\\\\\\nBefore you proceed, make sure that the transit route is in a stable state.\\\\\\\\n\\\\\\\\n1. Go to the console. If the status of the transit router in the Transit Router list is Available, the transit router is in a stable state.\\\\\\\\n\\\\\\\\n2. Call the ListTransitRouters operation. If Active is returned for Status, the transit router is in a stable state.\\",\\n \\"solutionId\\": \\"0017-00000502\\",\\n \\"product\\": \\"Ecs\\",\\n \\"productName\\": \\"Elastic Compute Service\\",\\n \\"errorCode\\": \\"IncorrectStatus.TransitRouter\\",\\n \\"errorMessage\\": \\"The resource is not in a valid state for the operation.\\"\\n }\\n ],\\n \\"requestId\\": \\"A707AFA8-1A4C-5B2A-A165-8436C1EA38DB\\"\\n}","type":"json"}]',
+ 'title' => '查询报错诊断方案',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [],
+ ],
+ 'GetOwnRequestLog' => [
+ 'summary' => '通过 API 返回的Request ID 查询当前账号调用 OpenAPI 的日志详情,用于故障排查',
+ 'description' => '该API不支持授权。',
+ 'path' => '/getOwnRequestLog',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ 'application/x-www-form-urlencoded',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREopenapiexplorer64CEGV',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'logRequestId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '需要查询日志的requestId。'."\n"
+ .'API 请求的唯一标识符(UUID格式,且必须为大写)。'."\n",
+ 'description' => '需要查询日志的RequestId。'."\n"
+ .'API 请求的唯一标识符(UUID格式,且必须为大写)。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '123E4567-E89B-12D3-A456-426614174000',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'description' => '查询成功',
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'logInfo' => [
+ 'title' => '包含API请求日志的详细信息。',
+ 'description' => '包含API请求日志的详细信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'basicInfo' => [
+ 'title' => '包含API请求的基本信息。',
+ 'description' => '包含API请求的基本信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'api' => [
+ 'title' => '所查日志内的API名称。',
+ 'description' => '所查日志内的API名称。',
+ 'type' => 'string',
+ 'example' => 'RunInstances'."\n",
+ ],
+ 'apiDoc' => [
+ 'title' => 'API文档信息。',
+ 'description' => 'API文档信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'aliyunSite' => [
+ 'title' => '中国站文档链接。',
+ 'description' => '中国站文档链接。',
+ 'type' => 'string',
+ 'example' => 'https://api.aliyun.com/document/Ecs/2014-05-26/RunInstances',
+ ],
+ 'alibabacloudSite' => [
+ 'title' => '国际站文档链接。',
+ 'description' => '国际站文档链接。',
+ 'type' => 'string',
+ 'example' => 'https://api.alibabacloud.com/document/Ecs/2014-05-26/RunInstances',
+ ],
+ ],
+ ],
+ 'apiVersion' => [
+ 'title' => 'API版本信息。',
+ 'description' => 'API版本信息。',
+ 'type' => 'string',
+ 'example' => '2014-05-26',
+ ],
+ 'product' => [
+ 'title' => '产品名称。',
+ 'description' => '产品CODE。',
+ 'type' => 'string',
+ 'example' => 'Ecs'."\n",
+ ],
+ 'productName' => [
+ 'title' => '产品名称信息,包含中文名和英文名。',
+ 'description' => '产品名称信息,包含中文名和英文名。',
+ 'type' => 'object',
+ 'properties' => [
+ 'cnName' => [
+ 'title' => '产品中文名。',
+ 'description' => '产品中文名。',
+ 'type' => 'string',
+ 'example' => '云服务器 ECS'."\n",
+ ],
+ 'enName' => [
+ 'title' => '产品英文名。',
+ 'description' => '产品英文名。',
+ 'type' => 'string',
+ 'example' => ' '."\n"
+ .'Elastic Compute Service'."\n",
+ ],
+ ],
+ ],
+ 'apiStyle' => [
+ 'title' => 'API风格,可能为ROA或RPC风格类型。',
+ 'description' => 'API风格,可能为ROA或RPC风格类型。',
+ 'type' => 'string',
+ 'example' => 'rpc',
+ ],
+ 'logRequestId' => [
+ 'title' => '本次查询日志的requestId,并非本次请求的requestId。',
+ 'description' => '传入的RequestId。',
+ 'type' => 'string',
+ 'example' => '123E4567-E89B-12D3-A456-426614174000',
+ ],
+ 'httpStatusCode' => [
+ 'title' => '所查日志内的Http状态码信息。',
+ 'description' => '所查日志内的HTTP状态码信息。',
+ 'type' => 'string',
+ 'example' => '400',
+ ],
+ 'errorCode' => [
+ 'title' => '所查日志内的错误码。如查询的请求并未报错,该字段为空。',
+ 'description' => '所查日志内的错误码。如查询的请求并未报错,该字段为空。',
+ 'type' => 'string',
+ 'example' => 'IncorrectStatus.TransitRouter'."\n",
+ ],
+ 'errorMessage' => [
+ 'title' => '所查日志内的错误消息。如查询的请求并未报错,该字段为空。',
+ 'description' => '所查日志内的错误消息。如查询的请求并未报错,该字段为空。',
+ 'type' => 'string',
+ 'example' => 'The resource is not in a valid state for the operation.'."\n",
+ ],
+ 'accessDeniedDetail' => [
+ 'title' => '无权限报错详细信息',
+ 'description' => '无权限报错详细信息',
+ 'type' => 'object',
+ 'properties' => [
+ 'policyType' => [
+ 'title' => '无权限的策略类型',
+ 'description' => '无权限的策略类型',
+ 'type' => 'string',
+ 'example' => ' '."\n"
+ .'AccountLevelIdentityBasedPolicy'."\n",
+ ],
+ 'authPrincipalOwnerId' => [
+ 'title' => '当前身份所属的阿里云账号UID信息',
+ 'description' => '当前身份所属的阿里云账号UID信息',
+ 'type' => 'string',
+ 'example' => '1001234561234567'."\n",
+ ],
+ 'authPrincipalType' => [
+ 'title' => '操作者的身份类型',
+ 'description' => '操作者的身份类型',
+ 'type' => 'string',
+ 'example' => 'SubUser'."\n",
+ ],
+ 'authPrincipalDisplayName' => [
+ 'title' => '身份标识',
+ 'description' => '身份标识',
+ 'type' => 'string',
+ 'example' => '205618123456123456'."\n",
+ ],
+ 'noPermissionType' => [
+ 'title' => '无权限原因',
+ 'description' => '无权限原因',
+ 'type' => 'string',
+ 'example' => 'ImplicitDeny'."\n",
+ ],
+ 'authAction' => [
+ 'title' => '导致无权限的具体操作',
+ 'description' => '导致无权限的具体操作',
+ 'type' => 'string',
+ 'example' => 'openapiexplorer:GetRequestLog'."\n",
+ ],
+ 'encodedDiagnosticMessage' => [
+ 'title' => '用于诊断的编码后信息。可调用 Ram 产品的 DecodeDiagnosticMessage OpenAPI 进一步诊断获得更多诊断信息。',
+ 'description' => '用于诊断的编码后信息。可调用 Ram 产品的 DecodeDiagnosticMessage OpenAPI 进一步诊断获得更多诊断信息。',
+ 'type' => 'string',
+ 'example' => '-'."\n",
+ ],
+ ],
+ ],
+ 'httpMethod' => [
+ 'title' => 'Http请求方式。',
+ 'description' => 'HTTP请求方式。',
+ 'type' => 'string',
+ 'example' => 'GET'."\n",
+ ],
+ 'requestDuration' => [
+ 'title' => '网关从收到请求到返回响应的时间。单位毫秒(ms)。',
+ 'description' => '网关从收到请求到返回响应的时间。单位毫秒(ms)。',
+ 'type' => 'string',
+ 'example' => '188',
+ ],
+ 'sdkRequestTime' => [
+ 'title' => 'SDK请求时间。'."\n"
+ .'日期格式按照 ISO8601 表示法,并使用 UTC 时间,格式为 yyyy-MM-ddTHH:mm:ssZ',
+ 'description' => '发起请求时间。'."\n"
+ .'日期格式按照 ISO8601 表示法,并使用 UTC 时间,格式为 yyyy-MM-ddTHH:mm:ssZ',
+ 'type' => 'string',
+ 'example' => '2025-01-21T07:43:06Z'."\n",
+ ],
+ 'gatewayProcessTime' => [
+ 'title' => '网关处理时间。'."\n"
+ .'日期格式按照 ISO8601 表示法,并使用 UTC 时间,格式为 yyyy-MM-ddTHH:mm:ssZ',
+ 'description' => '网关接收到请求的时间。'."\n"
+ .'日期格式按照 ISO8601 表示法,并使用 UTC 时间,格式为 yyyy-MM-ddTHH:mm:ssZ',
+ 'type' => 'string',
+ 'example' => '2025-01-21T07:43:06Z'."\n"
+ ."\n",
+ ],
+ 'regionId' => [
+ 'title' => '服务区域ID。',
+ 'description' => '服务区域ID。',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou'."\n",
+ ],
+ 'endpoint' => [
+ 'title' => '服务区域对应的服务地址(Endpoint)。',
+ 'description' => '服务区域对应的服务地址(Endpoint)。',
+ 'type' => 'string',
+ 'example' => 'ecs.cn-hangzhou.aliyuncs.com'."\n",
+ ],
+ 'throttlingResult' => [
+ 'title' => '流控校验结果。FC.PASS:未被流控检查拦截;FC.DENY:被流控检查拦截。',
+ 'description' => '流控校验结果。FC.PASS:未被流控检查拦截;FC.DENY:被流控检查拦截。',
+ 'type' => 'string',
+ 'example' => 'FC.PASS'."\n",
+ 'enum' => [
+ 'FC.PASS',
+ 'FC.DENY',
+ ],
+ ],
+ ],
+ ],
+ 'callerInfo' => [
+ 'title' => '调用者信息。',
+ 'description' => '调用者信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'callerType' => [
+ 'title' => '调用者类型。'."\n"
+ .'1. customer:云账号;'."\n"
+ .'2. sub:RAM子用户;'."\n"
+ .'3. AssumedRoleUser:STS Token临时身份;',
+ 'description' => '调用者类型。'."\n"
+ .'1. customer:云账号;'."\n"
+ .'2. sub:RAM子用户;'."\n"
+ .'3. AssumedRoleUser:STS Token临时身份;',
+ 'type' => 'string',
+ 'example' => 'sub'."\n",
+ 'enum' => [
+ 'customer',
+ 'sub',
+ 'AssumedRoleUser',
+ ],
+ ],
+ 'callerIp' => [
+ 'title' => '调用者的IP地址',
+ 'description' => '调用者的IP地址',
+ 'type' => 'string',
+ 'example' => '100.68.xxx.xxx'."\n",
+ ],
+ 'masterAccountId' => [
+ 'title' => '主账号ID',
+ 'description' => '主账号ID',
+ 'type' => 'string',
+ 'example' => '1973374733454118'."\n",
+ ],
+ 'callerAccountId' => [
+ 'title' => '调用者账号ID',
+ 'description' => '调用者账号ID',
+ 'type' => 'string',
+ 'example' => '241009849925897811'."\n",
+ ],
+ 'userAgent' => [
+ 'title' => '用户代理信息',
+ 'description' => '用户代理信息',
+ 'type' => 'string',
+ 'example' => 'AlibabaCloud API Workbench'."\n",
+ ],
+ ],
+ ],
+ 'authenticationInfo' => [
+ 'title' => '认证信息',
+ 'description' => '认证信息',
+ 'type' => 'object',
+ 'properties' => [
+ 'signatureVersion' => [
+ 'title' => '签名版本',
+ 'description' => '签名版本',
+ 'type' => 'string',
+ 'example' => 'unknown'."\n",
+ ],
+ 'signatureMethod' => [
+ 'title' => '签名方法。'."\n"
+ .' * HMAC-SHA1: 使用HMAC-SHA1算法进行签名'."\n"
+ .' * HMAC-SHA256: 使用HMAC-SHA256算法进行签名',
+ 'description' => '签名方法。'."\n"
+ .' * HMAC-SHA1: 使用HMAC-SHA1算法进行签名'."\n"
+ .' * HMAC-SHA256: 使用HMAC-SHA256算法进行签名',
+ 'type' => 'string',
+ 'example' => 'HMAC-SHA256',
+ 'enum' => [],
+ ],
+ 'authenticationType' => [
+ 'title' => '认证类型。'."\n"
+ .' * AK: 包括永久AK、临时AK、STS TOKEN等。'."\n"
+ .' * PRIVATEKEY:一种非对称加密类型的AK。'."\n"
+ .' * BEARERTOKEN:一种身份验证机制,广泛应用于 OAuth 2.0 框架和云服务中。'."\n"
+ .' * CUSTOM_SPI:一种高效且安全的认证方式,适用于云市场中 SaaS 类商品的交付和管理。'."\n"
+ .' * Anonymous:匿名访问。'."\n"
+ .' * DPS:类似于AK,但是签名算法不同于阿里云官方,个别产品专属。',
+ 'description' => '认证类型。'."\n"
+ .' * AK: 包括永久AK、临时AK、STS TOKEN等。'."\n"
+ .' * PRIVATEKEY:一种非对称加密类型的AK。'."\n"
+ .' * BEARERTOKEN:一种身份验证机制,广泛应用于 OAuth 2.0 框架和云服务中。'."\n"
+ .' * CUSTOM_SPI:一种高效且安全的认证方式,适用于云市场中 SaaS 类商品的交付和管理。'."\n"
+ .' * Anonymous:匿名访问。'."\n"
+ .' * DPS:类似于AK,但是签名算法不同于阿里云官方,个别产品专属。',
+ 'type' => 'string',
+ 'example' => 'AK',
+ 'enum' => [],
+ ],
+ ],
+ ],
+ 'parameters' => [
+ 'title' => '请求参数信息。',
+ 'description' => '请求参数信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => [
+ 'title' => '请求参数名。',
+ 'description' => '请求参数名。',
+ 'type' => 'string',
+ 'example' => 'InstanceType'."\n",
+ ],
+ 'value' => [
+ 'title' => '请求参数值。',
+ 'description' => '请求参数值。',
+ 'type' => 'any',
+ 'example' => 'ecs.g6.large'."\n",
+ ],
+ 'required' => [
+ 'title' => '该请求参数是否必填。',
+ 'description' => '该请求参数是否必填。',
+ 'type' => 'boolean',
+ 'example' => 'false'."\n",
+ ],
+ 'type' => [
+ 'title' => '该请求参数类型。',
+ 'description' => '该请求参数类型。',
+ 'type' => 'string',
+ 'example' => 'string'."\n",
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ 'responses' => [
+ 'title' => '对应该请求的返回信息。',
+ 'description' => '对应该请求的返回信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'responseBody' => [
+ 'title' => '返回信息。',
+ 'description' => '返回信息。',
+ 'type' => 'string',
+ 'example' => '-'."\n",
+ ],
+ 'responseBodyFormat' => [
+ 'title' => '响应体类型。'."\n"
+ .'JSON、XML、HTML。',
+ 'description' => '响应体类型。'."\n"
+ .'JSON、XML、HTML。',
+ 'type' => 'string',
+ 'example' => 'JSON'."\n",
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'requestId' => [
+ 'title' => '本次请求ID,与logRequestId非同一个参数。',
+ 'description' => '本次请求ID。',
+ 'type' => 'string',
+ 'example' => ' '."\n"
+ .'9BFC4AC1-6BE4-5405-BDEC-CA288D404812'."\n",
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParam.LogRequestId',
+ 'errorMessage' => 'Please ensure that the request ID you provided originates from a request you made to a certain OpenAPI.',
+ 'description' => '参数logRequestId无效。你请确保您提供的请求ID源自您向某个OpenAPI发出的请求。',
+ ],
+ ],
+ 404 => [
+ [
+ 'errorCode' => 'NotFound.RequestLog',
+ 'errorMessage' => 'The log related to this logRequestId does not exist, has expired, or you do not have permission to view it.',
+ 'description' => '与此logRequestId相关的日志不存在、已过期或您没有查看它的权限。',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"logInfo\\": {\\n \\"basicInfo\\": {\\n \\"api\\": \\"RunInstances\\\\n\\",\\n \\"apiDoc\\": {\\n \\"aliyunSite\\": \\"https://api.aliyun.com/document/Ecs/2014-05-26/RunInstances\\",\\n \\"alibabacloudSite\\": \\"https://api.alibabacloud.com/document/Ecs/2014-05-26/RunInstances\\"\\n },\\n \\"apiVersion\\": \\"2014-05-26\\",\\n \\"product\\": \\"Ecs\\\\n\\",\\n \\"productName\\": {\\n \\"cnName\\": \\"云服务器 ECS\\\\n\\",\\n \\"enName\\": \\"\\\\t\\\\nElastic Compute Service\\\\n\\"\\n },\\n \\"apiStyle\\": \\"rpc\\",\\n \\"logRequestId\\": \\"123E4567-E89B-12D3-A456-426614174000\\",\\n \\"httpStatusCode\\": \\"400\\",\\n \\"errorCode\\": \\"IncorrectStatus.TransitRouter\\\\n\\",\\n \\"errorMessage\\": \\"The resource is not in a valid state for the operation.\\\\n\\",\\n \\"accessDeniedDetail\\": {\\n \\"policyType\\": \\"\\\\t\\\\nAccountLevelIdentityBasedPolicy\\\\n\\",\\n \\"authPrincipalOwnerId\\": \\"1001234561234567\\\\n\\",\\n \\"authPrincipalType\\": \\"SubUser\\\\n\\",\\n \\"authPrincipalDisplayName\\": \\"205618123456123456\\\\n\\",\\n \\"noPermissionType\\": \\"ImplicitDeny\\\\n\\",\\n \\"authAction\\": \\"openapiexplorer:GetRequestLog\\\\n\\",\\n \\"encodedDiagnosticMessage\\": \\"-\\\\n\\"\\n },\\n \\"httpMethod\\": \\"GET\\\\n\\",\\n \\"requestDuration\\": \\"188\\",\\n \\"sdkRequestTime\\": \\"2025-01-21T07:43:06Z\\\\n\\",\\n \\"gatewayProcessTime\\": \\"2025-01-21T07:43:06Z\\\\n\\\\n\\",\\n \\"regionId\\": \\"cn-hangzhou\\\\n\\",\\n \\"endpoint\\": \\"ecs.cn-hangzhou.aliyuncs.com\\\\n\\",\\n \\"throttlingResult\\": \\"FC.PASS\\\\n\\"\\n },\\n \\"callerInfo\\": {\\n \\"callerType\\": \\"sub\\\\n\\",\\n \\"callerIp\\": \\"100.68.xxx.xxx\\\\n\\",\\n \\"masterAccountId\\": \\"1973374733454118\\\\n\\",\\n \\"callerAccountId\\": \\"241009849925897811\\\\n\\",\\n \\"userAgent\\": \\"AlibabaCloud API Workbench\\\\n\\"\\n },\\n \\"authenticationInfo\\": {\\n \\"signatureVersion\\": \\"unknown\\\\n\\",\\n \\"signatureMethod\\": \\"HMAC-SHA256\\",\\n \\"authenticationType\\": \\"AK\\"\\n },\\n \\"parameters\\": [\\n {\\n \\"name\\": \\"InstanceType\\\\n\\",\\n \\"value\\": \\"ecs.g6.large\\\\n\\",\\n \\"required\\": true,\\n \\"type\\": \\"string\\\\n\\"\\n }\\n ],\\n \\"responses\\": {\\n \\"responseBody\\": \\"-\\\\n\\",\\n \\"responseBodyFormat\\": \\"JSON\\\\n\\"\\n }\\n },\\n \\"requestId\\": \\"\\\\t\\\\n9BFC4AC1-6BE4-5405-BDEC-CA288D404812\\\\n\\"\\n}","type":"json"}]',
+ 'title' => '查询当前账号的API调用日志',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [],
+ ],
+ 'GetProductEndpoints' => [
+ 'summary' => '获取产品的接入点信息。',
+ 'path' => '/product/endpoints',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREopenapiexplorerY5UU1D',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'product',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '产品CODE。'."\n"
+ ."\n"
+ .'- 调用GetRequestLog接口,从返回结果中获取产品CODE。'."\n"
+ ."\n"
+ .'- 通过OpenAPI门户的URL,找到对应的产品CODE。例如,<props="china">短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>'."\n"
+ .'<props="intl">短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Ecs',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => '接入点信息。',
+ 'type' => 'object',
+ 'properties' => [],
+ ],
+ ],
+ ],
+ 'errorCodes' => [],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'title' => '获取产品的接入点信息',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [],
+ 'responseDemo' => '[{"errorExample":"","example":"{}","type":"json"}]',
+ ],
+ 'GetRequestLog' => [
+ 'summary' => '通过 API 返回的Request ID查询请求的日志详情,可用于排查故障。',
+ 'description' => '通过 RAM 授权或角色扮演,支持跨 RAM 用户或跨阿里云账号之间查询调用日志。详见授权方式,请参见[跨账号API错误诊断授权](~~2868101~~)。',
+ 'path' => '/getRequestLog',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ 'application/x-www-form-urlencoded',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREopenapiexplorer64CEGV',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'logRequestId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '需要查询日志的requestId。'."\n"
+ .'API 请求的唯一标识符(UUID格式,且必须为大写)。'."\n",
+ 'description' => '需要查询日志的RequestId,'."\n"
+ .'API 请求的唯一标识符(UUID格式,且必须为大写)。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '123E4567-E89B-12D3-A456-426614174000',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'description' => '查询成功',
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'logInfo' => [
+ 'title' => '包含API请求日志的详细信息。',
+ 'description' => '包含API请求日志的详细信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'basicInfo' => [
+ 'title' => '包含API请求的基本信息。',
+ 'description' => '包含API请求的基本信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'api' => [
+ 'title' => '所查日志内的API名称。',
+ 'description' => '所查询请求的API名称。',
+ 'type' => 'string',
+ 'example' => 'RunInstances',
+ ],
+ 'apiDoc' => [
+ 'title' => 'API文档信息。',
+ 'description' => 'API文档信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'aliyunSite' => [
+ 'title' => '中国站文档链接。',
+ 'description' => '中国站文档链接。',
+ 'type' => 'string',
+ 'example' => 'https://api.aliyun.com/document/Ecs/2014-05-26/RunInstances',
+ ],
+ 'alibabacloudSite' => [
+ 'title' => '国际站文档链接。',
+ 'description' => '国际站文档链接。',
+ 'type' => 'string',
+ 'example' => 'https://api.alibabacloud.com/document/Ecs/2014-05-26/RunInstances',
+ ],
+ ],
+ ],
+ 'apiVersion' => [
+ 'title' => 'API版本信息。',
+ 'description' => 'API版本信息。',
+ 'type' => 'string',
+ 'example' => '2014-05-26',
+ ],
+ 'product' => [
+ 'title' => '产品名称。',
+ 'description' => '产品CODE。',
+ 'type' => 'string',
+ 'example' => 'Ecs',
+ ],
+ 'productName' => [
+ 'title' => '产品名称信息,包含中文名和英文名。',
+ 'description' => '产品名称信息,包含中文名和英文名。',
+ 'type' => 'object',
+ 'properties' => [
+ 'cnName' => [
+ 'title' => '产品中文名。',
+ 'description' => '产品中文名。',
+ 'type' => 'string',
+ 'example' => '云服务器 ECS',
+ ],
+ 'enName' => [
+ 'title' => '产品英文名。',
+ 'description' => '产品英文名。',
+ 'type' => 'string',
+ 'example' => 'Elastic Compute Service',
+ ],
+ ],
+ ],
+ 'apiStyle' => [
+ 'title' => 'API风格,可能为ROA或RPC风格类型。',
+ 'description' => 'API风格,可能为ROA或RPC风格类型。',
+ 'type' => 'string',
+ 'example' => 'roa',
+ ],
+ 'logRequestId' => [
+ 'title' => '本次查询日志的requestId,并非本次请求的requestId。',
+ 'description' => '传入的RequestId。',
+ 'type' => 'string',
+ 'example' => '123E4567-E89B-12D3-A456-426614174000',
+ ],
+ 'httpStatusCode' => [
+ 'title' => '所查日志内的Http状态码信息。',
+ 'description' => '所查日志内的HTTP状态码信息。',
+ 'type' => 'string',
+ 'example' => '404',
+ ],
+ 'errorCode' => [
+ 'title' => '所查日志内的错误码。如查询的请求并未报错,该字段为空。',
+ 'description' => '所查日志内的错误码。如查询的请求并未报错,该字段为空。',
+ 'type' => 'string',
+ 'example' => 'IncorrectStatus.TransitRouter',
+ ],
+ 'errorMessage' => [
+ 'title' => '所查日志内的错误消息。如查询的请求并未报错,该字段为空。',
+ 'description' => '所查日志内的错误消息。如查询的请求并未报错,该字段为空。',
+ 'type' => 'string',
+ 'example' => 'The resource is not in a valid state for the operation.',
+ ],
+ 'accessDeniedDetail' => [
+ 'title' => '无权限报错详细信息',
+ 'description' => '无权限报错详细信息。如查询的RequestId存在鉴权报错,则存在该字段,否则不存在该字段。',
+ 'type' => 'object',
+ 'properties' => [
+ 'policyType' => [
+ 'title' => '无权限的策略类型',
+ 'description' => '无权限的策略类型',
+ 'type' => 'string',
+ 'example' => 'AccountLevelIdentityBasedPolicy',
+ ],
+ 'authPrincipalOwnerId' => [
+ 'title' => '当前身份所属的阿里云账号UID信息',
+ 'description' => '当前身份所属的阿里云账号UID信息',
+ 'type' => 'string',
+ 'example' => '1001234561234567',
+ ],
+ 'authPrincipalType' => [
+ 'title' => '操作者的身份类型',
+ 'description' => '操作者的身份类型',
+ 'type' => 'string',
+ 'example' => 'SubUser',
+ ],
+ 'authPrincipalDisplayName' => [
+ 'title' => '身份标识',
+ 'description' => '身份标识',
+ 'type' => 'string',
+ 'example' => '205618123456123456',
+ ],
+ 'noPermissionType' => [
+ 'title' => '无权限原因',
+ 'description' => '无权限原因',
+ 'type' => 'string',
+ 'example' => 'ImplicitDeny',
+ ],
+ 'authAction' => [
+ 'title' => '导致无权限的具体操作',
+ 'description' => '导致无权限的具体操作',
+ 'type' => 'string',
+ 'example' => 'openapiexplorer:GetRequestLog',
+ ],
+ 'encodedDiagnosticMessage' => [
+ 'title' => '用于诊断的编码后信息。可调用 Ram 产品的 DecodeDiagnosticMessage OpenAPI 进一步诊断获得更多诊断信息。',
+ 'description' => '用于诊断的编码后信息。可调用 Ram 产品的 DecodeDiagnosticMessage OpenAPI 进一步诊断获得更多诊断信息。',
+ 'type' => 'string',
+ 'example' => '-',
+ ],
+ ],
+ ],
+ 'httpMethod' => [
+ 'title' => 'Http请求方式。',
+ 'description' => 'HTTP请求方式。'."\n"
+ .'例如 GET PUT POST 等',
+ 'type' => 'string',
+ 'example' => 'GET',
+ ],
+ 'requestDuration' => [
+ 'title' => '网关从收到请求到返回响应的时间。单位毫秒(ms)。',
+ 'description' => '网关从收到请求到返回响应的时间。单位毫秒(ms)。',
+ 'type' => 'string',
+ 'example' => '188',
+ ],
+ 'sdkRequestTime' => [
+ 'title' => 'SDK请求时间。'."\n"
+ .'日期格式按照 ISO8601 表示法,并使用 UTC 时间,格式为 yyyy-MM-ddTHH:mm:ssZ',
+ 'description' => '发起请求时间。'."\n"
+ .'日期格式按照 ISO8601 表示法,并使用 UTC 时间,格式为 yyyy-MM-ddTHH:mm:ssZ',
+ 'type' => 'string',
+ 'example' => '2025-01-21T07:43:06Z',
+ ],
+ 'gatewayProcessTime' => [
+ 'title' => '网关处理时间。'."\n"
+ .'日期格式按照 ISO8601 表示法,并使用 UTC 时间,格式为 yyyy-MM-ddTHH:mm:ssZ',
+ 'description' => '网关接收到请求的时间。'."\n"
+ .'日期格式按照 ISO8601 表示法,并使用 UTC 时间,格式为 yyyy-MM-ddTHH:mm:ssZ',
+ 'type' => 'string',
+ 'example' => '2025-01-21T07:43:06Z',
+ ],
+ 'regionId' => [
+ 'title' => '服务区域ID。',
+ 'description' => '服务区域ID。',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou',
+ ],
+ 'endpoint' => [
+ 'title' => '服务区域对应的服务地址(Endpoint)。',
+ 'description' => '服务区域对应的服务地址(Endpoint)。',
+ 'type' => 'string',
+ 'example' => 'ecs.cn-hangzhou.aliyuncs.com',
+ ],
+ 'throttlingResult' => [
+ 'title' => '流控校验结果。FC.PASS:未被流控检查拦截;FC.DENY:被流控检查拦截。',
+ 'description' => '流控校验结果。FC.PASS:未被流控检查拦截(未产生速率流控);FC.DENY:被流控检查拦截(发生速率流控)。',
+ 'type' => 'string',
+ 'example' => 'FC.PASS',
+ 'enum' => [
+ 'FC.PASS',
+ 'FC.DENY',
+ ],
+ ],
+ ],
+ ],
+ 'callerInfo' => [
+ 'title' => '调用者信息。',
+ 'description' => '调用者信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'callerType' => [
+ 'title' => '调用者类型。'."\n"
+ .'1. customer:云账号;'."\n"
+ .'2. sub:RAM子用户;'."\n"
+ .'3. AssumedRoleUser:STS Token临时身份;',
+ 'description' => '调用者类型。'."\n"
+ .'1. customer:云账号;'."\n"
+ .'2. sub:RAM子用户;'."\n"
+ .'3. AssumedRoleUser:STS Token临时身份;',
+ 'type' => 'string',
+ 'example' => 'sub',
+ 'enum' => [
+ 'customer',
+ 'sub',
+ 'AssumedRoleUser',
+ ],
+ ],
+ 'callerIp' => [
+ 'title' => '调用者的IP地址',
+ 'description' => '调用者的IP地址',
+ 'type' => 'string',
+ 'example' => '100.68.xxx.xxx',
+ ],
+ 'masterAccountId' => [
+ 'title' => '主账号ID',
+ 'description' => '主账号ID',
+ 'type' => 'string',
+ 'example' => '1973374733454118',
+ ],
+ 'callerAccountId' => [
+ 'title' => '调用者账号ID',
+ 'description' => '调用者账号ID',
+ 'type' => 'string',
+ 'example' => '241009849925897811',
+ ],
+ 'userAgent' => [
+ 'title' => '用户代理信息',
+ 'description' => '用户代理信息',
+ 'type' => 'string',
+ 'example' => 'AlibabaCloud API Workbench',
+ ],
+ ],
+ ],
+ 'authenticationInfo' => [
+ 'title' => '认证信息',
+ 'description' => '认证信息',
+ 'type' => 'object',
+ 'properties' => [
+ 'signatureVersion' => [
+ 'title' => '签名版本',
+ 'description' => '签名版本',
+ 'type' => 'string',
+ 'example' => 'unknown',
+ ],
+ 'signatureMethod' => [
+ 'title' => '签名方法。'."\n"
+ .' * HMAC-SHA1: 使用HMAC-SHA1算法进行签名'."\n"
+ .' * HMAC-SHA256: 使用HMAC-SHA256算法进行签名',
+ 'description' => '签名方法。'."\n"
+ .' * HMAC-SHA1: 使用HMAC-SHA1算法进行签名'."\n"
+ .' * HMAC-SHA256: 使用HMAC-SHA256算法进行签名',
+ 'type' => 'string',
+ 'example' => 'HMAC-SHA256',
+ 'enum' => [],
+ ],
+ 'authenticationType' => [
+ 'title' => '认证类型。'."\n"
+ .' * AK: 包括永久AK、临时AK、STS TOKEN等。'."\n"
+ .' * PRIVATEKEY:一种非对称加密类型的AK。'."\n"
+ .' * BEARERTOKEN:一种身份验证机制,广泛应用于 OAuth 2.0 框架和云服务中。'."\n"
+ .' * CUSTOM_SPI:一种高效且安全的认证方式,适用于云市场中 SaaS 类商品的交付和管理。'."\n"
+ .' * Anonymous:匿名访问。'."\n"
+ .' * DPS:类似于AK,但是签名算法不同于阿里云官方,个别产品专属。',
+ 'description' => '认证类型。'."\n"
+ .' * AK: 包括永久AK、临时AK、STS TOKEN等。'."\n"
+ .' * PRIVATEKEY:一种非对称加密类型的AK。'."\n"
+ .' * BEARERTOKEN:一种身份验证机制,广泛应用于 OAuth 2.0 框架和云服务中。'."\n"
+ .' * CUSTOM_SPI:一种高效且安全的认证方式,适用于云市场中 SaaS 类商品的交付和管理。'."\n"
+ .' * Anonymous:匿名访问。'."\n"
+ .' * DPS:类似于AK,但是签名算法不同于阿里云官方,个别产品专属。',
+ 'type' => 'string',
+ 'example' => 'AK',
+ 'enum' => [],
+ ],
+ ],
+ ],
+ 'parameters' => [
+ 'title' => '请求参数信息。',
+ 'description' => '请求参数信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => [
+ 'title' => '请求参数名。',
+ 'description' => '请求参数名。',
+ 'type' => 'string',
+ 'example' => 'InstanceType',
+ ],
+ 'value' => [
+ 'title' => '请求参数值。',
+ 'description' => '请求参数值。',
+ 'type' => 'any',
+ 'example' => 'ecs.g6.large'."\n",
+ ],
+ 'required' => [
+ 'title' => '该请求参数是否必填。',
+ 'description' => '该请求参数是否必填。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'type' => [
+ 'title' => '该请求参数类型。',
+ 'description' => '该请求参数类型。',
+ 'type' => 'string',
+ 'example' => 'string',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ 'responses' => [
+ 'title' => '对应该请求的返回信息。',
+ 'description' => '对应该请求的返回信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'responseBody' => [
+ 'title' => '返回信息。',
+ 'description' => '返回信息。',
+ 'type' => 'string',
+ 'example' => '-',
+ ],
+ 'responseBodyFormat' => [
+ 'title' => '响应体类型。'."\n"
+ .'JSON、XML、HTML。',
+ 'description' => '响应体类型。'."\n"
+ .'JSON、XML、HTML。',
+ 'type' => 'string',
+ 'example' => 'JSON',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'requestId' => [
+ 'title' => '本次请求ID,与logRequestId非同一个参数。',
+ 'description' => '本次请求ID。',
+ 'type' => 'string',
+ 'example' => '9BFC4AC1-6BE4-5405-BDEC-CA288D404812',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParam.LogRequestId',
+ 'errorMessage' => 'Please ensure that the request ID you provided originates from a request you made to a certain OpenAPI.',
+ 'description' => '参数logRequestId无效。你请确保您提供的请求ID源自您向某个OpenAPI发出的请求。',
+ ],
+ ],
+ 404 => [
+ [
+ 'errorCode' => 'NotFound.RequestLog',
+ 'errorMessage' => 'The log related to this logRequestId does not exist, has expired, or you do not have permission to view it.',
+ 'description' => '与此logRequestId相关的日志不存在、已过期或您没有查看它的权限。',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"logInfo\\": {\\n \\"basicInfo\\": {\\n \\"api\\": \\"RunInstances\\",\\n \\"apiDoc\\": {\\n \\"aliyunSite\\": \\"https://api.aliyun.com/document/Ecs/2014-05-26/RunInstances\\",\\n \\"alibabacloudSite\\": \\"https://api.alibabacloud.com/document/Ecs/2014-05-26/RunInstances\\"\\n },\\n \\"apiVersion\\": \\"2014-05-26\\",\\n \\"product\\": \\"Ecs\\",\\n \\"productName\\": {\\n \\"cnName\\": \\"云服务器 ECS\\",\\n \\"enName\\": \\"Elastic Compute Service\\"\\n },\\n \\"apiStyle\\": \\"roa\\",\\n \\"logRequestId\\": \\"123E4567-E89B-12D3-A456-426614174000\\",\\n \\"httpStatusCode\\": \\"404\\",\\n \\"errorCode\\": \\"IncorrectStatus.TransitRouter\\",\\n \\"errorMessage\\": \\"The resource is not in a valid state for the operation.\\",\\n \\"accessDeniedDetail\\": {\\n \\"policyType\\": \\"AccountLevelIdentityBasedPolicy\\",\\n \\"authPrincipalOwnerId\\": \\"1001234561234567\\",\\n \\"authPrincipalType\\": \\"SubUser\\",\\n \\"authPrincipalDisplayName\\": \\"205618123456123456\\",\\n \\"noPermissionType\\": \\"ImplicitDeny\\",\\n \\"authAction\\": \\"openapiexplorer:GetRequestLog\\",\\n \\"encodedDiagnosticMessage\\": \\"-\\"\\n },\\n \\"httpMethod\\": \\"GET\\",\\n \\"requestDuration\\": \\"188\\",\\n \\"sdkRequestTime\\": \\"2025-01-21T07:43:06Z\\",\\n \\"gatewayProcessTime\\": \\"2025-01-21T07:43:06Z\\",\\n \\"regionId\\": \\"cn-hangzhou\\",\\n \\"endpoint\\": \\"ecs.cn-hangzhou.aliyuncs.com\\",\\n \\"throttlingResult\\": \\"FC.PASS\\"\\n },\\n \\"callerInfo\\": {\\n \\"callerType\\": \\"sub\\",\\n \\"callerIp\\": \\"100.68.xxx.xxx\\",\\n \\"masterAccountId\\": \\"1973374733454118\\",\\n \\"callerAccountId\\": \\"241009849925897811\\",\\n \\"userAgent\\": \\"AlibabaCloud API Workbench\\"\\n },\\n \\"authenticationInfo\\": {\\n \\"signatureVersion\\": \\"unknown\\",\\n \\"signatureMethod\\": \\"HMAC-SHA256\\",\\n \\"authenticationType\\": \\"AK\\"\\n },\\n \\"parameters\\": [\\n {\\n \\"name\\": \\"InstanceType\\",\\n \\"value\\": \\"ecs.g6.large\\\\n\\",\\n \\"required\\": false,\\n \\"type\\": \\"string\\"\\n }\\n ],\\n \\"responses\\": {\\n \\"responseBody\\": \\"-\\",\\n \\"responseBodyFormat\\": \\"JSON\\"\\n }\\n },\\n \\"requestId\\": \\"9BFC4AC1-6BE4-5405-BDEC-CA288D404812\\"\\n}","type":"json"}]',
+ 'title' => '查询API调用日志',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'openapiexplorer:GetRequestLog',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ [
+ 'validationType' => 'always',
+ 'product' => 'OpenAPIExplorer',
+ 'resourceType' => '全部资源',
+ 'arn' => '*',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'ListApiDefinitions' => [
+ 'summary' => '获取产品的开放元数据。',
+ 'path' => '/api/definitions',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREopenapiexplorerY5UU1D',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'product',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '产品CODE。'."\n"
+ ."\n"
+ .'- 调用GetRequestLog接口,从返回结果中获取产品CODE。'."\n"
+ ."\n"
+ .'- 通过OpenAPI门户的URL,找到对应的产品CODE。例如,<props="china">短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>'."\n"
+ .'<props="intl">短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Ecs',
+ ],
+ ],
+ [
+ 'name' => 'apiVersion',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'API的版本。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2014-05-26',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => '开放元数据信息。',
+ 'type' => 'object',
+ 'properties' => [],
+ ],
+ ],
+ ],
+ 'errorCodes' => [],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'title' => '获取产品的开放元数据',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [],
+ 'responseDemo' => '[{"errorExample":"","example":"{}","type":"json"}]',
+ ],
+ 'ListApiMcpServerSystemTools' => [
+ 'summary' => '查询 MCP 服务支持的系统工具。',
+ 'path' => '/mcpSystemTools',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREopenapiexplorer7MPML0',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'maxResults',
+ 'in' => 'query',
+ 'allowEmptyValue' => true,
+ 'schema' => [
+ 'description' => '分页查询时每页的最大条目数。最大值为 100。默认值为 20。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'minimum' => '0',
+ 'example' => '20',
+ 'default' => '20',
+ ],
+ ],
+ [
+ 'name' => 'skip',
+ 'in' => 'query',
+ 'allowEmptyValue' => true,
+ 'schema' => [
+ 'description' => '跳过的数据数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'minimum' => '0',
+ 'example' => '5',
+ 'default' => '0',
+ ],
+ ],
+ [
+ 'name' => 'nextToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '下一个查询开始 Token,取值为上一次 API 调用返回的 NextToken 参数值。'."\n"
+ ."\n"
+ .'> 第一次查询不需要提供本参数,如果一次查询没有返回全部结果,则可在后续查询中传入前一次返回的 NextToken 值以继续查询。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'AAAAAZjtYxxxxxxxx',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => '请求结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '9BFC4AC1-6BE4-5405-BDEC-CA288D404812',
+ ],
+ 'nextToken' => [
+ 'description' => '返回的 NextToken,用来返回更多结果。'."\n"
+ .'> 如果这个值没有返回,则说明没有更多结果。',
+ 'type' => 'string',
+ 'example' => 'AAAAAZjtYxxxxxxxx',
+ ],
+ 'maxResults' => [
+ 'description' => '分页查询时每页的最大条目数。最大值为 100。默认值为 20。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '20',
+ ],
+ 'totalCount' => [
+ 'description' => '数据总记录数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '22',
+ ],
+ 'systemTools' => [
+ 'description' => '系统工具列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '系统工具。',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => [
+ 'description' => '系统工具名称',
+ 'type' => 'string',
+ 'example' => 'mcp-system',
+ ],
+ 'description' => [
+ 'description' => '系统工具的描述信息。',
+ 'type' => 'string',
+ 'example' => 'system tool description',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParam.NextToken',
+ 'errorMessage' => 'The specified NextToken is not valid.',
+ 'description' => '指定的nextToken无效。',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalServerError',
+ 'errorMessage' => 'The request has failed due to a temporary failure of the server.',
+ 'description' => '由于服务器暂时故障,请求失败。',
+ ],
+ ],
+ ],
+ 'title' => '查询 MCP 服务支持的系统工具',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'openapiexplorer:ListApiMcpServerSystemTools',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ [
+ 'validationType' => 'always',
+ 'product' => 'OpenAPIExplorer',
+ 'resourceType' => '全部资源',
+ 'arn' => '*',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"9BFC4AC1-6BE4-5405-BDEC-CA288D404812\\",\\n \\"nextToken\\": \\"AAAAAZjtYxxxxxxxx\\",\\n \\"maxResults\\": 20,\\n \\"totalCount\\": 22,\\n \\"systemTools\\": [\\n {\\n \\"name\\": \\"mcp-system\\",\\n \\"description\\": \\"system tool description\\"\\n }\\n ]\\n}","type":"json"}]',
+ ],
+ 'ListApiMcpServers' => [
+ 'summary' => '查询父账号下所有API MCP服务器的列表。',
+ 'path' => '/apimcpservers',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREopenapiexplorer7MPML0',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'id',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'API MCP 服务的 ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'v6ZZ7ftCzEILW***',
+ ],
+ ],
+ [
+ 'name' => 'nextToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '下一个查询开始 Token,取值为上一次 API 调用返回的 NextToken 参数值。'."\n"
+ ."\n"
+ .'> 第一次查询不需要提供本参数,如果一次查询没有返回全部结果,则可在后续查询中传入前一次返回的 NextToken 值以继续查询。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'AAAAAZjtYxxxxxxxx',
+ ],
+ ],
+ [
+ 'name' => 'maxResults',
+ 'in' => 'query',
+ 'allowEmptyValue' => true,
+ 'schema' => [
+ 'description' => '分页查询时每页的最大条目数。最大值为 100。默认值为 20。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'minimum' => '0',
+ 'exclusiveMinimum' => true,
+ 'example' => '10',
+ 'default' => '20',
+ ],
+ ],
+ [
+ 'name' => 'skip',
+ 'in' => 'query',
+ 'allowEmptyValue' => true,
+ 'schema' => [
+ 'description' => '跳过的数据数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'minimum' => '0',
+ 'example' => '5',
+ 'default' => '0',
+ ],
+ ],
+ [
+ 'name' => 'description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'API MCP 服务的描述信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '这是一个API MCP服务器。',
+ ],
+ ],
+ [
+ 'name' => 'language',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'API MCP服务的文档语言。支持选择中文或英文API文档,不同的语言提示词对AI的回复效果可能产生差异。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ZH_CN',
+ 'enum' => [
+ 'EN_US',
+ 'ZH_CN',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'createTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'API MCP服务器的创建时间。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2024-10-30T02:10:13Z',
+ ],
+ ],
+ [
+ 'name' => 'updateTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'API MCP服务器的更新时间。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2024-06-05T02:27:39Z',
+ ],
+ ],
+ [
+ 'name' => 'sourceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'API MCP 服务类型。'."\n"
+ ."\n"
+ .'- custom 自定义服务'."\n"
+ ."\n"
+ .'- system 系统服务',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'system',
+ ],
+ ],
+ [
+ 'name' => 'keyword',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '搜索关键词,支持API名称模糊搜索或API ID精确搜索。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'oss',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => '请求结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => ' '."\n"
+ .'9BFC4AC1-6BE4-5405-BDEC-CA288D404812'."\n",
+ ],
+ 'nextToken' => [
+ 'description' => '分页游标。'."\n"
+ .'> 不为空表示有更多数据。',
+ 'type' => 'string',
+ 'example' => 'AAAAAZjtYxxxxxxxx',
+ ],
+ 'totalCount' => [
+ 'description' => '总数据条数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'maxResults' => [
+ 'description' => '每页最大条目数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '30',
+ ],
+ 'apiMcpServers' => [
+ 'description' => '查询的API MCP服务器结果列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'API MCP服务信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'id' => [
+ 'description' => 'API MCP 服务 ID。',
+ 'type' => 'string',
+ 'example' => 'v6ZZ7ftCzEILW***',
+ ],
+ 'description' => [
+ 'description' => 'API MCP服务器的描述。',
+ 'type' => 'string',
+ 'example' => '这是一个API MCP服务器。',
+ ],
+ 'apis' => [
+ 'description' => 'API信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'API信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'product' => [
+ 'description' => '产品CODE。'."\n"
+ ."\n"
+ .'- 调用GetRequestLog接口,从返回结果中获取产品CODE。'."\n"
+ ."\n"
+ .'- 通过OpenAPI门户的URL,找到对应的产品CODE。例如,<props="china">短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>'."\n"
+ .'<props="intl">短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>',
+ 'type' => 'string',
+ 'example' => 'Ecs',
+ ],
+ 'apiVersion' => [
+ 'description' => '透出到 MCP SERVER 的 API 所属的 POP version。',
+ 'type' => 'string',
+ 'example' => '2014-05-26',
+ ],
+ 'selectors' => [
+ 'description' => 'API名称匹配规则列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'API名称匹配规则。',
+ 'type' => 'string',
+ 'example' => '*Bucket',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'additionalApiDescriptions' => [
+ 'description' => '补充的API描述信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '补充的API描述信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'product' => [
+ 'description' => '产品CODE。'."\n"
+ ."\n"
+ .'- 调用GetRequestLog接口,从返回结果中获取产品CODE。'."\n"
+ ."\n"
+ .'- 通过OpenAPI门户的URL,找到对应的产品CODE。例如,<props="china">短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>'."\n"
+ .'<props="intl">短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>',
+ 'type' => 'string',
+ 'example' => 'Ecs',
+ ],
+ 'apiVersion' => [
+ 'description' => '透出到 MCP SERVER 的 API 所属的 POP version。',
+ 'type' => 'string',
+ 'example' => '2014-05-26',
+ ],
+ 'apiName' => [
+ 'description' => 'API名称。',
+ 'type' => 'string',
+ 'example' => 'DescribeRegions',
+ ],
+ 'apiOverrideJson' => [
+ 'description' => 'API元数据JSON 格式,参考格式 https://api.aliyun.com/meta/v1/products/Ecs/versions/2014-05-26/apis/DescribeInstances/api.json,支持覆盖其中的summary、parameters。',
+ 'type' => 'string',
+ 'example' => '{'."\n"
+ .' "summary": "本接口支持根据不同请求条件查询实例列表,并关联查询实例的详细信息。"'."\n"
+ .'}',
+ ],
+ 'executeCliCommand' => [
+ 'description' => '是否返回CLI的执行命令,这个模式下,不真实执行API调用,返回对应的CLI命令,适用于长耗时的任务,需要搭配使用阿里云CLI执行。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'enableOutputSchema' => [
+ 'description' => '是否返回出参的schema,返回出参schema时会增加整个API MCP SERVER的体积。默认值为 null,表示不返回出参的schema。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'constParameters' => [
+ 'description' => '常量入参列表,在API参数解析时,不再输出这部分参数。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '常量入参。',
+ 'type' => 'object',
+ 'properties' => [
+ 'key' => [
+ 'description' => '参数名称。仅支持一级参数名称,对于ROA风格的API,支持设置到body.xx,不允许设置超出顶级参数的值。',
+ 'type' => 'string',
+ 'example' => 'InstanceId',
+ ],
+ 'value' => [
+ 'description' => '参数的值。',
+ 'type' => 'any',
+ 'example' => '1234',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'createTime' => [
+ 'description' => 'API MCP服务器的创建时间。',
+ 'type' => 'string',
+ 'example' => '2024-12-10T03:20:21Z',
+ ],
+ 'updateTime' => [
+ 'description' => 'API MCP服务器的更新时间。',
+ 'type' => 'string',
+ 'example' => '2025-01-10T02:11:43Z',
+ ],
+ 'prompts' => [
+ 'description' => 'prompt配置列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'prompt配置',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => [
+ 'description' => 'prompt名称。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'description' => [
+ 'description' => 'prompt描述信息。',
+ 'type' => 'string',
+ 'example' => 'prompt description',
+ ],
+ 'content' => [
+ 'description' => 'prompt 的内容信息,其变量通过 {{xxx}} 格式指定。xxx为变量,需要从 arguments 参数中定义。',
+ 'type' => 'string',
+ 'example' => 'prompt正文,{{name}}',
+ ],
+ 'arguments' => [
+ 'description' => 'prompt支持的参数列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'prompt支持的参数。',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => [
+ 'description' => '参数名称。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'description' => [
+ 'description' => '参数的描述信息。',
+ 'type' => 'string',
+ 'example' => 'argument description',
+ ],
+ 'required' => [
+ 'description' => '该参数是否必填。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'language' => [
+ 'description' => 'API MCP服务的文档语言。支持选择中文或英文API文档,不同的语言提示词对AI的回复效果可能产生差异。',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'EN_US' => 'EN_US',
+ 'ZH_CN' => 'ZH_CN',
+ ],
+ 'example' => 'ZH_CN',
+ ],
+ 'urls' => [
+ 'description' => 'API MCP 服务连接信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'sse' => [
+ 'description' => 'SSE 协议连接信息。',
+ 'type' => 'string',
+ 'example' => 'https://openapi-mcp.cn-hangzhou.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/sse',
+ ],
+ 'mcp' => [
+ 'description' => 'streamable HTTP 协议连接信息,推荐使用。',
+ 'type' => 'string',
+ 'example' => 'https://openapi-mcp.cn-hangzhou.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/mcp',
+ ],
+ 'vpcSse' => [
+ 'description' => 'VPC 下 SSE 协议连接地址。',
+ 'type' => 'string',
+ 'example' => 'https://openapi-mcp-cn.vpc-proxy.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/sse',
+ ],
+ 'vpcMcp' => [
+ 'description' => 'VPC 下 streamable HTTP 协议连接地址。',
+ 'type' => 'string',
+ 'example' => 'https://openapi-mcp-cn.vpc-proxy.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/mcp',
+ ],
+ ],
+ ],
+ 'systemTools' => [
+ 'description' => '系统工具列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '系统工具名称。',
+ 'type' => 'string',
+ 'example' => 'FetchRamActionDetails',
+ ],
+ ],
+ 'name' => [
+ 'description' => 'MCP SERVER 名称信息,由 a-z0-9 组成,3-64 位,不以数字开头,同主账号下必须唯一。',
+ 'type' => 'string',
+ 'example' => 'mcp-demo',
+ ],
+ 'sourceType' => [
+ 'description' => 'API MCP 服务类型。'."\n"
+ ."\n"
+ .'- custom 自定义服务'."\n"
+ ."\n"
+ .'- system 系统服务',
+ 'type' => 'string',
+ 'example' => 'system',
+ ],
+ 'systemMcpServerInfo' => [
+ 'description' => '系统 MCP 服务列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'product' => [
+ 'description' => '产品CODE。'."\n"
+ ."\n"
+ .'- 调用GetRequestLog接口,从返回结果中获取产品CODE。'."\n"
+ ."\n"
+ .'- 通过OpenAPI门户的URL,找到对应的产品CODE。例如,<props="china">短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>'."\n"
+ .'<props="intl">短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>',
+ 'type' => 'string',
+ 'example' => 'Ecs',
+ ],
+ 'name' => [
+ 'description' => '系统 MCP 服务名称。',
+ 'type' => 'string',
+ 'example' => 'mcp-system',
+ ],
+ ],
+ ],
+ 'oauthClientId' => [
+ 'description' => '选择自定义OAuth配置时的自定义OAuth Client ID。'."\n"
+ ."\n"
+ .'`仅支持 Web/Native 应用,且 OAuth 范围必须包含 /acs/mcp-server`',
+ 'type' => 'string',
+ 'example' => '403*************370',
+ ],
+ 'instructions' => [
+ 'description' => 'MCP 指令,用于提示大模型如何使用该 MCP,需要客户端支持 MCP 标准协议的 Instructions 字段。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'enableAssumeRole' => [
+ 'description' => '是否开启多账号访问。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'assumeRoleName' => [
+ 'description' => '开启多账号访问进行跨账号操作时,扮演的目标账号 RAM角色名称。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'assumeRoleExtraPolicy' => [
+ 'description' => '开启多账号访问时,角色扮演额外的策略,该策略存在时,角色扮演的权限以当前值为准,覆盖角色本身的权限定义。',
+ 'type' => 'string',
+ 'example' => '{'."\n"
+ .' "Version": "1",'."\n"
+ .' "Statement": ['."\n"
+ .' {'."\n"
+ .' "Effect": "Allow",'."\n"
+ .' "Action": ['."\n"
+ .' "ecs:Describe*",'."\n"
+ .' "vpc:Describe*",'."\n"
+ .' "vpc:List*"'."\n"
+ .' ],'."\n"
+ .' "Resource": "*"'."\n"
+ .' }'."\n"
+ .' ]'."\n"
+ .'}',
+ ],
+ 'terraformTools' => [
+ 'description' => 'Terraform Tool 列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'Terraform Tool 。',
+ 'type' => 'object',
+ 'properties' => [
+ 'code' => [
+ 'description' => 'Terraform Tool 代码。[HCL 语言概述](https://help.aliyun.com/zh/terraform/terraform-configuration-and-hcl-language-overview)',
+ 'type' => 'string',
+ 'example' => 'variable "name" {'."\n"
+ .' default = "terraform-example"'."\n"
+ .'}'."\n"
+ ."\n"
+ .'provider "alicloud" {'."\n"
+ .' region = "cn-beijing"'."\n"
+ .'}'."\n"
+ ."\n"
+ .'resource "alicloud_vpc" "default" {'."\n"
+ .' ipv6_isp = "BGP"'."\n"
+ .' description = "test"'."\n"
+ .' cidr_block = "10.0.0.0/8"'."\n"
+ .' vpc_name = var.name'."\n"
+ .' enable_ipv6 = true'."\n"
+ .'}',
+ ],
+ 'name' => [
+ 'description' => 'Terraform Tool 名称。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'description' => [
+ 'description' => 'Terraform Tool 描述信息。',
+ 'type' => 'string',
+ 'example' => 'Terraform Tool description',
+ ],
+ 'async' => [
+ 'description' => '是否为异步执行,即发起一个任务执行之后会立即处理下一个任务,而不等待每个资源操作完成。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'destroyPolicy' => [
+ 'description' => '删除策略,任务执行完成后,系统根据任务执行状态对临时资源采取以下清理策略。'."\n"
+ ."\n"
+ .'- NEVER 不删除:无论任务执行成功或失败,均不删除所有创建的资源'."\n"
+ .'- ALWAYS 总是删除:无论任务执行成功或失败,执行完成立即销毁所有相关资源'."\n"
+ .'- ON_FAILURE 失败时删除:仅当任务执行失败时,删除相关资源;当任务执行成功时,则保留这些资源',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'ON_FAILURE' => 'ON_FAILURE',
+ 'NEVER' => 'NEVER',
+ 'ALWAYS' => 'ALWAYS',
+ ],
+ 'example' => 'ON_FAILURE',
+ ],
+ ],
+ ],
+ ],
+ 'publicAccess' => [
+ 'description' => '是否开启公网。',
+ 'type' => 'string',
+ 'example' => 'on',
+ 'enum' => [
+ 'on',
+ 'off',
+ 'follow',
+ ],
+ ],
+ 'enableCustomVpcWhitelist' => [
+ 'description' => '是否开启自定义VPC白名单,不开启则跟随账户级别的配置。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'vpcWhitelists' => [
+ 'description' => '关闭公网访问后,限定来源的VPC白名单,不设置或为空表示不限制来源。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '每一个限定的VPC白名单,值为来源VPC ID。',
+ 'type' => 'string',
+ 'example' => 'vpc-j6cgd2if5lg**0xs6m5se',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParam.NextToken',
+ 'errorMessage' => 'The specified NextToken is not valid.',
+ 'description' => '指定的nextToken无效。',
+ ],
+ [
+ 'errorCode' => 'NextTokenParameterMismatch',
+ 'errorMessage' => 'The request uses the same nextToken as the previous request, but with different parameters. NextTokens should not be reused across non-identical requests. Each unique request must have a distinct nextToken.',
+ 'description' => '请求使用了与之前请求相同的nextToken,但参数不同。请勿在参数不同的请求中重复使用同一nextToken,每个独立请求必须使用唯一的nextToken。 ',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalServerError',
+ 'errorMessage' => 'The request has failed due to a temporary failure of the server.',
+ 'description' => '由于服务器暂时故障,请求失败。',
+ ],
+ ],
+ ],
+ 'title' => '查询API MCP 服务列表',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'openapiexplorer:ListApiMcpServers',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ [
+ 'validationType' => 'always',
+ 'product' => 'OpenAPIExplorer',
+ 'resourceType' => 'ApiMcpServer',
+ 'arn' => 'acs:openapiexplorer::{#accountId}:apimcpserver/*',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"\\\\t\\\\n9BFC4AC1-6BE4-5405-BDEC-CA288D404812\\\\n\\",\\n \\"nextToken\\": \\"AAAAAZjtYxxxxxxxx\\",\\n \\"totalCount\\": 5,\\n \\"maxResults\\": 30,\\n \\"apiMcpServers\\": [\\n {\\n \\"id\\": \\"v6ZZ7ftCzEILW***\\",\\n \\"description\\": \\"这是一个API MCP服务器。\\",\\n \\"apis\\": [\\n {\\n \\"product\\": \\"Ecs\\",\\n \\"apiVersion\\": \\"2014-05-26\\",\\n \\"selectors\\": [\\n \\"*Bucket\\"\\n ]\\n }\\n ],\\n \\"additionalApiDescriptions\\": [\\n {\\n \\"product\\": \\"Ecs\\",\\n \\"apiVersion\\": \\"2014-05-26\\",\\n \\"apiName\\": \\"DescribeRegions\\",\\n \\"apiOverrideJson\\": \\"{\\\\n \\\\\\"summary\\\\\\": \\\\\\"本接口支持根据不同请求条件查询实例列表,并关联查询实例的详细信息。\\\\\\"\\\\n}\\",\\n \\"executeCliCommand\\": true,\\n \\"enableOutputSchema\\": true,\\n \\"constParameters\\": [\\n {\\n \\"key\\": \\"InstanceId\\",\\n \\"value\\": \\"1234\\"\\n }\\n ]\\n }\\n ],\\n \\"createTime\\": \\"2024-12-10T03:20:21Z\\",\\n \\"updateTime\\": \\"2025-01-10T02:11:43Z\\",\\n \\"prompts\\": [\\n {\\n \\"name\\": \\"test\\",\\n \\"description\\": \\"prompt description\\",\\n \\"content\\": \\"prompt正文,{{name}}\\",\\n \\"arguments\\": [\\n {\\n \\"name\\": \\"test\\",\\n \\"description\\": \\"argument description\\",\\n \\"required\\": true\\n }\\n ]\\n }\\n ],\\n \\"language\\": \\"ZH_CN\\",\\n \\"urls\\": {\\n \\"sse\\": \\"https://openapi-mcp.cn-hangzhou.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/sse\\",\\n \\"mcp\\": \\"https://openapi-mcp.cn-hangzhou.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/mcp\\",\\n \\"vpcSse\\": \\"https://openapi-mcp-cn.vpc-proxy.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/sse\\",\\n \\"vpcMcp\\": \\"https://openapi-mcp-cn.vpc-proxy.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/mcp\\"\\n },\\n \\"systemTools\\": [\\n \\"FetchRamActionDetails\\"\\n ],\\n \\"name\\": \\"mcp-demo\\",\\n \\"sourceType\\": \\"system\\",\\n \\"systemMcpServerInfo\\": {\\n \\"product\\": \\"Ecs\\",\\n \\"name\\": \\"mcp-system\\"\\n },\\n \\"oauthClientId\\": \\"403*************370\\",\\n \\"instructions\\": \\"test\\",\\n \\"enableAssumeRole\\": true,\\n \\"assumeRoleName\\": \\"test\\",\\n \\"assumeRoleExtraPolicy\\": \\"{\\\\n \\\\\\"Version\\\\\\": \\\\\\"1\\\\\\",\\\\n \\\\\\"Statement\\\\\\": [\\\\n {\\\\n \\\\\\"Effect\\\\\\": \\\\\\"Allow\\\\\\",\\\\n \\\\\\"Action\\\\\\": [\\\\n \\\\\\"ecs:Describe*\\\\\\",\\\\n \\\\\\"vpc:Describe*\\\\\\",\\\\n \\\\\\"vpc:List*\\\\\\"\\\\n ],\\\\n \\\\\\"Resource\\\\\\": \\\\\\"*\\\\\\"\\\\n }\\\\n ]\\\\n}\\",\\n \\"terraformTools\\": [\\n {\\n \\"code\\": \\"variable \\\\\\"name\\\\\\" {\\\\n default = \\\\\\"terraform-example\\\\\\"\\\\n}\\\\n\\\\nprovider \\\\\\"alicloud\\\\\\" {\\\\n region = \\\\\\"cn-beijing\\\\\\"\\\\n}\\\\n\\\\nresource \\\\\\"alicloud_vpc\\\\\\" \\\\\\"default\\\\\\" {\\\\n ipv6_isp = \\\\\\"BGP\\\\\\"\\\\n description = \\\\\\"test\\\\\\"\\\\n cidr_block = \\\\\\"10.0.0.0/8\\\\\\"\\\\n vpc_name = var.name\\\\n enable_ipv6 = true\\\\n}\\",\\n \\"name\\": \\"test\\",\\n \\"description\\": \\"Terraform Tool description\\",\\n \\"async\\": true,\\n \\"destroyPolicy\\": \\"ON_FAILURE\\"\\n }\\n ],\\n \\"publicAccess\\": \\"on\\",\\n \\"enableCustomVpcWhitelist\\": true,\\n \\"vpcWhitelists\\": [\\n \\"vpc-j6cgd2if5lg**0xs6m5se\\"\\n ]\\n }\\n ]\\n}","type":"json"}]',
+ ],
+ 'UpdateApiMcpServer' => [
+ 'summary' => '修改API MCP服务。',
+ 'path' => '/apimcpserver',
+ 'methods' => [
+ 'patch',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREopenapiexplorer7MPML0',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'clientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken 只支持 ASCII 字符,且不能超过 64 个字符,建议使用UUID。过期时间为3天。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-426655440000',
+ ],
+ ],
+ [
+ 'name' => 'id',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'API MCP 服务的 ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'v6ZZ7ftCzEILW***',
+ ],
+ ],
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '请求body。',
+ 'type' => 'object',
+ 'properties' => [
+ 'description' => [
+ 'description' => 'API MCP服务器描述信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '这是一个API MCP服务器。',
+ ],
+ 'apis' => [
+ 'description' => '修改的API列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'API信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'product' => [
+ 'description' => '产品CODE。'."\n"
+ ."\n"
+ .'- 调用GetRequestLog接口,从返回结果中获取产品CODE。'."\n"
+ ."\n"
+ .'- 通过OpenAPI门户的URL,找到对应的产品CODE。例如,<props="china">短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>'."\n"
+ .'<props="intl">短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Ecs',
+ ],
+ 'apiVersion' => [
+ 'description' => '透出到 MCP SERVER 的 API 所属的 POP version。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2014-05-26',
+ ],
+ 'selectors' => [
+ 'description' => 'API名称匹配规则列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'API名称匹配规则。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '*Bucket',
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ 'additionalApiDescriptions' => [
+ 'description' => '补充的API描述信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '补充API的描述信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'product' => [
+ 'description' => '产品CODE。'."\n"
+ ."\n"
+ .'- 调用GetRequestLog接口,从返回结果中获取产品CODE。'."\n"
+ ."\n"
+ .'- 通过OpenAPI门户的URL,找到对应的产品CODE。例如,<props="china">短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>'."\n"
+ .'<props="intl">短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。</props>',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Ecs',
+ ],
+ 'apiVersion' => [
+ 'description' => '透出到 MCP SERVER 的 API 所属的 POP version。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2014-05-26',
+ ],
+ 'apiName' => [
+ 'description' => 'API名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'DescribeRegions',
+ ],
+ 'apiOverrideJson' => [
+ 'description' => 'API元数据JSON 格式,参考格式 https://api.aliyun.com/meta/v1/products/Ecs/versions/2014-05-26/apis/DescribeInstances/api.json,支持覆盖其中的summary、parameters。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{'."\n"
+ .' "summary": "本接口支持根据不同请求条件查询实例列表,并关联查询实例的详细信息。"'."\n"
+ .'}'."\n",
+ ],
+ 'executeCliCommand' => [
+ 'description' => '是否返回CLI的执行命令,这个模式下,不真实执行API调用,返回对应的CLI命令,适用于长耗时的任务,需要搭配使用阿里云CLI执行。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ 'enableOutputSchema' => [
+ 'description' => '是否返回出参的schema,返回出参schema时会增加整个API MCP SERVER的体积。默认值为 null,表示不返回出参的schema。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ 'constParameters' => [
+ 'description' => '常量入参列表,在API参数解析时,不再输出这部分参数。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '常量入参。',
+ 'type' => 'object',
+ 'properties' => [
+ 'key' => [
+ 'description' => '参数名称。仅支持一级参数名称,对于ROA风格的API,支持设置到body.xx,不允许设置超出顶级参数的值。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'InstanceId',
+ ],
+ 'value' => [
+ 'description' => '参数的值。',
+ 'type' => 'any',
+ 'required' => false,
+ 'example' => '1234',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ 'prompts' => [
+ 'description' => 'prompt配置列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'prompt配置。',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => [
+ 'description' => 'prompt名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ ],
+ 'description' => [
+ 'description' => '描述信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'prompt description',
+ ],
+ 'content' => [
+ 'description' => 'prompt 的内容信息,其变量通过 {{xxx}} 格式指定。xxx为变量,需要从 arguments 参数中定义。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'prompt正文,{{name}}',
+ ],
+ 'arguments' => [
+ 'description' => 'prompt支持的参数列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'prompt支持的参数。',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => [
+ 'description' => '参数名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ ],
+ 'description' => [
+ 'description' => '参数的描述信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'argument description',
+ ],
+ 'required' => [
+ 'description' => '该参数是否必填。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ 'language' => [
+ 'description' => 'API MCP服务的文档语言。支持选择中文或英文API文档,不同的语言提示词对AI的回复效果可能产生差异。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ZH_CN',
+ 'enum' => [
+ 'EN_US',
+ 'ZH_CN',
+ ],
+ ],
+ 'systemTools' => [
+ 'description' => '系统工具列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '系统工具名称',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'FetchRamActionDetails',
+ ],
+ 'required' => false,
+ ],
+ 'oauthClientId' => [
+ 'description' => '选择自定义OAuth配置时的自定义OAuth Client ID。'."\n"
+ ."\n"
+ .'`仅支持 Web/Native 应用,且 OAuth 范围必须包含 /acs/mcp-server`',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '403*************370',
+ ],
+ 'instructions' => [
+ 'description' => 'MCP 指令,用于提示大模型如何使用该 MCP,需要客户端支持 MCP 标准协议的 Instructions 字段。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ ],
+ 'enableAssumeRole' => [
+ 'description' => '是否开启多账号访问。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ 'assumeRoleName' => [
+ 'description' => '开启多账号访问进行跨账号操作时,扮演的目标账号 RAM角色名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ ],
+ 'assumeRoleExtraPolicy' => [
+ 'description' => '开启多账号访问时,角色扮演额外的策略,该策略存在时,角色扮演的权限以当前值为准,覆盖角色本身的权限定义。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{'."\n"
+ .' "Version": "1",'."\n"
+ .' "Statement": ['."\n"
+ .' {'."\n"
+ .' "Effect": "Allow",'."\n"
+ .' "Action": ['."\n"
+ .' "ecs:Describe*",'."\n"
+ .' "vpc:Describe*",'."\n"
+ .' "vpc:List*"'."\n"
+ .' ],'."\n"
+ .' "Resource": "*"'."\n"
+ .' }'."\n"
+ .' ]'."\n"
+ .'}',
+ ],
+ 'publicAccess' => [
+ 'description' => '是否开启公网。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'on',
+ 'enum' => [
+ 'on',
+ 'off',
+ 'follow',
+ ],
+ ],
+ 'enableCustomVpcWhitelist' => [
+ 'description' => '是否开启自定义VPC白名单,不开启则跟随账户级别的配置。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ 'terraformTools' => [
+ 'description' => 'Terraform Tool 列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'Terraform Tool。',
+ 'type' => 'object',
+ 'properties' => [
+ 'code' => [
+ 'description' => 'Terraform Tool 代码。[HCL 语言概述](https://help.aliyun.com/zh/terraform/terraform-configuration-and-hcl-language-overview)',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'variable "name" {'."\n"
+ .' default = "terraform-example"'."\n"
+ .'}'."\n"
+ ."\n"
+ .'provider "alicloud" {'."\n"
+ .' region = "cn-beijing"'."\n"
+ .'}'."\n"
+ ."\n"
+ .'resource "alicloud_vpc" "default" {'."\n"
+ .' ipv6_isp = "BGP"'."\n"
+ .' description = "test"'."\n"
+ .' cidr_block = "10.0.0.0/8"'."\n"
+ .' vpc_name = var.name'."\n"
+ .' enable_ipv6 = true'."\n"
+ .'}',
+ ],
+ 'name' => [
+ 'description' => 'Terraform Tool 名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ ],
+ 'description' => [
+ 'description' => 'Terraform Tool 描述信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Terraform Tool description',
+ ],
+ 'async' => [
+ 'description' => '是否为异步执行,即发起一个任务执行之后会立即处理下一个任务,而不等待每个资源操作完成。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ 'destroyPolicy' => [
+ 'description' => '删除策略,任务执行完成后,系统根据任务执行状态对临时资源采取以下清理策略。'."\n"
+ ."\n"
+ .'- NEVER 不删除:无论任务执行成功或失败,均不删除所有创建的资源'."\n"
+ .'- ALWAYS 总是删除:无论任务执行成功或失败,执行完成立即销毁所有相关资源'."\n"
+ .'- ON_FAILURE 失败时删除:仅当任务执行失败时,删除相关资源;当任务执行成功时,则保留这些资源',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ON_FAILURE',
+ 'enum' => [
+ 'NEVER',
+ 'ALWAYS',
+ 'ON_FAILURE',
+ ],
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ 'vpcWhitelists' => [
+ 'description' => '关闭公网访问后,限定来源的VPC白名单,不设置或为空表示不限制来源。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '每一个限定的VPC白名单,值为来源VPC ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vpc-j6cgd2if5lg**0xs6m5se',
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => '请求结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => [
+ 'description' => '请求ID',
+ 'type' => 'string',
+ 'example' => ' '."\n"
+ .'9BFC4AC1-6BE4-5405-BDEC-CA288D404812'."\n",
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Missing.Id',
+ 'errorMessage' => 'Id is mandatory for this action.',
+ 'description' => '缺少必填参数Id。',
+ ],
+ [
+ 'errorCode' => 'Missing.Apis.PopCode',
+ 'errorMessage' => 'Apis.PopCode is mandatory for this action.',
+ 'description' => 'Apis参数中缺少必填参数popCode。',
+ ],
+ [
+ 'errorCode' => 'Missing.Apis.PopVersion',
+ 'errorMessage' => 'Apis.PopVersion is mandatory for this action.',
+ 'description' => '缺少必填参数Apis.PopVersion。',
+ ],
+ [
+ 'errorCode' => 'InvalidParam.Apis.PopVersion',
+ 'errorMessage' => 'Unsupported product version: %s of product code: %s.',
+ 'description' => '产品%s不支持%s版本。',
+ ],
+ [
+ 'errorCode' => 'InvalidParam.Apis.PopCode',
+ 'errorMessage' => 'Unsupported product code: %s.',
+ 'description' => '指定的产品名称不存在。',
+ ],
+ [
+ 'errorCode' => 'Missing.Apis.Selectors',
+ 'errorMessage' => 'Apis.Selectors is mandatory for this action.',
+ 'description' => 'Apis.Selectors是必填参数',
+ ],
+ [
+ 'errorCode' => 'InvalidParam.Language',
+ 'errorMessage' => 'Unsupported language: %s.',
+ 'description' => '指定多语言无效。',
+ ],
+ [
+ 'errorCode' => 'InvalidParam.AdditionalApiDescription.PopVersion',
+ 'errorMessage' => 'Unsupported product version: %s of product code: %s.',
+ 'description' => '产品%s不支持%s版本。 ',
+ ],
+ [
+ 'errorCode' => 'InvalidParam.AdditionalApiDescription.PopCode',
+ 'errorMessage' => 'Unsupported product code: %s.',
+ 'description' => '指定的产品名称不存在',
+ ],
+ [
+ 'errorCode' => 'InvalidParam.SystemTools',
+ 'errorMessage' => 'System tool %s is not supported.',
+ 'description' => '指定的系统工具无效。',
+ ],
+ [
+ 'errorCode' => 'Missing.TerraformTools.Description',
+ 'errorMessage' => 'TerraformTools.Description is mandatory for this action.',
+ 'description' => '缺少必填参数TerraformTools.Description',
+ ],
+ [
+ 'errorCode' => 'Missing.TerraformTools.Code',
+ 'errorMessage' => 'TerraformTools.Code is mandatory for this action.',
+ 'description' => '缺少必填参数TerraformTools.Code。',
+ ],
+ [
+ 'errorCode' => 'IdempotentParameterMismatch',
+ 'errorMessage' => 'The request uses the same client token as a previous request but with different parameters. Client tokens should not be reused across non-identical requests. Each unique request must have a distinct client token.',
+ 'description' => '请求使用了与之前请求相同的客户端令牌,但参数不同。请勿在参数不同的请求中重复使用同一令牌,每个独立请求必须使用唯一的令牌。 ',
+ ],
+ [
+ 'errorCode' => 'InvalidParam.TerraformTools.Name',
+ 'errorMessage' => 'TerraformTools.Name: %s must be 3 to 64 characters long and can only contain lowercase letters, numbers, underscores, and hyphens.',
+ 'description' => 'Terraform工具名称长度必须为 3 到 63 个字符,并且只能包含小写字母、数字、下划线和连字符。',
+ ],
+ [
+ 'errorCode' => 'Missing.TerraformTools.Name',
+ 'errorMessage' => 'TerraformTools.Name is mandatory for this action.',
+ 'description' => 'Terraform工具名称是必填参数。',
+ ],
+ [
+ 'errorCode' => 'InvalidParam.TerraformTools.Code',
+ 'errorMessage' => 'The Terraform tool code is not valid: %s. Please check the syntax and try again.',
+ 'description' => '指定的TerraformTools.Code参数无效。',
+ ],
+ [
+ 'errorCode' => 'InvalidParam.ClientToken',
+ 'errorMessage' => 'The specified client token is not valid.',
+ 'description' => '该幂等参数有误,请检查。',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'OperationNotAllowed.SystemServer',
+ 'errorMessage' => 'System type servers are not allowed to be updated or deleted.',
+ 'description' => '系统级别的服务不允许更新或删除操作。',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'NotFound.ApiMcpServer',
+ 'errorMessage' => 'Specified MCP server not found.',
+ 'description' => '指定id的MCP服务不存在。',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => 'Exists.TerraformTools.Name',
+ 'errorMessage' => 'The Terraform tool name already exists.',
+ 'description' => '指定的Terraform 工具名称已经存在。',
+ ],
+ ],
+ ],
+ 'title' => '修改API MCP服务',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'openapiexplorer:UpdateApiMcpServer',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ [
+ 'validationType' => 'always',
+ 'product' => 'OpenAPIExplorer',
+ 'resourceType' => 'ApiMcpServer',
+ 'arn' => 'acs:openapiexplorer::{#accountId}:apimcpserver/{#id}',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"\\\\t\\\\n9BFC4AC1-6BE4-5405-BDEC-CA288D404812\\\\n\\"\\n}","type":"json"}]',
+ ],
+ 'UpdateApiMcpServerUserConfig' => [
+ 'path' => '/userconfig/update',
+ 'methods' => [
+ 'patch',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREopenapiexplorer7MPML0',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '请求body。',
+ 'type' => 'object',
+ 'properties' => [
+ 'enablePublicAccess' => [
+ 'description' => '是否开启账户下所有API MCP Server(包含系统MCP Server)的公网访问能力,默认为开启,关闭后只能通过VPC域名访问。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ 'vpcWhitelists' => [
+ 'description' => '关闭公网访问后,限定来源的VPC白名单,不设置或为空表示不限制来源。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '每一个限定的VPC白名单,值为来源VPC ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vpc-j6cgd2if5lg**0xs6m5se',
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => '请求结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => ' '."\n"
+ .'9BFC4AC1-6BE4-5405-BDEC-CA288D404812'."\n",
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [],
+ 'title' => '修改API MCP Server全局配置',
+ 'summary' => '修改用户全局API MCP Server配置。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'patch',
+ 'ramAction' => [
+ 'action' => 'openapiexplorer:UpdateApiMcpServerUserConfig',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ [
+ 'validationType' => 'always',
+ 'product' => 'OpenAPIExplorer',
+ 'resourceType' => '全部资源',
+ 'arn' => '*',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"\\\\t\\\\n9BFC4AC1-6BE4-5405-BDEC-CA288D404812\\\\n\\"\\n}","type":"json"}]',
+ ],
+ ],
+ 'endpoints' => [
+ [
+ 'regionId' => 'cn-hangzhou',
+ 'regionName' => '华东1(杭州)',
+ 'areaId' => 'asiaPacific',
+ 'areaName' => '亚太',
+ 'public' => 'openapi-mcp.cn-hangzhou.aliyuncs.com',
+ 'endpoint' => 'openapi-mcp.cn-hangzhou.aliyuncs.com',
+ 'vpc' => '',
+ ],
+ [
+ 'regionId' => 'ap-southeast-1',
+ 'regionName' => '新加坡',
+ 'areaId' => 'asiaPacific',
+ 'areaName' => '亚太',
+ 'public' => 'openapi-mcp.ap-southeast-1.aliyuncs.com',
+ 'endpoint' => 'openapi-mcp.ap-southeast-1.aliyuncs.com',
+ 'vpc' => '',
+ ],
+ [
+ 'regionId' => 'public',
+ 'regionName' => '公网',
+ 'areaId' => 'other',
+ 'areaName' => '其它',
+ 'public' => 'openapiexplorer.aliyuncs.com',
+ 'endpoint' => 'openapiexplorer.aliyuncs.com',
+ 'vpc' => '',
+ ],
+ ],
+ 'errorCodes' => [
+ [
+ 'code' => 'InvalidApiMcpServer.NotFound',
+ 'message' => 'The specified ApiMcpServer does not exist.',
+ 'http_code' => 404,
+ 'description' => '指定的 ApiMcpServer 不存在。',
+ ],
+ [
+ 'code' => 'InvalidParam.AcceptLanguage',
+ 'message' => 'Accepted language should only be zh-CN or en-US.',
+ 'http_code' => 400,
+ 'description' => '参数无效,接受的语言只能是zh-CN或en-US。',
+ ],
+ [
+ 'code' => 'InvalidParam.Apis',
+ 'message' => 'Apis is mandatory for this action.',
+ 'http_code' => 400,
+ 'description' => 'Apis是必填参数。',
+ ],
+ [
+ 'code' => 'InvalidParam.ErrorCode',
+ 'message' => 'The errorCode should be a string and cannot be empty.',
+ 'http_code' => 400,
+ 'description' => 'ErrorCode参数无效,应该是字符串,不能为空。',
+ ],
+ [
+ 'code' => 'InvalidParam.ErrorMessage',
+ 'message' => 'The errorMessage should be a string or null.',
+ 'http_code' => 400,
+ 'description' => '参数 errorMessage 无效。ErrorMessage应该是字符串或null。',
+ ],
+ [
+ 'code' => 'InvalidParam.LogRequestId',
+ 'message' => 'Please ensure that the request ID you provided originates from a request you made to a certain OpenAPI.',
+ 'http_code' => 400,
+ 'description' => '参数logRequestId无效。你请确保您提供的请求ID源自您向某个OpenAPI发出的请求。',
+ ],
+ [
+ 'code' => 'InvalidParam.ParentId',
+ 'message' => 'ParentId is mandatory for this action.',
+ 'http_code' => 400,
+ 'description' => 'ParentId是必填参数。',
+ ],
+ [
+ 'code' => 'InvalidParam.Path',
+ 'message' => 'Path is mandatory for this action.',
+ 'http_code' => 400,
+ 'description' => 'Path参数必填。',
+ ],
+ [
+ 'code' => 'InvalidParam.PopCode',
+ 'message' => 'PopCode is mandatory for this action.',
+ 'http_code' => 400,
+ 'description' => 'PopCode是必填参数。',
+ ],
+ [
+ 'code' => 'InvalidParam.PopVersion',
+ 'message' => 'PopVersion is mandatory for this action.',
+ 'http_code' => 400,
+ 'description' => 'PopVersion是必填参数。',
+ ],
+ [
+ 'code' => 'InvalidParam.Product',
+ 'message' => 'The product should be a string or null.',
+ 'http_code' => 400,
+ 'description' => '参数 product 无效,应该是字符串或null。',
+ ],
+ [
+ 'code' => 'InvalidParam.Selectors',
+ 'message' => 'Selectors is mandatory for this action.',
+ 'http_code' => 400,
+ 'description' => 'Selectors是必填参数。',
+ ],
+ [
+ 'code' => 'NotFound.Product',
+ 'message' => 'The provided product does not exist.',
+ 'http_code' => 404,
+ 'description' => '您提供的产品名称不存在。',
+ ],
+ [
+ 'code' => 'NotFound.RequestLog',
+ 'message' => 'The log related to this logRequestId does not exist, has expired, or you do not have permission to view it.',
+ 'http_code' => 404,
+ 'description' => '与此logRequestId相关的日志不存在、已过期或您没有查看它的权限。',
+ ],
+ [
+ 'code' => 'InvalidParam.TerraformTool.Code',
+ 'message' => 'The Terraform tool code is not valid. Please check the syntax and try again.',
+ 'http_code' => 400,
+ 'description' => '指定的TerraformTool.Code参数无效。',
+ ],
+ [
+ 'code' => 'TerraformToolName.exists',
+ 'message' => 'The specified Terraform tool name already exists.',
+ 'http_code' => 409,
+ 'description' => '指定的Terraform 工具名称已经存在。',
+ ],
+ [
+ 'code' => 'OperationNotAllowed.SystemServer',
+ 'message' => 'System type servers are not allowed to be updated or deleted.',
+ 'http_code' => 403,
+ 'description' => '系统级别的服务不允许更新或删除操作。',
+ ],
+ [
+ 'code' => 'AccountMismatch',
+ 'message' => 'The specified client token dose not belong to your account.',
+ 'http_code' => 400,
+ 'description' => '幂等参数对应的parentId不一致。',
+ ],
+ [
+ 'code' => 'Missing.Name',
+ 'message' => 'Name is mandatory for this action.',
+ 'http_code' => 400,
+ 'description' => 'Name是必填参数',
+ ],
+ [
+ 'code' => 'InvalidParam.SystemTools',
+ 'message' => 'System tool %s is not supported.',
+ 'http_code' => 400,
+ 'description' => '指定的系统工具无效。',
+ ],
+ [
+ 'code' => 'MissingParam.ParentId',
+ 'message' => 'ParentId is mandatory for this action.',
+ 'http_code' => 400,
+ 'description' => 'ParentId 是必填参数,该参数为请求头中的x-acs-account-id参数',
+ ],
+ [
+ 'code' => 'Exists.Name',
+ 'message' => 'The MCP server name already exists.',
+ 'http_code' => 409,
+ 'description' => '同一个主账号ID下已存在该名称。',
+ ],
+ [
+ 'code' => 'QuotaExceeded',
+ 'message' => 'The number of MCP server created by the user has reached the upper limit.',
+ 'http_code' => 429,
+ 'description' => '用户创建的MCP服务器数量已达到上限。',
+ ],
+ [
+ 'code' => 'MissingParam.CreateUid',
+ 'message' => 'CreateUid is mandatory for this action.',
+ 'http_code' => 400,
+ 'description' => '缺少调用者UID,该参数为请求头中的x-acs-caller-uid参数。',
+ ],
+ [
+ 'code' => 'Missing.TerraformTools.Code',
+ 'message' => 'TerraformTools.Code is mandatory for this action.',
+ 'http_code' => 400,
+ 'description' => '缺少必填参数TerraformTools.Code。',
+ ],
+ [
+ 'code' => 'NextTokenParameterMismatch',
+ 'message' => 'The request uses the same nextToken as the previous request, but with different parameters. NextTokens should not be reused across non-identical requests. Each unique request must have a distinct nextToken.',
+ 'http_code' => 400,
+ 'description' => '请求使用了与之前请求相同的nextToken,但参数不同。请勿在参数不同的请求中重复使用同一nextToken,每个独立请求必须使用唯一的nextToken。 ',
+ ],
+ [
+ 'code' => 'Missing.Id',
+ 'message' => 'Id is mandatory for this action.',
+ 'http_code' => 400,
+ 'description' => '缺少必填参数Id。',
+ ],
+ [
+ 'code' => 'Missing.Apis',
+ 'message' => 'Apis is mandatory for this action.',
+ 'http_code' => 400,
+ 'description' => '缺少必填参数Apis',
+ ],
+ [
+ 'code' => 'InvalidParam.Apis.PopVersion',
+ 'message' => 'Unsupported product version: %s of product code: %s.',
+ 'http_code' => 400,
+ 'description' => '产品%s不支持%s版本。',
+ ],
+ [
+ 'code' => 'Missing.Apis.PopVersion',
+ 'message' => 'Apis.PopVersion is mandatory for this action.',
+ 'http_code' => 400,
+ 'description' => '缺少必填参数Apis.PopVersion。',
+ ],
+ [
+ 'code' => 'IdempotentParameterMismatch',
+ 'message' => 'The request uses the same client token as a previous request but with different parameters. Client tokens should not be reused across non-identical requests. Each unique request must have a distinct client token.',
+ 'http_code' => 400,
+ 'description' => '请求使用了与之前请求相同的客户端令牌,但参数不同。请勿在参数不同的请求中重复使用同一令牌,每个独立请求必须使用唯一的令牌。 ',
+ ],
+ [
+ 'code' => 'Missing.Apis.Selectors',
+ 'message' => 'Apis.Selectors is mandatory for this action.',
+ 'http_code' => 400,
+ 'description' => 'Apis.Selectors是必填参数',
+ ],
+ [
+ 'code' => 'InvalidParam.Language',
+ 'message' => 'Unsupported language: %s.',
+ 'http_code' => 400,
+ 'description' => '指定多语言无效。',
+ ],
+ [
+ 'code' => 'InvalidParam.Name',
+ 'message' => 'Name must be 3 to 16 characters long and can only contain lowercase letters, numbers, underscores, and hyphens.',
+ 'http_code' => 400,
+ 'description' => '参数name不符合长度3-16,只包含小写字母、数字、下划线和连字符的规范。',
+ ],
+ [
+ 'code' => 'MissingParam.PrincipalId',
+ 'message' => 'PrincipalId is mandatory for this action.',
+ 'http_code' => 400,
+ 'description' => 'STS角色扮演场景下,缺少PrincipalId参数,该参数为请求头中的x-acs-sts-token-principal-id参数。',
+ ],
+ [
+ 'code' => 'InvalidParam.Apis.PopCode',
+ 'message' => 'Unsupported product code: %s.',
+ 'http_code' => 400,
+ 'description' => '指定的产品名称不存在。',
+ ],
+ [
+ 'code' => 'Missing.Apis.PopCode',
+ 'message' => 'Apis.PopCode is mandatory for this action.',
+ 'http_code' => 400,
+ 'description' => 'Apis参数中缺少必填参数popCode。',
+ ],
+ [
+ 'code' => 'InvalidParam.TerraformName',
+ 'message' => 'TerraformName must be 3 to 63 characters long and can only contain lowercase letters, numbers, underscores, and hyphens.',
+ 'http_code' => 400,
+ 'description' => '参数TerraformName不符合长度3-63,只包含小写字母、数字、下划线和连字符的规范。',
+ ],
+ [
+ 'code' => 'InternalServerError',
+ 'message' => 'The request has failed due to a temporary failure of the server.',
+ 'http_code' => 500,
+ 'description' => '由于服务器暂时故障,请求失败。',
+ ],
+ [
+ 'code' => 'InvalidParam.AdditionalApiDescription.PopVersion',
+ 'message' => 'Unsupported product version: %s of product code: %s.',
+ 'http_code' => 400,
+ 'description' => '产品%s不支持%s版本。 ',
+ ],
+ [
+ 'code' => 'Missing.TerraformTools.Description',
+ 'message' => 'TerraformTools.Description is mandatory for this action.',
+ 'http_code' => 400,
+ 'description' => '缺少必填参数TerraformTools.Description',
+ ],
+ [
+ 'code' => 'InvalidParam.NextToken',
+ 'message' => 'The specified NextToken is not valid.',
+ 'http_code' => 400,
+ 'description' => '指定的nextToken无效。',
+ ],
+ [
+ 'code' => 'NotFound.ApiMcpServer',
+ 'message' => 'Specified MCP server not found.',
+ 'http_code' => 404,
+ 'description' => '指定id的MCP服务不存在。',
+ ],
+ [
+ 'code' => 'InvalidParam.AdditionalApiDescription.PopCode',
+ 'message' => 'Unsupported product code: %s.',
+ 'http_code' => 400,
+ 'description' => '指定的产品名称不存在',
+ ],
+ [
+ 'code' => 'Missing.TerraformName',
+ 'message' => 'TerraformName is mandatory for this action.',
+ 'http_code' => 400,
+ 'description' => '缺少必填参数TerraformName。',
+ ],
+ [
+ 'code' => 'InvalidParam.Name',
+ 'message' => 'Name must be 3 to 63 characters long and can only contain lowercase letters, numbers, underscores, and hyphens.',
+ 'http_code' => 400,
+ 'description' => '名称长度必须为 3 到 63 个字符,并且只能包含小写字母、数字、下划线和连字符。',
+ ],
+ [
+ 'code' => 'InvalidParam.TerraformTools.Code',
+ 'message' => 'The Terraform tool code is not valid. Please check the syntax and try again.',
+ 'http_code' => 400,
+ 'description' => '指定的TerraformTools.Code参数无效。',
+ ],
+ [
+ 'code' => 'InvalidParam.TerraformName',
+ 'message' => 'TerraformName must be 3 to 64 characters long and can only contain lowercase letters, numbers, underscores, and hyphens.',
+ 'http_code' => 400,
+ 'description' => 'Terraform工具名称的长度必须为 3 到 64 个字符,并且只能包含小写字母、数字、下划线和连字符。',
+ ],
+ [
+ 'code' => 'InvalidParam.Name',
+ 'message' => 'Name must be 3 to 64 characters long and can only contain lowercase letters, numbers, underscore, and hyphens.',
+ 'http_code' => 400,
+ 'description' => '名称长度必须为 3 到 64 个字符,并且只能包含小写字母、数字、下划线和连字符。',
+ ],
+ [
+ 'code' => 'Exists.TerraformTools.Name',
+ 'message' => 'The Terraform tool name already exists.',
+ 'http_code' => 409,
+ 'description' => '指定的Terraform 工具名称已经存在。',
+ ],
+ [
+ 'code' => 'Missing.TerraformTools.Name',
+ 'message' => 'TerraformTools.Name is mandatory for this action.',
+ 'http_code' => 400,
+ 'description' => 'Terraform工具名称是必填参数。',
+ ],
+ [
+ 'code' => 'InvalidParam.TerraformTools.Name',
+ 'message' => 'TerraformTools.Name: %s must be 3 to 64 characters long and can only contain lowercase letters, numbers, underscores, and hyphens.',
+ 'http_code' => 400,
+ 'description' => 'Terraform工具名称长度必须为 3 到 63 个字符,并且只能包含小写字母、数字、下划线和连字符。',
+ ],
+ [
+ 'code' => 'Missing.AccountId',
+ 'message' => 'x-acs-account-id is mandatory in request header for this action.',
+ 'http_code' => 400,
+ 'description' => '请求头中缺少必填参数x-acs-account-id。',
+ ],
+ [
+ 'code' => 'MissingParam.PrincipalId',
+ 'message' => 'x-acs-sts-token-principal-id is mandatory in request header in STS assumeRole scenario for this action.',
+ 'http_code' => 400,
+ 'description' => 'STS角色扮演场景下,请求头中缺少必填参数x-acs-sts-token-principal-id。',
+ ],
+ [
+ 'code' => 'MissingParam.Calleruid',
+ 'message' => 'x-acs-caller-uid is mandatory in request header for this action.',
+ 'http_code' => 400,
+ 'description' => '请求头中缺少必填参数x-acs-caller-uid。',
+ ],
+ [
+ 'code' => 'Missing.PrincipalId',
+ 'message' => 'x-acs-sts-token-principal-id is mandatory in request header in STS assumeRole scenario for this action.',
+ 'http_code' => 400,
+ 'description' => 'STS角色扮演场景下,请求头中缺少必填参数x-acs-sts-token-principal-id。',
+ ],
+ [
+ 'code' => 'Missing.CallerUid',
+ 'message' => 'x-acs-caller-uid is mandatory in request header for this action.',
+ 'http_code' => 400,
+ 'description' => '请求头中缺少必填参数x-acs-caller-uid。',
+ ],
+ [
+ 'code' => 'Missing.Code',
+ 'message' => 'Code is mandatory for this action.',
+ 'http_code' => 400,
+ 'description' => '缺少必填参数Code。',
+ ],
+ [
+ 'code' => 'InvalidParam.Code',
+ 'message' => 'Empty code is not valid.',
+ 'http_code' => 400,
+ 'description' => 'Code参数为无效的空字符串。',
+ ],
+ [
+ 'code' => 'InvalidParam.TerraformTools.Code',
+ 'message' => 'The Terraform tool code is not valid: %s. Please check the syntax and try again.',
+ 'http_code' => 400,
+ 'description' => '指定的TerraformTools.Code参数无效。',
+ ],
+ [
+ 'code' => 'InvalidParam.ClientToken',
+ 'message' => 'The specified client token is not valid.',
+ 'http_code' => 400,
+ 'description' => '该幂等参数有误,请检查。',
+ ],
+ ],
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ram' => [
+ 'productCode' => 'OpenAPIExplorer',
+ 'productName' => 'OpenAPI Explorer',
+ 'ramCodes' => [
+ 'openapiexplorer',
+ ],
+ 'ramLevel' => '资源级',
+ 'ramConditions' => [],
+ 'ramActions' => [
+ [
+ 'apiName' => 'UpdateApiMcpServer',
+ 'description' => '修改API MCP服务',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'openapiexplorer:UpdateApiMcpServer',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ [
+ 'validationType' => 'always',
+ 'product' => 'OpenAPIExplorer',
+ 'resourceType' => 'ApiMcpServer',
+ 'arn' => 'acs:openapiexplorer::{#accountId}:apimcpserver/{#id}',
+ ],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetApiMcpServer',
+ 'description' => '查询API MCP服务详细信息',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'openapiexplorer:GetApiMcpServer',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ [
+ 'validationType' => 'always',
+ 'product' => 'OpenAPIExplorer',
+ 'resourceType' => 'ApiMcpServer',
+ 'arn' => 'acs:openapiexplorer::{#accountId}:apimcpserver/{#id}',
+ ],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListApiMcpServerSystemTools',
+ 'description' => '查询 MCP 服务支持的系统工具',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'openapiexplorer:ListApiMcpServerSystemTools',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ [
+ 'validationType' => 'always',
+ 'product' => 'OpenAPIExplorer',
+ 'resourceType' => '全部资源',
+ 'arn' => '*',
+ ],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetRequestLog',
+ 'description' => '查询API调用日志',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'openapiexplorer:GetRequestLog',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ [
+ 'validationType' => 'always',
+ 'product' => 'OpenAPIExplorer',
+ 'resourceType' => '全部资源',
+ 'arn' => '*',
+ ],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GenerateCLICommand',
+ 'description' => '动态生成Aliyun CLI命令',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'openapiexplorer:GenerateCLICommand',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ [
+ 'validationType' => 'always',
+ 'product' => 'OpenAPIExplorer',
+ 'resourceType' => '全部资源',
+ 'arn' => '*',
+ ],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeleteApiMcpServer',
+ 'description' => '删除API MCP服务',
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'openapiexplorer:DeleteApiMcpServer',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ [
+ 'validationType' => 'always',
+ 'product' => 'OpenAPIExplorer',
+ 'resourceType' => 'ApiMcpServer',
+ 'arn' => 'acs:openapiexplorer::{#accountId}:apimcpserver/{#id}',
+ ],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetApiMcpServerUserConfig',
+ 'description' => '获取API MCP Server全局配置',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'openapiexplorer:GetApiMcpServerUserConfig',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ [
+ 'validationType' => 'always',
+ 'product' => 'OpenAPIExplorer',
+ 'resourceType' => '全部资源',
+ 'arn' => '*',
+ ],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateApiMcpServer',
+ 'description' => '创建 API MCP 服务',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'openapiexplorer:CreateApiMcpServer',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ [
+ 'validationType' => 'always',
+ 'product' => 'OpenAPIExplorer',
+ 'resourceType' => 'ApiMcpServer',
+ 'arn' => 'acs:openapiexplorer::{#accountId}:apimcpserver/*',
+ ],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ApiMcpServerValidateHcl',
+ 'description' => '验证 Terraform 的 HCL 语法',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'openapiexplorer:ApiMcpServerValidateHcl',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ [
+ 'validationType' => 'always',
+ 'product' => 'OpenAPIExplorer',
+ 'resourceType' => '全部资源',
+ 'arn' => '*',
+ ],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UpdateApiMcpServerUserConfig',
+ 'description' => '修改API MCP Server全局配置',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'openapiexplorer:UpdateApiMcpServerUserConfig',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ [
+ 'validationType' => 'always',
+ 'product' => 'OpenAPIExplorer',
+ 'resourceType' => '全部资源',
+ 'arn' => '*',
+ ],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListApiMcpServers',
+ 'description' => '查询API MCP 服务列表',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'openapiexplorer:ListApiMcpServers',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ [
+ 'validationType' => 'always',
+ 'product' => 'OpenAPIExplorer',
+ 'resourceType' => 'ApiMcpServer',
+ 'arn' => 'acs:openapiexplorer::{#accountId}:apimcpserver/*',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'resourceTypes' => [
+ [
+ 'validationType' => 'always',
+ 'resourceType' => 'ApiMcpServer',
+ 'arn' => 'acs:openapiexplorer::{#accountId}:apimcpserver/{#id}',
+ ],
+ [
+ 'validationType' => 'always',
+ 'resourceType' => 'ApiMcpServerUserConfig',
+ 'arn' => 'acs:openapiexplorer::{#accountId}:apimcpserveruserconfig',
+ ],
+ [
+ 'validationType' => 'always',
+ 'resourceType' => 'ApiMcpServer',
+ 'arn' => 'acs:openapiexplorer::{#accountId}:apimcpserver/*',
+ ],
+ ],
+ ],
+];