马氏,故扶风人,至公高祖而徙处云中。赠太师讳某者,于公为曾祖。赠太师、中书令讳某者,于公为祖。龙捷左厢都指挥使、江州防御使、赠太师、中书令、尚书令蔡公讳某者,于公为父。蔡公从太祖定天下,力战有功。当是时,云中已为契丹所得,故马氏又徙处浚仪,今开封府祥符也。
公讳某,字子元。蔡公之终也,年七岁,太祖召见禁中,有司言例当补殿直,诏特授西头供奉官,而赐以名。开宝五年,年十八,监彭州兵马,以严饬见惮如老将。太平兴国三年,领兵戍秦州清水,奸人李飞雄乘驿称诏捕公及秦陇巡检刘文裕等,将击之秦州,因盗库兵以反。公辨其诈,与文裕执飞雄治杀之。五年,监潭州兵马,改东头供奉官。
雍熙二年,又监博州兵马。刘延让败于君子驿,而契丹归矣,公方料丁壮,集刍粮,缮城治械如寇至。吏民初不悦其生事也,已而契丹果至,度不可攻,乃去。四年,改西京作坊副使,将屯于冀州。端拱元年,移知定远军。时议发河南十三州之民转饟河北,公告转运使樊知古,此军聚兵少而积粟多,簸其腐尚可得十七。知古用此得粟五十万斛,以罢河南之役。事闻朝廷,太宗嘉之。二年,深州新蹂于契丹,城郭庐舍多坏而流民众,乃移公知深州。公至数月,则坏者完,流者复,举州忘其寇戎之故而以公为能抚我。会保州不治,移往代之。
淳化二年,又移知庆州。羌万人以怨程德元来寇,公诱其渠帅,谕以威信,即皆引去。四年,迁西京作坊使知梓州。五年,李顺为乱于蜀之西川,以公往讨,又以为先锋,平剑州。召还,至三泉,而复以公与王继恩讨贼。继恩怒公抗直,使守彭州,尽收其军,而与之羸卒三百。贼率其众至,号十万,公力战一日,亡其卒大半,乃夜独出,招救兵复入,贼终不能得城而以败去。除成都府兵马钤辖,迁洛苑使。五年,除蜀、汉九州岛都巡检使,已而又兼成都府兵马钤辖。
真宗即位,改内苑使。蜀卒刘旰聚党数千人为乱,所攻数州,至辄取之。公以卒三百,追至蜀州,与战,旰走卭州,而招安使上官正召公归成都计事,公为正画曰:“贼破卭州,必乘胜劫掠,度江薄我,既息而战,我军虽倍,未易敌也,不如迎其弊急击,破之必矣!”遂行,次方井,与正合,杀旰等无噍类。真宗赐书奖谕,赏以锦袍金带。
咸平元年,加澄州刺史,知秦州。诸羌质子有三十年不释者,公悉归之。诸羌德公,讫公去,无一人犯塞。小泉银坑久不发,掌吏尽产以偿岁课,而责之不已,公奏得释,而归其产。四年,就除西上合门使,知成都府,兼本州岛兵马钤辖。有告龙骑士谋为变者,所引以千数,公捕杀其首七人,而置其余无所问。自乾德后,岁漕蜀物,以富人为送吏,多坐漂失籍其家。公奏择三班使臣及三司军大将代之,而课其漕事为赏罚,至今便之。六年,移鄜延路驻泊兵马都总管,兼知延州。蜀人于公去,皆环以泣。公至延州,羌方以兵觑边,会上元,开门张灯,视以无为,而羌卒不能为寇。又移知镇州,兼本州岛兵马都总管。景德元年,契丹入边,民入保城,公与之约:“盗一钱者死。”有盗钱二百者,公即杀之。于是,自澶以北,城郭皆昼闭。诏使过,公辄留之,而募人间行送诏,皆得其报以闻。又以便宜使所至受诸漕挽给边之物,故契丹欲虏掠,无所得。车驾次澶州,大将王超提卒数十万,逗留不赴,公屡趣之不为动,移书谯让,乃始出师,犹辞以中渡无桥。则公先已度材,一夕而桥就。上闻,手诏褒之,且知公果可以属大事也。二年,移知定州,又除东上合门使,枢密院都承旨。三年,遂以检校太保签书枢密院事。