I usually pass in the list as a comma separated string, and then use a table valued function to 'split' the string into a table that I can then use to join with in another query.
DECLARE @Settings TABLE (Sid INT)
INSERT INTO @Settings(Sid)
SELECT CAST(Items AS INT) FROM dbo.Split(@SettingsParameter, ',')
Unless of course you are using SQL Server 2008, then I would use the table valued parameters.