slack_get_thread_replies
Retrieve all replies from a Slack message thread by providing the channel ID and parent message timestamp to access threaded conversations.
Instructions
Get all replies in a message thread
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| channel_id | Yes | The ID of the channel containing the thread | |
| thread_ts | Yes | The timestamp of the parent message in the format '1234567890.123456'. Timestamps in the format without the period can be converted by adding the period such that 6 numbers come after it. |
Implementation Reference
- index.ts:313-325 (handler)Core handler implementation that calls the Slack conversations.replies API to retrieve thread replies.async getThreadReplies(channel_id: string, thread_ts: string): Promise<any> { const params = new URLSearchParams({ channel: channel_id, ts: thread_ts, }); const response = await fetch( `https://slack.com/api/conversations.replies?${params}`, { headers: this.headers }, ); return response.json(); }
- index.ts:159-176 (schema)Tool metadata and input schema definition for slack_get_thread_replies.const getThreadRepliesTool: Tool = { name: "slack_get_thread_replies", description: "Get all replies in a message thread", inputSchema: { type: "object", properties: { channel_id: { type: "string", description: "The ID of the channel containing the thread", }, thread_ts: { type: "string", description: "The timestamp of the parent message in the format '1234567890.123456'. Timestamps in the format without the period can be converted by adding the period such that 6 numbers come after it.", }, }, required: ["channel_id", "thread_ts"], }, };
- index.ts:39-42 (schema)TypeScript interface defining the input arguments for the tool.interface GetThreadRepliesArgs { channel_id: string; thread_ts: string; }
- index.ts:473-488 (registration)Dispatch case in CallToolRequest handler that invokes the getThreadReplies method.case "slack_get_thread_replies": { const args = request.params .arguments as unknown as GetThreadRepliesArgs; if (!args.channel_id || !args.thread_ts) { throw new Error( "Missing required arguments: channel_id and thread_ts", ); } const response = await slackClient.getThreadReplies( args.channel_id, args.thread_ts, ); return { content: [{ type: "text", text: JSON.stringify(response) }], }; }
- index.ts:534-543 (registration)Tool list registration in ListToolsRequest handler, including slack_get_thread_replies.return { tools: [ listChannelsTool, postMessageTool, replyToThreadTool, addReactionTool, getChannelHistoryTool, getThreadRepliesTool, getUsersTool, getUserProfileTool,