'1.0',
'info' => ['style' => 'ROA', 'product' => 'OpenAPIExplorer', 'version' => '2024-11-30'],
'directories' => [
[
'children' => ['UpdateApiMcpServerCore', 'ListApiMcpServerCores', 'GetApiMcpServerCore', 'DeleteApiMcpServerCore', 'CreateApiMcpServerCore'],
'type' => 'directory',
'title' => 'ApiMcpServerCore',
'id' => 451760,
],
[
'children' => ['UpdateApiMcpServerUserConfig', 'GetApiMcpServerUserConfig'],
'type' => 'directory',
'title' => 'ApiMcpServer 全局配置',
'id' => 451761,
],
[
'children' => ['ListApiDefinitions', 'GetProductEndpoints', 'GetApiDefinition', 'GenerateCLICommand', 'ListProducts', 'GetCodeSample', 'GetSdkDependencies'],
'type' => 'directory',
'title' => '开放元数据',
'id' => 451762,
],
[
'children' => ['CreateApiMcpServer', 'UpdateApiMcpServer', 'GetApiMcpServer', 'DeleteApiMcpServer', 'ListApiMcpServers', 'ApiMcpServerValidateHcl', 'ListApiMcpServerSystemTools'],
'type' => 'directory',
'title' => 'ApiMcpServer',
'id' => 451763,
],
[
'children' => ['GetErrorCodeSolutions', 'GetRequestLog', 'GetOwnRequestLog'],
'type' => 'directory',
'title' => '诊断',
'id' => 451764,
],
],
'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' => [
'summary' => '创建 API MCP 服务。',
'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。例如,短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。'."\n"
.'短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。', '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。例如,短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。'."\n"
.'短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。', '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'],
'toolAlias' => ['description' => '工具别名,修改为自定义名称,例如list_ecs_regions,支持英文字符、数字、-、_组成,不同别名不允许重复。', 'type' => 'string', 'required' => false, 'example' => 'list_ecs_regions'],
'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://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'],
],
],
],
],
],
],
'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' => '该幂等参数有误,请检查。'],
['errorCode' => 'InvalidParam.AdditionalApiDescription.ToolAlias', 'errorMessage' => 'ToolAlias \'%s\' is invalid. It must be 1-64 characters, start with a letter, and contain only letters, digits, underscores, and hyphens.', '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 工具名称已经存在。'],
['errorCode' => 'Exists.ToolAlias', 'errorMessage' => 'Duplicate tool alias \'%s\' found. Each tool alias must be unique within an MCP server.', 'description' => ''],
['errorCode' => 'Conflict.ToolAlias', 'errorMessage' => 'Tool alias \'%s\' conflicts with an existing tool name in this MCP server.', 'description' => ''],
],
429 => [
['errorCode' => 'QuotaExceeded', 'errorMessage' => 'The number of MCP server created by the user has reached the upper limit.', 'description' => '用户创建的MCP服务器数量已达到上限。'],
],
],
'title' => '创建 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://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}","type":"json"}]',
],
'CreateApiMcpServerCore' => [
'summary' => '创建ApiMcpServerCore。',
'path' => '/apimcpservercore',
'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 Core服务',
'type' => 'object',
'properties' => [
'clientToken' => ['description' => '幂等校验TOKEN。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000'],
'oauthClientId' => ['description' => '选择自定义OAuth配置时的自定义OAuth Client ID。'."\n"
."\n"
.'`仅支持 Web/Native 应用,且 OAuth 范围必须包含 /acs/mcp-server`。', 'type' => 'string', 'required' => false, 'example' => '403*************370'],
'vpcWhitelists' => [
'description' => '每一个限定的VPC白名单,值为来源VPC ID。',
'type' => 'array',
'items' => ['description' => '关闭公网访问后,限定来源的VPC白名单,不设置或为空表示不限制来源。', 'type' => 'string', 'required' => false, 'example' => 'vpc-j6cgd2if5lg**0xs6m5se'],
'required' => false,
],
'enableAssumeRole' => ['description' => '是否开启多账号访问。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
'assumeRoleOverridePolicy' => ['description' => '开启多账号访问时,角色扮演额外的策略,该策略存在时,角色扮演的权限以当前值为准,覆盖角色本身的权限定义。', 'type' => 'string', 'required' => false, 'example' => '{"Version":"1","Statement":[{"Effect":"Allow","Action":["ecs:Describe*"],"Resource":"*"}]}'],
'assumeRoleName' => ['description' => '开启多账号访问进行跨账号操作时,扮演的目标账号 RAM角色名称。', 'type' => 'string', 'required' => false, 'example' => 'test'],
'publicAccessType' => [
'description' => '公网访问类型:允许公网访问、不允许公网访问、继承账号配置。'."\n"
.'`public`(开启), `private`(关闭), `inherit`(跟随账号配置)',
'type' => 'string',
'required' => false,
'enumValueTitles' => ['private' => '关闭', 'public' => '开启', 'inherit' => '跟随账号配置'],
'example' => 'public',
],
'enableCustomVpcWhitelist' => ['description' => '是否开启自定义VPC白名单,不开启则跟随账户级别的配置。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
'required' => false,
],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'requestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'A707AFA8-1A4C-5B2A-A165-8436C1EA38DB'],
'id' => ['description' => '创建成功的 API MCP Core 服务 ID。', 'type' => 'string', 'example' => 'v6ZZ7ftCzEILW***'],
],
'description' => '',
],
],
],
'errorCodes' => [
400 => [
['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.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.ClientToken', 'errorMessage' => 'The specified client token is not valid.', 'description' => '该幂等参数有误,请检查。'],
],
429 => [
['errorCode' => 'QuotaExceeded', 'errorMessage' => 'The number of MCP server created by the user has reached the upper limit.', 'description' => '用户创建的MCP服务器数量已达到上限。'],
],
],
'title' => '创建 API MCP Core服务',
'description' => '该接口查询的是公开信息,不涉及账号特殊归属等信息,故不支持授权。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"A707AFA8-1A4C-5B2A-A165-8436C1EA38DB\\",\\n \\"id\\": \\"v6ZZ7ftCzEILW***\\"\\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"}]',
],
'DeleteApiMcpServerCore' => [
'path' => '/apimcpservercore',
'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 发起请求,系统会将其视为同一次操作,从而避免重复创建或更新。ClientToken 由客户端生成,建议在重试场景中使用相同的 ClientToken。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000'],
],
[
'name' => 'id',
'in' => 'query',
'schema' => ['description' => '唯一 id', 'type' => 'string', 'required' => true, 'example' => 'v6ZZ7ftCzEILW***'],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'requestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'A707AFA8-1A4C-5B2A-A165-8436C1EA38DB'],
],
'description' => '',
],
],
],
'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' => '该幂等参数有误,请检查。'],
],
404 => [
['errorCode' => 'NotFound.ApiMcpServer', 'errorMessage' => 'Specified MCP server not found.', 'description' => '指定id的MCP服务不存在。'],
],
],
'title' => '删除ApiMcpServerCore',
'summary' => '删除ApiMcpServerCore。',
'description' => '该接口查询的是公开信息,不涉及账号特殊归属等信息,故不支持授权。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"A707AFA8-1A4C-5B2A-A165-8436C1EA38DB\\"\\n}","type":"json"}]',
],
'GenerateCLICommand' => [
'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。例如,短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。'."\n"
.'短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。', '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"
.'只有支持分页的List类型的接口才能使用这个开关。'."\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'],
'unifiedCli' => ['type' => 'string'],
],
],
],
],
'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命令',
'summary' => '动态生成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 \\"unifiedCli\\": \\"\\"\\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。例如,短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。'."\n"
.'短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。', '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。例如,短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。'."\n"
.'短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。', '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。例如,短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。'."\n"
.'短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。', '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'],
'toolAlias' => ['description' => '工具别名,修改为自定义名称,例如 list_ecs_regions,支持英文字符、数字、-、_组成,不同别名不允许重复。', 'type' => 'string', 'example' => 'list_ecs_regions'],
'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。例如,短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。'."\n"
.'短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。', '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。例如,短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。'."\n"
.'短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。', '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 \\"toolAlias\\": \\"list_ecs_regions\\",\\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"}]',
],
'GetApiMcpServerCore' => [
'path' => '/apimcpservercore',
'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' => '唯一 id', 'type' => 'string', 'required' => true, 'example' => 'v6ZZ7ftCzEILW***'],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'requestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => ' '."\n"
.'9BFC4AC1-6BE4-5405-BDEC-CA288D404812'."\n"],
'id' => ['description' => 'API MCP Core 服务 ID。', 'type' => 'string', 'example' => 'v6ZZ7ftCzEILW***'],
'oauthClientId' => ['description' => '选择自定义OAuth配置时的自定义OAuth Client ID。'."\n"
."\n"
.'`仅支持 Web/Native 应用,且 OAuth 范围必须包含 /acs/mcp-server`', 'type' => 'string', 'deprecated' => false, 'example' => '403*************370', 'pattern' => '', 'readOnly' => false, 'default' => ''],
'createTime' => ['description' => 'API MCP服务器的创建时间。', 'type' => 'string', 'format' => 'iso8601', 'example' => '2025-02-07T02:17:46Z'],
'vpcWhitelists' => [
'description' => '每一个限定的VPC白名单,值为来源VPC ID。',
'type' => 'array',
'items' => ['description' => '每一个限定的VPC白名单,值为来源VPC ID。', 'type' => 'string', 'deprecated' => false, 'example' => 'vpc-j6cgd2if5lg**0xs6m5se', 'readOnly' => false],
'deprecated' => false,
'readOnly' => false,
],
'enableAssumeRole' => ['description' => '是否开启多账号访问。', 'type' => 'boolean', 'deprecated' => false, 'example' => 'true', 'readOnly' => false, 'default' => ''],
'assumeRoleOverridePolicy' => ['description' => '角色扮演时的权限策略', 'type' => 'string', 'format' => 'json', 'deprecated' => false, 'example' => '{\\"Version\\":\\"1\\",\\"Statement\\":[]}', 'pattern' => '', 'readOnly' => false, 'default' => ''],
'assumeRoleName' => ['description' => '开启多账号访问进行跨账号操作时,扮演的目标账号 RAM角色名称。', 'type' => 'string', 'deprecated' => false, 'example' => 'test', 'pattern' => '', 'readOnly' => false, 'default' => ''],
'publicAccessType' => ['description' => '公网访问类型:允许公网访问、不允许公网访问、继承账号配置。'."\n"
.'`public`(开启), `private`(关闭), `inherit`(跟随账号配置)', 'type' => 'string', 'deprecated' => false, 'example' => 'public', 'pattern' => '', 'readOnly' => false, 'default' => ''],
'enableCustomVpcWhitelist' => ['description' => '是否开启自定义VPC白名单,不开启则跟随账户级别的配置。', 'type' => 'boolean', 'deprecated' => false, 'example' => 'true', 'readOnly' => false, 'default' => ''],
'urls' => [
'description' => 'MCP Core 服务 连接信息。',
'type' => 'object',
'properties' => [
'sse' => ['description' => 'SSE 协议连接信息。', 'type' => 'string', 'deprecated' => false, 'example' => 'https://mcpserverinner-pre.cn-zhangjiakou.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/sse', 'pattern' => '', 'default' => ''],
'mcp' => ['description' => 'streamable HTTP 协议连接信息,推荐使用。', 'type' => 'string', 'deprecated' => false, 'example' => 'https://mcpserverinner-pre.cn-zhangjiakou.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/mcp', 'pattern' => '', 'default' => ''],
'vpcSse' => ['description' => 'VPC 下 SSE 协议连接地址。', 'type' => 'string', 'deprecated' => false, 'example' => 'https://openapi-mcp-cn.vpc-proxy.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/sse', 'pattern' => '', 'default' => ''],
'vpcMcp' => ['description' => 'VPC 下 streamable HTTP 协议连接地址。', 'type' => 'string', 'deprecated' => false, 'example' => 'https://openapi-mcp-cn.vpc-proxy.aliyuncs.com/accounts/xxxx/custom/xxx/id/xxxx/mcp', 'pattern' => '', 'default' => ''],
],
'deprecated' => false,
],
'requiredRamPolicy' => ['description' => '使用该 MCP Core 服务所需的 RAM 策略。', 'type' => 'string', 'deprecated' => false, 'example' => '{"Version":"1","Statement":[{"Effect":"Allow","Action":["ecs:Describe*"],"Resource":"*"}]}', 'pattern' => '', 'default' => ''],
],
'description' => '',
],
],
],
'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' => '查询 ApiMcpServerCore',
'summary' => '查询 ApiMcpServerCore。',
'description' => '该接口查询的是公开信息,不涉及账号特殊归属等信息,故不支持授权。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"\\\\t\\\\n9BFC4AC1-6BE4-5405-BDEC-CA288D404812\\\\n\\",\\n \\"id\\": \\"v6ZZ7ftCzEILW***\\",\\n \\"oauthClientId\\": \\"403*************370\\",\\n \\"createTime\\": \\"2025-02-07T02:17:46Z\\",\\n \\"vpcWhitelists\\": [\\n \\"vpc-j6cgd2if5lg**0xs6m5se\\"\\n ],\\n \\"enableAssumeRole\\": true,\\n \\"assumeRoleOverridePolicy\\": \\"{\\\\\\\\\\\\\\"Version\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"1\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"Statement\\\\\\\\\\\\\\":[]}\\",\\n \\"assumeRoleName\\": \\"test\\",\\n \\"publicAccessType\\": \\"public\\",\\n \\"enableCustomVpcWhitelist\\": true,\\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 \\"requiredRamPolicy\\": \\"{\\\\\\"Version\\\\\\":\\\\\\"1\\\\\\",\\\\\\"Statement\\\\\\":[{\\\\\\"Effect\\\\\\":\\\\\\"Allow\\\\\\",\\\\\\"Action\\\\\\":[\\\\\\"ecs:Describe*\\\\\\"],\\\\\\"Resource\\\\\\":\\\\\\"*\\\\\\"}]}\\"\\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"}]',
],
'GetCodeSample' => [
'summary' => '获取SDK代码示例',
'path' => '/api/product/makeCode',
'methods' => ['post'],
'schemes' => ['https'],
'security' => [
[
'Anonymous' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'systemTags' => [
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREopenapiexplorerCHYMZJ'],
'autoTest' => true,
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'title' => '生成代码示例请求体',
'description' => '生成代码示例请求体',
'type' => 'object',
'properties' => [
'callType' => [
'title' => 'SDK调用类型,typed为产品专属SDK模式,generic为Common泛化调用模式,默认为typed。',
'description' => 'SDK调用类型,typed为产品专属SDK模式,generic为Common泛化调用模式,默认为typed。',
'type' => 'string',
'required' => false,
'example' => 'typed',
'default' => 'typed',
'enum' => ['typed', 'generic'],
],
'product' => ['title' => '云产品Code。', 'description' => '云产品Code。', 'type' => 'string', 'required' => true, 'example' => 'Ecs'],
'apiVersion' => ['title' => 'OpenAPI版本。', 'description' => 'OpenAPI版本。', 'type' => 'string', 'required' => false, 'example' => '2014-05-26'],
'apiName' => ['title' => 'OpenAPI名称。', 'description' => 'OpenAPI名称。', 'type' => 'string', 'required' => true, 'example' => 'DescribeInstances'],
'regionId' => ['title' => '地域ID。', 'description' => '地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'],
'language' => [
'title' => '代码示例语言。',
'description' => '代码示例编程语言。',
'type' => 'string',
'required' => true,
'example' => 'java',
'enum' => ['java', 'java-async', 'python', 'typescript', 'go', 'php', 'csharp', 'cpp', 'swift', 'nodejs'],
],
'params' => ['title' => 'OpenAPI业务请求参数JSON字符串,键为参数名,值为序列化后的参数值。', 'description' => 'OpenAPI业务请求参数JSON字符串,键为参数名,值为序列化后的参数值。', 'type' => 'string', 'required' => false, 'example' => '{"RegionId":"cn-hangzhou"}'],
],
'required' => false,
],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'code' => ['title' => '业务状态码,0表示成功,1表示workbench业务异常。', 'description' => '业务状态码,0表示成功,1表示workbench业务异常。', 'type' => 'integer', 'format' => 'int32', 'example' => '0'],
'message' => ['title' => '业务错误信息,仅当code不为0时返回。', 'description' => '业务错误信息,仅当code不为0时返回。', 'type' => 'string', 'example' => 'SDK 示例生成出错,请联系支持群开发同学解决'],
'data' => [
'title' => '生成的多语言SDK代码示例及依赖信息。',
'description' => '生成的多语言SDK代码示例及依赖信息。',
'type' => 'object',
'properties' => [
'demoSdk' => ['title' => '不同语言对应的代码示例内容JSON字符串,key为语言名(如java/python/go等),另包含dependencies依赖配置。', 'description' => '对应的代码示例内容', 'type' => 'string', 'example' => 'package com.aliyun.sample;\\n\\nimport com.aliyun.tea.*;\\n\\npublic class Sample {\\n\\n /**\\n * description :\\n *
使用凭据初始化账号Client
\\n * @return Client\\n * \\n * @throws Exception\\n */\\n public static com.aliyun.teaopenapi.Client createClient() throws Exception {\\n // 工程代码建议使用更安全的无AK方式,凭据配置方式请参见:https://help.aliyun.com/document_detail/378657.html。\\n com.aliyun.credentials.Client credential = new com.aliyun.credentials.Client();\\n com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()\\n .setCredential(credential);\\n // Endpoint 请参考 https://api.aliyun.com/product/Ecs\\n config.endpoint = \\"ecs.us-west-1.aliyuncs.com\\";\\n return new com.aliyun.teaopenapi.Client(config);\\n }\\n\\n /**\\n * description :\\n * API 相关
\\n * \\n * @param path string Path parameters\\n * @return OpenApi.Params\\n */\\n public static com.aliyun.teaopenapi.models.Params createApiInfo() throws Exception {\\n com.aliyun.teaopenapi.models.Params params = new com.aliyun.teaopenapi.models.Params()\\n // 接口名称\\n .setAction(\\"DescribeInstances\\")\\n // 接口版本\\n .setVersion(\\"2014-05-26\\")\\n // 接口协议\\n .setProtocol(\\"HTTPS\\")\\n // 接口 HTTP 方法\\n .setMethod(\\"POST\\")\\n .setAuthType(\\"AK\\")\\n .setStyle(\\"RPC\\")\\n // 接口 PATH\\n .setPathname(\\"/\\")\\n // 接口请求体内容格式\\n .setReqBodyType(\\"json\\")\\n // 接口响应体内容格式\\n .setBodyType(\\"json\\");\\n return params;\\n }\\n\\n public static void main(String[] args_) throws Exception {\\n \\n com.aliyun.teaopenapi.Client client = Sample.createClient();\\n com.aliyun.teaopenapi.models.Params params = Sample.createApiInfo();\\n // query params\\n java.util.Map queries = new java.util.HashMap<>();\\n queries.put(\\"RegionId\\", \\"us-west-1\\");\\n // runtime options\\n com.aliyun.teautil.models.RuntimeOptions runtime = new com.aliyun.teautil.models.RuntimeOptions();\\n com.aliyun.teaopenapi.models.OpenApiRequest request = new com.aliyun.teaopenapi.models.OpenApiRequest()\\n .setQuery(com.aliyun.openapiutil.Client.query(queries));\\n // 返回值实际为 Map 类型,可从 Map 中获得三类数据:响应体 body、响应头 headers、HTTP 返回的状态码 statusCode。\\n Object resp = client.callApi(params, request, runtime);\\n System.out.println(new com.google.gson.Gson().toJson(resp));\\n }\\n}\\n'],
'cost' => ['title' => '生成耗时,单位毫秒。', 'description' => '生成耗时,单位毫秒。', 'type' => 'integer', 'format' => 'int32', 'example' => '100'],
'sdkDependency' => [
'title' => '当前 product+apiVersion+language 对应的 SDK 安装信息(与 GetSdkDependencies 单条结果同结构)。',
'description' => '当前输入的云产品API版本,编程语言以及调用方式对应的 SDK 安装信息(与 GetSdkDependencies 单条结果同结构)。',
'type' => 'object',
'properties' => [
'packageName' => ['title' => 'SDK包名称。', 'description' => 'SDK包名称。', 'type' => 'string', 'example' => 'com.aliyun/openapiexplorer20241130'],
'sdkVersion' => ['title' => 'SDK包版本。', 'description' => 'SDK包版本。', 'type' => 'string', 'example' => '1.3.0'],
'platform' => ['title' => 'SDK包管理平台,如github/maven/pypi/nuget/npm。', 'description' => 'SDK包管理平台,如github/maven/pypi/nuget/npm。', 'type' => 'string', 'example' => 'maven'],
'install' => ['title' => 'SDK安装命令。Java 为 Maven XML 块;其他语言为对应包管理器的安装命令。', 'description' => 'SDK安装命令。Java 为 Maven XML 块;其他语言为对应包管理器的安装命令。', 'type' => 'string', 'example' => '\\n com.aliyun\\n openapiexplorer20241130\\n 1.3.0\\n'],
],
'example' => '{"packageName":"com.aliyun/openapiexplorer20241130","sdkVersion":"1.3.0","platform":"maven","install":"..."}',
],
],
'example' => '{}',
],
],
'description' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'InvalidParam.Body', 'errorMessage' => 'Request body is required.', 'description' => ''],
['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' => ''],
['errorCode' => 'InvalidParam.Format', 'errorMessage' => 'Product/apiVersion/apiName format is invalid.', 'description' => ''],
['errorCode' => 'InvalidParam.Language', 'errorMessage' => 'Language format is invalid.', 'description' => ''],
['errorCode' => 'InvalidParam.CallType', 'errorMessage' => 'CallType must be typed or generic.', 'description' => ''],
],
502 => [
['errorCode' => 'WorkbenchProxy.RequestFailed', 'errorMessage' => 'Failed to generate code sample.', 'description' => ''],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '获取代码示例',
'description' => '该接口查询的是公开信息,不涉及账号特殊归属等信息,故不支持授权。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"code\\": 0,\\n \\"message\\": \\"SDK 示例生成出错,请联系支持群开发同学解决\\",\\n \\"data\\": {\\n \\"demoSdk\\": \\"package com.aliyun.sample;\\\\\\\\n\\\\\\\\nimport com.aliyun.tea.*;\\\\\\\\n\\\\\\\\npublic class Sample {\\\\\\\\n\\\\\\\\n /**\\\\\\\\n * description :\\\\\\\\n * 使用凭据初始化账号Client
\\\\\\\\n * @return Client\\\\\\\\n * \\\\\\\\n * @throws Exception\\\\\\\\n */\\\\\\\\n public static com.aliyun.teaopenapi.Client createClient() throws Exception {\\\\\\\\n // 工程代码建议使用更安全的无AK方式,凭据配置方式请参见:https://help.aliyun.com/document_detail/378657.html。\\\\\\\\n com.aliyun.credentials.Client credential = new com.aliyun.credentials.Client();\\\\\\\\n com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()\\\\\\\\n .setCredential(credential);\\\\\\\\n // Endpoint 请参考 https://api.aliyun.com/product/Ecs\\\\\\\\n config.endpoint = \\\\\\\\\\\\\\"ecs.us-west-1.aliyuncs.com\\\\\\\\\\\\\\";\\\\\\\\n return new com.aliyun.teaopenapi.Client(config);\\\\\\\\n }\\\\\\\\n\\\\\\\\n /**\\\\\\\\n * description :\\\\\\\\n * API 相关
\\\\\\\\n * \\\\\\\\n * @param path string Path parameters\\\\\\\\n * @return OpenApi.Params\\\\\\\\n */\\\\\\\\n public static com.aliyun.teaopenapi.models.Params createApiInfo() throws Exception {\\\\\\\\n com.aliyun.teaopenapi.models.Params params = new com.aliyun.teaopenapi.models.Params()\\\\\\\\n // 接口名称\\\\\\\\n .setAction(\\\\\\\\\\\\\\"DescribeInstances\\\\\\\\\\\\\\")\\\\\\\\n // 接口版本\\\\\\\\n .setVersion(\\\\\\\\\\\\\\"2014-05-26\\\\\\\\\\\\\\")\\\\\\\\n // 接口协议\\\\\\\\n .setProtocol(\\\\\\\\\\\\\\"HTTPS\\\\\\\\\\\\\\")\\\\\\\\n // 接口 HTTP 方法\\\\\\\\n .setMethod(\\\\\\\\\\\\\\"POST\\\\\\\\\\\\\\")\\\\\\\\n .setAuthType(\\\\\\\\\\\\\\"AK\\\\\\\\\\\\\\")\\\\\\\\n .setStyle(\\\\\\\\\\\\\\"RPC\\\\\\\\\\\\\\")\\\\\\\\n // 接口 PATH\\\\\\\\n .setPathname(\\\\\\\\\\\\\\"/\\\\\\\\\\\\\\")\\\\\\\\n // 接口请求体内容格式\\\\\\\\n .setReqBodyType(\\\\\\\\\\\\\\"json\\\\\\\\\\\\\\")\\\\\\\\n // 接口响应体内容格式\\\\\\\\n .setBodyType(\\\\\\\\\\\\\\"json\\\\\\\\\\\\\\");\\\\\\\\n return params;\\\\\\\\n }\\\\\\\\n\\\\\\\\n public static void main(String[] args_) throws Exception {\\\\\\\\n \\\\\\\\n com.aliyun.teaopenapi.Client client = Sample.createClient();\\\\\\\\n com.aliyun.teaopenapi.models.Params params = Sample.createApiInfo();\\\\\\\\n // query params\\\\\\\\n java.util.Map queries = new java.util.HashMap<>();\\\\\\\\n queries.put(\\\\\\\\\\\\\\"RegionId\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"us-west-1\\\\\\\\\\\\\\");\\\\\\\\n // runtime options\\\\\\\\n com.aliyun.teautil.models.RuntimeOptions runtime = new com.aliyun.teautil.models.RuntimeOptions();\\\\\\\\n com.aliyun.teaopenapi.models.OpenApiRequest request = new com.aliyun.teaopenapi.models.OpenApiRequest()\\\\\\\\n .setQuery(com.aliyun.openapiutil.Client.query(queries));\\\\\\\\n // 返回值实际为 Map 类型,可从 Map 中获得三类数据:响应体 body、响应头 headers、HTTP 返回的状态码 statusCode。\\\\\\\\n Object resp = client.callApi(params, request, runtime);\\\\\\\\n System.out.println(new com.google.gson.Gson().toJson(resp));\\\\\\\\n }\\\\\\\\n}\\\\\\\\n\\",\\n \\"cost\\": 100,\\n \\"sdkDependency\\": {\\n \\"packageName\\": \\"com.aliyun/openapiexplorer20241130\\",\\n \\"sdkVersion\\": \\"1.3.0\\",\\n \\"platform\\": \\"maven\\",\\n \\"install\\": \\"\\\\\\\\n com.aliyun\\\\\\\\n openapiexplorer20241130\\\\\\\\n 1.3.0\\\\\\\\n\\"\\n }\\n }\\n}","type":"json"}]',
],
'GetErrorCodeSolutions' => [
'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。例如,短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。'."\n"
.'短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。', 'type' => 'string', 'required' => false, 'example' => 'Ecs'],
],
[
'name' => 'acceptLanguage',
'in' => 'query',
'schema' => [
'title' => '限定solutions的语言,目前支持中文(zh-CN)与英文(en-US),并非所有solutions具备英文内容。',
'description' => '查询对应语言的诊断方案,支持中文(zh-CN)与英文(en-US)。需要注意的是并非所有诊断方案具备英文内容,如诊断方案无英文内容,则返回为空。'."\n"
.'zh-CN'."\n"
."\n"
.'en-US',
'type' => 'string',
'required' => false,
'enumValueTitles' => ['en-US' => 'en-US', 'zh-CN' => 'zh-CN'],
'example' => 'zh-CN',
],
],
],
'responses' => [
200 => [
'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'],
'title' => '查询报错诊断方案',
'summary' => '根据提供的错误码获取对应的错误诊断解决方案。',
'description' => '该接口查询的是公开信息,不涉及账号特殊归属等信息,故不支持授权。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [],
'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"}]',
],
'GetOwnRequestLog' => [
'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 => [
'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"],
'vpcId' => ['type' => 'string', 'example' => 'vpc-abcd'],
],
],
'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' => [],
],
'ak' => ['type' => 'string', 'example' => 'LTAI1234abcd'],
],
],
'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'],
'title' => '查询当前账号的API调用日志',
'summary' => '通过 API 返回的 Request ID 查询当前账号调用 OpenAPI 的日志详情,用于故障排查。',
'description' => '该API不支持授权。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [],
'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 \\"vpcId\\": \\"vpc-abcd\\"\\n },\\n \\"authenticationInfo\\": {\\n \\"signatureVersion\\": \\"unknown\\\\n\\",\\n \\"signatureMethod\\": \\"HMAC-SHA256\\",\\n \\"authenticationType\\": \\"AK\\",\\n \\"ak\\": \\"LTAI1234abcd\\"\\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"}]',
],
'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。例如,短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。'."\n"
.'短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。', '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' => [
'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 => [
'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'],
'vpcId' => ['title' => '来源vpcId', 'description' => '来源vpcId', 'type' => 'string', 'example' => 'vpc-abcd'],
],
],
'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' => [],
],
'ak' => ['title' => 'requestId对应的发起调用的AK', 'description' => 'requestId对应的发起调用的AK', 'type' => 'string', 'example' => 'LTAI1234abcd'],
],
],
'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'],
'title' => '查询API调用日志',
'summary' => '通过 API 返回的Request ID查询请求的日志详情,可用于排查故障。',
'description' => '通过 RAM 授权或角色扮演,支持跨 RAM 用户或跨阿里云账号之间查询调用日志。详见授权方式,请参见[跨账号API错误诊断授权](~~2868101~~)。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'openapiexplorer:GetRequestLog',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'OpenAPIExplorer', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'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 \\"vpcId\\": \\"vpc-abcd\\"\\n },\\n \\"authenticationInfo\\": {\\n \\"signatureVersion\\": \\"unknown\\",\\n \\"signatureMethod\\": \\"HMAC-SHA256\\",\\n \\"authenticationType\\": \\"AK\\",\\n \\"ak\\": \\"LTAI1234abcd\\"\\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"}]',
],
'GetSdkDependencies' => [
'summary' => '获取SDK信息',
'path' => '/api/sdk/dependencies',
'methods' => ['get'],
'schemes' => ['https'],
'security' => [
[
'Anonymous' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREopenapiexplorerY5UU1D'],
'autoTest' => true,
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
'name' => 'callType',
'in' => 'query',
'schema' => [
'title' => 'SDK调用类型,typed为产品专属SDK模式,generic为Common泛化调用模式,默认为typed。',
'description' => 'SDK调用类型,typed为产品专属SDK模式,generic为Common泛化调用模式,默认为typed。',
'type' => 'string',
'required' => false,
'example' => 'typed',
'default' => 'typed',
'enum' => ['typed', 'generic'],
],
],
[
'name' => 'product',
'in' => 'query',
'schema' => ['title' => '云产品Code。', 'description' => '云产品Code。', 'type' => 'string', 'required' => true, 'example' => 'Ecs'],
],
[
'name' => 'version',
'in' => 'query',
'schema' => ['title' => 'OpenAPI版本。', 'description' => 'OpenAPI版本。', 'type' => 'string', 'required' => false, 'example' => '2014-05-26'],
],
[
'name' => 'language',
'in' => 'query',
'schema' => [
'title' => 'SDK语言,用于过滤返回的SDK版本信息。',
'description' => 'SDK编程语言,用于过滤返回的SDK版本信息。',
'type' => 'string',
'required' => true,
'example' => 'java',
'enum' => ['java', 'java-async', 'python', 'typescript', 'go', 'php', 'csharp', 'cpp', 'swift', 'nodejs'],
],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'code' => ['title' => '业务状态码,0表示成功。', 'description' => '业务状态码,0表示成功。', 'type' => 'integer', 'format' => 'int32', 'example' => '0'],
'data' => [
'title' => 'SDK 依赖信息列表,每一项对应一个语言的最新版 SDK 依赖。',
'description' => 'SDK 依赖信息列表,每一项对应一个语言的最新版 SDK 依赖。',
'type' => 'array',
'items' => [
'title' => '单个 SDK 依赖信息。',
'description' => '单个 SDK 依赖信息。',
'type' => 'object',
'properties' => [
'packageName' => ['title' => 'SDK包名称。', 'description' => 'SDK包名称。', 'type' => 'string', 'example' => 'com.aliyun/ecs20140526'],
'sdkVersion' => ['title' => 'SDK包版本。', 'description' => 'SDK包版本。', 'type' => 'string', 'example' => '8.7.5'],
'platform' => ['title' => 'SDK包管理平台,如github/maven/pypi/nuget/npm。', 'description' => 'SDK包管理平台,如github/maven/pypi/nuget/npm。', 'type' => 'string', 'example' => 'maven'],
'install' => ['title' => 'SDK安装命令。Java 为 Maven XML 块;其他语言为对应包管理器的安装命令。', 'description' => 'SDK安装命令。Java 为 Maven XML 块;其他语言为对应包管理器的安装命令。', 'type' => 'string', 'example' => '\\n com.aliyun\\n ecs20140526\\n 8.7.5\\n'],
],
'example' => '{"packageName":"com.aliyun/ecs20140526","sdkVersion":"8.7.5","platform":"maven","install":"..."}',
],
'example' => '[{"packageName":"com.aliyun/ecs20140526","sdkVersion":"8.7.5","platform":"maven","install":"..."}]',
],
],
'description' => '',
],
],
],
'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.Format', 'errorMessage' => 'Product/version format is invalid.', 'description' => ''],
['errorCode' => 'InvalidParam.Language', 'errorMessage' => 'Language format is invalid.', 'description' => ''],
],
502 => [
['errorCode' => 'WorkbenchProxy.RequestFailed', 'errorMessage' => 'Failed to get sdk info.', 'description' => ''],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '获取Sdk的依赖信息',
'description' => '通过 RAM 授权或角色扮演,支持跨 RAM 用户或跨阿里云账号之间查询调用日志。详见授权方式,请参见[跨账号API错误诊断授权](~~2868101~~)。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"code\\": 0,\\n \\"data\\": [\\n {\\n \\"packageName\\": \\"com.aliyun/ecs20140526\\",\\n \\"sdkVersion\\": \\"8.7.5\\",\\n \\"platform\\": \\"maven\\",\\n \\"install\\": \\"\\\\\\\\n com.aliyun\\\\\\\\n ecs20140526\\\\\\\\n 8.7.5\\\\\\\\n\\"\\n }\\n ]\\n}","type":"json"}]',
],
'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。例如,短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。'."\n"
.'短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。', '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"}]',
],
'ListApiMcpServerCores' => [
'path' => '/apimcpservercores',
'methods' => ['get'],
'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'systemTags' => [
'operationType' => 'list',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREopenapiexplorer7MPML0'],
],
'parameters' => [
[
'name' => 'id',
'in' => 'query',
'schema' => ['description' => '唯一 id', 'type' => 'string', 'required' => false, 'example' => 'v6ZZ7ftCzEILW***'],
],
[
'name' => 'nextToken',
'in' => 'query',
'schema' => ['description' => '分页游标。'."\n"
.'> 不为空表示有更多数据。', 'type' => 'string', 'required' => false, 'example' => 'AAAAAZjtYxxxxxxxx'],
],
[
'name' => 'maxResults',
'in' => 'query',
'schema' => ['description' => '分页查询时每页的最大条目数。最大值为 100。默认值为 20。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'],
],
[
'name' => 'skip',
'in' => 'query',
'schema' => ['description' => '跳过的数据数量。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5'],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'requestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'A707AFA8-1A4C-5B2A-A165-8436C1EA38DB'],
'nextToken' => ['description' => '分页游标。'."\n"
.'> 不为空表示有更多数据。', 'type' => 'string', 'example' => 'AAAAAZjtYxxxxxxxx'],
'totalCount' => ['description' => '总数据条数。', 'type' => 'integer', 'format' => 'int32', 'example' => '5'],
'maxResults' => ['description' => '分页查询时每页的最大条目数。最大值为 100。默认值为 20。', 'type' => 'integer', 'format' => 'int32', 'example' => '20'],
'apiMcpServerCores' => [
'description' => 'MCP Core服务列表',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'id' => ['description' => 'MCP Core 服务 ID。', 'type' => 'string', 'example' => 'UFGUzvjc3cdrPy6Z'],
'oauthClientId' => ['description' => '选择自定义OAuth配置时的自定义OAuth Client ID。'."\n"
."\n"
.'`仅支持 Web/Native 应用,且 OAuth 范围必须包含 /acs/mcp-server`', 'type' => 'string', 'deprecated' => false, 'example' => '403*************370', 'pattern' => '', 'readOnly' => false, 'default' => ''],
'createTime' => ['description' => '创建时间', 'type' => 'string', 'format' => 'iso8601', 'example' => '2025-05-16 11:17:02'],
'vpcWhitelists' => [
'description' => '每一个限定的VPC白名单,值为来源VPC ID。',
'type' => 'array',
'items' => ['description' => '每一个限定的VPC白名单,值为来源VPC ID。', 'type' => 'string', 'deprecated' => false, 'example' => '[]', 'readOnly' => false],
'deprecated' => false,
'readOnly' => false,
],
'enableAssumeRole' => ['description' => '是否开启多账号访问。', 'type' => 'boolean', 'deprecated' => false, 'example' => 'true', 'readOnly' => false, 'default' => ''],
'assumeRoleOverridePolicy' => ['description' => '角色扮演时的权限策略', 'type' => 'string', 'format' => 'json', 'deprecated' => false, 'example' => '{"Version":"1","Statement":[{"Effect":"Allow","Action":["ecs:Describe*"],"Resource":"*"}]}', 'pattern' => '', 'readOnly' => false, 'default' => ''],
'assumeRoleName' => ['description' => '开启多账号访问进行跨账号操作时,扮演的目标账号 RAM角色名称。', 'type' => 'string', 'deprecated' => false, 'example' => 'test', 'pattern' => '', 'readOnly' => false, 'default' => ''],
'publicAccessType' => [
'description' => '公网访问类型:允许公网访问、不允许公网访问、继承账号配置。'."\n"
.'`public`(开启), `private`(关闭), `inherit`(跟随账号配置)',
'type' => 'string',
'deprecated' => false,
'enumValueTitles' => ['private' => '关闭', 'public' => '开启', 'inherit' => '跟随账号配置'],
'example' => 'public',
'pattern' => '',
'readOnly' => false,
'default' => '',
],
'enableCustomVpcWhitelist' => ['description' => '是否开启自定义VPC白名单,不开启则跟随账户级别的配置。', 'type' => 'boolean', 'deprecated' => false, 'example' => 'true', 'readOnly' => false, 'default' => ''],
'urls' => [
'description' => 'SSE 协议连接信息。',
'type' => 'object',
'properties' => [
'sse' => ['description' => 'SSE 协议连接信息。', 'type' => 'string', 'deprecated' => false, 'example' => 'https://openapi-mcp.cn-hangzhou.aliyuncs.com/accounts/xxxx/id/xxxx/sse', 'pattern' => '', 'default' => ''],
'mcp' => ['description' => 'streamable HTTP 协议连接信息,推荐使用。', 'type' => 'string', 'deprecated' => false, 'example' => 'https://openapi-mcp.cn-hangzhou.aliyuncs.com/accounts/xxxx/id/xxxx/mcp', 'pattern' => '', 'default' => ''],
'vpcSse' => ['description' => 'VPC 下 SSE 协议连接地址。', 'type' => 'string', 'deprecated' => false, 'example' => 'https://openapi-mcp-cn.vpc-proxy.aliyuncs.com/accounts/xxxx/id/xxxx/sse', 'pattern' => '', 'default' => ''],
'vpcMcp' => ['description' => 'VPC 下 streamable HTTP 协议连接地址。', 'type' => 'string', 'deprecated' => false, 'example' => 'https://openapi-mcp-cn.vpc-proxy.aliyuncs.com/accounts/xxxx/id/xxxx/mcp', 'pattern' => '', 'default' => ''],
],
'deprecated' => false,
],
'requiredRamPolicy' => ['description' => '使用该 MCP Core Server 所需的 RAM 策略。', 'type' => 'string', 'deprecated' => false, 'example' => '{"Version":"1","Statement":[{"Effect":"Allow","Action":["ecs:Describe*"],"Resource":"*"}]}', 'pattern' => '', 'default' => ''],
],
'description' => '',
],
],
],
'description' => '',
],
],
],
'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' => '列出ApiMcpServerCore',
'summary' => '列出资源ApiMcpServerCore。',
'description' => '该接口查询的是公开信息,不涉及账号特殊归属等信息,故不支持授权。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"A707AFA8-1A4C-5B2A-A165-8436C1EA38DB\\",\\n \\"nextToken\\": \\"AAAAAZjtYxxxxxxxx\\",\\n \\"totalCount\\": 5,\\n \\"maxResults\\": 20,\\n \\"apiMcpServerCores\\": [\\n {\\n \\"id\\": \\"UFGUzvjc3cdrPy6Z\\",\\n \\"oauthClientId\\": \\"403*************370\\",\\n \\"createTime\\": \\"2025-05-16 11:17:02\\",\\n \\"vpcWhitelists\\": [\\n \\"[]\\"\\n ],\\n \\"enableAssumeRole\\": true,\\n \\"assumeRoleOverridePolicy\\": \\"{\\\\\\"Version\\\\\\":\\\\\\"1\\\\\\",\\\\\\"Statement\\\\\\":[{\\\\\\"Effect\\\\\\":\\\\\\"Allow\\\\\\",\\\\\\"Action\\\\\\":[\\\\\\"ecs:Describe*\\\\\\"],\\\\\\"Resource\\\\\\":\\\\\\"*\\\\\\"}]}\\",\\n \\"assumeRoleName\\": \\"test\\",\\n \\"publicAccessType\\": \\"public\\",\\n \\"enableCustomVpcWhitelist\\": true,\\n \\"urls\\": {\\n \\"sse\\": \\"https://openapi-mcp.cn-hangzhou.aliyuncs.com/accounts/xxxx/id/xxxx/sse\\",\\n \\"mcp\\": \\"https://openapi-mcp.cn-hangzhou.aliyuncs.com/accounts/xxxx/id/xxxx/mcp\\",\\n \\"vpcSse\\": \\"https://openapi-mcp-cn.vpc-proxy.aliyuncs.com/accounts/xxxx/id/xxxx/sse\\",\\n \\"vpcMcp\\": \\"https://openapi-mcp-cn.vpc-proxy.aliyuncs.com/accounts/xxxx/id/xxxx/mcp\\"\\n },\\n \\"requiredRamPolicy\\": \\"{\\\\\\"Version\\\\\\":\\\\\\"1\\\\\\",\\\\\\"Statement\\\\\\":[{\\\\\\"Effect\\\\\\":\\\\\\"Allow\\\\\\",\\\\\\"Action\\\\\\":[\\\\\\"ecs:Describe*\\\\\\"],\\\\\\"Resource\\\\\\":\\\\\\"*\\\\\\"}]}\\"\\n }\\n ]\\n}","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。例如,短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。'."\n"
.'短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。', '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。例如,短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。'."\n"
.'短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。', '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'],
'toolAlias' => ['description' => '工具别名,修改为自定义名称,例如 list_ecs_regions,支持英文字符、数字、-、_组成,不同别名不允许重复。', 'type' => 'string', 'example' => 'list_ecs_regions'],
'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。例如,短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。'."\n"
.'短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。', '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 \\"toolAlias\\": \\"list_ecs_regions\\",\\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"}]',
],
'ListProducts' => [
'summary' => '查询阿里云全部云产品,支持通过关键词过滤',
'path' => '/listProducts',
'methods' => ['get'],
'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' => 'filter',
'in' => 'query',
'schema' => ['description' => '查询的过滤条件,若不输入则查询阿里云的全部云产品。', 'type' => 'string', 'required' => false, 'example' => 'ECS', 'title' => '查询的过滤条件,若不输入则查询阿里云的全部云产品。'],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'products' => [
'description' => '产品列表',
'type' => 'array',
'items' => [
'description' => '产品列表',
'type' => 'object',
'properties' => [
'code' => ['description' => '产品代码,用于唯一标识产品', 'type' => 'string', 'example' => 'Ecs'],
'name' => ['description' => '云产品中文名称', 'type' => 'string', 'example' => '云服务器 ECS'],
'description' => ['description' => '云产品描述信息', 'type' => 'string', 'example' => '场景化封装数据智能分析管理。为云上的文档、图片数据,提供一站式数据处理、分析、检索等管控体验。针对不同的业务场景,封装整合完整的处理能力,让数据快速流转。'],
'shortName' => ['description' => '云产品简称', 'type' => 'string', 'example' => 'ECS'],
'group' => ['description' => '云产品所属分组', 'type' => 'string', 'example' => '弹性计算'],
'style' => ['description' => 'API风格', 'type' => 'string', 'example' => 'RPC'],
'versions' => [
'description' => 'API版本',
'type' => 'array',
'items' => ['description' => 'API版本', 'type' => 'string', 'example' => '2022-02-20'],
],
'recommendVersions' => [
'title' => '推荐版本',
'type' => 'array',
'items' => ['title' => '推荐版本', 'type' => 'string', 'example' => '2014-05-26'],
],
'defaultVersion' => ['description' => '默认API版本', 'type' => 'string', 'example' => '2014-05-26'],
'categoryName' => ['description' => '产品一级分类名称', 'type' => 'string', 'example' => 'ECS'],
'category2Name' => ['description' => '产品二级分类名称', 'type' => 'string', 'example' => 'Computing'],
],
],
],
'requestId' => ['description' => '请求ID', 'type' => 'string', 'example' => '9BFC4AC1-6BE4-5405-BDEC-CA288D404812'],
],
'description' => '',
],
],
],
'errorCodes' => [],
'title' => '查询阿里云云产品',
'description' => '该接口查询的是公开信息,不涉及账号特殊归属等信息,故不支持授权。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"products\\": [\\n {\\n \\"code\\": \\"Ecs\\",\\n \\"name\\": \\"云服务器 ECS\\",\\n \\"description\\": \\"场景化封装数据智能分析管理。为云上的文档、图片数据,提供一站式数据处理、分析、检索等管控体验。针对不同的业务场景,封装整合完整的处理能力,让数据快速流转。\\",\\n \\"shortName\\": \\"ECS\\",\\n \\"group\\": \\"弹性计算\\",\\n \\"style\\": \\"RPC\\",\\n \\"versions\\": [\\n \\"2022-02-20\\"\\n ],\\n \\"recommendVersions\\": [\\n \\"2014-05-26\\"\\n ],\\n \\"defaultVersion\\": \\"2014-05-26\\",\\n \\"categoryName\\": \\"ECS\\",\\n \\"category2Name\\": \\"Computing\\"\\n }\\n ],\\n \\"requestId\\": \\"9BFC4AC1-6BE4-5405-BDEC-CA288D404812\\"\\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。例如,短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。'."\n"
.'短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。', '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。例如,短信服务的OpenAPI门户URL为https://api.aliyun.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。'."\n"
.'短信服务的OpenAPI门户URL为https://api.alibabacloud.com/product/Dysmsapi,根据该URL获取短信服务的产品CODE为Dysmsapi。', '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'],
'toolAlias' => ['description' => '工具别名,修改为自定义名称,例如 list_ecs_regions,支持英文字符、数字、-、_组成,不同别名不允许重复。', 'type' => 'string', 'required' => false, 'example' => 'list_ecs_regions'],
'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' => '该幂等参数有误,请检查。'],
['errorCode' => 'InvalidParam.AdditionalApiDescription.ToolAlias', 'errorMessage' => 'ToolAlias \'%s\' is invalid. It must be 1-64 characters, start with a letter, and contain only letters, digits, underscores, and hyphens.', '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 工具名称已经存在。'],
['errorCode' => 'Exists.ToolAlias', 'errorMessage' => 'Duplicate tool alias \'%s\' found. Each tool alias must be unique within an MCP server.', 'description' => ''],
['errorCode' => 'Conflict.ToolAlias', 'errorMessage' => 'Tool alias \'%s\' conflicts with an existing tool name in this MCP server.', 'description' => ''],
],
],
'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"}]',
],
'UpdateApiMcpServerCore' => [
'summary' => '更新ApiMcpServerCore。',
'path' => '/apimcpservercore',
'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 发起请求,系统会将其视为同一次操作,从而避免重复创建或更新。ClientToken 由客户端生成,建议在重试场景中使用相同的 ClientToken。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000'],
],
[
'name' => 'id',
'in' => 'query',
'schema' => ['description' => '创建成功的 API MCP Core 服务 ID。', 'type' => 'string', 'required' => true, 'example' => 'v6ZZ7ftCzEILW***'],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求body。',
'type' => 'object',
'properties' => [
'oauthClientId' => ['description' => '选择自定义OAuth配置时的自定义OAuth Client ID。'."\n"
."\n"
.'`仅支持 Web/Native 应用,且 OAuth 范围必须包含 /acs/mcp-server`', 'type' => 'string', 'required' => false, 'example' => '403*************370'],
'vpcWhitelists' => [
'description' => '每一个限定的VPC白名单,值为来源VPC ID。',
'type' => 'array',
'items' => ['description' => '每一个限定的VPC白名单,值为来源VPC ID。', 'type' => 'string', 'required' => false, 'example' => 'vpc-j6cgd2if5lg**0xs6m5se'],
'required' => false,
],
'enableAssumeRole' => ['description' => '是否开启多账号访问。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
'assumeRoleOverridePolicy' => ['description' => 'AssumeRole 覆盖策略', 'type' => 'string', 'required' => false, 'example' => '{\\"Version\\":\\"1\\",\\"Statement\\":[{\\"Effect\\":\\"Allow\\",\\"Action\\":[\\"ecs:Describe*\\"],\\"Resource\\":\\"*\\"}]}'],
'assumeRoleName' => ['description' => '开启多账号访问进行跨账号操作时,扮演的目标账号 RAM角色名称。', 'type' => 'string', 'required' => false, 'example' => 'test'],
'publicAccessType' => [
'description' => '公网访问类型:允许公网访问、不允许公网访问、继承账号配置。'."\n"
.'`public`(开启), `private`(关闭), `inherit`(跟随账号配置)',
'type' => 'string',
'required' => false,
'enumValueTitles' => ['private' => '关闭', 'public' => '开启', 'inherit' => '跟随账号配置'],
'example' => 'public',
],
'enableCustomVpcWhitelist' => ['description' => '是否开启自定义VPC白名单,不开启则跟随账户级别的配置。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
'required' => false,
],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'requestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => ' '."\n"
.'9BFC4AC1-6BE4-5405-BDEC-CA288D404812'."\n"],
],
'description' => '',
],
],
],
'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' => '该幂等参数有误,请检查。'],
],
404 => [
['errorCode' => 'NotFound.ApiMcpServer', 'errorMessage' => 'Specified MCP server not found.', 'description' => '指定id的MCP服务不存在。'],
],
],
'title' => '更新ApiMcpServerCore',
'description' => '该接口查询的是公开信息,不涉及账号特殊归属等信息,故不支持授权。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [],
'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' => 'ListApiMcpServerSystemTools',
'description' => '查询 MCP 服务支持的系统工具',
'operationType' => 'list',
'ramAction' => [
'action' => 'openapiexplorer:ListApiMcpServerSystemTools',
'authLevel' => 'operate',
'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/*'],
],
],
],
[
'apiName' => 'DeleteApiMcpServerCore',
'description' => '删除ApiMcpServerCore',
'operationType' => 'delete',
'ramAction' => [
'action' => 'openapiexplorer:DeleteApiMcpServerCore',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'OpenAPIExplorer', 'resourceType' => 'ApiMcpServerCore', 'arn' => 'acs:openapiexplorer::{#accountId}:apimcpservercore/{#Id}'],
],
],
],
[
'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' => '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' => 'CreateApiMcpServerCore',
'description' => '创建 API MCP Core服务',
'operationType' => 'create',
'ramAction' => [
'action' => 'openapiexplorer:CreateApiMcpServerCore',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'OpenAPIExplorer', 'resourceType' => 'ApiMcpServerCore', 'arn' => 'acs:openapiexplorer::{#accountId}:apimcpservercore/*'],
],
],
],
[
'apiName' => 'UpdateApiMcpServerCore',
'description' => '更新ApiMcpServerCore',
'operationType' => 'update',
'ramAction' => [
'action' => 'openapiexplorer:UpdateApiMcpServerCore',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'OpenAPIExplorer', 'resourceType' => 'ApiMcpServerCore', 'arn' => 'acs:openapiexplorer::{#accountId}:apimcpservercore/{#Id}'],
],
],
],
[
'apiName' => 'ListApiMcpServerCores',
'description' => '列出ApiMcpServerCore',
'operationType' => 'list',
'ramAction' => [
'action' => 'openapiexplorer:ListApiMcpServerCores',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'OpenAPIExplorer', 'resourceType' => 'ApiMcpServerCore', 'arn' => 'acs:openapiexplorer::{#accountId}:apimcpservercore/*'],
],
],
],
[
'apiName' => 'GetApiMcpServerUserConfig',
'description' => '获取API MCP Server全局配置',
'operationType' => 'get',
'ramAction' => [
'action' => 'openapiexplorer:GetApiMcpServerUserConfig',
'authLevel' => 'resource',
'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' => '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' => 'GetApiMcpServerCore',
'description' => '查询 ApiMcpServerCore',
'operationType' => 'get',
'ramAction' => [
'action' => 'openapiexplorer:GetApiMcpServerCore',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'OpenAPIExplorer', 'resourceType' => 'ApiMcpServerCore', 'arn' => 'acs:openapiexplorer::{#accountId}:apimcpservercore/{#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' => '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' => '*'],
],
],
],
],
'resourceTypes' => [
['validationType' => 'always', 'resourceType' => 'ApiMcpServer', 'arn' => 'acs:openapiexplorer::{#accountId}:apimcpserver/*'],
['validationType' => 'always', 'resourceType' => 'ApiMcpServerCore', 'arn' => 'acs:openapiexplorer::{#accountId}:apimcpservercore/{#Id}'],
['validationType' => 'always', 'resourceType' => 'ApiMcpServer', 'arn' => 'acs:openapiexplorer::{#accountId}:apimcpserver/{#id}'],
['validationType' => 'always', 'resourceType' => 'ApiMcpServerCore', 'arn' => 'acs:openapiexplorer::{#accountId}:apimcpservercore/*'],
['validationType' => 'always', 'resourceType' => 'ApiMcpServerUserConfig', 'arn' => 'acs:openapiexplorer::{#accountId}:apimcpserveruserconfig'],
],
],
];