Integrate other apps in your app
The fastest gateway to any third party API, get started with less than 20 lines of code.
import {
createMCPServer,
githubIntegration,
gmailIntegration,
} from 'integrate-sdk/server';
export const { client: serverClient } = createMCPServer({
apiKey: process.env.INTEGRATE_API_KEY,
integrations: [
githubIntegration({
scopes: ['repo', 'user'],
}),
gmailIntegration({
scopes: ['https://www.googleapis.com/auth/gmail.send'],
}),
],
});
await client.github.createIssue({
owner: 'integrate-dev',
repo: 'roadmap',
title: 'Ship agent hand-offs',
});import {
createMCPServer,
githubIntegration,
gmailIntegration,
} from 'integrate-sdk/server';
export const { client: serverClient } = createMCPServer({
apiKey: process.env.INTEGRATE_API_KEY,
integrations: [
githubIntegration({
scopes: ['repo', 'user'],
}),
gmailIntegration({
scopes: ['https://www.googleapis.com/auth/gmail.send'],
}),
],
});
await client.github.createIssue({
owner: 'integrate-dev',
repo: 'roadmap',
title: 'Ship agent hand-offs',
});No config setup with your AI SDK
Integrate supports a wide variety of AI SDKs and handles most of the code behind the scenes for you so its only a matter of calling the function in your tools object.
import { serverClient } from "@/lib/integrate";
import { getVercelAITools } from "integrate-sdk/server";
import { convertToModelMessages, stepCountIs, streamText } from "ai";
export async function POST(req: Request) {
const { messages } = await req.json();
const result = streamText({
model: "openai/gpt-5-mini",
messages: convertToModelMessages(messages),
tools: await getVercelAITools(serverClient),
stopWhen: stepCountIs(5),
});
return result.toUIMessageStreamResponse();
}import { serverClient } from "@/lib/integrate";
import { getVercelAITools } from "integrate-sdk/server";
import { convertToModelMessages, stepCountIs, streamText } from "ai";
export async function POST(req: Request) {
const { messages } = await req.json();
const result = streamText({
model: "openai/gpt-5-mini",
messages: convertToModelMessages(messages),
tools: await getVercelAITools(serverClient),
stopWhen: stepCountIs(5),
});
return result.toUIMessageStreamResponse();
}import { client } from "integrate-sdk";
// Schedule an email for a specific time
const trigger = await client.trigger.create({
name: "Follow-up Email",
toolName: "gmail_send_email",
toolArguments: {
to: "friend@example.com",
subject: "About the dog",
body: "Hey, just wanted to follow up...",
},
schedule: {
type: "once",
runAt: new Date("2024-12-13T22:00:00Z"),
},
});
// Or use cron for recurring triggers
const standup = await client.trigger.create({
name: "Daily Standup Reminder",
toolName: "slack_send_message",
toolArguments: {
channel: "#engineering",
text: "Time for standup! 🚀",
},
schedule: {
type: "cron",
expression: "0 9 * * 1-5", // Weekdays at 9 AM
},
});import { client } from "integrate-sdk";
// Schedule an email for a specific time
const trigger = await client.trigger.create({
name: "Follow-up Email",
toolName: "gmail_send_email",
toolArguments: {
to: "friend@example.com",
subject: "About the dog",
body: "Hey, just wanted to follow up...",
},
schedule: {
type: "once",
runAt: new Date("2024-12-13T22:00:00Z"),
},
});
// Or use cron for recurring triggers
const standup = await client.trigger.create({
name: "Daily Standup Reminder",
toolName: "slack_send_message",
toolArguments: {
channel: "#engineering",
text: "Time for standup! 🚀",
},
schedule: {
type: "cron",
expression: "0 9 * * 1-5", // Weekdays at 9 AM
},
});Schedule actions with Triggers
Schedule tool executions for a specific time or on a recurring schedule. Perfect for sending scheduled emails, daily reports, automated reminders, and AI agents that schedule actions for later.
Ready to integrate?
Start building with Integrate SDK today. Wire up credentials in minutes and empower your agents.