Overview
Hi Claude! Could you help me develop a unique voice for an audience? If you need more information from me, ask me 1-2 key questions right away. If you think I should upload any documents that would help you do a better job, let me know. You can use the tools you have access to— like Google Drive, web search, etc.—if they’ll help you better accomplish this task. Do not use analysis tool. Please keep your responses friendly, brief and conversational. Please execute the task as soon as you can—an artifact would be great if it makes sense. If using an artifact, consider what kind of artifact (interactive, visual, checklist, etc.) might be most helpful for this specific task. Thanks for your help!
Tools
slack_complete_file_upload
ChatGPTsource_file, and finalizes the matching Slack file ID in one trusted flow. Callers must not provide Slack upload URLs or file IDs. To share the file, pass real Slack conversation IDs (C..., G..., or D...) in conversation_ids; do not pass U... user IDs.slack_create_canvas
ChatGPT where U15CTCJ83 is the user\'s Slack ID. - When user references are used in their own line, they will render as larger cards, if referenced inline they will render as special text. - When writing channel IDs, you should format them as:  where C15CTCJ83 is the channel\'s Slack ID. Always use the channel\'s ID, NEVER use the channel name. - NEVER output a channel as <#C1234567890> or a user as <@U1234567890>, even when part of a text quote, instead use the format above. - Links should be formatted as: [link text](https://example.com). Do not surround the link in angle brackets. - IMPORTANT: Only use these URL schemes in links: http://, https://, mailto:, tel:, ftp://, slack://, or relative paths starting with /. Other schemes like javascript:, data:, file: will be automatically removed from the canvas. - Images should be formatted as:  - Image syntax must appear only in a top-level, stand-alone line. Images are not supported in other elements - Salesforce records should be formatted as:  where <org_id> is the Salesforce org ID and <record_id> is the Salesforce record ID, the org ID and record ID should be the full IDs which would be 18 characters long. Example:  - Salesforce records syntax must appear only in a top-level, stand-alone line. Salesforce records are not supported in other elements - Quoted text should be formatted as: > This is quoted text, but you should only use quotes on their own line. - Slack-style emojis are supported, e.g. :tada: or :wave: - Use only ATX headings #, ##, ###. NEVER use deeper headings ####-######. - Do not place headings inside list items. - In list items, allow only paragraphs with inline formatting. - Thematic breaks (---, **, ___) are only allowed at the top level. - When nesting lists, do not mix list types: - Numbered lists can only contain nested numbered lists, and cannot contain nested bulleted lists - Bulleted lists can only contain nested bulleted lists, and cannot contain nested numbered lists - Code blocks are not allowed inside list items. - If a table cell contains multi-line content, <br> can be used, e.g. 'line one<br>line two' - The title provided through the `title` field will be used as the title of the canvas. Do not include the title in the content section. <example1> Headers Status :large_green_circle: On Track Goal The channel to coordinate the build, testing, and launch of Platypus :people_hugging:Stakeholders   :books:Resources Project Plan Google Drive :slack:Related channels  - Project Channel  - [GTM Channel](https://gtm.wiki.com) </example1> <example2> |Message|User Author| |---|---| |[Here is the python guide](https://team.slack.com/archives/C016VCYCL74/p1727122965001469)|| |[The Java guide isn\'t ready](https://team.slack.com/archives/C016VCYCL74/p1727122965001469)||\n\n Python Guide\n Step 1\n ```python print("Hello, world!") ```\n\n </example2> - When a layout is requested use the ::: {.layout} as the starting delimiter and ::: as the ending delimiter of the full layout. Then each column should be wrapped in ::: {.column} as the starting delimiter and ::: as the ending delimiter. There can only be up to 3 columns in a layout and tables and callouts are not supported in layouts or columns. - Callouts should be formatted with ::: {.callout} as the starting delimiter and ::: as the ending delimiter in markdown. Use them to highlight important information, such as warnings, important prerequisites, and notices. - Do not use tables within callouts and callouts cannot be nested within other elements. <example_markdown_with_callout> ::: {.callout} This is a callout ::: </example_markdown_with_callout> - In block quotes, ONLY use: plain text paragraphs with inline formatting. No headings, lists, code blocks, or nested quotes. - Code blocks are allowed only at the top level (not inside block quotes or list items). CRITICAL RESTRICTIONS - Canvas Nesting Rules (MUST FOLLOW): - In list items, ONLY use: plain text paragraphs with inline formatting (bold, italic, inline `code`, links). - Code blocks, block quotes, and headings must always be separated from lists by blank lines. - In layouts no tables or callouts are supported.- Layouts are not supported in tables or callouts. <example_correct_usage> - Item with inline `code` formatting - Item with bold text and [links](https://example.com) </example_correct_usage> <example_blocks_and_quotes_outside_lists> ``` code block at top level ``` - List item one - List item two > Block quote at top level Heading at top level </example_blocks_and_quotes_outside_lists> WHEN CITING SOURCES: - When your content references information from web search results or other sources, you MUST include inline citation links using the [[N]](url) format throughout the content, exactly as you would in a chat response. - Place citations inline next to the claims they support, e.g. "Shaidorov won gold [[7]](https://en.wikipedia.org/wiki/...)" - Do NOT collapse all sources into a single "Source:" line at the bottom. Each fact should be cited where it appears. - The citation links will be automatically enriched with page titles for readability. - Format date headings and key dates (including due dates, deadlines, milestones) as  ONLY. Never append day names or date text. Examples of appropriate usage of date formatting in your output: Correct usage: <example_date_heading_correct>  </example_date_heading_correct> Incorrect usage (has day name and date text): <example_date_heading_incorrect>  December 16th - Monday </example_date_heading_incorrect>- User Profile Cards: To display a user's profile card as a standalone section (not inline), use the format  where user_id is the Slack user ID. CRITICAL: Use parentheses () around @user_id, NOT angle brackets <>. Example: . Profile cards should be on their own line and will render as larger cards with user information. Examples of appropriate usage of user profile cards in your output: Correct usage (standalone profile card on its own line): <example_user_profile_card_correct> Team Members   </example_user_profile_card_correct>- Slack Files: ONLY for files with URLs matching .slack.com/files/*, ALWAYS embed using . For standalone display (card): place on its own line. For inline reference (clickable text): embed directly in paragraph like "The  contains...". Do not use this syntax for non-Slack files.slack_create_conversation
ChatGPTchannel_name (optionally is_private, user_ids to invite) - DM/MPDM: provide only user_ids (1 user=DM, 2-8 users=group DM, caller auto-included) Args: channel_name (Optional[str]): Channel name (lowercase, hyphens, max 80 chars). Auto-sanitized. is_private (Optional[bool]): Private channel. Only with channel_name. Default: false. user_ids (Optional[list[str]]): For DM/MPDM: max 8 user IDs. For channel invite: up to 1000. Examples: DM: slack_create_conversation(user_ids=["U123"]) Group DM: slack_create_conversation(user_ids=["U123","U456"]) Channel: slack_create_conversation(channel_name="project-x") Channel+invite: slack_create_conversation(channel_name="project-x", user_ids=["U123","U456"]) Note: If inviting users to a channel fails, ask the user to manually add them via the Slack UI — there is no separate invite tool available. Errors: invalid_arguments, user_not_found, name_taken, restricted_action, cannot_dm_bot, too_many_usersslack_create_reminder
ChatGPTslack_delete_message
ChatGPTD...), not the user_id. Use slack_read_channel, slack_read_thread, slack_search_public, or slack_search_public_and_private to find them. Use slack_edit_message to update a message instead of deleting it.slack_edit_message
ChatGPTmarkdown_text with standard markdown. Use blocks only when editing a structured block message, and optionally include text as the notification fallback. markdown_text cannot be combined with blocks or text. link_names and parse map directly to Slack's chat.update behavior. reply_broadcast is only for broadcasting an existing thread reply and cannot be combined with content updates. Requires channel_id and message_id of the target message. For DMs, channel_id must be the DM conversation ID (D...), not the user_id. Use slack_read_channel, slack_read_thread, slack_search_public, or slack_search_public_and_private to find them. To send a new message instead, use slack_send_message.slack_get_file_upload_url
ChatGPTslack_get_reactions
ChatGPTslack_invite_to_conversation
ChatGPTC... public or G... private). It does not work for DMs or group DMs/MPIMs. To add someone to a group DM, create a new group DM with slack_create_conversation using the full desired member list. Invite only users who are not already members; Slack conversations.invite can fail the whole request when existing members or invalid user IDs are included.slack_join_conversation
ChatGPTC...) the user wants to join. It does not create channels, join private channels, open DMs, or add other users. Use slack_search_channels first if only a channel name is known.slack_leave_conversation
ChatGPTC... public channels or G... private channels) that the authed user should leave. Slack does not support leaving DMs or group DMs/MPIMs through this API; close them manually or create a new group DM with the desired members instead.slack_list_channel_members
ChatGPTslack_list_starred_items
ChatGPTslack_list_user_conversations
ChatGPTC...), private channels or group DMs (G...), and DMs (D...). This is the preferred way to find an existing DM ID before sending a message or sharing a file to a person. Filter with types when you only need one conversation kind.slack_list_user_groups
ChatGPT@eng, @oncall, or similar aliases, or when composing a Slack message that should mention a user group. Each returned group includes mention in Slack's <!subteam^ID|@handle> format when the ID and handle are available.slack_list_workspaces
ChatGPTslack_read_canvas
ChatGPTslack_read_channel
ChatGPTslack_read_file
ChatGPTslack_read_thread
ChatGPTslack_read_user_profile
ChatGPTslack_schedule_message
ChatGPTslack_search_channels
ChatGPTslack_search_emojis
ChatGPTslack_search_public
ChatGPTslack_search_public does NOT generally require user consent for use, whereas you should request and wait for user consent to use slack_search_public_and_private. --- query should include keywords or natural language question with search modifiers. Search modifiers: in:channel-name / in:<#C123456> / -in:channel Channel filter in:<@U123456> / in:@username DM filter from:<@U123456> / from:username Author filter (angle brackets are literal for IDs) to:<@U123456> / to:me Recipient filter creator:@user Canvas creator filter is:thread / is:saved / has:pin / has:link / has:file Content filters has::emoji: / hasmy::emoji: Reaction filters before:YYYY-MM-DD / after:YYYY-MM-DD / on:YYYY-MM-DD / during:month Date filters "exact phrase" / -word / * (wildcard, min 3 chars) Text matching File search: use content_types="files" with type: filter (images, documents, pdfs, spreadsheets, presentations, canvases, lists, emails, audio, videos). All standard modifiers work with file searches. Search types: 1. Natural language — ❌ Semantic search is not available for this user. 2. Keyword — exact matches, space-separated = AND, no boolean operators (AND/OR/NOT). Use slack_read_thread for thread details, slack_read_canvas for canvas content, slack_read_channel for surrounding messages. Strategy: break into multiple small searches, use modifiers to narrow, try keyword then semantic (or vice versa), broaden if 0 results. --- Examples: ✅ Use query="What's our holiday schedule? in:#general" query="bug report after:2024-01-08" sort="timestamp" query="from:<@Jane Doe> in:dev bug report" Additional parameters: include_context (Optional[bool]) Include surrounding context messages for each result (default: true). Set to false to reduce response size. max_context_length (Optional[int]) Max character length for each context message. Longer messages are truncated.slack_search_public_and_private
ChatGPTquery should include keywords or natural language question with search modifiers. Search modifiers: in:channel-name / in:<#C123456> / -in:channel Channel filter in:<@U123456> / in:@username DM filter from:<@U123456> / from:username Author filter (angle brackets are literal for IDs) to:<@U123456> / to:me Recipient filter creator:@user Canvas creator filter is:thread / is:saved / has:pin / has:link / has:file Content filters has::emoji: / hasmy::emoji: Reaction filters before:YYYY-MM-DD / after:YYYY-MM-DD / on:YYYY-MM-DD / during:month Date filters "exact phrase" / -word / * (wildcard, min 3 chars) Text matching File search: use content_types="files" with type: filter (images, documents, pdfs, spreadsheets, presentations, canvases, lists, emails, audio, videos). All standard modifiers work with file searches. Search types: 1. Natural language — ❌ Semantic search is not available for this user. 2. Keyword — exact matches, space-separated = AND, no boolean operators (AND/OR/NOT). Use slack_read_thread for thread details, slack_read_canvas for canvas content, slack_read_channel for surrounding messages. Strategy: break into multiple small searches, use modifiers to narrow, try keyword then semantic (or vice versa), broaden if 0 results. --- Examples: ✅ Use (with user consent) query="What's our holiday schedule? in:#general" query="bug report after:2024-01-08" sort="timestamp" query="from:<@Jane Doe> in:dev bug report" Additional parameters: include_context (Optional[bool]) Include surrounding context messages for each result (default: true). Set to false to reduce response size. max_context_length (Optional[int]) Max character length for each context message. Longer messages are truncated.slack_search_users
ChatGPTslack_send_message
ChatGPTcode, ~~strikethrough~~, >blockquotes, lists, links, code blocks, tables, headers). Limited to 5000 chars per text element. Tables use standard Markdown syntax with | as column delimiters. Do NOT escape the structural | characters that form the table borders and column separators. Only escape | as \| when a literal pipe character appears inside a cell value. Code blocks can include a language specifier (e.g. ``python, `js, ``bash) for syntax highlighting and copy functionality. Do not include sensitive info in link query params. Cannot post to externally shared (Slack Connect) channels. Thread replies: set thread_ts to parent message timestamp, reply_broadcast=true to also post to channel. Use slack_search_channels to find channel IDs, slack_search_users to find user IDs. If user has not reviewed the message, use slack_send_message_draft instead.slack_send_message_draft
ChatGPTslack_send_message instead) - User wants to schedule a message (use slack_send_message with scheduling) - User wants to create drafts in multiple channels (call this tool multiple times) - Channel is externally shared (Slack Connect channel) - drafts in externally shared channels are not supported Input Parameters: - channel_id: Single channel ID where the draft should be created - message: The draft message content using standard markdown. Supports bold, _italic_, code, ~strikethrough~, >blockquotes, lists, links, and code blocks. - thread_ts (optional): Timestamp of the parent message to create a draft reply in a thread (e.g., "1234567890.123456") Output: Returns channel_link - a Slack web client URL (e.g., https://app.slack.com/client/T123/C456) that opens the channel in the web app where the draft was created. Finding value for channel_id input: - Use slack_search_users tool to find user ID for DMs, then use their user_id as the channel_id Error Codes: - channel_not_found: Invalid channel ID or user does not have access to the channel - draft_already_exists: A draft already exists for this channel (user should edit or delete the existing draft first) - failed_to_create_draft: Draft creation failed for an unknown reason - mcp_externally_shared_channel_restricted: Cannot create drafts in externally shared channels (Slack Connect channels) Notes: - Drafts are created as attached drafts (linked to the specific channel) - User must have write access to the channel - Only one attached draft is allowed per channel - if a draft already exists, you'll get an errorslack_update_canvas
ChatGPTaction=replace WITHOUT providing a section_id will OVERWRITE THE ENTIRE CANVAS content. This is destructive and irreversible. You MUST call slack_read_canvas first to retrieve section IDs, then pass the appropriate section_id to replace only the target section. Action Behavior With section_id: - append: Adds new content to the END of the specified section's block (inserted after the last content under that section, just before the next header section) - prepend: Inserts new content immediately AFTER the targeted element. If the section_id is a header, content appears after the header line but before the section's existing body content. If the section_id is a non-header element (paragraph, list, table, etc.), content is inserted directly after that element. - replace: Replaces ONLY the specified section's content block (safe) Important: The section_id_mapping contains IDs for ALL content elements — headers (#, ##, ###), paragraphs, lists, tables, and callouts — not just header sections. For best results with append/prepend, target a header section_id to insert within that section's block. Without section_id: - append: Adds content to the END of the canvas (after the last section) - prepend: Inserts content after the canvas title but before existing body content (the title is preserved) - replace: ⚠️ REPLACES THE ENTIRE CANVAS — avoid unless user explicitly wants full replacement Args: canvas_id (str, required): ID of the canvas to update (e.g., "F1234567890") action (str, required): One of "append", "prepend", or "replace". Defaults to "append" content (str, required): Markdown-formatted content to insert or replace section_id (Optional[str]): Section ID from slack_read_canvas. Can reference any content element (header, paragraph, list, table, callout). For append/prepend, targeting a header section_id is recommended as it operates on the header's content block. append inserts after the last content in that section's block (before the next header); prepend inserts immediately after the targeted element; replace overwrites the section's block. STRONGLY RECOMMENDED for replace action to avoid overwriting the entire canvas. Returns: canvas_id (str): ID of the updated canvas canvas_url (str): URL link to the updated canvas — always share this with the user section_id_mapping (dict): Updated mapping of section IDs to their markdown content after the edit. Each key is a section ID string (e.g., "temp:C:abc123") and each value is the markdown content of that element. Contains IDs for ALL content elements (headers, paragraphs, lists, tables, callouts), not just headers. Use these section IDs in subsequent slack_update_canvas calls to target specific sections, enabling multi-step editing workflows without needing to call slack_read_canvas again between edits. When to Use - User wants to add content to an existing canvas (append/prepend) - User wants to update a specific section of a canvas (replace with section_id) - User wants to rewrite an entire canvas (replace without section_id — only if explicitly requested) When NOT to Use - User wants to create a new canvas (use slack_create_canvas instead) - User wants to read a canvas (use slack_read_canvas instead) - User only wants to send a simple message (use slack_send_message instead) Recommended Workflow for Editing a Section 1. Call slack_read_canvas with the canvas_id to get content and section IDs 2. Identify the target section_id from the section_id_mapping 3. Call slack_update_canvas with action=replace and the section_id Examples Append to the end of a canvas (no section_id): slack_update_canvas(canvas_id="F0123ABC456", action="append", content="## New Section Here is the appended content.") Append to the end of a specific section: slack_update_canvas(canvas_id="F0123ABC456", action="append", section_id="temp:C:abc123", content="## New Section This content is added at the end of the specified section.") Replace a specific section (safe — only that section is changed): slack_update_canvas(canvas_id="F0123ABC456", action="replace", section_id="temp:C:abc123", content="## Updated Section This replaces only the targeted section.") Prepend within a specific section (inserts right after the section header, before existing body content): slack_update_canvas(canvas_id="F0123ABC456", action="prepend", section_id="temp:C:abc123", content="This paragraph appears right after the section header, before the section's existing body content.") Error Codes: - not_supported_free_team: Canvas operations not supported on free teams - canvas_not_found: Invalid canvas_id or user lacks access - invalid_content: Content format is invalid - permission_denied: User lacks permission to edit this canvas - section_not_found: The provided section_id does not exist in the canvas Canvas Formatting Guidelines: REQUIRED: Must be a non-empty string when updating canvas content. Only omit this field if you are updating ONLY the title. The canvas content, formatted as Canvas-flavored Markdown. Canvas-flavored Markdown is different from Slack message formatting. When creating content for Canvases, adhere to the following Canvas-only rules: - The content should be formatted as standard Markdown, including headers, lists, links, checklists, tables, and other Markdown formatting. - When writing user IDs, you should format them as:  where U15CTCJ83 is the user\'s Slack ID. - When user references are used in their own line, they will render as larger cards, if referenced inline they will render as special text. - When writing channel IDs, you should format them as:  where C15CTCJ83 is the channel\'s Slack ID. Always use the channel\'s ID, NEVER use the channel name. - NEVER output a channel as <#C1234567890> or a user as <@U1234567890>, even when part of a text quote, instead use the format above. - Links should be formatted as: [link text](https://example.com). Do not surround the link in angle brackets. - IMPORTANT: Only use these URL schemes in links: http://, https://, mailto:, tel:, ftp://, slack://, or relative paths starting with /. Other schemes like javascript:, data:, file: will be automatically removed from the canvas. - Images should be formatted as:  - Image syntax must appear only in a top-level, stand-alone line. Images are not supported in other elements - Salesforce records should be formatted as:  where <org_id> is the Salesforce org ID and <record_id> is the Salesforce record ID, the org ID and record ID should be the full IDs which would be 18 characters long. Example:  - Salesforce records syntax must appear only in a top-level, stand-alone line. Salesforce records are not supported in other elements - Quoted text should be formatted as: > This is quoted text, but you should only use quotes on their own line. - Slack-style emojis are supported, e.g. :tada: or :wave: - Use only ATX headings #, ##, ###. NEVER use deeper headings ####-######. - Do not place headings inside list items. - In list items, allow only paragraphs with inline formatting. - Thematic breaks (---, **, ___) are only allowed at the top level. - When nesting lists, do not mix list types: - Numbered lists can only contain nested numbered lists, and cannot contain nested bulleted lists - Bulleted lists can only contain nested bulleted lists, and cannot contain nested numbered lists - Code blocks are not allowed inside list items. - If a table cell contains multi-line content, <br> can be used, e.g. 'line one<br>line two' - The title provided through the `title` field will be used as the title of the canvas. Do not include the title in the content section. <example1> Headers Status :large_green_circle: On Track Goal The channel to coordinate the build, testing, and launch of Platypus :people_hugging:Stakeholders   :books:Resources Project Plan Google Drive :slack:Related channels  - Project Channel  - [GTM Channel](https://gtm.wiki.com) </example1> <example2> |Message|User Author| |---|---| |[Here is the python guide](https://team.slack.com/archives/C016VCYCL74/p1727122965001469)|| |[The Java guide isn\'t ready](https://team.slack.com/archives/C016VCYCL74/p1727122965001469)||\n\n Python Guide\n Step 1\n ```python print("Hello, world!") ```\n\n </example2> - When a layout is requested use the ::: {.layout} as the starting delimiter and ::: as the ending delimiter of the full layout. Then each column should be wrapped in ::: {.column} as the starting delimiter and ::: as the ending delimiter. There can only be up to 3 columns in a layout and tables and callouts are not supported in layouts or columns. - Callouts should be formatted with ::: {.callout} as the starting delimiter and ::: as the ending delimiter in markdown. Use them to highlight important information, such as warnings, important prerequisites, and notices. - Do not use tables within callouts and callouts cannot be nested within other elements. <example_markdown_with_callout> ::: {.callout} This is a callout ::: </example_markdown_with_callout> - In block quotes, ONLY use: plain text paragraphs with inline formatting. No headings, lists, code blocks, or nested quotes. - Code blocks are allowed only at the top level (not inside block quotes or list items). CRITICAL RESTRICTIONS - Canvas Nesting Rules (MUST FOLLOW): - In list items, ONLY use: plain text paragraphs with inline formatting (bold, italic, inline `code`, links). - Code blocks, block quotes, and headings must always be separated from lists by blank lines. - In layouts no tables or callouts are supported.- Layouts are not supported in tables or callouts. <example_correct_usage> - Item with inline `code` formatting - Item with bold text and [links](https://example.com) </example_correct_usage> <example_blocks_and_quotes_outside_lists> ``` code block at top level ``` - List item one - List item two > Block quote at top level Heading at top level </example_blocks_and_quotes_outside_lists> WHEN CITING SOURCES: - When your content references information from web search results or other sources, you MUST include inline citation links using the [[N]](url) format throughout the content, exactly as you would in a chat response. - Place citations inline next to the claims they support, e.g. "Shaidorov won gold [[7]](https://en.wikipedia.org/wiki/...)" - Do NOT collapse all sources into a single "Source:" line at the bottom. Each fact should be cited where it appears. - The citation links will be automatically enriched with page titles for readability. - Format date headings and key dates (including due dates, deadlines, milestones) as  ONLY. Never append day names or date text. Examples of appropriate usage of date formatting in your output: Correct usage: <example_date_heading_correct>  </example_date_heading_correct> Incorrect usage (has day name and date text): <example_date_heading_incorrect>  December 16th - Monday </example_date_heading_incorrect>- User Profile Cards: To display a user's profile card as a standalone section (not inline), use the format  where user_id is the Slack user ID. CRITICAL: Use parentheses () around @user_id, NOT angle brackets <>. Example: . Profile cards should be on their own line and will render as larger cards with user information. Examples of appropriate usage of user profile cards in your output: Correct usage (standalone profile card on its own line): <example_user_profile_card_correct> Team Members   </example_user_profile_card_correct>- Slack Files: ONLY for files with URLs matching .slack.com/files/*, ALWAYS embed using . For standalone display (card): place on its own line. For inline reference (clickable text): embed directly in paragraph like "The  contains...". Do not use this syntax for non-Slack files. What NOT to Expect: ❌ Does NOT create new canvases (use slack_create_canvas) ❌ Does NOT support setting canvas permissions or sharing ❌ Does NOT support deleting a canvasslack_update_user_profile
ChatGPTstatus_text/status_emoji/status_expiration. It does not change active/away presence and cannot set profile images. Omit user_id to update the authed user; updating another user may require Slack admin privileges.slack_create_canvas
Claudeslack_read_canvas
Claudeslack_read_channel
Claudeslack_read_thread
Claudeslack_read_user_profile
Claudeslack_search_channels
Claudeslack_search_public
Claudeslack_search_public_and_private
Claudeslack_search_users
Claudeslack_send_message
Claudeslack_update_canvas
ClaudeApp Stats
43
Tools
1
Prompts
Jan 1, 2026
First seen
ChatGPT, Claude
Platforms
Category
Meeting NotesWorks with
Data refreshed daily






