W czasie wyborów prezydenckich w 2000 był doradcą Andrzeja Olechowskiego i pełnomocnikiem jego komitetu wyborczego. Organizował Stowarzyszenie Obywatele dla Rzeczypospolitej, którego został wiceprzewodniczącym. Przystąpił do Platformy Obywatelskiej, był jej ekspertem prawnym i członkiem rady krajowej partii. W wyborach parlamentarnych w 2001 uzyskał mandat senatora V kadencji w okręgu podwarszawskim z ramienia komitetu Blok Senat 2001. Zasiadał w Komisji Ustawodawstwa i Praworządności. W 2005 po raz drugi został senatorem z rekomendacji Platformy Obywatelskiej. W Senacie VI kadencji pracował ponownie w Komisji Praw Człowieka i Praworządności oraz w Komisji Ustawodawczej.
We wrześniu 2007 zrezygnował z członkostwa w PO. W przedterminowych wyborach parlamentarnych w tym samym roku bezskutecznie kandydował do Senatu z okręgu warszawskiego jako bezpartyjny przedstawiciel Lewicy i Demokratów (z rekomendacji Partii Demokratycznej). W 2009 przystąpił do Stronnictwa Demokratycznego, pełnił funkcję skarbnika tej partii. W wyborach w 2015 jako kandydat niezależny startował ponownie bez powodzenia do Senatu, zajmując przedostatnie, 5.