diff --git a/packages/backend/src/core/remote/activitypub/ApRendererService.ts b/packages/backend/src/core/remote/activitypub/ApRendererService.ts
index a401b7424f10729dfb5918562615e65ee107c4d8..38850fd12786b594acc07a6814f25c9da8499566 100644
--- a/packages/backend/src/core/remote/activitypub/ApRendererService.ts
+++ b/packages/backend/src/core/remote/activitypub/ApRendererService.ts
@@ -23,7 +23,7 @@ import type { UserKeypair } from '@/models/entities/UserKeypair.js';
 import type { UsersRepository, UserProfilesRepository, NotesRepository, DriveFilesRepository, EmojisRepository, PollsRepository } from '@/models/index.js';
 import { LdSignatureService } from './LdSignatureService.js';
 import { ApMfmService } from './ApMfmService.js';
-import type { IActivity } from './type.js';
+import type { IActivity, IObject } from './type.js';
 import type { IIdentifier } from './models/identifier.js';
 
 @Injectable()
@@ -276,7 +276,7 @@ export class ApRendererService {
 		};
 	}
 
-	public async renderNote(note: Note, dive = true, isTalk = false): Promise<Record<string, unknown>> {
+	public async renderNote(note: Note, dive = true, isTalk = false): Promise<IObject> {
 		const getPromisedFiles = async (ids: string[]) => {
 			if (!ids || ids.length === 0) return [];
 			const items = await this.driveFilesRepository.findBy({ id: In(ids) });
@@ -399,8 +399,8 @@ export class ApRendererService {
 			id: `${this.config.url}/notes/${note.id}`,
 			type: 'Note',
 			attributedTo,
-			summary,
-			content,
+			summary: summary ?? undefined,
+			content: content ?? undefined,
 			_misskey_content: text,
 			source: {
 				content: text,