W okresie 1991–1993 zasiadał w Sejmie I kadencji. Został wybrany z ramienia PC, w 1992 przeszedł do Ruchu dla Rzeczypospolitej, założonym przez byłego premiera Jana Olszewskiego, którego był w tym czasie bliskim współpracownikiem. Był rozpracowywany przez zespół pułkownika Jana Lesiaka, w styczniu 1993 nieustaleni sprawcy włamali się do jego biura poselskiego. Funkcjonariusze UOP zajmowali się też sprawą jego pracy magisterskiej. Po odejściu z RdR współtworzył Zjednoczenie Polskie. W wyborach parlamentarnych w 1993 bez powodzenia ubiegał się o reelekcję z listy PC w okręgu podwarszawskim.

Przez kilka lat pracował jako redaktor w wydawnictwie. W 1997 po raz drugi uzyskał mandat poselski z ramienia Akcji Wyborczej Solidarność. Reprezentował Sejm w Zgromadzeniu Parlamentarnym Rady Europy. W 2001 bez powodzenia kandydował na kolejną kadencję z listy AWSP. Był członkiem Ruchu Społecznego AWS, a od 2004 do 2007 należał do Partii Centrum. W 2011 był kandydatem do Senatu z ramienia Polskiej Partii Pracy – Sierpień 80, a w 2015 startował do Sejmu z listy komitetu wyborczego Kukiz’15, zorganizowanego przez Pawła Kukiza. W 2014 został przewodniczącym nowo powołanej partii Wspólnota, wyrejestrowanej w 2019.