def _create_and_decorate_tool()

in src/alibaba_cloud_ops_mcp_server/tools/api_tools.py [0:0]


def _create_and_decorate_tool(mcp: FastMCP, service: str, api: str):
    """Create a tool function for an AlibabaCloud openapi."""
    api_meta, _ = ApiMetaClient.get_api_meta(service, api)
    fields = _create_function_schemas(service, api, api_meta).get(api, {})
    description = api_meta.get('summary', '')
    dynamic_lambda = _create_tool_function_with_signature(service, api, fields, description)
    decorated_function = mcp.tool(name=api)(dynamic_lambda)

    return decorated_function