Provider integrations
Ready-made tools for GitHub, Linear, Slack, Notion, Discord, Gmail, Google Calendar, Stripe, Postgres, and S3.
Every integration lives under @agentskit/tools/integrations. Each
module exports focused defineTool factories plus a bundle helper
that returns all tools for that provider — mix and match.
Install
npm install @agentskit/toolsimport {
github,
linear,
slack,
notion,
discord,
gmail,
googleCalendar,
stripe,
postgres,
s3,
} from '@agentskit/tools/integrations'Dev + chat
const tools = [
...github({ token: process.env.GITHUB_TOKEN! }),
...linear({ apiKey: process.env.LINEAR_API_KEY! }),
...slack({ token: process.env.SLACK_BOT_TOKEN! }),
...notion({ token: process.env.NOTION_TOKEN! }),
...discord({ token: process.env.DISCORD_BOT_TOKEN! }),
]| Provider | Tools |
|---|---|
github | github_search_issues, github_create_issue, github_comment_issue |
linear | linear_search_issues, linear_create_issue |
slack | slack_post_message, slack_search |
notion | notion_search, notion_create_page |
discord | discord_post_message |
Google Workspace
const tools = [
...gmail({ accessToken: oauthToken }),
...googleCalendar({ accessToken: oauthToken, calendarId: 'primary' }),
]gmail_list_messages, gmail_send_email, calendar_list_events,
calendar_create_event.
Stripe + storage
const tools = [
...stripe({ apiKey: process.env.STRIPE_SECRET_KEY! }),
...postgres({
execute: async (sql, params) => {
const r = await pg.query(sql, params)
return { rows: r.rows, rowCount: r.rowCount ?? 0 }
},
allowWrites: false,
maxRows: 500,
}),
...s3({
client: {
getObject: async ({ bucket, key }) => ({ body: await getFromS3(bucket, key) }),
putObject: async ({ bucket, key, body }) => ({ etag: await putToS3(bucket, key, body) }),
listObjects: async ({ bucket, prefix, limit }) => listS3(bucket, prefix, limit),
},
defaultBucket: 'agent-artifacts',
}),
]Postgres ships with safe-mode — read-only by default, VACUUM / COPY
/ TRUNCATE permanently denied, write verbs require
allowWrites: true, results capped by maxRows. The S3 tool
accepts any client implementing three methods so you can plug in
@aws-sdk/client-s3, MinIO, or Cloudflare R2 without bundling a
large SDK.
Pair with
- Mandatory sandbox — enforce per-tool allow/deny + validators across the whole provider bundle.
- HITL approvals — gate destructive actions (issue creation, invoices) behind a human decision.
- Audit log — record every tool call for SOC 2 evidence.
See also
- MCP bridge — expose these tools to MCP hosts
- Tool composer — chain into macro tools
Skill marketplace + ready-made skills
Publish + install versioned skills through a registry. Four new ready-made skills.
Scraping, voice, maps, browser agent
Firecrawl + Jina Reader, OpenAI Images + ElevenLabs + Whisper + Deepgram, Nominatim + OpenWeatherMap + CoinGecko, and a BYO-Playwright browser agent.