feat: offset param in list_messages tool (pagination)

This commit is contained in:
Markov 2026-02-24 10:30:49 +01:00
parent a8f205609b
commit a89e9a1bb9

View File

@ -13,6 +13,7 @@ const ListMessagesParams = Type.Object({
chat_id: Type.Optional(Type.String({ description: 'Chat UUID' })),
task_id: Type.Optional(Type.String({ description: 'Task UUID' })),
limit: Type.Optional(Type.Number({ description: 'Max messages to return (default 50)' })),
offset: Type.Optional(Type.Number({ description: 'Skip N newest messages (for pagination). offset=30 skips 30 newest, returns next batch.' })),
});
function ok(text: string) {
@ -41,6 +42,7 @@ export function createMessageTools(ctx: ToolContext): ToolDefinition<any>[] {
if (params.chat_id) query.chat_id = params.chat_id;
if (params.task_id) query.task_id = params.task_id;
if (params.limit) query.limit = String(params.limit);
if (params.offset) query.offset = String(params.offset);
const messages = await ctx.trackerClient.listMessages(query);
return ok(JSON.stringify(messages, null, 2));
},