김원상은 충렬왕대에 과거에 급제하여 주부(注簿)에 있었다. 이때 내시 박윤재(朴允材)와 함께 궁중 잔치에서 왕의 총애를 받던 기생 적선래(謫仙來)에게 자신이 지은 태평곡(太平曲)을 부르게 하였다. 이 때문에 충렬왕에 의해 발탁되어 높은 관직에 오를 수 있었다.
이후 그는 비서윤(秘書尹), 지감찰사사(知監察司事), 우부승지(右副承旨)에 올랐다가 파면되었으나, 다시 왕명으로 복직되어 전주(銓注)를 맡게 되었다. 이때 그는 홍자번(洪子藩)과 함께 오잠(吳潛)의 죄를 원의 사신 첩목아불화(帖木兒不花)에게 고하였다. 그러나 오히려 오잠에게 참소를 당하여 동지밀직(同知密直) 김태현(金台鉉) 등에게 체포를 당할 뻔하였다. 이 일이 있은 지 얼마 뒤에 좌승지(左承旨)에 올랐다가 지신사(知申事)가 되었다.
특히, 김원상은 홍자번이 충렬왕과 충선왕의 관계를 회복하려고 하자, 충렬왕을 모시던 자신과 같은 신하들에게 피해가 갈 것을 우려하여 김도(金瑫)에게 전주권(인사권)을 넘기려고 하였으나 실패하였다. 그는 또한 조적(曹頔)과 채하중(蔡河中), 유청신(柳淸臣)과 오잠(吳潛) 등 심왕(瀋王) 왕고(王暠)와 협력하여 입성책동(立省策動)을 벌이려는 세력과 매우 친숙한 관계를 유지하였다. 그는 결국 순군에 하옥되고 유배를 당하였다가 원 황제의 명으로 사면되었다. 이와 같은 그의 정치 활동으로 『고려사(高麗史)』 간신(姦臣) 열전에 그의 전기가 수록되었다.