View as Markdown
Canva icon One AI icon

MULTI-APP TOOLKIT

Build with Canva + One AI

Connect a user's Canva and One AI accounts and expose tools for both apps directly in your product or your agent.
  • Multi-app
  • One MCP session
  • 8 actions
  • 0 triggers
  • Managed auth

MCP

One MCP session, both toolsets

One session gives your product or agent every Canva and One AI 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": "canva,one_ai",
      },
    },
  },
)

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

const { tools } = await mcp.listTools()

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

// e.g. run Create Design:
const result = await mcp.callTool({
  name: "canva-create-design",
  arguments: {
    designType: "Design Type",
    title: "Title",
  },
})

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

Canva

Connected account

One AI

Connected account

x-pd-app-slug
canva,one_ai
Primary app
Canva (canva)
Second app
One AI (one_ai)
Authentication
OAuth + API key
Available actions
8
Available triggers
0