MSP430F6736A UART configuration via Code Composer
The entire interrupt handler function is wrong.

    while  (!(UCA1IFG &amp; UCA1IV));    //  UCA1 TX  buffer  ready?


UCA1IV is a vector register, not an interrupt flag. To wait for the TX buffer being ready, you must check for the UCTXIFG bit being set.

    UCA1TXBUF = UCA0RXBUF;


This line happens to be correct.

    if (UCA1TXBUF == UCA0RXBUF)


Accessing registers has side effects. Reading UCA1TXBUF might actually work, but reading UCA0RXBUF removes the next byte from the buffer, if it exists.

And this comparison does not make sense; you echoed the received byte in the previous line, so this condition, if it worked, would always be true.

        P4DIR |= BIT6;


You do not need to reinitialize this bit.

        P4OUT &amp;= ~BIT6; // turn on LED


This does not change the state of the LED, because the bit has the same value you initialized it with.

The interrupt function should look somewhat like this:

    while (!(UCA1IFG &amp; UCTXIFG));    // UCA1 TX buffer ready?
    UCA1TXBUF = UCA0RXBUF;
    P4OUT ^= BIT6; // toggle LED