Just one comment...yes, SCOPE_IDENTITY works great, when you are inserting one row and therefore only expecting a single scalar value.
And it sounds like, from what you were saying, your proc is designed to only insert one row.
Just a note...SCOPE_IDENTITY isn't going to help much if you insert multiple rows in an insert statement. For that, the OUTPUT clause that Naomi and others suggested will give you the newly assigned identity-PK for "all" the newly inserted rows.
The other nice thing about OUTPUT, as others mentioned - if you have calculated/default values in a table, OUTPUT will also allow you to get those as well. OUTPUT is SQL Server's way of saying, "here is what the full row(s) look like , after the INSERT is finished
OUTPUT can seek like overkill if your proc is only geared towards one row - but just something to always be aware of.