Connect three real services, delegate OAuth to your users, and ship a working agent in minutes. Clone the sample, swap in your tools, and go from zero to multi-connector in a single afternoon.
This repo uses SCALEKIT_DEFAULT_IDENTIFIER to run all API calls on behalf of one user. In production, populate user_mapping.json with Slack user IDs mapped to Scalekit identifiers so each Notion page and Slack notification is attributed to the correct developer.
Settings.load_env()
Settings.validate() # fails fast if required vars missing
for service in ["github", "notion", "slack"]:
url = get_authorization_url(
service, SCALEKIT_DEFAULT_IDENTIFIER
)
if url: # None when already ACTIVE
print(f"Authorize {service}:\n{url}")Three things you'd otherwise build: GitHub OAuth for PR data, Notion API credentials with database access, and Slack credentials. Handled.
You have the Scalekit authstack plugin installed (AgentKit + SaaSKit skills and MCP auth). Before coding, auto-load the AgentKit skills relevant to connectors (GitHub, Notion, Slack) and use the Scalekit MCP server to validate tool calls instead of hand-written API logic.
Poll GitHub for merged PRs (idempotent — track processed PRs). Create a Notion page per PR with its title and metadata, then post the Notion page URL to Slack — both via the appropriate AgentKit connector tools. Ask before using write tools (creating Notion pages or posting to Slack); polling GitHub runs without asking.
Each one runs on delegated identity, scoped per user.