Skip to main content
Glama

mcp-google-sheets

index.ts1.91 kB
import { createPiece, PieceAuth } from '@activepieces/pieces-framework'; import { HttpMethod, createCustomApiCallAction, httpClient, } from '@activepieces/pieces-common'; import { BASE_URL } from './lib/common/constants'; import { uploadDocumentAction } from './lib/actions/upload-document'; import { createPresentationAction } from './lib/actions/create-presentation'; import { editPresentationAction } from './lib/actions/edit-presentation'; import { getTaskStatusAction } from './lib/actions/get-task-status'; import { newPresentationTrigger } from './lib/triggers/new-presentation'; import { PieceCategory } from '@activepieces/shared'; export const slidespeakAuth = PieceAuth.SecretText({ displayName: 'API Key', required: true, description: `You can obtain your API key by navigating to [API Settings](https://app.slidespeak.co/settings/developer).`, validate: async ({ auth }) => { try { await httpClient.sendRequest({ url: BASE_URL + '/me', method: HttpMethod.GET, headers: { 'X-API-key': auth, }, }); return { valid: true, }; } catch { return { valid: false, error: 'Invalid API Key', }; } }, }); export const slidespeak = createPiece({ displayName: 'SlideSpeak', auth: slidespeakAuth, minimumSupportedRelease: '0.36.1', logoUrl: 'https://cdn.activepieces.com/pieces/slidespeak.png', authors: ['rimjhimyadav'], categories:[PieceCategory.CONTENT_AND_FILES,PieceCategory.PRODUCTIVITY], actions: [ createPresentationAction, editPresentationAction, getTaskStatusAction, uploadDocumentAction, createCustomApiCallAction({ auth:slidespeakAuth, baseUrl:()=>BASE_URL, authMapping:async (auth)=>{ return{ 'X-API-key':auth as string } } }) ], triggers: [newPresentationTrigger], });

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