Setu Recipes: reusable workflows across every app.Browse templates
Setuसेतु
For developers

Agent infrastructure for tool execution.

Tools for the apps your users rely on, user-scoped authentication, and a governed path from the model's decision to the real action.

Chat

Summarize everything important from Slack in the last 24 hours and email it to me.
Sent. Five threads needed a decision; the summary is in your inbox.

What your agent did

  • Slackslack.get_channel_history6 channels readDone
  • Gmailgmail.send_emailTo: youDone
  • Notionnotion.create_pageSaved to Daily notesDone

One session. The right tools at runtime.

Create a session for your user. Your agent discovers the right tool, asks the user to connect an app when needed, and executes inside the same governed runtime.

  • Sessions are scoped to one user and a set of toolkits
  • Dynamic mode exposes four meta-tools; static mode exposes a fixed list
  • Works over REST, the SDKs or a single MCP URL
TypeScript
const session = await setu.sessions.create({
  userId: "user_1",
  toolkits: ["github", "slack", "gmail"],
});

// Hand session.mcpUrl to any MCP client, or call tools directly.
await setu.execute({
  userId: "user_1",
  action: "slack.post_message",
  input: { channel: "#eng", text: "Deploy finished" },
});

Authenticate the right user.

Setu handles OAuth, API keys, token refresh and account selection. Your users connect under your brand, and your model never sees a credential.

  • Per-user connections with scope visibility
  • Multiple accounts per toolkit, chosen explicitly
  • Automatic refresh, with a reconnect link when a token lapses
Ac→

Connect GitHub to your agent

Acme Assistant would like to act on your behalf.

Read repositoriesAllowed
Create issuesAllowed
Delete anythingNever
Authorize

Execute with a complete record.

Setu routes the call, returns the result and records what ran for which user. Teams can require approval before an action reaches an app.

  • Typed errors a model can read and recover from
  • Rate limits and quotas per key and per project
  • Metadata-only logs, so payloads are never stored by default
Execution loguser_1
ActionStatusLatency
github.create_issueSucceeded412 ms
slack.post_messageSucceeded188 ms
linear.update_issueSucceeded301 ms
notion.create_pageNeeds approvalwaiting

Browse the tools your agent can call.

Start with the apps your users already depend on. Add more without rebuilding the layer between your agent and each API.

SlackDiscordTelegramWhatsAppZoomGoogle MeetMiOuNotionAirtableGoogle SheetsGoogle DocsGoogle DriveGoogle CalendarGmailTrelloTodoistAsanaClickUpCalendlyTypeformDropboxBoxGitHubGitLabBitbucketLinearJiraConfluenceSentry
Explore all toolkits

Your first tool is the easy part.

The maintenance starts after the demo works. Setu is the repeated infrastructure underneath it, so your team ships the agent.

Build it yourself

  • Register and review an OAuth app for every provider
  • Store and refresh every user's credentials
  • Translate every API into agent-ready schemas
  • Track upstream changes and retry rules
  • Build scoping, policy and audit logs

Build with Setu

  • One session for your user
  • Managed or custom-app authentication
  • Agent-ready tools across the catalog
  • Versioned actions and safe retries
  • Governance and a log for every call

Ship the agent, not the plumbing.

Connect an app, hand your agent the tools, and watch it finish the job.