Ngày xưa, có một thư sinh nghèo học hành rất giỏi, hy vọng thế nào rồi cũng được đỗ cao, làm nên nghiệp lớn. Chàng rất sáng dạ, học đâu nhớ đấy, tấn tới lạ thường, thầy dạy cùng bạn bè đều mến phục. Thông thuộc hết kinh sử, chàng lại có tài làm thi phú rất hay.

Thuở bấy giờ người ta vẫn tin là học tài thi phận và kẻ sĩ muốn vược thang mây thì phải làm việc bố thí hoặc điều thiện trước lúc thi cử. Chàng thư sinh nghèo quá không làm được việc bố thí mới nghĩ đến cách làm điều thiện. Một hôm trong khi dạo chơi ngoài đồng, chàng thấy một lũ trẻ chăn trâu đang reo hò kéo một con chạch lớn, bàn tính với nhau làm thịt nướng ăn. Thấy bộ dạng buồn bã của con vật sắp chết, hai mắt ứa lệ, thư sinh liền nghĩ ngay đến việc làm điều thiện, bỏ ra đồng tiền dành dụm được bấy lâu để mua lại con chạch của lũ trẻ. Xong rồi chàng đưa con vật đến bờ sông cái để phóng sinh, sau khi nhắn nhủ nó rằng:

“Chạch ơi, người ta thường bảo “cứu vật vật trả ơn, cứu nhơn nhơn trả oán”, ta cứu sống cho mày hôm nay, mong rằng kỳ thi năm tới may sẽ nhớ ơn phù hộ cho ta làm văn trôi chảy và đỗ đạt vẻ vang”.

Sau khi thả con chạch xuống sông, thư sinh yên lòng trở về, ngày đêm đèn sách hăng hái thêm lên. Kỳ thi gần tới, chàng lạy bàn thờ tổ tiên và cha mẹ rồi vác lều chõng ra kinh đô. Ai cũng nghĩ là với tài học xuất chúng như chàng ắt thế nào cũng được ghi tên bảng vàng, song trái với ước vọng của cha mẹ cùng thày bạn, chàng liên tiếp bị trượt mấy kỳ thi ở cả ba trường. Không nản chí, chàng ở lại kinh đô tìm thầy danh tiếng để dùi mài kinh sử mà chờ khóa tới. Khoa thi sau chàng cũng hỏng luôn ở cả ba trường như kỳ đầu. Tủi hổ, chán nản, chàng tìm đường trở về làng.

Đến ngang bến đò con sông cái năm xưa chàng đã phóng sinh cho con chạch, thư sinh không khỏi ngạc nhiên thấy ở hai bên bờ có nhiều điếm quân canh gác cẩn mật. Hỏi ra mới biết là ở quãng sông này có một con chạch rất lớn hóa thành mãng xà, thường đón người qua lại đây để ăn thịt. Thư sinh nghe nói thế đâm ra nghi hoặc, tự bảo thầm rằng có lẽ con quái vật này chính là con chạch chàng đã cứu nạn cho năm nào. Như vậy, hai kỳ thi vừa rồi chàng bị trượt cũng là hậu quả của việc chàng làm, ngỡ là lành hóa gây ra hung dữ. Những hành động quái ác của con chạch yêu tinh đã vang lên tới Thiên Đình, thư sinh phải gánh chịu lấy trách nhiệm.

Sau một hồi suy nghĩ trên kia, thư sinh nài nỉ với người lính canh để cho chàng qua sông. Người lính bảo phải đợi cho khách quá giang đông đã, rồi toán quân cầm sẵn giáo, rìu theo hộ tống, bấy giờ sang ngang mới có thể chống trả lại khỏi làm mồi cho con quái vật. Thư sinh yêu cầu ra đi một mình, rủi ro xin chịu lấy, viện cớ là có việc gấp không thể chờ đợi được, rồi năn nỉ mãi người lính mới cho xuống thuyền.

Ra đến giữa sông, chiếc thuyền bỗng nhiên chòng chành đầu lái như muốn lật, từ mặt nước con quái vật nhô đầu lên, há miện lớn chực nuốt người. Chàng thư sinh vội lớn tiếng bảo nó:

“Mày không còn nhớ tao hay sao? Có phải mày là con chạch đã được tao cứu mạng cho khỏi tay lũ trẻ chăn trâu độ trước, rồi mày lại đội lốt để mày làm hại người ta không?”

Mãng xà đáp:

“Đúng đấy, nhưng tao phải ăn thịt mày”.

Thư sinh liền nói:

“Hãy nghe đây đã. Mấy năm trước, sở dĩ cứu sống cho mày ở khúc sông này, tao có nói cho mày biết là vì tao tin ở sự biết ơn của loài vật “cứu vật vật trả ơn, cứu nhơn nhơn trả oán”. Bây giờ mày trả ơn tao như thế phải không?”

Mãng xà cãi:

“Lầm rồi, phải hiểu là “cứu vật vật trả oán” mới đúng. Thôi đừng chữ nghĩa lôi thôi nữa, để tao ăn thịt mày cho rồi”.

Thư sinh nói:

“Khoan đã, trong đôi bên chưa biết ai có lý. Phải kiếm ai phân xử mới được: nếu họ bảo mày có lý thì tao xin bằng lòng cho mày ăn thịt. Chỉ cần hỏi ba lần thôi, bất cứ gặp người hay loài vật, ba kẻ đầu tiên chúng ta đi gặp đây, là ba kẻ phân xử, quyết định cho chúng ta xem ai có lý”.

Mãng xà nhận lời, trồi lên mặt nước để đi theo thư sinh tìm ba người phân xử. Kẻ thứ nhất họ gặp là một con trâu già yếu đang gặp cỏ bên bờ ao. Thư sinh kể đầu đuôi câu chuyện rồi hỏi xem ý kiến của trâu thế nào về câu phương ngôn: “Cứu vật vật trả ơn, cứu nhơn nhơn trả oán”.

Con trâu phần sợ rắn, phần xấu bụng muốn trả thù những sự hành hạ của người ta đối xử với nó bấy lâu, mới trả lời rằng:

“Câu phương ngôn ấy sai, ý nghĩa trái ngược lại mới đúng, vì loài vật ngu ngốc không biết phân biệt điều thiện với điều ác, loài vật không có trí khôn như người ta mà chỉ nghe theo thú tính”.

Nghe nói thế, mãng xà chồm lên toan ăn thịt thư sinh, chàng bèn nhắc lại điều kiện đã giao kết, rồi cả hai lại tiếp tục đi. Đi được một lúc, họ gặp một con cá gáy (chép) to lớn lâu năm sắp hóa thành tinh. Nghe hết tự sự và câu hỏi dò ý kiến trên, cá cũng trả lời như trâu. Thư sinh bắt đầu lo ngại cùng mãng xà lại ra đi. Kẻ thứ ba mà cuối cùng họ gặp trên đường là một người già cả, râu tóc bạc phơ. Ông cụ này không ai khác hơn là Phật Thế Tôn ở trên trời nghe thấy rõ mọi việc xảy ra giữa chàng thư sinh với con mãng xà bạc ác cùng những lời lẽ của trâu và cá gáy, liền hóa ra một ông lão để gặp họ. Sau khi nghe thuật lại đầu đuôi câu chuyện tranh chấp giữa đôi bên, Phật liền mời cả hai về nhà. Phật dùng phép thần thông gọi trâu cùng cá gáy đến đủ mặt, rồi cả năm bước vào nhà Phật, một ngôi chùa. Qua khỏi cửa chùa ông lão trở lại nguyên hình Phật Thế Tôn, ngỏ lời bênh vực cho lẽ phải của thư sinh, nghiêm khắc lên án sự bội bạc vô ơn của mãng xà, cùng sự xấu bụng của trâu và cá gáy. Rồi để trừng phạt cả ba con, Phật bắt mãng xà hóa ra cái chuông, trâu hóa thành cái trống, cá gáy hóa thành mõ. Vì thế từ đó giá chuông nhà chùa đúc theo hình con rắn, trống bịt bằng da trâu và mõ làm theo hình cá gáy. Để nhắc nhở các nhà tu hành nhớ sự tích này mà luôn luôn giữ lấy lòng ngay thật hiền lành, bất cứ ngày đêm mỗi lần đọc kinh đều phải gõ vào ba vật nói trên