Skip to main content
Glama

Activepieces MCP Server

by eldoonreval
websockets.service.tsβ€’1.21 kB
import { exceptionHandler } from '@activepieces/server-shared' import { WebsocketServerEvent } from '@activepieces/shared' import { FastifyBaseLogger } from 'fastify' import { Socket } from 'socket.io' import { accessTokenManager } from '../authentication/lib/access-token-manager' export type WebsocketListener<T> = (socket: Socket) => (data: T) => Promise<void> // eslint-disable-next-line @typescript-eslint/no-explicit-any const listener: Record<string, WebsocketListener<any>> = {} export const websocketService = { async init(socket: Socket, log: FastifyBaseLogger): Promise<void> { const principal = await accessTokenManager.verifyPrincipal(socket.handshake.auth.token) await socket.join(principal.projectId) for (const [event, handler] of Object.entries(listener)) { socket.on(event, async (data) => { try { await handler(socket)(data) } catch (error) { exceptionHandler.handle(error, log) } }) } }, addListener<T>(event: WebsocketServerEvent, handler: WebsocketListener<T>): void { listener[event] = handler }, }

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/eldoonreval/activepieces'

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