Skip to main content
Glama

mcp-google-sheets

index.ts2.44 kB
import { AuthenticationType, HttpMethod, createCustomApiCallAction, httpClient, } from '@activepieces/pieces-common'; import { PieceAuth, createPiece } from '@activepieces/pieces-framework'; import { PieceCategory, } from '@activepieces/shared'; import { askAssistant } from './lib/actions/ask-assistant'; import { generateImage } from './lib/actions/generate-image'; import { askOpenAI } from './lib/actions/send-prompt'; import { textToSpeech } from './lib/actions/text-to-speech'; import { transcribeAction } from './lib/actions/transcriptions'; import { translateAction } from './lib/actions/translation'; import { visionPrompt } from './lib/actions/vision-prompt'; import { baseUrl } from './lib/common/common'; import { extractStructuredDataAction } from './lib/actions/extract-structure-data.action'; import { SUPPORTED_AI_PROVIDERS } from '@activepieces/common-ai'; export const openaiAuth = PieceAuth.SecretText({ description: SUPPORTED_AI_PROVIDERS.find(p => p.provider === 'openai')?.markdown, displayName: 'API Key', required: true, validate: async (auth) => { try { await httpClient.sendRequest<{ data: { id: string }[]; }>({ url: `${baseUrl}/models`, method: HttpMethod.GET, authentication: { type: AuthenticationType.BEARER_TOKEN, token: auth.auth as string, }, }); return { valid: true, }; } catch (e) { return { valid: false, error: 'Invalid API key', }; } }, }); export const openai = createPiece({ displayName: 'OpenAI', description: 'Use the many tools ChatGPT has to offer.', minimumSupportedRelease: '0.63.0', logoUrl: 'https://cdn.activepieces.com/pieces/openai.png', categories: [PieceCategory.ARTIFICIAL_INTELLIGENCE], auth: openaiAuth, actions: [ askOpenAI, askAssistant, generateImage, visionPrompt, textToSpeech, transcribeAction, translateAction, extractStructuredDataAction, createCustomApiCallAction({ auth: openaiAuth, baseUrl: () => baseUrl, authMapping: async (auth) => { return { Authorization: `Bearer ${auth}`, }; }, }), ], authors: [ 'aboudzein', 'astorozhevsky', 'Willianwg', 'Nilesh', 'Salem-Alaa', 'kishanprmr', 'MoShizzle', 'khaledmashaly', 'abuaboud', 'amrdb', ], triggers: [], });

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