I'd like to check if my understanding of the following is correct: consider a contravariant object $x^\mu\in V$, where $V$ is a vector space with a metric $g^{\mu\nu}$. From linear algebra, we know that we can build the dual space $V^*$ by exploiting the metric: $$x^\mu\in V\to g(x^\mu,y^\nu)=x^\mu g_{\mu\nu} y^\nu\in \mathbb R $$ for some other vector $y^\nu$. So we can define a covariant object $y_\mu:= g_{\mu\nu}y^\nu$ and use it to obtain scalars by contraction with covariant vectors, as $x^\mu y_\mu$, or equivalently $x_\mu y^\mu$. In my understanding then the act of raising and lowering an index is a purely notational convention; the mathematics behind it is what I have done above with the scalar product. Is this correct? Many books don't stress this point enough in my opinion.
Thanks to everyone for your comments and answers. This is my full takeaway: please feel free to read it and correct it if necessary.
Let $v\in V$ be a vector in a four-dimensional vector space with basis $(e_\mu)$. In the index notation, we care about the components of $v$, denoted as $v^{\mu}$ for $\mu=0,1,2,3$. Sometimes, when there is no potential for confusion (although sometimes even when there is) $v^\mu$ is also taken to mean the vector $v$ itself. Explicitly, \begin{equation} v=v^\mu e_\mu=(v^0, v^1, v^2, v^3). \end{equation} A matrix $M$ acting on $V$ is also written in terms of its entries $M_{\mu\nu}$.
Now assume that $V$ has a metric, that is, a bilinear form $g: V\times V\to \mathbb R$ with the usual properties. As every linear functional can be written in terms of the metric as \begin{equation} f_w:=g(\cdot,w):V\to \mathbb R \end{equation} there is an induced isomorphism between $V$ and the dual space $V^*$: it is enough to specify which vector $w$ determines $f_w$. In index notation, consider the product \begin{equation} g(v,w):=v^T g w=v^\mu g_{\mu\nu}w^\nu \end{equation} for a fixed $w$ and any $v$, where we have introduced the Einstein's convention of summing over repeated indices. Forgetting about the '$\cdot$' part of the equation, the aforementioned isomorphism can be written in components as \begin{equation} w^\nu\to g_{\mu\nu} w^\nu:=w_\mu, \end{equation} where we have obtained an object with a lowered index (covariant vector, or covector). To be more specific, we should denote $w_\mu$ by some different letter as it lives in a different space (I have seen the use of the so called 'musical notation' $(w^\flat)_\mu=g_{\mu\nu} w^\nu$, where the flat symbol corresponds to the lowering of an index. Of course we can extend this discussion to the opposite direction, and consider the sharp objects obtained by raising an index). As the space $V^*$ is described by the (co-)basis $\alpha^\mu$ such that $\alpha^\mu(e^\nu)=\delta_\nu^\mu$, the actual covector is written as $w=w_\mu \alpha^\mu$.
When $v=w$, we have in particular \begin{equation} g(v,v)=g_{\mu\nu}v^\mu v^\nu=v_\nu v^\nu=v^2. \end{equation} If the chosen metric is the Minkowski metric $\eta_{\mu\nu}=\eta^{\mu\nu}$ with signature $(+,-,-,-)$, all of the above holds globally, as in the entire space $V=\mathbb R^4$. But in a more general manifold $M$ endowed with any metric $g$, the isomorphism is only locally defined between each tangent space $T_p V$ and its dual.