diff --git a/src/server/api/endpoints/i/notifications.ts b/src/server/api/endpoints/i/notifications.ts
index c597a28ebb56159e126bce08133bee5682cc9891..a10dc09df395806a78c348e4160f503b4458701a 100644
--- a/src/server/api/endpoints/i/notifications.ts
+++ b/src/server/api/endpoints/i/notifications.ts
@@ -5,6 +5,7 @@ import define from '../../define';
 import { makePaginationQuery } from '../../common/make-pagination-query';
 import { Notifications, Followings, Mutings, Users } from '../../../../models';
 import { notificationTypes } from '../../../../types';
+import read from '@/services/note/read';
 
 export const meta = {
 	desc: {
@@ -116,5 +117,11 @@ export default define(meta, async (ps, user) => {
 		readNotification(user.id, notifications.map(x => x.id));
 	}
 
+	const notes = notifications.filter(notification => ['mention', 'reply', 'quote'].includes(notification.type)).map(notification => notification.note!);
+
+	if (notes.length > 0) {
+		read(user.id, notes);
+	}
+
 	return await Notifications.packMany(notifications, user.id);
 });