Well,It depends on the exact Merkle-Damgaard hash.
MD5 will literally take an arbitrary length; that's because the value placed in the padding is actually computed modulo $2^{64}$.
For SHA-1 and the SHA-2 hashes, yes, you are correct; there is an upper bound on the length of the preimages that could potentially be hashed; for SHA-1, SHA-224 and SHA-256, it's $2^{64}-1$ bits; for SHA-384, SHA-512, SHA-512/224 and SHA-512/256, it's $2^{128}-1$ bits.
On the other hand, for all practical purposes, these limits are effectively infinite. For example, with SHA-1, the limit of $2^{64}-1$ bits, that's $2^{55}$ blocks; even if we were able to the compression function in 10nsec, that means it'd take us over 10 years to hash a single value that size. It's unlikely that anyone would actually attempt that.