View as Markdown
Discord icon Slack icon

MULTI-APP TOOLKIT

Build with Discord + Slack

Connect a user's Discord and Slack accounts and expose tools for both apps directly in your product or your agent.
  • Multi-app
  • One MCP session
  • 53 actions
  • 14 triggers
  • Managed auth

MCP

One MCP session, both toolsets

One session gives your product or agent every Discord and Slack tool at once — connect once, list tools, and call them like any single-app session.

// accessToken: mint a short-lived token with the Connect SDK — see the MCP guide
const transport = new StreamableHTTPClientTransport(
  new URL("https://remote.mcp.pipedream.net/v3"),
  {
    requestInit: {
      headers: {
        Authorization: `Bearer ${accessToken}`,
        "x-pd-project-id": "{project_id}",
        "x-pd-environment": "production",
        "x-pd-external-user-id": "{external_user_id}", // any stable ID for this user in your system
        "x-pd-app-slug": "discord,slack_v2",
      },
    },
  },
)

const mcp = new Client({ name: "my-agent", version: "1.0.0" })
await mcp.connect(transport)

const { tools } = await mcp.listTools()

// One list, both toolsets: Discord and Slack tools arrive
// together, each keyed by its own app's slug.

// e.g. run Send Message:
const result = await mcp.callTool({
  name: "discord-send-message",
  arguments: {
    channel: "Channel",
    message: "Message",
  },
})

ARCHITECTURE

One user, two connected accounts

Your user connects each account once, under whatever ID they already have in your product. The two stay independent — either can be revoked on its own — and your code reaches both through that one user.

Your product

external_user_id

{external_user_id}

Pipedream Connect

Managed identity

Auth · tools · routing

Discord

Connected account

Slack

Connected account

TOOLS

Slack tools

The Slack tools this pairing puts in reach, each one running on your user's own connected account.

View all 59 Slack tools →

Actions top 8 of 50

Triggers top 4 of 9

x-pd-app-slug
discord,slack_v2
Primary app
Discord (discord)
Second app
Slack (slack_v2)
Authentication
OAuth + OAuth
Available actions
53
Available triggers
14