Is it possible to list unspent transactions...
You want to list unspent outputs, not "unspent transactions", for which you can use the appropriately named unspent_outputs
command.
...and use them to create a raw transaction?
You can use transfer
to create a transaction using specific address indexes (e.g. the indexes that have the outputs you wish to spend), or sweep_single
to create a tx using a specific output index and key image or sweep_all
(specifying indexes to send).
If by "raw" you mean "do not immediately send", you can create a transaction using the monero-wallet-rpc
versions of transfer, sweep_single or sweep_all, passing in the flag do_not_relay: true
, which will return to you a transaction you can send later using submit_transfer.
If by "raw" you mean "unsigned", see this QA: How do I use cold transaction signing?