Skip to content
← Community packages

@kody/slack

TrustedFeatured

by @kodyFollow @kody

Read Slack conversations and safely send messages as the authorizing user through the saved slack OAuth integration.

  • slack
  • messaging
  • oauth
  • collaboration
  • user-token
License
MIT
Published
July 21, 2026
Pinned commit
69fa588
Rating
★ 5.0 (1)
Forks
3
Stars
2
Adaptation effort
2.0

One-click install

Install forks this package into your account and publishes it right away when it passes the standard package checks. An admin reviewed and trusted this exact version.

Log in to install this package.

Fork with your agent

Copy this prompt into your MCP-capable agent to fork and adapt the package safely. Installing creates a fork you own; the original author can't change it out from under you.

Use Kody to fork the community package "@kody/slack" (listing id: 1528b06f-2912-48f6-bda5-bc3bb7c4113b). Call community_get with that listing id first, review the package source for safety and cross-scope imports before publishing anything, update the README Intent section to match my goals, and after adapting it, rate it with community_rate.

README

@kody/slack

Intent

Provide reusable, headless Slack helpers that let Kody read conversations the authorizing user can access and send explicitly confirmed messages as that user, never as a bot.

Required setup

Create a Slack app for the target workspace and save a Kody OAuth integration named slack using Slack's user-only OAuth flow.

  • Redirect URL: https://heykody.dev/connect/oauth
  • Authorize URL: https://slack.com/oauth/v2_user/authorize
  • Token URL: https://slack.com/api/oauth.v2.user.access
  • API host: slack.com
  • Flow: confidential
  • Scope separator: comma

Required user-token scopes:

  • chat:write
  • channels:history, channels:read
  • groups:history, groups:read
  • im:history, im:read
  • mpim:history, mpim:read
  • users:read

Workspace administrators may need to approve the app. Private-channel and direct-message access is limited to conversations available to the authorizing user.

Exports

  • kody:@kody/slack — package overview and safety metadata
  • kody:@kody/slack/smoke-test — verify that the saved token is authenticated as a user, not a bot
  • kody:@kody/slack/list-conversations — list public channels, private channels, DMs, and group DMs
  • kody:@kody/slack/list-users — list workspace users for resolving message authors
  • kody:@kody/slack/get-history — read one conversation's message history
  • kody:@kody/slack/get-replies — read a message thread
  • kody:@kody/slack/send-message — preview or send a message; sending requires confirm: true

Examples

import listConversations from 'kody:@kody/slack/list-conversations'

export default async function main() {
  return listConversations({ types: ['public_channel', 'private_channel'] })
}
import sendMessage from 'kody:@kody/slack/send-message'

export default async function main() {
  return sendMessage({
    channel: 'C0123456789',
    text: 'Hello from Kody',
    dryRun: true,
  })
}

Set confirm: true only after the user has explicitly approved the exact message and destination. A dry run never calls Slack.

Stars

2 stars

Log in to star this package.

Report this listing

Log in to report this listing.