Weakly nonlinear internal wave–wave interaction is a key mechanism that cascades energy from large to small scales, leading to ocean turbulence and mixing. Oceans typically have a non-uniform density stratification profile; moreover, submarine topography leads to a spatially varying bathymetry (
$h$
). Under these conditions and assuming mild-slope bathymetry, we employ multiple-scale analysis to derive the wave amplitude equations for weakly nonlinear wave–wave interactions. The waves are assumed to have a slowly (rapidly) varying amplitude (phase) in space and time. For uniform stratifications, the horizontal wavenumber (
$k$
) condition for waves (1, 2, 3), given by
${k}_{(1,a)}+{k}_{(2,b)}\!+\!{k}_{(3,c)}\!=\!0$
, is unaffected as
$h$
is varied, where
$(a,b,c)$
denote the mode number. Moreover, the nonlinear coupling coefficients (NLC) are proportional to
$1/h^2$
, implying that triadic waves grow faster while travelling up a seamount. For non-uniform stratifications, triads that do not satisfy the condition
$a=b=c$
may not satisfy the horizontal wavenumber condition as
$h$
is varied, and unlike uniform stratification, the NLC may not decrease (increase) monotonically with increasing (decreasing)
$h$
. NLC, and hence wave growth rates for weakly nonlinear wave–wave interactions, can also vary rapidly with
$h$
. The most unstable daughter wave combination of a triad with a mode-1 parent wave can also change for relatively small changes in
$h$
. We also investigate higher-order self-interactions in the presence of a monochromatic, small-amplitude topography; here, the topography behaves as a zero-frequency wave. We derive the amplitude evolution equations and show that higher-order self-interactions might be a viable mechanism of energy cascade.