You cannot use parameters with OPENQUERY, but you must provide a complete query string. Furthermore, table-valued parameters does not make sense in the context of a linked server, since this is a proprieatry feature to SQL Server. Recall that a linked server
can be any data source, Oracle, Access, you name it.
For this particular case, you would to construct a comma-separated list:
SELECT @csv = (SELECT quotename(VAR1), '''') + ','
FROM @VAR
FOR XML PATH(''), TYPE).value('.', 'nvarchar(MAX)')
SELECT @csv = substring(@csv, 1, len(@csv) - 1)
SELECT @query = dbo.quotestring('SELECT * FROM pubs.dbo.authors WHERE state IN (' + @csv + ')', '''')
SELECT @sql = dbo.quotestring('SELECT * FROM OPENQUERY(MyLinkedServer' + @query + ')', '''')
EXEC (@sql)
See also
http://www.sommarskog.se/dynamic_sql.html#OPENQUERY