--- id: "d7a0b15a-76e2-4d55-a097-623eeb71e180" name: "Slack Thread Context" micro_summary: "Use `slack_get_thread_context(open_threads=True, expand_collapsed=False, limit=50)` to extract visible thread messages, composer label, collapsed-reply status, and permalinks." status: "resolved" see_also: [] scope: "How to extract thread context from app.slack.com once a notification or message points to a thread." --- ## Helper Use `slack_get_thread_context(open_threads=False, expand_collapsed=False, limit=50)`. ```python import json ctx = json.loads(slack_get_thread_context(open_threads=True, limit=10)) ``` ## Parameters - `open_threads`: returns to Home, opens Slack's Threads surface, then extracts visible thread context. - `expand_collapsed`: clicks visible `Show N more replies` controls before extraction. - `limit`: maximum visible message containers to return. ## Returns JSON with visible `messages`, `composer_labels`, `collapsed_reply_controls`, and `needs_more_expansion`. Messages include sender/text/timestamp/permalink fields when visible. ## Usage stance If `needs_more_expansion` is true, do not summarize the thread as complete. Escalate to review or rerun with expansion. ONEplace needs enough context to avoid naked Slack snippets. ## Verification 2026-06-01: `slack_get_thread_context(open_threads=True, limit=3)` returned `ok=true`, three visible thread messages, and a `Reply to thread ...` composer label.