Skip to main content
Glama

mcp-google-sheets

index.ts2.67 kB
import { getAccessTokenOrThrow } from '@activepieces/pieces-common'; import { IntercomClient } from 'intercom-client'; import { OAuth2PropertyValue, OAuth2Props, Property, } from '@activepieces/pieces-framework'; export const intercomClient = (auth: OAuth2PropertyValue<OAuth2Props>) => { const client = new IntercomClient({ token: getAccessTokenOrThrow(auth), environment: `https://api.${auth.props?.['region']}.io`, }); return client; }; export const commonProps = { admins: <R extends boolean>(options: { displayName: string; required: R }) => Property.Dropdown<string, R>({ displayName: options.displayName, required: options.required, options: async ({ auth }) => { if (!auth) { return { options: [], disabled: true, placeholder: 'Please connect your account first', }; } const client = intercomClient(auth as OAuth2PropertyValue); const adminsResponse = await client.admins.list(); return { options: adminsResponse.admins.map((c) => { const res = { value: c.id, label: '' }; if (c.name) { res.label = c.name; } else if (c.email) { res.label = c.email; } else { res.label = c.id; } return res; }), }; }, refreshers: [], }), contacts: <R extends boolean>(options: { displayName: string; required: R; }) => Property.Dropdown<string, R>({ displayName: options.displayName, required: options.required, options: async ({ auth }) => { if (!auth) { return { options: [], disabled: true, placeholder: 'Please connect your account first', }; } const client = intercomClient(auth as OAuth2PropertyValue); const contactsResponse = await client.contacts.list({}); return { options: contactsResponse.data.map((c) => { const res = { value: c.id, label: '' }; if (c.name) { res.label = c.name; } else if (c.email) { res.label = c.email; } else { res.label = c.id; } return res; }), }; }, refreshers: [], }), }; export type Operator = | '=' | '!=' | 'IN' | 'NIN' | '<' | '>' | '~' | '!~' | '^' | '$'; export type TriggerPayload = { type: string; app_id: string; id: string; topic: string; data: { type: string; item: Record<string, any>; }; };

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/activepieces/activepieces'

If you have feedback or need assistance with the MCP directory API, please join our Discord server